updated Changes
[catagits/Catalyst-Runtime.git] / Changes
1 This file documents the revision history for Perl extension Catalyst.
2
3         - fixed a Catalyst::Base bug causing duplicate action registrations
4         - modified DispatchTypes to support multiple registrations
5         - added Catalyst::Runtime module as dist marker
6         - added Catalyst::ActionChain and Chained DispatchType
7         - removed retarded registration requirement in dispatcher
8         - removed Module::Pluggable::Fast hack in favor of
9           Module::Pluggable::Object
10         - extended uri_for, added dispatcher->uri_for_action
11         - added Catalyst::Base->action_for('methodname')
12         - checked and tested :Args multimethod dispatch
13         - added ability to set action attributes from controller config
14         - added merge_config_hashes() as a convenience method
15         - Swapped out CGI::Cookie in favour of CGI::Simple::Cookie
16         - Removed test dependencies on Test::NoWarnings, Test::MockObject
17         - Removed dependency on UNIVERSAL::require
18         - Split out Catalyst::Helper into a new distribution
19         - un-bundled the plugins as they are now pre-reqs for Catalyst::Helper
20         - nuked each() out of core with prejudice (due to lurking buglets)
21         - Added tests from phaylon for dispatcher precedence
22         - Use Class::Inspector->loaded($class) instead of $class->can('can')
23         - Added ActionClass attribute
24         - Removed Test::WWW::Mechanize::Catalyst from Makefile.PL (circular dep)
25         - Updated docs for Catalyst::Component
26         - Separated execute and dispatch on Catalyst::Action
27         - cleaned up logging and debug output
28         - minor doc fixes
29         - Added warning for setup being called twice
30         - Fix pod to use DBIC::Schema instead of DBIC model
31         - Fix ->config failing to copy _config for subclassing
32         - Updated log format
33         - Updated debug dump
34
35 5.6902  2006-05-04 13:00:00
36         - Remove tarballs and OSX metadata files.
37
38 5.6901  2006-05-03 11.17:00
39         - Module::Install didn't overwrite META.yml. 
40
41 5.6900  2006-05-03 11.17:00
42         - Stupid pause indexer can't count.
43         - Better fix for Catalyst::Test
44         - more tests.
45
46 5.682   2006-04-27 13:51:00
47         - Damn OSX attributes again :( 
48
49 5.681   2006-04-27 08:47:00
50         - Updated manifest.
51         - Add basename to core . (Deprecates Catalyst::Plugin::Basename)
52     
53 5.68    2006-04-26 12:23:00
54         - ConfigLoader: Updated to version 0.06
55         - fixed undef warnings in uri_for() and uri_with()
56         - Fixed Catalyst::Test to report errors on failed Class load
57
58 5.678   2006-04-24 12:30:00
59         - Re-release of 5.67 without OSX metadata files.
60
61 5.67    2006-04-23 08:50:00
62         - Added $c->req->uri_with() helper
63         - ConfigLoader: Updated to version 0.05
64         - Fix up Engine to avoid a new 5.8.8 warning
65         - Added app name with :: support for PAR
66         - Added $c->models/views/controllers
67         - Static::Simple: Unescape the URI path before looking for the file.
68           This fixes issues with files that have spaces.
69         - Looping and recursion tests plus a fix
70         - Added lots of API documentation. Refactored main pod.
71         - Changed default behaviors for $c->model/$c->controller/$c->view
72           to more sane settings.
73         - added the clear_errors method - an alias for error(0)
74         - Added tmpdir option for uploads (woremacx)
75         - Applied patch from GEOFFR to allow normal filehandles.
76         - Refactored Dispatcher internals for better readability and speedup
77           (stress tests run 12% faster)
78         - Allow $c->error to run as a class method
79
80 5.66    2006-03-10 17:48:00
81         - Added Test::WWW::Mechanize::Catalyst support
82         - Cleaned generated tests
83         - Added Root controller concept
84         - Updated ConfigLoader plugin to version 0.04
85
86 5.65    2006-02-21 10:34:00
87         - Added plugin introspection.
88         - Support optional hashref as last param for parameters in uri_for.
89         - Updated tutorial to be more complete.
90         - Applied args patch from antirice (Fixes Ticket #67)
91
92 5.64    2006-02-07 20:29:00
93         - Fixed bug in FastCGI proc manager mode where pm_post_dispatch
94           was not run. (Eric Wong)
95         - Cleaned up generated tests
96         - Updated YAML support to use ConfigLoader
97         - Fixed path dispatch to canonicalise correctly
98             (see http://dev.catalyst.perl.org/ticket/62)
99         - Added Catalyst::Manual::About
100
101 5.63    2006-01-22 00:00:00
102         - Updated prereq versions
103
104 5.62    2006-01-17 16:30:00
105         - Large update to the tutorial (castaway)
106         - Added YAML config support
107         - Added COMPONENT() and ACCEPT_CONTEXT() support
108         - Action list in debug mode is now displayed as a tree in the
109           correct execution order.
110         - Fixed engine detection to allow custom mod_perl engines.
111         - Static::Simple: Fixed bug in ignore_dirs under win32.
112         - Display version numbers of loaded plugins. (Curtis Poe)
113         - Added class and method for caught exception messages.
114         - Updated PAR support to use "make catalyst_par",
115           packages are no longer written by Makefile.PL.
116         - Automatically determine Content-Length when serving a
117           filehandle.
118         - Exceptions now return status 500.
119         - Updated for Module::Install 0.44.
120         - Fixed additional file installation for multi level app names.
121         - Added REDIRECT_URL support for applications running behind
122           a RewriteRule in Apache. (Carl Franks)
123         - Fixed FastCGI engine under win32. (Carl Franks)
124         - FastCGI doc updates (Bill Moseley)
125         - Bugfix for $c->model and friends (defined).
126
127 5.61    2005-12-02 00:00:00
128         - Fixed ExtUtils::AutoInstall Bootstrap Code in Makefile.PL
129
130 5.60    2005-12-01 22:15:00
131         - Fixed Path and index actions in the appclass,
132           including those that attach to /
133         - Index is now weighted higher than Path
134         - Fixed restarter and -d debug switch in server.pl.
135         - Added a warning if you attempt to retrieve a parameter
136           using $c->req->params('foo').
137         - Fixed the Module::Install::Catalyst @ISA bug
138
139 5.59    2005-11-30 13:25:00
140         - Fixed shebang line for generated scripts
141         - Fixed forward to classes ($c->forward(qw/MyApp foo/))
142         - Wrap use block in begin to quelch C:C3 warnings
143         - Removed scrollbar from debug output
144         - Fixed catalyst_par_core() and catalyst_par_multiarch()
145
146 5.58    2005-11-24 10:51:00
147         - Added ExtUtils::AutoInstall support
148         - Allow overriding path in Catalyst::Helper.
149         - Added -makefile to catalyst.pl to generate a new Makefile.PL.
150         - Restored Catalyst::Build with a deprecation notice.
151         - Improved PAR support
152         - Replaced -short with auto-detection
153         - Fixed prereqs, added File::Copy::Recursive
154         - Static::Simple changes:
155             - Made prepare_action play nice with other plugins by not short-
156               circuiting.
157             - Added tmpl to the ignored extensions.
158             - Fixed security problem if req->path contained '..'.
159
160 5.57    2005-11-20 22:45:00
161         - Updated uri_for to accept undef actions
162         - Switched to Module::Install
163         - Renamed tests for easier editing
164         - Reformatted documentation
165         - Renamed -nonew to -force
166         - Added PAR support
167         - Added keep-alive support and bug fixes to HTTP engine.
168           (Sascha Kiefer)
169         - Added daemonize option to FastCGI engine. (Sam Vilain)
170
171 5.56   2005-11-16 10:33:00
172         - Fixed FastCGI engine to not clobber the global %ENV on each
173           request. (Sam Vilain)
174         - Updated benchmarking to work with detach
175         - Fixed dispatcher, so $c->req->action(undef) works again
176         - Updated Catalyst::Test to use HTTP::Request::AsCGI
177         - Added -pidfile to external FastCGI server.
178
179 5.55    2005-11-15 12:55:00
180         - Fixed multiple cookie handling
181
182 5.54    2005-11-14 22:55:00
183         - Fixed a Module::Pluggable::Fast related bug
184
185 5.53    2005-11-14 15:55:00
186         - Removed t/04prereq.t that was testing for non-required
187           modules.
188
189 5.52    2005-11-14 10:57:00
190         - Strip '..'s in static urls to fix security issue.
191
192 5.51    2005-11-14 00:45:00
193         - Changed uri_for to use namespace instead of match.
194
195 5.50    2005-11-13 20:45:00
196         - Fixed minor bugs.
197         - Updated docs.
198
199 5.49_05 2005-11-12 20:45:00
200         - Large update to the documentation. (David Kamholz)
201         - Fixed args handling in forward()
202         - Fixed forwarding to classes
203         - Fixed catalyst.pl-generated Build.PL Makefile section.
204         - Fixed relative forwarding
205         - Fixed forward arrows in debug output
206
207 5.49_04 2005-11-09 23:00:00
208         - Made context, dispatcher, engine, request and response classes
209           configurable.
210         - Added $c->stack.
211         - Fixed dispatcher to ignore unknown attributes.
212         - Improved format of startup debug log.
213         - Updated built in server to restart on win32. (Will Hawes)
214         - Fixed streaming write from a filehandle to stop writing
215           if the browser is closed.
216         - Added $c->controller, $c->model and $c->view shortcuts.
217         - Switched to Text::SimpleTable.
218
219 5.49_03 2005-11-03 12:00:00
220         - Fixed $c->req->{path} for backwards-compatibility.
221         - Allow debug to be disabled via ENV as well as enabled.
222         - Added -scripts option to catalyst.pl for script updating
223         - Changed helpers to default to long types, Controller instead of C
224         - Added Catalyst::Controller, Catalyst::Model and Catalyst::View
225           base classes
226         - Added JavaScript to debug screen to show and hide specific dumps
227         - Added _DISPATCH, _BEGIN, _AUTO, _ACTION and _END actions
228         - Added multi process external FastCGI support
229           (see myapp_fastcgi.pl -help) (Sam Vilain)
230         - Restarter process in HTTP engine now properly exits when the
231           parent app is shut down.  
232         - Improved performance of restarter loop while watching for
233           changed files.
234         - Restarter will now detect new files added to an app on systems
235           that change directory mtimes when new files are created.
236         - Restarter now properly handles modules that are deleted from an
237           application.
238         - Fixed memory leak in TestApp.
239
240 5.49_02 2005-10-26 12:39:00 
241         - Whole new dispatcher!
242         - Added index action
243         - Added path_to method
244         - Added support for passing an IO::Handle object to $c->res->body.
245           (Andrew Bramble)
246         - Added a new welcome screen.
247         - Included Catalyst buttons and icons in helper.
248         - Added Static::Simple plugin to core.
249         - Added self restarting test server
250         - Added filename to debug output for uploaded files.
251         - Fixed forwarding with embedded arguments.
252         - Fixed handling of escaped query strings.
253         - Added upload parameters back into $c->req->params.
254         - Added multiple paths support to dispatcher
255         - Fixed bug in req->path where changing the path added a trailing
256           slash.
257         - Removed req->handle and res->handle
258         - Added prepare_body_chunk method as a hook for upload progress.
259         - Fixed bug in uri_for method when base has no path.
260         - Added automated tests for HTTP, CGI, and FastCGI servers.
261
262 5.49_01 2005-10-10 10:15:00 
263         - Refactored all internals, should be 99% compatible to previous
264           versions.
265         - *IMPORTANT* The Apache engines have been moved to a separate package
266           for this release.  Please install Catalyst::Engine::Apache if you
267           need Apache support.
268
269         - Added support for calling forward with arguments in the path, i.e.
270           $c->forward('/foo/bar/arg1/arg2')
271         - Made $c->req->uri a URI object, added req->path_info for CGI compat.
272           Raw query string is available as $c->req->uri->query.
273         - Made $c->req->base a URI object.
274         - Parameters with multiple values (?a=1&a=2) now display properly
275           in the debug output.
276         - Semi-colon separators in query strings now work properly.
277         - Expanded documentation of catalyst.pl (Andrew Ford)
278         - Added support for running as a backend server behind a frontend
279           proxy so req->base and req->address are set properly.
280         - Added an 'abort' method to the Log api, so that you can
281           kill loggging for a whole request.
282         - Added $c->uri_for method to simplify url handling.
283         - Added more tests and reorganized the t directory.
284         - Reimplemented core engines, all are now CGI based for better test
285           coverage and maintainability.
286         - Added fork support to built in test server.
287         - Fixed all memory leaks.
288         - Thread-related bug fixes and tests.  We now believe the Catalyst
289           core to be thread-safe.
290         - Added streaming IO support through $c->req->read() and
291           $c->res->write()
292         - Added MyApp->config->{parse_on_demand} (streaming input)
293         - Added $c->req->handle and $c->res->handle
294         - Improved documentation
295         - Fixed mkpath in Catalyst::Helper (Autrijus Tang)
296         - Fixed bug in dispatcher where an invalid path could call a valid
297           action. (Andy Grundman)
298         - Fixed Helper so it works with CRLF line-endings. (Andy Grundman)
299
300 5.33  2005-08-10 15:25:00
301         - Now with updated manifest.
302
303 5.32  2005-08-10 15:10:00
304         - Dispatcher might fail if object returns false. (Florian Ragwitz)
305
306 5.31  2005-06-04 12:35:00 (never released to CPAN)
307
308         - helpers now create .new files where files already exist and differ
309         - fixed $Data::Dumper::Terse (Robin Berjon)
310         - added arguments for detach
311         - new credits section in pod
312         - fixed detach to allow relative action names (Matt and Robert)
313         - added the ability to have whitespaces in Path( '' ) and Regex( '' )
314
315 5.30  2005-06-04 12:35:00
316
317         - Fixed a bug where it was not possible to $c->forward to a 
318           component 
319           that was not inheriting from Catalyst::Base.
320         - Fix for inheritance bug.
321         - Allow forward with arguments.
322         - Updated cookbook
323         - Allow overriding home/root in config.
324         - make module build cons README automatically.
325         - prettify home path by resolving '..' (Andy Grundman)
326         - improved helper templates a bit, new naming scheme for tests.
327         - added support for case sensitivity, MyApp->config->{case_sensitive}
328         - added $c->detach for non-returning forwards
329         - added unified error handling, Catalyst::Exception
330         - added section on param handling in Intro.pod
331         - added $c->request->cookie
332         - added Catalyst::Setup
333         - refactored Catalyst::import()
334         - improved rendering of error messages in debug mode
335         - fixed a bug in Catalyst::Helper::mk_dir
336         - further doc changes, esp. to Intro.pod
337
338 5.23  2005-06-03 02:30:00
339         - added support for non Catalyst::Base components to live in namespace
340         - improved concurrency connections in Catalyst::Engine::HTTP::Daemon
341
342 5.22  2005-05-26 14:24:00
343         - improved base locating in MP engines
344         - improved error messages in C::E::HTTP::Daemon
345         - hostnames are now resolved on demand unless provided by engine
346         - fixed memory leak in $c->execute (Michael Reece, Matt S Trout)
347
348 5.21  2005-05-24 14:56:00
349         - fixed a bug in https detection
350         - fixed auto chain finally
351         - added MYAPP_HOME and CATALYST_HOME environment variables
352
353 5.20  2005-05-18 19:52:00
354         - improved uploads and parameters
355         - added $c->req->protocol and $c->req->secure
356         - added $c->req->user and $c->req->uri
357         - improved error message when forwarding to unknown module
358         - fixed win32 installer
359         - added deep recursion detection
360         - fixed auto actions
361         - fixed inheritance in dispatcher
362         - allow whitespaces between brackets and quoted string
363           in Path and Regex attributes
364         - new helper templates
365         - installer now supports install_base and destdir
366         - allow multiple Catalyst apps to run on the same mod_perl
367           instance (not the same app!)
368         - fixed MP2 engines
369         - removed apreq dependency from all MP engines
370         - added support for MP registry scripts
371         - added support for LocationMatch and ScriptAliasMatch in MP engines
372         - added SpeedyCGI engine
373
374 5.10  2005-04-23 11:16:00
375         - updated dependencies to require latest module::pluggable::fast
376         - new installer for templates and stuff using Module::Build
377         - scripts are now prefixed, for being installable
378         IMPORTANT: You have to regenerate the script directory,
379         remove Makefile.PL and add Build.PL
380         - Added compat to install Module::Build if required.
381         - Improved: Params handling with MP engines
382         - Fixed: Params handling on POST with CGI engine (Andy Grundman)
383         - Fixed: Helper.pm on Win32 (Matt S Trout)
384
385 5.03  2005-04-19 20:35:00 (Revision 462)
386         - fixed Test example (Torsten Seeman)
387         - added Plugins chapter to manual
388         - applied doc patch from Robert Boone <robert@rlb3.com>
389         - improved Dispatcher error messages.
390         - refactored so we don't need to include helper from
391           Catalyst.pm - Fixes issues with FindBin
392         - applied HTTP.pm patch from Andy Grundman <andy@hybridized.org>
393         - added plugin() method for instant plugins
394         - FCGI is no more considered experimental
395
396 5.02  2005-04-18 10:00:00 
397         - fixed manifest
398
399 5.01  2005-04-17 23:00:00 
400         - some documentation bugs fixed
401         - added Catalyst::Utils
402         - fixed regexp bug (Matt S Trout)
403         - fixed upload bug with MP19
404         - added $c->req->body
405         - aliased $c->res->output to $c->res->body
406         - Read AUTHOR from passwd or $ENV{AUTHOR} when 
407           generating code.
408         - extended attribute handling
409         - added global config for components
410
411 5.00  2005-04-15 18:00:00
412         - new core to support inheritance trees
413         - new syntax for action declaration
414         - new helper system using TT2
415         - problems with mod_perl2 fixed
416         - added Test::Pod support
417         - added new server backend with HTTP/1.1 support
418         - added option to run tests against a remote server
419         - renamed errors() to error()
420         - more better docs
421         - countless minor improvements
422           IMPORTANT: This release is very incompatible to previous ones
423           and you have to regenerate the helper scripts again...
424
425 4.34  2005-03-23 07:00:00 2005
426         - added some messages to Makefile.PL
427         - added Catalyst::Engine::Test
428         - added Catalyst::Engine::CGI::NPH
429         - simplified Catalyst::Log to be easier to implement/subclass
430         - added cgi.pl
431         - updated Catalyst::Test to use Catalyst::Engine::Test
432         - updated helper scripts
433           IMPORTANT: this will be the last time you'll have to regenerate
434           the script directory. We promise!
435
436 4.33  2005-03-23 01:00:00 2005
437         - documented the log() accessor method in Catalyst (Andrew Ford)
438         - added optional arguments to Catalyst::Log methods (Andrew Ford)
439         - removed cgi-server.pl
440         - added fcgi.pl and Catalyst::Engine::FCGI
441         - fixed an undef durng make test (Dan Sully)
442         - new path test (Christian Hansen)
443           IMPORTANT: you have to regenerate the script directory again
444
445 4.32  2005-03-22 02:10:00 2005
446         - made a damn typo *AAAAAAAAAAAAAAHHHH!!!*
447
448 4.31  2005-03-22 02:00:00
449         - fixed inheritance (Christian Hansen)
450         - previous release was borked!
451           fixed that, but you have to regenerate the scripts again :(
452
453 4.30  2005-03-21 23:00:00 
454         - more documentation (Andrew Ford)
455         - added connection informations (Christian Hansen)
456         - HTTP::Request support in Catalyst::Test (Christian Hansen)
457         - moved cgi.pl to nph-cgi.pl
458         - added Catalyst::Engine::Server (Christian Hansen)
459         - removed Catalyst::Test::server
460         - updated helper scripts
461           IMPORTANT: note that you have to regenerate script/server.pl,
462           script/cgi-server.pl and script/cgi.pl (now nph-cgi.pl)
463
464 4.28  2005-03-19 22:00:00
465         - fixed isa tree (Christian Hansen)
466         - added script/cgi-server.pl, so no more server restarting after
467           code changes
468         - reworked documentation (Andrew Ford <A.Ford@ford-mason.co.uk>)
469
470 4.27  2005-03-19 01:00:00
471         - debug message for parameters
472         - Fix redirects (Christian Hansen <ch@ngmedia.com>)
473         - some random fixes
474         - new helper api for Catalyst::Helper::* support
475           you have to update script/create.pl to use it
476
477 4.26  2005-03-16 10:00:00
478         - fixed the weird bug that caused regex actions to fail on every
479           second request
480         - more debug messages
481         - 100% pod coverage.
482
483 4.25  2005-03-12 18:00:00
484         - correct perl pathes for helper generated scripts (Tatsuhiko Miyagawa)
485         - improved cgi engine docs (Christoper Hicks)
486
487 4.24  2005-03-12 01:00:00
488         - updated cookbook example  
489         - fixed base for apache and https (Andrew Ruthven)
490         
491 4.23  2005-03-09 20:00:00
492         - no more regex actions in forward
493         - added support for test directories t/m, t/v and t/c
494
495 4.22  2005-03-08 20:00:00
496         - catch errors in application class
497         - handle die properly.
498
499 4.21  2005-03-05 17:00:00
500         - fixed docs
501
502 4.20  2005-03-04 22:00:00
503         - moved bin to script
504
505 4.13  2005-03-03 11:00:00
506         - improved documentation
507         - pod coverage test for helper generated apps
508         - new helper api
509
510 4.12  2005-03-02 11:00:00 2005
511         - server_base sucks, removed
512         - added $c->log->dump()
513
514 4.11  2005-03-02 11:00:00 2005
515         - removed some warnings
516         - improved docs
517         - private prefixed actions override private non prefixed actions
518         - added server_base
519         - updated Catalyst::Manual::Intro
520
521 4.10  2005-03-02 10:00:00 2005
522         - improved documentation
523         - fixed upload bug
524         - fixed prefixed private actions bug
525         - fixed more little bugs
526
527 4.01  2005-03-01 10:00:00 2005
528         - improved documentation
529         - documentation fixes (Johan Lindstrom)
530
531 4.00  2005-02-27 22:00:00
532         - more verbose debug messages, especially for forward()
533         - implemented prefixed prvate actions, icluding built in
534           !?default, !?begin and !?end
535         - new Catalyst::Manual::Intro
536         - new helpers, bin/catalyst
537         - helper api
538
539 3.11  2005-02-23 21:00:00
540         - added dependency to UNIVERSAL::require (Marcus Ramberg)
541         - added a little workaround for a warning in Catalyst::Test
542           (Marcus Ramberg)
543         - improved documentation for actions
544
545 3.10  2005-02-19 20:00:00
546         - removed roles management from Catalyst::Engine
547           and added it to Catalyst::Plugin::Authentication::CDBI
548
549 3.04  2005-02-17 21:00:00 
550         - error reporting for app class
551         - no more engine debug messages
552         - class->method forwards get resolved now
553
554 3.03  2005-02-16 23:00:00 
555         - friendlier statistics
556
557 3.02  2005-02-16 22:00:00
558         - fixed unintialized actions (Marcus Ramberg)
559
560 3.01  2005-02-16 20:30:00
561         - better statistics
562
563 3.00  2005-02-16 20:00:00
564         - real version number for CPAN.pm
565         - fixed redirect in CGI engine
566         - more statistics in debug logs
567         - ? prefix for forward()
568
569 2.99_15  2005-02-02 22:00:00
570         - support for short namespaces, MyApp::M, MyApp::V and MyApp::C
571         - Replaced "Catched" with "Caught" in Catalyst::Engine
572           (Gary Ashton Jones)
573         - replaced _ with ! for private actions
574         - added ? for prefixed actions
575         - misc improvememts
576
577 2.99_14  2005-01-31 22:00:00 2005
578         - arguments for _default
579         - $c->entrance removed for more flexibility
580         - added $c->req->method
581
582 2.99_13  2005-01-30 18:00:00 2005
583         - POD fixes and improvements
584
585 2.99_12  2005-01-28 22:00:00 2005
586         - first development release