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