Clarify that request arguments aren't unescaped automatically.
[catagits/Catalyst-Runtime.git] / Changes
1 # This file documents the revision history for Perl extension Catalyst.
2
3         - Clarify that request arguments aren't unescaped automatically
4           (Simon Bertrang) (Closes RT#41153)
5
6 5.8000_06 2009-02-04 21:00
7         - Disallow writing to config after setup (rafl)
8         - Disallow calling setup more than once (rafl)
9         - Documentation fix regarding overloading of Engine and Dispatcher
10           instances (rafl)
11         - Several documentation typo fixes (rafl)
12         - Stop Makefile.PL from warning about versions that fixed a conflict
13           (t0m)
14         - Improved upgrading documentation (t0m, rafl)
15         - Seed the RNG in each FastCGI child process (Andrew Rodland)
16         - Properly report dynamic bind port for the development server (rafl)
17           (Closes RT#38544)
18         - Use the way documented by IO::Socket::INET to get the error message
19           after trying to create a listening socket (rafl) (Closes RT#41828)
20         - Don't ignore SIGCHLD while handling requests with the dev server
21           (rafl) (Closes RT#42962)
22
23 5.8000_05 2008-29-01 00:00
24         - Text::SimpleTable's go as wide as $ENV{COLUMNS} (jhannah)
25           Patch written by Oleg Kostyuk <cub.uanic@gmail.com>
26         - Improve docs for visit (mateu)
27         - Add docs for finalize hook (dhoss)
28         - Added ru/ua translations to error page
29         - Improve the clarity and verbosity of the warning when component
30           resolution uses regex fallback. (jhannah)
31         - Handle leading CRLF in HTTP requests sometimes sent by IE6 in 
32           keep-alive requests. (andyg)
33         - Fixes for FastCGI with IIS 6.0 (janus)
34         - Passing request method exported by Catalyst::Test an extra
35           parameter used to be ignored, but started breaking if the parameter
36           was not a hash in 5.8000_04. Extra parameter is now ignored if
37           it isn't a hashref (t0m)
38         - Fix request argumentss getting corrupted if you override the 
39           dispatcher and call an action which detaches (for 
40           Catalyst::Plugin::Authorization::ACL) (t0m)
41         - Fix calling use Catalyst::Test 'MyApp' 'foo' which used to work,
42           but stopped as the 2nd parameter can be an options hash now (t0m)
43         - Bump Moose dependency to fix make_immutable bug (t0m)
44         - Use compile time extends in Catalyst::Controller (t0m)
45         - Make Catalyst::Request::uploads attribute non-lazy, to fix
46           test for Catalyst-Engine-Apache (t0m)
47         - Bump version of MooseX::Emulate::Class::Accessor::Fast (t0m)
48         - Stop using MooseX::Adopt::Class::Accessor::Fast by default, to stop
49           breaking other packages which use Class::Accessor::Fast
50         - Remove unused action_container_class attribute from 
51           Catalyst::Dispatcher (t0m)
52         - Replace {_body} instance access with calls to _body accessors (t0m)
53         - Add backwards compatibility alias methods for private attributes on 
54           Catalyst::Dispatcher which used to be public. Needed by 
55           Catalyst::Plugin::Server and  Catalyst::Plugin::Authorization::ACL 
56           (t0m)
57         - Fix return value of $c->req->body, which delegates to the body
58           method on the requests HTTP::Body instance (t0m)
59           - Test for this (t0m)
60         - Fix calling $c->req->body from inside an overridden prepare_action
61           method in a plugin, as used by Catalyst::Plugin::Server (t0m)
62           - Test for this (t0m)
63         - Fix assignment to Catalyst::Dispatcher's preload_dispatch_types and
64           postload_dispatch_types attributes - assigning a list should later 
65           return a listref. Fixes Catalyst::Plugin::Server. (t0m)
66           - Tests for this (t0m)
67         - Change streaming test to serve itself rather than 01use.t, making 
68           test sync for engines easier (t0m)
69         - Refactor capturing of $app from Catalyst::Controller into
70           Catalyst::Component::ApplicationAttribute for easier reuse in other
71           components (Florian Ragwitz)
72         - Make the test suites YAML dependency optional (Florian Ragwitz)
73         - Make debug output show class name for the engine and dispatcher
74           rather than the stringified ref. (t0m)
75         - Make MyApp immutable at the end of the scope after the setup
76           method is called, fixing issues with plugins which have their 
77           own new methods by inlining a constructor on MyApp (t0m)
78           - Test for this and method modifiers in MyApp (t0m)
79         - Fix bug causing Catalyst::Request::Upload's basename method
80           to return undef (t0m)
81           - Test for this (Carl Franks)
82         - Fix loading of classes which do not define any symbols to not
83           die, as it didn't in 5.70 (t0m)
84           - Test for this (t0m)
85         - Bump MooseX::Emulate::Class::Accessor::Fast dependency
86           to force new version which fixes a lot of plugins (t0m)
87         - Make log levels additive, and add documentation and tests
88           for the setup_log method, which previously had none.
89           Sewn together by t0m from two patches provided by David E. Wheeler
90         - Switch an around 'new' in Catalyst::Controller to a BUILDARGS
91           method as it's much neater and more obvious what is going on (t0m)
92         - Add a clearer method on request and response _context 
93           attributes, and use if from ::Engine rather than deleting
94           the key from the instance hash (t0m)
95         - Use handles on tree attribute of Catalyst::Stats to replace
96           trivial delegation methods (t0m)
97         - Change the following direct hash accesses into attributes:
98           Catalyst::Engine: _prepared_write
99           Catalyst::Engine::CGI: _header_buf
100           Catalyst::Engine::HTTP: options, _keepalive, _write_error
101           Catalyst::Request: _path
102           Catalyst::Stats: tree
103           (t0m)
104         - Fix issues in Catalyst::Controller::WrapCGI 
105           and any other components which import (or define) their 
106           own meta method by always explicitly calling
107           Class::MOP::Object->meta inside Catalyst (t0m)
108           - Add test for this (t0m)
109         - Add test case for the bug which is causing the 
110           Catalyst::Plugin::Authentication tests to fail (t0m)
111         - Fix a bug in uri_for which could cause it to generate paths
112           with multiple slashes in them. (t0m)
113           - Add test for this (t0m)
114         - Fix SKIP block name in t/optional_http-server-restart.t,
115           stopping 'Label not found for "last SKIP"' error from 
116           Test::More (t0m)
117         - Workaround max_redirect 0 bug in LWP (andyg)
118         - Move live_engine_response_print into aggregate (andyg)
119         - Fix dependency bug, s/parent/base/ in new test (rafl)
120         - Fix optional tests to run the live tests in the aggregate 
121           dir (andyg)
122         - Fix Catalyst->go error in remote tests (andyg)
123         - Fix upload test to work with remote servers, don't check for 
124           deleted files (andyg)
125         - Fix engine_request_uri tests to work on remote server with 
126           different URI (andyg)
127
128 5.8000_04  2008-12-05 12:15:00
129         - Silence Class::C3::Adopt::NEXT warnings in the test suite (rafl)
130         - Fix loads of 'used once, possible typo' warnings (rafl)
131         - Additional tests to ensure upload temp files are deleted (andyg)
132         - Remove use of NEXT from the test suite, except for one case
133           which tests if Class::C3::Adopt::NEXT is working (t0m)
134         - Use a predicate to avoid recursion in cases where the uri
135           method is overridden by a plugin, and calls the base method,
136           for example Catalyst::Plugin::SmartURI (t0m)
137           - Test for this (caelum)
138         - Compose the MooseX::Emulate::Class::Accessor::Fast role to 
139           Catalyst::Action, Catalyst::Request, and all other modules which 
140           inherit from Class::Accessor::Fast in 5.70.
141           This fixes:
142             - Catalyst::Controller::HTML::FormFu (zamolxes)
143             - Catalyst::Request::REST (t0m)
144           - Test for this (t0m)
145         - Make hostname resolution lazy (Marc Mims)
146         - Support mocking virtualhosts in test suite (Jason Gottshall)
147         - Add README (marcus)
148         - Fix TODO list (t0m)
149         - Use Class::C3::Adopt::NEXT (rafl)
150         - Ignore C3 warnings on 5.10 when testing ensure_class_loaded (rafl)
151         - Add TODO test for chained bug (gbjk)
152         - Fix list address in documentation (zarquon)
153         - Fix ACCEPT_CONTEXT on MyApp, called as a class method (marcus)
154            - Test for this (marcus)
155         - Bump MooseX::Emulate::Class::Accessor::Fast version requirement to 
156           get more back compatibility (t0m)
157         - Improve documentation for $req->captures (caelum)
158         - Fix a bug in Catalyst::Stats, stopping garbage being inserted into
159           the stats if a user calls begin => but no end => (jhannah)
160            - Test for this (jhannah)
161         - Trim lines sooner in stats to avoid ugly Text::SimpleTable wrapping
162           (jhannah)
163         - Change Catalyst::ClassData to tweak the symbol table inline for
164           performance after profiling (mst)
165         - Fix POD typo in finalize_error (jhannah)
166         - Add tests to ensure that we delete the temp files created by 
167           HTTP::Body's OctetStream parser (t0m)
168
169 5.8000_03 2008-10-14 14:13:00
170         - Fix forwarding to Catalyst::Action objects (Rafael Kitover).
171         - Fix links to the mailing lists (RT #39754 and Florian Ragwitz).
172         - Use Class::MOP instead of Class::Inspector (Florian Ragwitz).
173         - Change Catalyst::Test to use Sub::Exporter (Florian Ragwitz).
174         - Fixed typo in Engine::HTTP::Restarter::Watcher causing -r to complain.
175
176 5.8000_02 2008-10-14 07:59:00
177        - Fix manifest
178
179 5.8000_01 2008-10-13 22:52:00
180         - Port to Moose
181         - Added test for action stringify
182         - Added test for component instances getting $self->{value} from config.
183         - Add Catalyst::Response->print() method (ilmari)
184         - Optionally aggregate tests using Test::Aggregate (Florian Ragwitz).
185         - Additional docs for uri_for to mention how to use $c->action and 
186           $c->req->captures (jhannah)
187         - List unattached chained actions in Debug mode (Florian Ragwitz).
188         - Pod formatting fix for Engine::FastCGI (Oleg Kostyuk).
189         - Add visit, a returning ->go
190
191 5.7XXXXXX XXXX
192         - Workaround change in LWP that broke a cookie test (RT #40037)
193         - Back out go() since that feature's been pushed to 5.80
194         - Fix some Win32 test failures
195         - Add pt translation of error message (wreis)
196         - Make :Chained('../action') work (Florian Ragwitz)
197         - Add test actions
198         - Chained doc improvements (rev 8326-8328)
199
200 5.7099_03 2008-07-20 10:10:00
201         - Fix regressions for regexp fallback in model(), view() and controller()
202         - Added the supplied argument to the regexp fallback warning for easier
203           debugging
204         - Ensure ACCEPT_CONTEXT is called for results from component()
205
206 5.7099_02 2008-07-16 19:10:00
207         - Added PathPrefix attribute
208         - Removed Catalyst::Build; we've long since moved to Module::Install
209         - Updated Catalyst::Test docs to mention the use of HTTP::Request
210           objects (Rafael Kitover)
211
212 5.7099_01 2008-06-25 22:36:00
213         - Refactored component resolution (component(), models(), model(), et al). We now
214           throw warnings for two reasons:
215           1) model() or view() was called with no arguments, and two results are returned
216              -- set default_(model|view), current_(model|view) or current_(model|view)_instance
217              instead
218           2) you call a component resolution method with a string, and it resorts to a regexp 
219              fallback wherein a result is returned -- if you really want to search, call the
220              method with a regex as the argument
221         - remove 0-length query string components so warnings aren't thrown (RT #36428)
222         - Update HTTP::Body dep so that the uploadtmp config value will work (RT #22540)
223         - Fix for LocalRegex when used in the Root controller
224         - Get some of the optional_* tests working from dirs with spaces (RT #26455)
225         - Fix Catalyst::Utils::home() when application .pm is in the current dir (RT #34437)
226         - Added the ability to remove parameters in req->uri_with() by passing in
227           an undef value (RT #34782)
228         - Added $c->go, to do an internal redispatch to another action, while retaining the
229           contents of the stash
230
231 5.7014  2008-05-25 15:26:00
232         - Addition of .conf in restart regex in Catalyst::Engine::HTTP::Restarter::Watcher
233         - Fix regression for relative uri_for arguments after a forward()   
234           introduced in 5.7013 (Peter Karman)  
235         - Fix regression for "sub foo : Path {}" in the root controller which 
236           was introduced when attempting to allow "0" as a Path.
237
238 5.7013  2008-05-16 18:20:00
239         - Provide backwards compatability methods in Catalyst::Stats
240         - Fix subdirs for scripts that run in subdirs more than one level deep.
241         - Added test and updated docs for handling the Authorization header
242           under mod_fastcgi/mod_cgi.
243         - Fixed bug in HTTP engine where the connection was not closed properly if the
244           client disconnected before sending any headers. (Ton Voon)
245         - POD fix, IO::FileHandle => IO::Handle (RT #35690)
246         - Fix grammar on welcome page (RT #33236)
247         - Fix for Path('0') handling (RT #29334)
248         - Workaround for Win32 and c3_mro.t (RT #26452, tested by Kenichi Ishigaki)
249         - Fix for encoding query parameters (edenc)
250         - Fix Chained multiple test (t0m)
251
252 5.7012  2007-12-16 23:44:00
253         - Fix uri_for()'s and uri_with()'s handling of multibyte chars
254           (Daisuke Murase)
255         - Fix __PACKAGE__->config->{foo} = 'bar' case with subclassing
256         - Add Catalyst::Stats (Jon Schutz)
257         - Fixed a bug where ?q=bar=baz is decoded as q=>'bar', not 'bar=baz'.
258           (Tatsuhiko Miyagawa, Masahiro Nagano)
259         - Fixed a bug where -rr (restart regex) command line option could cause
260           shell errors. (Aristotle Pagaltzis, Chisel Wright)
261
262 5.7011  2007-10-18 20:40:00
263         - Allow multiple restart directories and added option to follow
264           symlinks in the HTTP::Restarter engine (Sebastian Willert)
265         - Fixed t/optional_http-server-restart.t so it actually tests
266           if the server restarted or notified of an error (Sebastian Willert)
267         - Return child PID from the HTTP engine when run with the 'background' option.
268           (Emanuele Zeppieri)
269         - Fixed bug in HTTP engine where writes could fail with
270           'Resource temporarily unavailable'.
271         - Fixed bug where %2b in query parameter is doubly decoded to ' ', instead of '+'
272           (RT #30087, Gavin Henry, Tatsuhiko Miyagawa, Oleg Pronin)
273         - Fixed bug where req->base and req->uri would include a port number when running
274           in SSL mode.
275         - Removed unnecessary sprintf in debug mode that caused warnings on locales where
276           commas are used for decimal markers.
277         - Improved error message for case when server picks up editor save
278           files as module names. (James Mastros)
279
280 5.7010  2007-08-22 07:41:00
281         - Resource forks in 5.7009
282
283 5.7009  2007-08-22 00:14:00
284         - Moved Manual.pod to Manual.pm and clarified status of 
285           Catalyst-Manual dist
286         - Doc patches to Catalyst::Controller
287         - remove ignore_loaded from plugin load, commenting why
288         - document the ignore_loaded feature in Catalyst::Utils
289         - Add testing of inline plugins.
290
291 5.7008  2007-08-13 08:40:00
292         - Added $c->request->query_keywords for getting the keywords
293           (a query string with no parameters).
294         - Add undef warning for uri_for.
295         - Fix bug where a nested component would be setup twice.
296         - Make ensure_class_loaded behave better with malformed class name.
297         - Make _register_plugin use ensure_class_loaded.
298         - Remove 'Argument "??" isn't numeric in sprintf' warning.
299           (Emanuele Zeppieri)
300         - Fixed a bug where Content-Length could be set to 0 if a filehandle
301           object in $c->response->body did not report a size.
302         - Fixed issue where development server running in fork mode did not
303           properly exit after a write error.
304           (http://rt.cpan.org/Ticket/Display.html?id=27135)
305         - Remove warning for captures that are undef.
306         - Fixed $c->read and parse_on_demand mode.
307         - Fixed a bug with the HTTP engine where very large response bodies
308           would not be sent properly.
309
310 5.7007  2007-03-13 14:18:00
311         - Many performance improvements by not using URI.pm:
312           * $c->uri_for (approx. 8x faster)
313           * $c->engine->prepare_path (approx. 27x faster)
314           * $c->engine->prepare_query_parameters (approx. 5x faster)
315         - Updated HTTP::Body dependency to 0.9 which fixes the following issues:
316           * Handle when IE sometimes sends an extra CRLF after the POST body.
317           * Empty fields in multipart/form-data POSTs are no longer ignored.
318           * Uploaded files with the name "0" are no longer ignored.
319         - Sending SIGHUP to the dev server will now cause it to restart.
320         - Allow "0" for a path in uri_for.
321         - Performance and stability improvements to the built-in HTTP server.
322         - Don't ignore file uploads if form contains a text field with the same name.
323           (Carl Franks)
324         - Support restart_delay of 0 (for use in the POE engine).
325         - Skip body processing if we don't have a Content-Length header.
326           Results in about a 9% performance increase when handling GET/HEAD
327           requests.
328         - Add a default body to redirect responses.
329         - MyApp->model/view now looks at MyApp->config->{default_view/model}
330           (Bogdan Lucaciu)
331
332 5.7006   2006-11-15 14.18
333         - Updated manifest
334         - Fix Slurp dependency
335         - Updated HTTP::Body dependency to 0.6, 0.5 can break on large POST 
336           requests.
337         - Skip utf8 fix for undef values in uri_with() and uri_for()
338
339 5.7005   2006-11-07 19:37:35
340         - Fixed lighttpd tests to be properly skipped.
341         - Moved IE workarounds to exist only in the HTTP engine.
342         - Added installation instructions (from Catalyst-Manual dist)
343
344 5.7004   2006-11-06 20:48:35
345         - Fix Engine::HTTP crash when using IE. (Jesper Krogh, Peter Edwards)
346         - clean up Catalyst::Utils to handle some edge cases
347         - Properly work around lighttpd PATH_INFO vs. SCRIPT_NAME bug
348           (Mark Blythe)
349         - add _application accessor to Catalyst::Base
350         - Support current_view
351         - Allow use of Catalyst::Test without app name (Ton Voon, Altinity)
352         - Catalyst::Manual moved to its own package
353         - Add option to FastCGI engine to send errors to stdout, not the web server
354         - Use Module::Install's auto_install to install prerequisite modules 
355         - various documentation fixes and improvements
356         
357 5.7003   2006-09-21 16:29:45
358         - Additions and updates to tutorial
359
360 5.7002   2006-09-17 19:35:32
361         - unescape captures to match args
362         - fix for relative Chained under namespace '' (root)
363         - fix for hashrefs in action attributes from config
364         - fix for Chained to require correct number of CaptureArgs
365
366 5.7001   2006-07-19 23:46:54
367         - fix for component loading
368         - uri_for and uri_with now behave as they used to with non-
369           array references
370
371 5.7000   2006-07-07 08:08:08
372         - fix FCGI.pm warning message with FastCGI engine
373         - bumped inc::Module::Install to 0.63 in Makefile.PL
374         - fixes to uri_for_action for DispatchType::Chained
375         - Further doc work.
376         - Minor code cleanups 
377         - Changed catalyst.pl to depend on Catalyst::Devel
378
379 5.70_03  2006-06-28 16:42:00
380         - fixup to registered plugins debug at app startup
381         - refactored Catalyst::Utils::home
382
383 5.70_02  2006-06-27 11:51:00
384         - Updated tutorial.
385
386 5.70_01  2006-06-26 10:49:00
387
388         - fixed a Catalyst::Base bug causing duplicate action registrations
389         - modified DispatchTypes to support multiple registrations
390         - added Catalyst::Runtime module as dist marker
391         - added Catalyst::ActionChain and Chained DispatchType
392         - removed retarded registration requirement in dispatcher
393         - removed Module::Pluggable::Fast hack in favor of
394           Module::Pluggable::Object
395         - extended uri_for, added dispatcher->uri_for_action
396         - added Catalyst::Base->action_for('methodname')
397         - checked and tested :Args multimethod dispatch
398         - added ability to set action attributes from controller config
399         - added merge_config_hashes() as a convenience method
400         - Swapped out CGI::Cookie in favour of CGI::Simple::Cookie
401         - Removed test dependencies on Test::NoWarnings, Test::MockObject
402         - Removed dependency on UNIVERSAL::require
403         - Split out Catalyst::Helper into a new distribution
404         - un-bundled the plugins as they are now pre-reqs for Catalyst::Helper
405         - nuked each() out of core with prejudice (due to lurking buglets)
406         - Added tests from phaylon for dispatcher precedence
407         - Use Class::Inspector->loaded($class) instead of $class->can('can')
408         - Added ActionClass attribute
409         - Removed Test::WWW::Mechanize::Catalyst from Makefile.PL (circular dep)
410         - Updated docs for Catalyst::Component
411         - Separated execute and dispatch on Catalyst::Action
412         - cleaned up logging and debug output
413         - significant documentation revisions
414         - Added warning for setup being called twice
415         - Fix pod to use DBIC::Schema instead of DBIC model
416         - Fix ->config failing to copy _config for subclassing
417         - Updated log format
418         - Updated debug dump
419
420 5.6902  2006-05-04 13:00:00
421         - Remove tarballs and OSX metadata files.
422
423 5.6901  2006-05-03 11.17:00
424         - Module::Install didn't overwrite META.yml. 
425
426 5.6900  2006-05-03 11.17:00
427         - Stupid pause indexer can't count.
428         - Better fix for Catalyst::Test
429         - more tests.
430
431 5.682   2006-04-27 13:51:00
432         - Damn OSX attributes again :( 
433
434 5.681   2006-04-27 08:47:00
435         - Updated manifest.
436         - Add basename to core . (Deprecates Catalyst::Plugin::Basename)
437     
438 5.68    2006-04-26 12:23:00
439         - ConfigLoader: Updated to version 0.06
440         - fixed undef warnings in uri_for() and uri_with()
441         - Fixed Catalyst::Test to report errors on failed Class load
442
443 5.678   2006-04-24 12:30:00
444         - Re-release of 5.67 without OSX metadata files.
445
446 5.67    2006-04-23 08:50:00
447         - Added $c->req->uri_with() helper
448         - ConfigLoader: Updated to version 0.05
449         - Fix up Engine to avoid a new 5.8.8 warning
450         - Added app name with :: support for PAR
451         - Added $c->models/views/controllers
452         - Static::Simple: Unescape the URI path before looking for the file.
453           This fixes issues with files that have spaces.
454         - Looping and recursion tests plus a fix
455         - Added lots of API documentation. Refactored main pod.
456         - Changed default behaviors for $c->model/$c->controller/$c->view
457           to more sane settings.
458         - added the clear_errors method - an alias for error(0)
459         - Added tmpdir option for uploads (woremacx)
460         - Applied patch from GEOFFR to allow normal filehandles.
461         - Refactored Dispatcher internals for better readability and speedup
462           (stress tests run 12% faster)
463         - Allow $c->error to run as a class method
464
465 5.66    2006-03-10 17:48:00
466         - Added Test::WWW::Mechanize::Catalyst support
467         - Cleaned generated tests
468         - Added Root controller concept
469         - Updated ConfigLoader plugin to version 0.04
470
471 5.65    2006-02-21 10:34:00
472         - Added plugin introspection.
473         - Support optional hashref as last param for parameters in uri_for.
474         - Updated tutorial to be more complete.
475         - Applied args patch from antirice (Fixes Ticket #67)
476
477 5.64    2006-02-07 20:29:00
478         - Fixed bug in FastCGI proc manager mode where pm_post_dispatch
479           was not run. (Eric Wong)
480         - Cleaned up generated tests
481         - Updated YAML support to use ConfigLoader
482         - Fixed path dispatch to canonicalise correctly
483             (see http://dev.catalyst.perl.org/ticket/62)
484         - Added Catalyst::Manual::About
485
486 5.63    2006-01-22 00:00:00
487         - Updated prereq versions
488
489 5.62    2006-01-17 16:30:00
490         - Large update to the tutorial (castaway)
491         - Added YAML config support
492         - Added COMPONENT() and ACCEPT_CONTEXT() support
493         - Action list in debug mode is now displayed as a tree in the
494           correct execution order.
495         - Fixed engine detection to allow custom mod_perl engines.
496         - Static::Simple: Fixed bug in ignore_dirs under win32.
497         - Display version numbers of loaded plugins. (Curtis Poe)
498         - Added class and method for caught exception messages.
499         - Updated PAR support to use "make catalyst_par",
500           packages are no longer written by Makefile.PL.
501         - Automatically determine Content-Length when serving a
502           filehandle.
503         - Exceptions now return status 500.
504         - Updated for Module::Install 0.44.
505         - Fixed additional file installation for multi level app names.
506         - Added REDIRECT_URL support for applications running behind
507           a RewriteRule in Apache. (Carl Franks)
508         - Fixed FastCGI engine under win32. (Carl Franks)
509         - FastCGI doc updates (Bill Moseley)
510         - Bugfix for $c->model and friends (defined).
511
512 5.61    2005-12-02 00:00:00
513         - Fixed ExtUtils::AutoInstall Bootstrap Code in Makefile.PL
514
515 5.60    2005-12-01 22:15:00
516         - Fixed Path and index actions in the appclass,
517           including those that attach to /
518         - Index is now weighted higher than Path
519         - Fixed restarter and -d debug switch in server.pl.
520         - Added a warning if you attempt to retrieve a parameter
521           using $c->req->params('foo').
522         - Fixed the Module::Install::Catalyst @ISA bug
523
524 5.59    2005-11-30 13:25:00
525         - Fixed shebang line for generated scripts
526         - Fixed forward to classes ($c->forward(qw/MyApp foo/))
527         - Wrap use block in begin to quelch C:C3 warnings
528         - Removed scrollbar from debug output
529         - Fixed catalyst_par_core() and catalyst_par_multiarch()
530
531 5.58    2005-11-24 10:51:00
532         - Added ExtUtils::AutoInstall support
533         - Allow overriding path in Catalyst::Helper.
534         - Added -makefile to catalyst.pl to generate a new Makefile.PL.
535         - Restored Catalyst::Build with a deprecation notice.
536         - Improved PAR support
537         - Replaced -short with auto-detection
538         - Fixed prereqs, added File::Copy::Recursive
539         - Static::Simple changes:
540             - Made prepare_action play nice with other plugins by not short-
541               circuiting.
542             - Added tmpl to the ignored extensions.
543             - Fixed security problem if req->path contained '..'.
544
545 5.57    2005-11-20 22:45:00
546         - Updated uri_for to accept undef actions
547         - Switched to Module::Install
548         - Renamed tests for easier editing
549         - Reformatted documentation
550         - Renamed -nonew to -force
551         - Added PAR support
552         - Added keep-alive support and bug fixes to HTTP engine.
553           (Sascha Kiefer)
554         - Added daemonize option to FastCGI engine. (Sam Vilain)
555
556 5.56   2005-11-16 10:33:00
557         - Fixed FastCGI engine to not clobber the global %ENV on each
558           request. (Sam Vilain)
559         - Updated benchmarking to work with detach
560         - Fixed dispatcher, so $c->req->action(undef) works again
561         - Updated Catalyst::Test to use HTTP::Request::AsCGI
562         - Added -pidfile to external FastCGI server.
563
564 5.55    2005-11-15 12:55:00
565         - Fixed multiple cookie handling
566
567 5.54    2005-11-14 22:55:00
568         - Fixed a Module::Pluggable::Fast related bug
569
570 5.53    2005-11-14 15:55:00
571         - Removed t/04prereq.t that was testing for non-required
572           modules.
573
574 5.52    2005-11-14 10:57:00
575         - Strip '..'s in static urls to fix security issue.
576
577 5.51    2005-11-14 00:45:00
578         - Changed uri_for to use namespace instead of match.
579
580 5.50    2005-11-13 20:45:00
581         - Fixed minor bugs.
582         - Updated docs.
583
584 5.49_05 2005-11-12 20:45:00
585         - Large update to the documentation. (David Kamholz)
586         - Fixed args handling in forward()
587         - Fixed forwarding to classes
588         - Fixed catalyst.pl-generated Build.PL Makefile section.
589         - Fixed relative forwarding
590         - Fixed forward arrows in debug output
591
592 5.49_04 2005-11-09 23:00:00
593         - Made context, dispatcher, engine, request and response classes
594           configurable.
595         - Added $c->stack.
596         - Fixed dispatcher to ignore unknown attributes.
597         - Improved format of startup debug log.
598         - Updated built in server to restart on win32. (Will Hawes)
599         - Fixed streaming write from a filehandle to stop writing
600           if the browser is closed.
601         - Added $c->controller, $c->model and $c->view shortcuts.
602         - Switched to Text::SimpleTable.
603
604 5.49_03 2005-11-03 12:00:00
605         - Fixed $c->req->{path} for backwards-compatibility.
606         - Allow debug to be disabled via ENV as well as enabled.
607         - Added -scripts option to catalyst.pl for script updating
608         - Changed helpers to default to long types, Controller instead of C
609         - Added Catalyst::Controller, Catalyst::Model and Catalyst::View
610           base classes
611         - Added JavaScript to debug screen to show and hide specific dumps
612         - Added _DISPATCH, _BEGIN, _AUTO, _ACTION and _END actions
613         - Added multi process external FastCGI support
614           (see myapp_fastcgi.pl -help) (Sam Vilain)
615         - Restarter process in HTTP engine now properly exits when the
616           parent app is shut down.  
617         - Improved performance of restarter loop while watching for
618           changed files.
619         - Restarter will now detect new files added to an app on systems
620           that change directory mtimes when new files are created.
621         - Restarter now properly handles modules that are deleted from an
622           application.
623         - Fixed memory leak in TestApp.
624
625 5.49_02 2005-10-26 12:39:00 
626         - Whole new dispatcher!
627         - Added index action
628         - Added path_to method
629         - Added support for passing an IO::Handle object to $c->res->body.
630           (Andrew Bramble)
631         - Added a new welcome screen.
632         - Included Catalyst buttons and icons in helper.
633         - Added Static::Simple plugin to core.
634         - Added self restarting test server
635         - Added filename to debug output for uploaded files.
636         - Fixed forwarding with embedded arguments.
637         - Fixed handling of escaped query strings.
638         - Added upload parameters back into $c->req->params.
639         - Added multiple paths support to dispatcher
640         - Fixed bug in req->path where changing the path added a trailing
641           slash.
642         - Removed req->handle and res->handle
643         - Added prepare_body_chunk method as a hook for upload progress.
644         - Fixed bug in uri_for method when base has no path.
645         - Added automated tests for HTTP, CGI, and FastCGI servers.
646
647 5.49_01 2005-10-10 10:15:00 
648         - Refactored all internals, should be 99% compatible to previous
649           versions.
650         - *IMPORTANT* The Apache engines have been moved to a separate package
651           for this release.  Please install Catalyst::Engine::Apache if you
652           need Apache support.
653
654         - Added support for calling forward with arguments in the path, i.e.
655           $c->forward('/foo/bar/arg1/arg2')
656         - Made $c->req->uri a URI object, added req->path_info for CGI compat.
657           Raw query string is available as $c->req->uri->query.
658         - Made $c->req->base a URI object.
659         - Parameters with multiple values (?a=1&a=2) now display properly
660           in the debug output.
661         - Semi-colon separators in query strings now work properly.
662         - Expanded documentation of catalyst.pl (Andrew Ford)
663         - Added support for running as a backend server behind a frontend
664           proxy so req->base and req->address are set properly.
665         - Added an 'abort' method to the Log api, so that you can
666           kill loggging for a whole request.
667         - Added $c->uri_for method to simplify url handling.
668         - Added more tests and reorganized the t directory.
669         - Reimplemented core engines, all are now CGI based for better test
670           coverage and maintainability.
671         - Added fork support to built in test server.
672         - Fixed all memory leaks.
673         - Thread-related bug fixes and tests.  We now believe the Catalyst
674           core to be thread-safe.
675         - Added streaming IO support through $c->req->read() and
676           $c->res->write()
677         - Added MyApp->config->{parse_on_demand} (streaming input)
678         - Added $c->req->handle and $c->res->handle
679         - Improved documentation
680         - Fixed mkpath in Catalyst::Helper (Autrijus Tang)
681         - Fixed bug in dispatcher where an invalid path could call a valid
682           action. (Andy Grundman)
683         - Fixed Helper so it works with CRLF line-endings. (Andy Grundman)
684
685 5.33  2005-08-10 15:25:00
686         - Now with updated manifest.
687
688 5.32  2005-08-10 15:10:00
689         - Dispatcher might fail if object returns false. (Florian Ragwitz)
690
691 5.31  2005-06-04 12:35:00 (never released to CPAN)
692
693         - helpers now create .new files where files already exist and differ
694         - fixed $Data::Dumper::Terse (Robin Berjon)
695         - added arguments for detach
696         - new credits section in pod
697         - fixed detach to allow relative action names (Matt and Robert)
698         - added the ability to have whitespaces in Path( '' ) and Regex( '' )
699
700 5.30  2005-06-04 12:35:00
701
702         - Fixed a bug where it was not possible to $c->forward to a 
703           component 
704           that was not inheriting from Catalyst::Base.
705         - Fix for inheritance bug.
706         - Allow forward with arguments.
707         - Updated cookbook
708         - Allow overriding home/root in config.
709         - make module build cons README automatically.
710         - prettify home path by resolving '..' (Andy Grundman)
711         - improved helper templates a bit, new naming scheme for tests.
712         - added support for case sensitivity, MyApp->config->{case_sensitive}
713         - added $c->detach for non-returning forwards
714         - added unified error handling, Catalyst::Exception
715         - added section on param handling in Intro.pod
716         - added $c->request->cookie
717         - added Catalyst::Setup
718         - refactored Catalyst::import()
719         - improved rendering of error messages in debug mode
720         - fixed a bug in Catalyst::Helper::mk_dir
721         - further doc changes, esp. to Intro.pod
722
723 5.23  2005-06-03 02:30:00
724         - added support for non Catalyst::Base components to live in namespace
725         - improved concurrency connections in Catalyst::Engine::HTTP::Daemon
726
727 5.22  2005-05-26 14:24:00
728         - improved base locating in MP engines
729         - improved error messages in C::E::HTTP::Daemon
730         - hostnames are now resolved on demand unless provided by engine
731         - fixed memory leak in $c->execute (Michael Reece, Matt S Trout)
732
733 5.21  2005-05-24 14:56:00
734         - fixed a bug in https detection
735         - fixed auto chain finally
736         - added MYAPP_HOME and CATALYST_HOME environment variables
737
738 5.20  2005-05-18 19:52:00
739         - improved uploads and parameters
740         - added $c->req->protocol and $c->req->secure
741         - added $c->req->user and $c->req->uri
742         - improved error message when forwarding to unknown module
743         - fixed win32 installer
744         - added deep recursion detection
745         - fixed auto actions
746         - fixed inheritance in dispatcher
747         - allow whitespaces between brackets and quoted string
748           in Path and Regex attributes
749         - new helper templates
750         - installer now supports install_base and destdir
751         - allow multiple Catalyst apps to run on the same mod_perl
752           instance (not the same app!)
753         - fixed MP2 engines
754         - removed apreq dependency from all MP engines
755         - added support for MP registry scripts
756         - added support for LocationMatch and ScriptAliasMatch in MP engines
757         - added SpeedyCGI engine
758
759 5.10  2005-04-23 11:16:00
760         - updated dependencies to require latest module::pluggable::fast
761         - new installer for templates and stuff using Module::Build
762         - scripts are now prefixed, for being installable
763         IMPORTANT: You have to regenerate the script directory,
764         remove Makefile.PL and add Build.PL
765         - Added compat to install Module::Build if required.
766         - Improved: Params handling with MP engines
767         - Fixed: Params handling on POST with CGI engine (Andy Grundman)
768         - Fixed: Helper.pm on Win32 (Matt S Trout)
769
770 5.03  2005-04-19 20:35:00 (Revision 462)
771         - fixed Test example (Torsten Seeman)
772         - added Plugins chapter to manual
773         - applied doc patch from Robert Boone <robert@rlb3.com>
774         - improved Dispatcher error messages.
775         - refactored so we don't need to include helper from
776           Catalyst.pm - Fixes issues with FindBin
777         - applied HTTP.pm patch from Andy Grundman <andy@hybridized.org>
778         - added plugin() method for instant plugins
779         - FCGI is no more considered experimental
780
781 5.02  2005-04-18 10:00:00 
782         - fixed manifest
783
784 5.01  2005-04-17 23:00:00 
785         - some documentation bugs fixed
786         - added Catalyst::Utils
787         - fixed regexp bug (Matt S Trout)
788         - fixed upload bug with MP19
789         - added $c->req->body
790         - aliased $c->res->output to $c->res->body
791         - Read AUTHOR from passwd or $ENV{AUTHOR} when 
792           generating code.
793         - extended attribute handling
794         - added global config for components
795
796 5.00  2005-04-15 18:00:00
797         - new core to support inheritance trees
798         - new syntax for action declaration
799         - new helper system using TT2
800         - problems with mod_perl2 fixed
801         - added Test::Pod support
802         - added new server backend with HTTP/1.1 support
803         - added option to run tests against a remote server
804         - renamed errors() to error()
805         - more better docs
806         - countless minor improvements
807           IMPORTANT: This release is very incompatible to previous ones
808           and you have to regenerate the helper scripts again...
809
810 4.34  2005-03-23 07:00:00 2005
811         - added some messages to Makefile.PL
812         - added Catalyst::Engine::Test
813         - added Catalyst::Engine::CGI::NPH
814         - simplified Catalyst::Log to be easier to implement/subclass
815         - added cgi.pl
816         - updated Catalyst::Test to use Catalyst::Engine::Test
817         - updated helper scripts
818           IMPORTANT: this will be the last time you'll have to regenerate
819           the script directory. We promise!
820
821 4.33  2005-03-23 01:00:00 2005
822         - documented the log() accessor method in Catalyst (Andrew Ford)
823         - added optional arguments to Catalyst::Log methods (Andrew Ford)
824         - removed cgi-server.pl
825         - added fcgi.pl and Catalyst::Engine::FCGI
826         - fixed an undef durng make test (Dan Sully)
827         - new path test (Christian Hansen)
828           IMPORTANT: you have to regenerate the script directory again
829
830 4.32  2005-03-22 02:10:00 2005
831         - made a damn typo *AAAAAAAAAAAAAAHHHH!!!*
832
833 4.31  2005-03-22 02:00:00
834         - fixed inheritance (Christian Hansen)
835         - previous release was borked!
836           fixed that, but you have to regenerate the scripts again :(
837
838 4.30  2005-03-21 23:00:00 
839         - more documentation (Andrew Ford)
840         - added connection informations (Christian Hansen)
841         - HTTP::Request support in Catalyst::Test (Christian Hansen)
842         - moved cgi.pl to nph-cgi.pl
843         - added Catalyst::Engine::Server (Christian Hansen)
844         - removed Catalyst::Test::server
845         - updated helper scripts
846           IMPORTANT: note that you have to regenerate script/server.pl,
847           script/cgi-server.pl and script/cgi.pl (now nph-cgi.pl)
848
849 4.28  2005-03-19 22:00:00
850         - fixed isa tree (Christian Hansen)
851         - added script/cgi-server.pl, so no more server restarting after
852           code changes
853         - reworked documentation (Andrew Ford <A.Ford@ford-mason.co.uk>)
854
855 4.27  2005-03-19 01:00:00
856         - debug message for parameters
857         - Fix redirects (Christian Hansen <ch@ngmedia.com>)
858         - some random fixes
859         - new helper api for Catalyst::Helper::* support
860           you have to update script/create.pl to use it
861
862 4.26  2005-03-16 10:00:00
863         - fixed the weird bug that caused regex actions to fail on every
864           second request
865         - more debug messages
866         - 100% pod coverage.
867
868 4.25  2005-03-12 18:00:00
869         - correct perl pathes for helper generated scripts (Tatsuhiko Miyagawa)
870         - improved cgi engine docs (Christoper Hicks)
871
872 4.24  2005-03-12 01:00:00
873         - updated cookbook example  
874         - fixed base for apache and https (Andrew Ruthven)
875         
876 4.23  2005-03-09 20:00:00
877         - no more regex actions in forward
878         - added support for test directories t/m, t/v and t/c
879
880 4.22  2005-03-08 20:00:00
881         - catch errors in application class
882         - handle die properly.
883
884 4.21  2005-03-05 17:00:00
885         - fixed docs
886
887 4.20  2005-03-04 22:00:00
888         - moved bin to script
889
890 4.13  2005-03-03 11:00:00
891         - improved documentation
892         - pod coverage test for helper generated apps
893         - new helper api
894
895 4.12  2005-03-02 11:00:00 2005
896         - server_base sucks, removed
897         - added $c->log->dump()
898
899 4.11  2005-03-02 11:00:00 2005
900         - removed some warnings
901         - improved docs
902         - private prefixed actions override private non prefixed actions
903         - added server_base
904         - updated Catalyst::Manual::Intro
905
906 4.10  2005-03-02 10:00:00 2005
907         - improved documentation
908         - fixed upload bug
909         - fixed prefixed private actions bug
910         - fixed more little bugs
911
912 4.01  2005-03-01 10:00:00 2005
913         - improved documentation
914         - documentation fixes (Johan Lindstrom)
915
916 4.00  2005-02-27 22:00:00
917         - more verbose debug messages, especially for forward()
918         - implemented prefixed prvate actions, icluding built in
919           !?default, !?begin and !?end
920         - new Catalyst::Manual::Intro
921         - new helpers, bin/catalyst
922         - helper api
923
924 3.11  2005-02-23 21:00:00
925         - added dependency to UNIVERSAL::require (Marcus Ramberg)
926         - added a little workaround for a warning in Catalyst::Test
927           (Marcus Ramberg)
928         - improved documentation for actions
929
930 3.10  2005-02-19 20:00:00
931         - removed roles management from Catalyst::Engine
932           and added it to Catalyst::Plugin::Authentication::CDBI
933
934 3.04  2005-02-17 21:00:00 
935         - error reporting for app class
936         - no more engine debug messages
937         - class->method forwards get resolved now
938
939 3.03  2005-02-16 23:00:00 
940         - friendlier statistics
941
942 3.02  2005-02-16 22:00:00
943         - fixed unintialized actions (Marcus Ramberg)
944
945 3.01  2005-02-16 20:30:00
946         - better statistics
947
948 3.00  2005-02-16 20:00:00
949         - real version number for CPAN.pm
950         - fixed redirect in CGI engine
951         - more statistics in debug logs
952         - ? prefix for forward()
953
954 2.99_15  2005-02-02 22:00:00
955         - support for short namespaces, MyApp::M, MyApp::V and MyApp::C
956         - Replaced "Catched" with "Caught" in Catalyst::Engine
957           (Gary Ashton Jones)
958         - replaced _ with ! for private actions
959         - added ? for prefixed actions
960         - misc improvememts
961
962 2.99_14  2005-01-31 22:00:00 2005
963         - arguments for _default
964         - $c->entrance removed for more flexibility
965         - added $c->req->method
966
967 2.99_13  2005-01-30 18:00:00 2005
968         - POD fixes and improvements
969
970 2.99_12  2005-01-28 22:00:00 2005
971         - first development release