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