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