Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

file 1259 lines (1180 sloc) 61.653 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258
This file documents the revision history for Perl extension Mojolicious.

1.11 2011-02-14 00:00:00
        - Added TTL support to resolve in Mojo::IOLoop. (und3f)
        - Fixed small route bug.

1.1 2011-02-14 00:00:00
        - Code name "Smiling Cat Face With Heart-Shaped Eyes", this is a
          major release.
        - Deprecated wildcard route names in favor of automatically generated
          default names for all routes.
        - Removed native IIS support since it has become unmaintainable.
        - Added EXPERIMENTAL much prettier attribute generator to Mojo::Base.
        - Added EXPERIMENTAL on_start attribute to Mojo::Client.
        - Added EXPERIMENTAL support for route shortcuts.
        - Added EXPERIMENTAL support for NO_PROXY. (l0b0)
        - Added EXPERIMENTAL user_agent attribute to Mojo::Client.
        - Added EXPERIMENTAL support for mode specific not_found and
          exception templates.
        - Added EXPERIMENTAL support for route caching.
        - Added EXPERIMENTAL support for CSS3 selectors to the get command.
        - Added image helper to Mojolicious::Plugin::TagHelpers.
        - Added support for secure session cookies. (crab)
        - Improved HTML5 compatibility of Mojo::DOM.
        - Replaced Mojo::JSON parser with a much faster and stricter
          implementation. (chansen)
        - Improved Mojo::JSON string encoding. (chansen)
        - Updated to jQuery to version 1.5.
        - Removed experimental status from Mojo::DOM and ojo.
        - Removed experimental status from many attributes and methods all
          over Mojolicious.
        - Renamed after and before in Mojo::DOM to add_after and add_before.
        - Improved documentation browser slightly.
        - Improved CSS3 support in Mojo::DOM.
        - Changed Mojolicious::Plugin::EplRenderer to not render 404 errors
          for missing templates.
        - Changed exception template to use pre instead of h1 tags for error
          messages. (vaneska)
        - Made Simpsons and Futurama quotes easier to distinguish from normal
          comments.
        - Made routes reusable outside of Mojolicious. (forwardever)
        - Fixed a few home detection bugs.
        - Fixed a complicated application embedding bug.
        - Fixed a Apache mod_rewrite compatibility bug in
          Mojo::Message::Request. (dekimsey)
        - Fixed a small bug in the relaxed HTTP parser.
        - Fixed a small bug in Mojolicious::Command::Get.
        - Fixed a small bug in Mojolicious::Plugin::JsonConfig.
        - Fixed support for broken redirects.
        - Fixed --reload delay problem.
        - Fixed shagadelic function of Mojolicious::Lite.
        - Fixed optgroup support in select_field helper.
        - Fixed tests that can't run on Windows.
        - Fixed delayed rendering bug. (yko)
        - Fixed nested route bug.
        - Fixed a small multipart parser bug.
        - Fixed small any route bug.
        - Fixed small empty route bug.
        - Fixed URL merging in Mojo::URL.
        - Fixed version detection in Mojolicious::Command::Version.
        - Fixed Mojo::Client cloning.
        - Fixed typos.

1.01 2011-01-06 00:00:00
        - Relicensed some of the images to make sure Mojolicious can be
          shipped with commercial products.
        - Updated IO::Socket::SSL requirement to 1.37 due to bugs in older
          versions.
        - Added EXPERIMENTAL TLS certificate authentication support.
          (tempire)
        - Added EXPERIMENTAL title helper.
        - Added EXPERIMENTAL render_later method to Mojolicious::Controller.
        - Improved documentation.
        - Improved test. (Charlie Brady)
        - Improved charset handling in Mojolicious slightly.
        - Updated application generators with base tags.
        - Fixed relative path handling in Mojo::URL.
        - Fixed punycode bug. (kits)
        - Fixed a bug where the static dispatcher would eat the flash.

1.0 2010-12-26 00:00:00
        - Code name "Snowflake", this is a major release.
        - Deprecated session method in Mojolicious.
        - Deprecated handler and helper attributes in Mojolicious::Renderer.
        - Added new exception and not_found templates.
        - Added POD browser to Mojolicious::Plugin::PodRenderer.
        - Added EXPERIMENTAL content_for helper.
        - Disabled debug log messages for static files.
        - Improved Hypnotoad web server to restart workers regularly.
        - Improved documentation.
        - Improved query manipulation in Mojo::URL. (yko)
        - Improved TLS exception handling.
        - Improved nested exception handling. (spleenjack)
        - Improved tests. (janus)
        - Fixed relative path handling.
        - Fixed application generator. (yko)
        - Fixed support for multiline expressions in Mojo::Template.
        - Fixed multiple --reload related leaks and reduced overall memory
          usage.
        - Fixed exception handling for included templates.
        - Fixed a small Mojo::Server::PSGI header bug.
        - Fixed a small Mojo::DOM selector bug.
        - Fixed typos. (punytan)

0.999950 2010-11-30 00:00:00
        - Added EXPERIMENTAL Hypnotoad web server.
        - Added EXPERIMENTAL built in exception and not_found templates.
        - Added put and del functions to Mojolicious::Lite.
        - Added on_idle and on_tick event handlers to Mojo::IOLoop.
        - Added "*" query support to the Mojo::IOLoop resolver.
        - Added ability to pass plain connection ids to Mojo::Client.
        - Added ability to call Mojo::Base->attr as an instance method.
          (charsbar)
        - Improved Mojolicious::Lite ability to recover from syntax errors.
        - Improved number detection in Mojo::JSON.
        - Improved Mojo::ByteStream encode/decode. (marcus)
        - Fixed a bug where an empty Mojo::IOLoop would never block.
        - Fixed a possible Mojo::IOLoop descriptor leak.
        - Fixed a small route condition bug.
        - Fixed a small test glitch on some Linux distributions.
        - Fixed typos.

0.999941 2010-11-19 00:00:00
        - Allow Mojolicious::Lite style routes in Mojolicious.
        - Added base_tag helper to Mojolicious::Plugin::TagHelpers.
        - Added CNAME and NS record type support to the Mojo::IOLoop
          resolver.
        - Improved Mojo::IOLoop responsiveness.
        - Made Mojo::IOLoop resolver results more useful.

0.999940 2010-11-15 00:00:00
        - Improved resolver tests.
        - Fixed IO::Socket::SSL 1.34 compatibility.

0.999939 2010-11-15 00:00:00
        - Removed IPv6 support until Perl itself gets better support for it.
        - Added MX and PTR record type support to the Mojo::IOLoop resolver.
          (und3f)
        - Fixed a Mojolicious::Static rendering bug.
        - Fixed a bug that forced connect in Mojo::IOLoop to block.
        - Fixed a bug that prevented on_finish to be triggered for
          interrupted connections.
        - Fixed a TLS accept bug in Mojo::IOLoop.
        - Fixed a small bug in Mojo::Parameters. (spleenjack)
        - Fixed javascript and stylesheet helper. (sshaw)
        - Fixed IPv4 address detection bug in Mojo::URL.
        - Fixed a Mojo::Client bug where interrupted transactions were still
          successful.
        - Fixed a small reloader bug.
        - Fixed typos.

0.999938 2010-11-09 00:00:00
        - Moved all commands into the Mojolicious namespace.
        - Fixed typo.
        - Removed OS X resource fork files.

0.999937 2010-11-09 00:00:00
        - Deprecated the MojoX namespace and merged affected modules into the
          Mojolicious namespace, this will make reference documentation a lot
          more accessible.
        - Added important module overview to Mojolicious. (rhaen)
        - Improved Mojo::Loader to allow Mojolicious recovering from tricky
          syntax errors in Controllers.
        - Improved param method in MojoX::Dispatcher::Routes::Controller.
        - Fixed escaping in Mojo::Parameters to work better in the real
          world.
        - Fixed a small inflate command bug.

0.999936 2010-11-03 00:00:00
        - Improved Mojo::Template performance slightly. (kimoto)
        - Fixed a serious WebSocket bug.
        - Fixed non-blocking DNS resolver bug.
        - Fixed connection reset handling in Mojo::IOLoop.

0.999935 2010-11-03 00:00:00
        - Added EXPERIMENTAL module Mojo::Util as a faster low level
          alternative to Mojo::ByteStream and rewrote many internals to use
          it instead.
        - Improved Mojo::IOLoop performance by about 20%.
        - Made automatic file storage upgrade smarter.
        - Fixed overload stringification and improved overall performance by
          about 25%.
        - Fixed start line/header buffering and improved performance by 8%.

0.999934 2010-11-01 00:00:00
        - Fixed relaxed HTTP parsing.

0.999933 2010-10-30 00:00:00
        - Fixed small connect bug in Mojo::IOLoop.
        - Fixed WebSocket handshake.

0.999932 2010-10-29 00:00:00
        - Deprecated the old plugin hook calling convention and added
          EXPERIMENTAL hook method to Mojolicious.
        - Fixed a few small connect bugs in Mojo::IOLoop.
        - Fixed typos.

0.999931 2010-10-25 00:00:00
        - Removed tag helpers label and img.
        - Renamed tag helper script to javascript and added CDATA support.
        - Renamed tag helper input to input_tag.
        - Added EXPERIMENTAL non-blocking DNS support to Mojo::IOLoop.
          (und3f)
        - Added EXPERIMENTAL support for IPv4 and IPv6 address checks to
          Mojo::URL.
        - Added stylesheet tag helper.
        - Added before and after methods to Mojo::DOM.
        - Hide command overview from prove. (omega)
        - Default to silent tests in Test::Mojo.
        - Fixed optional value support in Mojo::Cookie.
        - Fixed shortcut methods in Mojo::Headers to not be context aware.
        - Fixed url_for to not inherit captures for new endpoints.

0.999930 2010-10-18 00:00:00
        - Code name "Hot Beverage", this is a major release.
        - Removed Mojo::Server::Daemon::Prefork due to unfixable design flaws
          regarding WebSocket support, please use a PSGI server instead for
          HTTP production setups.
          For scalable WebSocket deployment we will introduce a whole new
          server in one of the next releases!
        - Deprecated old Mojo::Template block syntax and added a very pretty
          replacement. (See documentation for more)
        - Deprecated helper method in Mojolicious::Controller.
        - Deprecated all *_cb methods (and finished/receive_message) in favor
          of on_* methods.
        - Deprecated process method in Mojo::Client and added new start
          method.
        - Replaced the "mojolicious" command with "mojo", for convenience.
        - Removed Mojo::Command::Generate::App.
        - Renamed the methods name and replace_content to type and
          replace_inner in Mojo::DOM.
        - Added EXPERIMENTAL support for indented Perl lines in
          Mojo::Template.
        - Added EXPERIMENTAL support for --mode and --home options to all
          Mojolicious commands.
        - Added EXPERIMENTAL support for helper methods.
        - Added EXPERIMENTAL helper method to Mojolicious.
        - Added EXPERIMENTAL support for inline rendering to Mojolicious.
        - Added EXPERIMENTAL memorize helper to
          Mojolicious::Plugin::DefaultHelpers. (ptomli)
        - Added EXPERIMENTAL write, write_chunk and rendered methods to
          Mojolicious::Controller.
        - Added EXPERIMENTAL support for loading of plugins by full module
          name.
        - Added EXPERIMENTAL tag helpers to Mojolicious.
        - Added EXPERIMENTAL support for radio buttons and select fields to
          Mojolicious::Plugin::TagHelpers. (kvorg)
        - Added EXPERIMENTAL is_limit_exceeded, max_line_size and
          max_message_size methods to Mojo::Message.
        - Added EXPERIMENTAL automatic relaxed parsing support for HTTP
          responses.
        - Added while, until and inner_xml methods for Mojo::DOM collections.
          (vti)
        - Added b function to all Mojo::Template templates.
        - Added selector support to the dom method of Mojo::Message. (marcus)
        - Added x function to ojo. (DaTa)
        - Added failed request warnings to ojo. (marcus)
        - Added support for selector groups to Mojo::DOM.
        - Added more attribute selectors, pseudo classes and combinators to
          Mojo::DOM.
        - Added support for mode specific config files to
          Mojolicious::Plugin::JsonConfig. (marcus)
        - Added reserved route name current.
        - Simplified transaction pausing by replacing it with an automatism.
        - Improved RFC3986 compliance of Mojo::Path. (janus)
        - Improved Mojo::Server::PSGI to preload applications.
        - Improved FastCGI detection for Dreamhost. (garu)
        - Improved keep alive timeout handling in Mojo::Client.
        - Improved documentation. (rhaen)
        - Improved Mojo::ByteStream performance. (mons)
        - Improved Mojo::Parameters performance. (kimoto)
        - Improved Mojo::Message::Response parser resilience.
        - Improved template class handling in MojoX::Renderer. (vti)
        - Fixed a serious design flaw in Mojo::Message and made long poll
          much easier.
        - Fixed a bug where Mojo::IOLoop connections could be closed too
          early.
        - Fixed a bug where a broken renderer could cause a fatal exception.
        - Fixed HTTPS support for CGI environments.
        - Fixed a auto rendering bug related to bridges.
        - Fixed Mojo::IOLoop Windows support.
        - Fixed Mojo::DOM class selector bug. (tempire)
        - Fixed small render bug. (skaurus)
        - Fixed a small renderer bug.
        - Fixed automatic reloading for external templates.
        - Fixed after_build_tx plugin hook callback order.
        - Fixed a small under bug in Mojolicious::Lite.
        - Fixed logging of UTF-8 errors. (und3f)
        - Fixed Mojo::DOM parser bug. (esskar)
        - Fixed TLS handshake bug in Mojo::IOLoop. (und3f)
        - Fixed a small Test::Mojo bug.
        - Fixed multiple route condition bugs. (esskar)
        - Fixed a small relative path bug in Mojo::URL.
        - Fixed pod renderer bug. (vti)
        - Fixed a multipart parser bug affecting mostly file uploads.
        - Fixed input tag helper escaping. (vti)
        - Fixed url_for WebSocket support.
        - Fixed url_for format handling.

0.999929 2010-08-17 00:00:00
        - Removed OS X resource fork files.

0.999928 2010-08-15 00:00:00
        - Fixed a security problem with CGI environment detection.
        - Fixed redirect_to without content and render_static bug.
        - Fixed nested partial rendering bug. (yko)
        - Fixed multiple small Mojo::DOM bugs. (yko)

0.999927 2010-08-15 00:00:00
        - Code name "Comet", this is a major release.
        - Added EXPERIMENTAL method defaults to Mojolicious.
        - Added EXPERIMENTAL method detour to MojoX::Dispatcher::Routes.
        - Added EXPERIMENTAL attribute partial to MojoX::Routes.
        - Added EXPERIMENTAL CSS3 selector tests to Test::Mojo.
        - Added EXPERIMENTAL method test_server to Mojo::Client.
        - Added EXPERIMENTAL oneliner module ojo.
        - Added EXPERIMENTAL support for static files in the DATA section of
          Mojolicious applications.
        - Added EXPERIMENTAL Bonjour support.
        - Added EXPERIMENTAL support for route name generation.
        - Added graceful shutdown support to Mojo::Server::Daemon.
        - Added multiple guides and improved documentation substantially.
        - Added finished callback support for HTTP transactions.
        - Added relative path support to Mojo::URL. (marcus)
        - Added simple iterator support to Mojo::DOM.
        - Added XML namespace support to Mojo::DOM.
        - Added is_xhr method to Mojo::Message::Request.
        - Added detect_proxy method to Mojo::Client. (DaTa)
        - Added say and trim methods to Mojo::ByteStream.
        - Added custom socket support to Mojo::Client.
        - Added SHA1 support to Mojo::ByteStream. (vti)
        - Added app helper.
        - Renamed attributes method in Mojo::DOM to attrs.
        - Renamed search method in Mojo::DOM to find.
        - Cleaned up tests. (memowe)
        - Cleaned up regular expressions in Mojo::DOM. (mpu)
        - Improved Mojo::Client error logging.
        - Improved Mojo::Template error messages.
        - Improved generated multipart messages to be 2 bytes shorter.
          (John Kingsley)
        - Improved conditions by allowing them to access the stash.
        - Fixed memory and file descriptor leaks in Mojo::Client.
        - Fixed Mojo::Server::Daemon::Prefork to use a random lock file by
          default.
        - Fixed Mojo::DOM to support escaped selectors.
        - Fixed Mojo::DOM parser bugs.
        - Fixed Mojo::DOM child listing bug. (evt)
        - Fixed Mojo::DOM multiline attribute bug. (tempire)
        - Fixed charset detection of the dom builder in Mojo::Message.
          (und3f)
        - Fixed json/data rendering with layouts in MojoX::Renderer.
        - Fixed Mojo::IOLoop to not stop unexpectedly.
        - Fixed graceful shutdown in Mojo::Server::Daemon::Prefork.
        - Fixed Mojo::Server::CGI and Mojo::Server::FastCGI to be more
          portable.
        - Fixed poll + tls support.
        - Fixed language switching in Mojolicious::Plugin::I18n.
        - Fixed async Mojo::Client tests.
        - Fixed HTML1 and HTML5 compatibility of Mojo::DOM.
        - Fixed a selector bug in Mojo::DOM.
        - Fixed environment detection.
        - Fixed Mojolicious application embedding.
        - Fixed a tutorial bug. (zoul)
        - Fixed tests to not use any optional modules.
        - Fixed small Mojolicious::Lite bug. (sharifulin)
        - Fixed Mojo application generator. (zakame)
        - Fixed edgy stringified return value bug in
          MojoX::Dispatcher::Routes. (DaTa)
        - Fixed route rendering bug. (koban)
        - Fixed route without namespace bug.
        - Fixed route with mixed format bug. (sharifulin)
        - Fixed small url_for bug.
        - Fixed Mojo::IOLoop to not connect to TLS hosts without checking TLS
          support first. (ashleydev)
        - Fixed multiple WebSocket bugs.
        - Fixed Test::Mojo::Server to be more portable. (afresh1)
        - Fixed url_for to not expose userinfo in absolute URLs.
        - Fixed path detection bug in generated scripts. (merlyn)
        - Fixed a small redirect bug in Mojo::Client.
        - Fixed a route callback inheritance bug.
        - Fixed a security problem in the HMAC MD5 implementation. (vti)

0.999926 2010-06-07 00:00:00
        - Added version requirement for all optional dependencies.
        - Improved documentation.
        - Fixed async client processing.
        - Fixed small renderer bug.

0.999925 2010-06-07 00:00:00
        - Updated WebSocket implementation to draft 76,
          NOTE THAT THIS CHANGE IS NOT BACKWARDS COMPATIBLE!!!
          (sadly we have no choice when the spec changes)
        - Increased Perl version requirement to 5.8.7 due to unicode bugs in
          earlier releases.
        - Switched to app->start instead of shagadelic as default way to
          start Mojolicious::Lite apps in the documentation.
        - Made tutorial examples more business friendly.
        - Added the ability to use Mojolicious::Lite apps as Mojolicious
          controllers.
        - Added EXPERIMENTAL XML DOM parser with CSS3 selector support.
        - Added EXPERIMENTAL tag_helper plugin to Mojolicious. (vti)
        - Added EXPERIMENTAL success method to Mojo::Transaction.
        - Added EXPERIMENTAL json method and json_class attribute to
          Mojo::Message.
        - Added EXPERIMENTAL idle_cb attribute to Mojo::IOLoop.
        - Added more perlish block syntax to Mojo::Template.
        - Added non-blocking TLS handshake support to Mojo::IOLoop.
        - Added proxy support to Mojo::Client.
        - Added the ability to have dispatch plugins.
        - Added "under" to Mojolicious::Lite.
        - Added file upload support to Mojo::Client. (yko)
        - Added higher precision timers to Mojo::IOLoop. (vti)
        - Improved exception handling.
        - Improved documentation.
        - Improved IIS compatibility of the CGI implementation.
        - Improved routes by making the leading slash optional and storing
          route names in the stash.
        - Converted README to markdown. (memowe)
        - Fixed connection keep alive with epoll.
        - Fixed bridge bug in MojoX::Routes::Match.
          (Oleg Zhelo, Dmitry Konstantinov)
        - Fixed argument handling of Mojo::Template blocks. (afresh1)
        - Fixed a stash localization bug. (und3f)
        - Fixed Mojo::Log to use flock to sync log file writing.
        - Fixed daemons to listen on "::" for IPv6 and "0.0.0.0" for IPv4
          with a wildcard address.
        - Fixed lock_cb and unlock_cb exceptions to be fatal in Mojo::IOLoop,
          this makes Mojo::Server::Daemon::Prefork much more solid. (ask)
        - Fixed a bug that prevented undef values in the stash. (garu)
        - Fixed Mojo::Message::headers chaining. (markstos)
        - Fixed a bug in Mojo::JSON that prevented BOM characters in strings.
          (chansen)
        - Fixed Mojo::JSON to not unescape broken surrogates. (chansen)
        - Fixed UTF-8 bug in Mojolicious::Plugin::JsonConfig. (vti)
        - Fixed Mojo::Parameters to accept array values. (konstantinov)
        - Fixed IRI routes in Mojolicious.
        - Fixed multiple path encoding bugs.
        - Fixed a loader bug.
        - Fixed reloading of inflated Mojolicious::Lite templates.
        - Fixed the client transaction builder. (Curt Tilmes)
        - Fixed unix domain socket support. (sharifulin)
        - Fixed a few regex bugs. (vti)
        - Fixed POD. (memowe)
        - Fixed typos. (jawnsy)

0.999924 2010-03-08 00:00:00
        - Added default TLS cert and key to Mojo::IOLoop to make HTTPS
          testing easier, so "mojo daemon --listen https://*:3000" now just
          works.
        - Added request limit support to the daemons.
        - Added basic authorization and proxy authorization support to
          Mojo::Message::Request. (esskar)
        - Added tick callback to Mojo::IOLoop to make mixing multiple event
          loops trivial.
        - Added the ability to pass arguments to Mojo::Template blocks.
        - Added layout support for partial rendering, in addition all render
          arguments are now localized.
        - Added more routes tests. (doubi)
        - Cleaned up documentation.
        - Cleaned up tests.
        - Relaxed Mojo::Server::CGI read timeout.
        - Fixed ioloop timers to actually work and added tests.
        - Fixed PSGI environment auto detection and removed .psgi file
          generator since it has become obsolete.
        - Fixed Mojolicious sessions to remove the session cookie immediately
          if it's not needed anymore. (ask)
        - Fixed routes method condition to consider GET and HEAD equal.
        - Fixed test requiring Perl 5.10.
        - Fixed a loader bug. (mvuets)
        - Fixed layout and extends scope in MojoX::Renderer. (korshak)
        - Fixed daemons to create listen sockets before changing user and
          group. (xantus)

0.999923 2010-03-07 00:00:00
        - Made Mojo::Client sync by default with optional async support, this
          massively improves usability!
              my $tx = $client->get('http://mojolicious.org');
              print $client->get('http://search.cpan.org')->res->body;
              my $tx = $client->post_form('http://kraih.com', {q => 'mojo'});
        - Made plugins much more configurable.
        - Improved PSGI support and added "psgi" command.
        - Added automatic environment detection for Plack based servers,
          there is no technical way to detect all PSGI compliant servers yet
          though.
          That means "plackup myapp.pl" and "plackup script/myapp" should
          just work.
        - Added session and flash helpers.
        - Added finished callback to WebSocket client and server.
        - Added referrer method to Mojo::Headers. (esskar)
        - Added finish_cb callback to Mojo::Message.
        - Added render_data method to Mojolicious::Controller.
        - Added formdata tests for multiple browsers. (koban)
        - Changed Mojolicious default secret to a slightly more secure value.
          (xantus)
        - Allow parser errors to be handled by frameworks.
        - Removed bundled RFCs.
        - Fixed multiple Mojo::Template parser bugs.
        - Fixed epl rendering bug.
        - Fixed multipart form encoding and decoding.
        - Fixed IRI handling. (sharifulin)
        - Fixed mixed IRI/IDNA handling.
        - Fixed tmpdir detection.
        - Fixed typos.

0.999922 2010-02-11 00:00:00
        - Added session support.
        - Added signed cookie support.
        - Added I18N support. (vti, memowe)
        - Added template detection again, you can now just mix multiple
          template engines and the renderer will automatically pick the right
          template.
          So you don't have to use the "handler" argument anymore, even
          though it's still available and overrides auto detection.
        - Added Flash Policy Server example. (xantus)
        - Added more reference docs.
        - Added .gitignore generator command. (marcus)
        - Added automatic CGI/FastCGI environment detection to
          Mojo::Commands.
        - Renamed Mojolicious::Book to Mojolicious::Guides.
        - Removed hot deployment support for Windows because of
          incompatibilities between Active Perl and Strawberry Perl.
        - Made process id and lock file defaults more userfriendly in
          Mojo::Server::Daemon.
        - Updated for Perl 5.12, not using the bytes pragma anymore.
        - Fixed a bug where WebSocket servers could not directly start
          sending messages.
        - Fixed connection id handling in Mojo::Client.
        - Fixed multiple epoll bugs.
        - Fixed Mojo::IOLoop connection check.
        - Fixed identification headers.
        - Fixed a bug where exception pages would be rendered multiple times.
        - Fixed reverse proxy support. (vti)
        - Fixed error state in Mojo::Stateful. (vti)
        - Fixed seek bug. (lee7)
        - Fixed a PSGI header bug. (lee7)
        - Fixed typos.

0.999921 2010-02-11 00:00:00
        - Fixed a small kqueue bug.

0.999920 2010-02-11 00:00:00
        - Code name "Snowman", this is a major release, which means
          deprecation policies apply.
          (See also "perldoc Mojolicious::Book::CodingGuidelines")
        - Renamed distribution from Mojo to Mojolicious.
        - Deprecated $VERSION in Mojo, new $VERSION lives in Mojolicious.
          Make sure to update your modules depending on Mojo to depend on
          Mojolicious in the future.
        - Deprecated Mojo::Transaction::Single, make sure to update all old
          code to use Mojo::Transaction::HTTP instead.
        - MOJO_RELOAD=1 now works with Mojolicious::Lite, have fun!
        - Allow reloading to be triggered once by a USR1 or WINCH (win32)
          signal.
        - Added --reload flag to all server bindings as an alternative to
          MOJO_RELOAD=1.
        - Added WebSocket support.
        - Added IPv6 support.
        - Added SSL/TLS support.
        - Added IDNA support.
        - Added UNIX domain socket support to daemons.
        - Added transparent kqueue and epoll support to daemons and client.
        - Added support for listening to multiple locations to the daemons.
              mojo daemon --listen http://127.0.0.1:3000
              mojo daemon --listen http://127.0.0.1:3000,file:///tmp/my.sock
              mojo daemon --listen http://*:3000,http://*:3001,http://*:3002
              mojo daemon --listen http://[::1]:3000
              mojo daemon --listen https://*:443:/x/server.crt:/x/server.key
        - Added routes captures to params in Mojolicious.
        - Added native PSGI support.
        - Added the ability to have multiple Mojolicious::Lite apps at once.
          (Mojolicious::Lite is not a singleton anymore!)
        - Added charset plugin to Mojolicious. (charsbar)
        - Added simple reverse proxy support with tests.
        - Added simpler way to define default controller and action for a
          route.
              $r->route('/foo')->to('mycontroller#myaction');
        - Added simple way to define default controller or action for a
          route. (mvuets)
              $r->route('/foo/:controller')->to('#myaction');
              $r->route('/foo/:action')->to('mycontroller#');
        - Added multipart post support to Test::Mojo. (yuki-kimoto)
        - Added env attribute to Mojo::Message::Request.
        - Added range support to MojoX::Dispatcher::Static. (xantus)
        - Added version command.
        - Added after_build_tx plugin hook.
        - Added timer support to Mojo::IOLoop.
        - Added the ability to run multiple parallel ioloops that block each
          other.
        - Added default_template_class attribute to MojoX::Renderer.
        - Added render_static method to Mojolicious::Controller.
        - Added support for embedded Mojolicious applications.
        - Added json_config plugin to Mojolicious. (vti)
        - Added the ability to reload the application and (graceful) restart
          all children to the prefork daemon.
        - Added to_hash and from_hash methods to Mojo::Headers. (vti)
        - Added post_form method to Mojo::Client.
        - Added find_route method to MojoX::Routes.
        - Added buffer size limits to the message parser.
        - Added child_status method to Mojo::Server::Daemon::Prefork. (und3f)
        - Added header_condition plugin to Mojolicious. (xantus)
        - Added finish method to Mojolicious::Controller.
        - Added WebSocket support to Mojolicious and Mojolicious::Lite.
        - Added message body support to Mojo::Client api. (tempire)
        - Added stash helper.
        - Added POD renderer plugin to Mojolicious. (vti)
        - Added inflate command to Mojolicious. (vti, korshak)
        - Added singleton support to Mojo::Client.
        - Started working on the Mojolicious book.
        - Started adding reference documentation. (marcus)
        - Improved HTTP 1.1 state machine.
        - Improved exception handling in Mojo::Client, Mojo::Server::Daemon
          and Mojo::IOLoop.
        - Disabled Nagle's algorithm in Mojo::IOLoop.
        - Changed the testing framework to always run real world tests with
          daemon and TCP connections.
        - Changed exceptions to stay out of your way as much as possible.
        - Made all Mojolicious after_* plugin hooks run in reverse order.
        - Made param decoding more defensive and allow malformed data to pass
          through for debugging.
        - Made Mojo::IOLoop very hard to kill.
        - Reduced Mojolicious log output outside of development mode.
        - Polished Mojo::Client api.
        - Fixed connect error handling in Mojo::Client.
        - Fixed double encoding of JSON data with charset plugin.
          (yuki-kimoto)
        - Fixed prefork daemon signal handling.
        - Fixed backslash encoding bug in Mojo::JSON.
        - Fixed memory leaks in Mojolicious plugins. (sharifulin)
        - Fixed memory leaks in .ep templates. (vti)
        - Fixed makefile and app generators.
        - Fixed a case where an ending tag would be interpreted as a line
          start in Mojo::Template.
        - Fixed multipart charset handling and added the ability to disable
          param decoding.
        - Fixed format detection bug. (marcus)
        - Fixed named url_for and added tests. (marcus)
        - Fixed decamelize of multiple uppercase characters.
        - Fixed plugins and commands to work with multiple namespaces and
          reloading.
        - Fixed multiple process calls in Mojo::Client.
        - Fixed a routes parser bug.
        - Fixed a bug that caused waypoint actions to run twice.
        - Fixed a bug where to_abs and to_rel could not be called multiple
          times on a Mojo::URL object. (vti)
        - Fixed development mode log level. (ka2u)
        - Fixed query string support in Mojo::URL. (vti)
        - Fixed rendering without template name.
        - Fixed large file upload bug. (vti, sharifulin)
        - Fixed a small inconsistency between relaxed and wildcared
          plaeholders.

0.999914 2009-11-24 00:00:00
        - Added the Mojolicious plugin system.
        - Added helper method to Mojolicious::Controller.
        - Added encoding support to post_form_ok in Test::Mojo.
        - Made cookies easier to set.
        - Fixed body_contains in Mojo::Content::Single. (yuki-kimoto)
        - Fixed utf8 output in STDERR log. (vti)

0.999913 2009-11-24 00:00:00
        - Added automatic content decoding to content helpers in Test::Mojo.
        - Added json test helper to Test::Mojo.
        - Added the ability to reset a test session in Test::Mojo.
          (yuki-kimoto)
        - Fixed Mojolicious::Renderer to always default to rendering a 404
          error.
        - Fixed a cookiejar bug and added tests. (yuki-kimoto)

0.999912 2009-11-24 00:00:00
        - Improved ioloop performance. (gbarr)

0.999911 2009-11-14 00:00:00
        - Added template inheritance to Mojolicious.
        - Added block and capturing support to Mojo::Template.
        - Added trimming support to Mojo::Template.
        - Added new testing framework for Mojo and Mojolicious applications.
          (yuki-kimoto)
        - Added redirect support to Mojo::Client. (acajou)
        - Added cookie jar to Mojo::Client. (acajou)
        - Excluded Mojo::ByteStream objects from auto escaping.
        - Updated Mojolicious::Lite tutorial.
        - Fixed a case where routes captures got false positives.
        - Fixed literal name handling in Mojo::JSON. (rsp)
        - Fixed unicode detection in Mojo::JSON. (rsp)
        - Fixed multiple small bugs in Mojo::JSON. (rsp)
        - Fixed Mojolicious default app tests. (yuki-kimoto)
        - Fixed Mojo::Server::FCGI compatibility.

0.999910 2009-11-14 00:00:00
        - Fixed url_for without endpoint bug.
        - Fixed BOM handling in Mojo::JSON. (rsp)
        - Fixed named redirect_to with arguments.
        - Improved Mojo::Exception. (yuki-kimoto)

0.999909 2009-11-11 00:00:00
        - Cleaned up tutorial.
        - FIxed renderer exception bug. (yuki-kimoto)

0.999908 2009-11-11 00:00:00
        - Fixed bridges/ladders and added tests.

0.999907 2009-11-11 00:00:00
        - Fixed another connection close bug in ioloop.
        - Fixed relaxed placeholder format handling in
          MojoX::Routes::Pattern.

0.999906 2009-11-11 00:00:00
        - Fixed connection close bug in ioloop.

0.999905 2009-11-11 00:00:00
        - Fixed routes bug that prevented the root from having formats.

0.999904 2009-11-10 00:00:00
        - Cleaned up examples.

0.999903 2009-11-10 00:00:00
        - Added ladders to Mojolicious::Lite, they are like bridges but lite.
        - Added encoding support to renderer. (likhatskiy)
        - Added dumper helper.
        - Made tmpdir in Mojo::Asset::File configurable.

0.999902 2009-11-01 00:00:00
        - Added include helper.
        - Optimized buffering a bit.
        - Fixed a case where multiple clients would taint the shared ioloop.
          (ferreira)
        - Fixed a case where non existing actions were considered a server
          error. (Andre Vieth)
        - Fixed typos.

0.999901 2009-09-01 00:00:00
        - Added new Mojo::Client, because the old one had bugs that prevented
          proper scaling and could not be fixed otherwise.
          Note that this change is not backwards compatible, the decision to
          make it so close to the 1.0 release was not easy but the bugs were
          simply too serious.
        - Added native JSON support.
        - Added more designer friendly .ep templates to Mojolicious.
          The default template format for your application can be controlled
          with the default_handler attribute of the mojolicious renderer.
              Mojolicious (in the startup method):
                  $self->renderer->default_handler('epl');
                  $self->renderer->default_handler('ep');
Mojolicious::Lite:
app->renderer->default_handler('epl');
app->renderer->default_handler('ep');
        - Added helper support for .ep templates.
        - Added callback tests. (melo)
        - Added support for MOJO_CHUNK_SIZE=1. (melo)
        - Added not_found.html.* templates.
        - Added input streaming support to Mojo::Content.
        - Added client, param, pause, redirect_to and resume to
          Mojolicious::Controller.
        - Renamed Mojo::Manual to Mojolicious::Book.
        - Updated Mojolicious lite_app generator to use .ep templates.
        - Fixed many bugs in the HTTP 1.1 state machine and added the ability
          to pause transactions.
        - Fixed param to be CGI.pm compatible.
        - Fixed a few cases where exceptions and not found events would
          result in empty pages.
        - Fixed layouts with partial templates.
        - Fixed encoding of non utf8 form data.
        - Fixed body callbacks to get automatic buffering.
        - Fixed a case where Mojo::Server::Daemon and Mojo::Client were too
          defensive and made them in turn 20 times faster.
        - Fixed keep alive problem in Mojo::Transaction::Pipeline.
        - Fixed and simplified Mojo::Parameters. (gbarr)
        - Fixed xml_escape to use character semantics. (vti)
        - Fixed utf8 handling of routes captures. (vti)
        - Fixed body helper in Mojo::Message and added tests. (vti)
        - Fixed padding byte handling in Mojo::Server::FastCGI.
          (Jaroslav Muhin)
        - Fixed a few small parser bugs in MojoX::Routes and added tests.
        - Fixed Mojo::Asset::File and added tests. (Yuki Kimoto)
        - Fixed generated scripts. (Yuki Kimoto)
        - Fixed CHLD signal handler for prefork children. (sharifulin)
        - Fixed typo.

0.991251 2009-08-18 00:00:00
        - Fixed continue timeout handling in Mojo::Transaction::Simple.
        - Fixed undefined value in If-Modified-Since check in
          MojoX::Dispatcher::Routes.
        - Fixed MojoX::Routes::Pattern::match. (trendels)
        - Fixed default_handler in MojoX::Renderer. (sharifulin)
        - Fixed HTML5 tags. (xantus)
        - Fixed special Apache CGI environment cases.
        - Fixed Mojo::Log to work with older versions of Perl.
        - Fixed typo.

0.991250 2009-08-18 00:00:00
        - This release contains many substantial changes that are not
          backwards compatible, but good news is that it's also the last
          major feature breaking release before 1.0. ;)
          Older releases of Mojo did contain additional Mojo::Script::* and
          Mojolicious::Script::* modules that are obsolete now and might
          break this version if they are still present on your system.
          Because of this we highly suggest that you
          DELETE ALL MODULES IN THE "Mojo", "MojoX" AND "Mojolicious"
          NAMESPACES MANUALLY!!!
        - Mojo::Script has been renamed to Mojo::Command, this change is not
          backwards compatible!
          You will have to regenerate application scripts or replace
          "Mojo(licious)::Script" with "Mojo(licious)::Command" manually.
        - Removed unused features from Mojo::Base and simplified API, this
          change is not backwards compatible!
              __PACKAGE__->attr('foo', default => 'bar');
          becomes
              __PACKAGE__->attr(foo => 'bar');
        - Merged eplite and epl, this change is not backwards compatible, you
          will have to rename all your eplite templates to epl.
        - Simplified MojoX::Renderer, this change is not backwards
          compatible!
          Handler can no longer be detected, that means "default_handler" or
          the "handler" argument are required.
          The template argument can no longer contain format or handler.
              $self->render(template => 'foo.html.epl')
          becomes
              $self->render('foo', format => 'html', handler => 'epl')
          The following forms are available now.
              $self->render;
              $self->render(controller => 'foo', action => 'bar');
              $self->render({controller => 'foo', action => 'bar'});
              $self->render(text => 'Hello!');
              $self->render(template => 'index');
              $self->render(template => 'foo/index');
              $self->render(
                  template => 'index',
                  format => 'html',
                  handler => 'epl'
              );
              $self->render(handler => 'something');
              $self->render('foo/bar');
              $self->render('foo/bar', format => 'html');
              $self->render('foo/bar', {format => 'html'});
          For renderers the stash will no longer get an updated template,
          instead a new argument will be passed along.
              {template => 'foo/bar', format => 'html', handler => 'epl'}
        - Simplified context and controller in Mojolicious, this change is
          not backwards compatible!
          If you've been using a custom context object you'll now have to use
          a custom controller base class.
          The new controller_class attribute can now be used to set the
          default controller in Mojolicious.
          There is also no $c argument anymore actions get called with, since
          everything is in $self now.
        - Refactored and renamed Mojo::Transaction and Mojo::Pipeline, this
          change is not backwards compatible!
              Mojo::Transaction -> Mojo::Transaction::Single
              Mojo::Pipeline -> Mojo::Transaction::Pipeline
        - Refactored and renamed Mojo::File and Mojo::File::Memory, this
          change is not backwards compatible!
              Mojo::File -> Mojo::Asset::File
              Mojo::File::Memory -> Mojo::Asset::Memory
        - Refactored and renamed Mojo::Content, this change is not backwards
          compatible!
              Mojo::Content -> Mojo::Content::Single
        - Added conditions to MojoX::Routes.
        - Added routes script to Mojolicious.
        - Simplified Mojo::Base.
        - Simplified exceptions.
        - Changed Mojo::Log to default to utf8 when writing to a file.
        - Cleaned up Mojo::Date.
        - Cleaned up Mojo::Transaction.
        - Made build_tx a callback named build_tx_cb in Mojo.
        - Made the exception template a bit more fault tolerant.
        - Made controller base class configurable in
          MojoX::Dispatcher::Routes.
        - Removed address, password and user methods from Mojo::URL.
        - Fixed Microsoft IIS CGI and FastCGI environment support.
        - Fixed prefix handling in MojoX::Dispatcher::Static.
        - Fixed max_age in Mojo::Cookie.
        - Fixed cloning of urls with base in Mojo::URL.
        - Fixed parsing of multiple headers and cookies with same name.
        - Fixed pipeline support in Mojo::Client. (acajou)
        - Fixed utf8 handling in Mojo::Parameters. (vti)
        - Fixed Mojo::Scripts to only allow word characters in script names.
        - Fixed security problem in MojoX::Dispatcher::Static. (trendels)

0.991246 2009-08-01 00:00:00
        - Fixed typo.

0.991245 2009-07-31 00:00:00
        - Added spin_app to Mojo::Client and simplified API.
        - Added port support to Mojo::Cookie.
        - Made chunk size configurable with MOJO_CHUNK_SIZE environment variable.
        - Simplified script system startup.
        - Cleaned up server tests.
        - Fixed win32 bug where eplite templates would not be detected right.

0.991244 2009-07-30 00:00:00
        - Fixed package.

0.991243 2009-07-28 00:00:00
        - Made eplite ignore everything after __END__.
        - Made proxy support more portable.
        - Simplified progress callbacks.
        - Cleaned up internal Mojo APIs.
        - Added local host bin address support to Mojo::Server::Daemon.
        - Fixed layouts on win32 and made templates portable, "/" is now the
          separator on all platforms. (charsbar)
        - Fixed dependency on Getopt::Long 2.38. (kevinold)
        - Fixed Perl 5.8.1 prereqs. (alias)

0.991242 2009-07-27 00:00:00
        - Cleaned up the whole script system, this change is mostly backwards
          compatible except for a few cases.
              "daemon $port" now becomes "daemon -p $port"
              "mojolicious mojo $script" becomes "mojolicious $script"
        - Added HTML escape expression marks "<%==" and "%==" to
          Mojo::Template.
        - Added more Mojolicious::Lite examples and reformatted them into a
          tutorial.
        - Fixed a bridge bug in MojoX::Dispatcher and added tests.

0.991241 2009-07-20 00:00:00
        - Mojolicious::Lite has been introduced as a new entry level web
          framework example.
        - Mojo::Message::Response will now default to response code 200,
          this change is not backwards compatible.
          In Mojolicious you should use ->render(text => 'Hello!') instead of
          ->res->body('Hello!') now.
        - Changed routes syntax again, this change is not entirely backwards
          compatible but will only affect you if you are using the relaxed
          and wildcard variations.
              "/((foo))" becomes "/(.foo)"
              "/(((foo)))" becomes "/(*foo)"
        - Updated Mojolicious to support ->render(text => 'Hello World!').
        - Updated Mojo::Script::get_data to use "@@ $name" instead of
          "__$name__".
        - Updated our routes implementation to support HTTP request methods.
        - Updated Mojo::Home to fallback to FindBin for detection.
        - Made Mojolicious much more fault tolerant.
        - Fixed PATH_INFO handling of the CGI environment parser in
          Mojo::Message::Request.
        - Added url_for and render_partial to Mojolicious::Controller.
        - Added namespace support to Mojo::Template.
        - Added eplite handler to Mojolicious::Renderer.
        - Added generator for lite apps.
        - Added tests.
        - Allow log level override via environment variable in Mojo::Log.
        - Code cleanup.

0.991240 2009-07-19 00:00:00
        - Turned Mojolicious layout rendering inside out for better exception
          handling and to make layouts configurable from templates.
        - Added debug helpers to Mojo::Server::FastCGI.
        - Fixed detection bug in Mojo::Home.
        - Fixed generator bug in Mojo::Script.
        - Fixed Windows related parser bug in Mojo::Loader::Exception.
        - Cleaned up code.

0.991239 2009-07-16 00:00:00
        - Renamed bin directory to script, old apps should not break but you
          are still encouraged to rename the directory yourself.
        - Simplified Mojo::Template, this will only affect you if you are
          using Mojo::Template directly.
        - Added setuid/setgid support to Mojo::Server::Daemon and
          Mojo::Server::Daemon::Prefork. (James Duncan)
        - Updated Mojo::Server::FastCGI and Mojo::Server::Daemon::Prefork to
          use the application logger.
        - Fixed import problem in Mojo::Server::Daemon::Prefork. (James Duncan)
        - Fixed warning in template.t.

0.991238 2009-07-16 00:00:00
        - Fixed all shebang lines.

0.991237 2009-07-15 00:00:00
        - Renamed process_local to process_app in Mojo::Client, this change
          is not backward compatible and you might have to change some of
          your tests.
        - Simplified MojoX::Renderer.
        - Simplified Mojo::Loader.
        - Simplified Mojo::ByteStream.
        - Simplified exceptions.
        - Updated all modules to use IO::Poll instead of IO::Select.
        - Updated exception handling in Mojolicious to work with exceptions
          in epl templates.
        - Updated Mojo and Mojolicious to log to STDERR if log directory
          isn't writable.
        - Updated Mojo and Mojolicious to work without boilerplate and a
          single MyApp.pm file.
        - Added html_encode and html_decode methods to Mojo::ByteStream.
        - Improved 100 Continue handling and added more tests. (acajou)
        - Improved Mojo::Template exception handling.
        - Cleaned up exception code.
        - Fixed possible infinite loop in Mojo::Server::FastCGI.
        - Fixed typos.

0.991236 2009-07-05 00:00:00
        - Simplified Mojo::Home.
        - Moved executable detection to Test::Mojo::Server.
        - Improved Mojo::Loader::Exception.
        - Moved persistent_error.t tests to app.t.
        - Cleaned up code.
        - Fixed at_least_version. (yuki-kimoto)

0.991235 2009-07-05 00:00:00
        - Removed prepare/finalize methods from Mojolicious.
        - Fixed typos.

0.991234 2009-07-03 00:00:00
        - Added name and value filters to Mojo::Headers. (acajou)
        - Added clean multiline value handling to Mojo::Headers.
        - Added prepare/finalize methods to Mojolicious.
        - Added some additional mime types to MojoX::Types.
        - Renamed method add_line to add in Mojo::Headers.
        - Updated generator scripts to play nice with MM->parse_version.

0.991233 2009-07-01 00:00:00
        - Rewrote Mojo::Client::process_local to use the new state machine.
        - Added Server and X-Powered-By headers.
        - Fixed external server tests.
        - Fixed Mojo::Date handling of negative epoch values.

0.991232 2009-06-29 00:00:00
        - Fixed tarball.

0.991231 2009-06-29 00:00:00
        - Rewrote MojoX::Renderer, it is not backward compatible and
          templates need to be renamed in the following 3 part format
          "index.html.tt"!
        - Added exception support to MojoX::Dispatcher::Routes, this change
          is not backward compatible and "dispatch" calls now return
          exception objects for errors and false otherwise.
        - Changed routes syntax, this change is not backward compatible and
          you need to change all your existing routes.
            "/:foo" becomes "/(foo)"
            "/^foo" becomes "/((foo))"
            "/*foo" becomes "/(((foo)))"
        - Added full HTTP 1.1 pipelining support to all Mojo layers.
        - Added layout support to MojoX::Renderer.
        - Made render call optional.
        - Added format support to MojoX::Routes.
        - Added Mojo::Loader::Exception.
        - Added wildcard symbol support to MojoX::Routes and rewrote many
          routes internals.
        - Added Makefile.PL generator.
        - Added HttpOnly support to Mojo::Cookie. (burak)
        - Support more CGI implementations.
        - Added support for namespaces only dispatching in
          MojoX::Dispatcher::Routes.
        - Added encoding support to Mojo::Template and made "utf8" the
          default.
        - Added HEAD support to Mojo::Server::Daemon. (acajou)
        - Added new relaxed placeholder to MojoX::Routes::Pattern.
        - Added Mojo::Template::Exception.
        - Added HEAD support to the Mojo::Transaction state machine and
          related modules. (acajou)
        - Added safe_post option to Mojo::Pipeline. (acajou)
        - Made chained => 1 the default in Mojo::Base.
        - Fixed compiler bug in Mojo::Template that prevented more advanced
          control structures, you might have to add additional semicolons to
          some of your templates.
        - Fixed Mojo::Date to not crash on invalid dates. (vti)
        - Fixed chunked support in Mojo::Server::Daemon and Mojo::Client.
        - Fixed tokenizer in MojoX::Routes::Pattern to support "0" values.
          (Anatoly Sharifulin)
        - Fixed parsing of "0" in Mojo::Path. (charsbar)
        - Fix server tests on win32. (charsbar)
        - Fixed leading whitespace problem in the request parser. (acajou)
        - Fixed broken pipe problem in Mojo::Server::CGI. (vti)
        - Added more diagnostics options to Mojo::HelloWorld. (uwe)
        - Fixed empty cookie parsing. (vti)
        - Fixed a case where child processes migth hang in
          Mojo::Server::Daemon::Prefork. (gbarr)
        - Fixed a bug in MojoX::Dispatcher::Routes where the renderer would
          be called with an empty stack. (melo)
        - Fixed a escaping problem in Mojo::Parameters. (vti)
        - Updated Mojo::URL to be more template friendly.
        - Improved Solaris compatibility.

0.9002 2009-02-16 00:00:00
        - Added local_address(), local_port(), remote_address() and
          remote_port() to Mojo::Transaction.
        - Improved tests.
        - Fixed some typos.

0.9001 2009-01-28 00:00:00
        - Added proper home detection to Mojo itself. (charsbar)
        - Fixed a bug where errors got cached in the routes dispatcher.
          (charsbar)
        - Updated error handling in MojoX::Dispatcher::Static.
        - Fixed Mojo::Message::Request::cookies() to always return a
          arrayref.
        - Fixed url_for to support references. (vti)
        - Fixed unescaping of captures. (vti)
        - Fixed typos. (uwe)

0.9 2008-12-01 00:00:00
        - Added modes to Mojolicious.
        - Added Mojo::Log and log support for Mojo/Mojolicious.
        - Changed MojoX::Renderer and Mojo::Template api to make catching
          errors easier, we now use a scalar ref for results like most
          template engines.
        - Added MojoX::Context.
        - Added multi level controller class support to Mojolicious.
        - MojoX::Dispatcher::Routes should be able to fail.
        - Added diagnostics functions to Mojo::HelloWorld.
        - Made the env parser Apache compatible.
        - Made Mojo::Server::FastCGI Apache compatible.
        - Added namespace, class and method captures to
          MojoX::Dispatcher::Routes.
        - Made url_for work for rebased applications.
        - Added ctx, render, req, res and stash methods to Mojolicious
          controllers.
        - Changed cookie, param and upload in Mojo::Parameters to return a
          list.
        - Added support for templateless renderers to MojoX::Renderer.
        - Added blacklist to MojoX::Dispatcher::Routes.
        - Fixed Mojo::Date bugs. (vti)
        - Fixed / routes matching too much.
        - New Windows workaround in Mojo::Client and Mojo::Server::Daemon.
        - Cleaned up Mojo::Transaction. (Ask Bjoern Hansen)
        - Added .perltidyrc. (Ask Bjoern Hansen)
        - Allow chains to be broken with return values in
          MojoX::Dispatcher::Routes.
        - The stack in MojoX::Routes resets now.
        - Renamed default_handler to default_format in MojoX::Renderer.
        - Disallow actions beginning with _ in MojoX::Dispatcher::Routes.
        - Preload application in servers. (Graham Barr)
        - Renamed is_version to at_least_version. (Mark Stosberg)
        - Added documentation. (Ch Lamprecht)
        - Added param tests. (Mark Stosberg)
        - Added documentation for Mojo::Log. (Mark Stosberg)
        - Add test for MojoX::Renderer. (Mark Stosberg)
        - When testing, allow servers a few seconds to stop. (Leon Brocard)
        - Fixed typos.

0.8009 2008-11-07 00:00:00
        - Cleaned up Mojo::Message callbacks and added tests.
        - Fixed escaping in Mojo::URL.
        - Fixed query string support and escaping in Mojo::Parameters.
        - Optimized randomness in Mojo::Client. (Leon Brocard)
        - Randomized handle order in Mojo::Client
        - Mojo::Client now prefers writes over reads.
        - Added copy_to and move_to to Mojo::File.
        - Made the daemons about 20% faster.
        - Cleaned up Mojo::File. (Leon Brocard)
        - Fallback to default renderer in MojoX::Renderer.
          (Ask Bjoern Hansen)
        - Made Mojo::Base instantiation a little bit faster.
        - Added documentation to Mojo::Base. (Marcus Ramberg)
        - Moved the home attribute from Mojolicious to Mojo.
        - Fixed MojoX::Renderer to pass options through to the handler.
          (Ask Bjoern Hansen)
        - Fixed Mojo::Server::FastCGI according to the spec.
        - Dispatchers now return true or false.
        - Added documentation to Mojo::Home. (Mark Stosberg)
        - Added documentation to Mojo::Buffer. (Mark Stosberg)
        - Removed replace from Mojo::Buffer. (Mark Stosberg)
        - Added buffer tests. (Mark Stosberg)

0.8008 2008-11-07 00:00:00
        - Fixed multipart parsing for short requests.
        - Fixed content file storage to specific file.
        - Fixed lower case appclasses.

0.8007 2008-11-07 00:00:00
        - Cleaned up the api some more.
        - Added param to Mojo::Message.
        - Added server.t. (Mark Stosberg)
        - Added documentation. (Mark Stosberg)
        - Cleaned up Mojo::File api.
        - Fixed infinite loop in Mojo::File. (Leon Brocard)

0.8006 2008-11-06 00:00:00
        - Simplified api by removing aliases, this will help with subclassing
          annoyances but might break some existing code if you are using long
          versions of formerly aliased attributes.
        - Fixed application/x-www-form-urlencoded.
        - Fixed support for query strings.
        - Fixed multi query parameter support.
        - Added a context class to the Mojolicious generator.
        - Cleaned up Mojo::Server api. (Mark Stosberg)
        - Increased Mojo::Template performance. (Pedro Melo)
        - Added documentation. (Mark Stosberg)
        - Fixed typos. (Marcus Ramberg)

0.8.5 2008-11-04 00:00:00
        - Fixed version. (Andreas Koenig)
        - Fixed typos.

0.8.4 2008-11-04 00:00:00
        - Improved caching in Mojo::Message.
        - Added upload and cookie method to Mojo::Message.
        - Changed uploads behavior in Mojo::Message to bring it in line with
          cookies.
        - Added documentation. (Mark Stosberg)

0.8.3 2008-11-03 00:00:00
        - Removed filter from Mojo::Base and added warnings.
        - Added caching to uploads in Mojo::Message. (Mark Stosberg)
        - Fixed typos. (Robert Hicks)
        - Added documentation.

0.8.2 2008-11-01 00:00:00
        - Removed OS X resource fork files.

0.8.1 2008-11-01 00:00:00
        - Made daemon.t developer only.
        - Fixed typos.

0.8 2008-10-21 00:00:00
        - Fixed Mojo::Server::Daemon windows support.
        - Generated applications now have individually named executables.
        - Cleaned up Mojo::Home.
        - Changed Mojolicious default application templates to something more
          sane.
        - Mojo::Base accessors don't take multiple arguments anymore,
          this results in a 25% speed increase.
        - Added MOJO_MAX_MEMORY_SIZE environment variable.
        - Added prepare_parser and prepare_builder callbacks to
          Mojo::Message.
        - Added done and is_done to Mojo::Stateful.
        - Fixed many win32 related bugs.
        - Fixed keep alive related bugs in daemon and client. (Pedro Melo)
        - Allow default in Mojo::Base to have false values. (Pedro Melo)
        - Fixed chmod_rel_file in Mojo::Script. (Shu Cho).
        - Mojo::Base attributes can't start with a digit. (Shu Cho).
        - Fixed Content-Length header for empty messages.
        - Removed warning from Mojo.pm.
        - Renamed gate to bridge in MojoX::Routes.
        - Added waypoint() to MojoX::Routes.
        - Added named url_for to MojoX::Routes and Mojolicious.
        - Added Mojolicious documentation. (vti)
        - Fixed documentation links.
        - Fixed some typos.

0.7 2008-10-11 00:00:00
        - Added the Mojolicious Web Framework example.
        - Added upload and GET/POST parameter helpers to Mojo::Message.
        - Hooks for upload progress and stuff added.
        - Refactored transfer encoding code into Mojo::Filter and
          Mojo::Filter::Chunked.
        - Added callbacks for start line and header generators.
        - Added workaround for missing IO::Seekable support in older
          versions of File::Temp (Perl 5.8).
        - script/mojo.pl got renamed to bin/mojo.
        - Mojo::Cache got renamed to Mojo::File because there will be a cache
          module named MojoX::Cache, and that could cause confusion later on.
        - Fixed many escaping related bugs around Mojo::URL.
        - Fixed 100-Continue support in Mojo::Server::Daemon and Mojo::Client.
        - Countless small bugs fixed and tests added.

0.6 2008-09-24 00:00:00
        - Many more bugfixes.

0.5 2008-09-24 00:00:00
        - Many small bugfixes.

0.4 2008-09-24 00:00:00
        - Moved everything into the Mojo namespace.

0.3 2008-09-24 00:00:00
        - Fixed documentation.

0.2 2008-09-24 00:00:00
        - First release.
Something went wrong with that request. Please try again.