1 Tue 03 Sep 2013 13:00:00 EST - Release 1.12
3 WARNING BACK COMPAT BREAKAGE FOLLOWS
5 Removed The YAML and HTML parser from the distro. You
6 should install these if you actually use them. They are listed as
7 optional dependencies going forward.
9 This is possibly a breaking change, but necessary for security and
10 considered acceptable since those formats have not generally
11 become preferred for web services.
13 In addition, the default de/serialization mappings for HTML and YAML
14 have been removed. You can add that back by adding the following to
15 you Configuration for the subclass of Catalyst::Controller::REST -
17 package Foo::Controller::Bar;
20 use namespace::autoclean;
22 BEGIN { extends 'Catalyst::Controller::REST' }
25 'text/html' => 'YAML::HTML',
26 'text/x-yaml' => 'YAML',
30 You should do this if you are using these de/serialization formats.
32 Sun 16 Jun 2013 15:23:03 BST - Release 1.11
33 Fix infinite recursion in tests under Catalyst 5.90040
35 Mon 22 Apr 2013 14:36:53 BST - Release 1.10
36 Use YAML rather than JSON in basic tests
38 Fri 19 Apr 2013 13:34:38 BST - Release 1.09
39 Don't load Data::Serializer unnecessarily in tests
41 Tue 16 Apr 2013 08:33:00 BST - Release 1.08
42 Factor Data::Serializable into it's own dist to stop breakages.
52 You'll need to install Catalyst-Action-Serialize-Data-Serializer and add the
53 appropriate lines to your controller config. Said lines may be:
55 'text/x-data-dumper' => [ 'Data::Serializer', 'Data::Dumper' ],
56 'text/x-data-denter' => [ 'Data::Serializer', 'Data::Denter' ],
57 'text/x-data-taxi' => [ 'Data::Serializer', 'Data::Taxi' ],
58 'text/x-config-general' => [ 'Data::Serializer', 'Config::General' ],
59 'text/x-php-serialization' => [ 'Data::Serializer', 'PHP::Serialization' ],
61 Thu 11 Apr 2013 20:20:00 BST - Release 1.07
62 Don't serialize if a view is explicitly set.
64 If the controller sets the view in $c->stash->{current_view} or
65 $c->stash->{current_view_instance}, then it is explicitly requesting a
66 certain kind of serialization and C::A::Serialize shouldn't override
69 Remove Storable and FreezeThaw from the list
70 of serialization methods offered by default, and
71 from the docs - they're totally unsafe :/
73 Tue 11 Dec 2012 22:04:00 GMT - Release 1.06
74 Sort list of allowed methods. RT#81825
76 Mon 2 Jul 2012 20:13:00 BST - Release 1.05
77 Bugfix get_allowed_methods list:
79 * remove "not_implemented"
81 Sat 30 Jun 2012 10:25:00 BST - Release 1.04
82 Bugfix to _dispatch_rest_method
84 Wed 28 Jun 2012 00:40:00 BST - Release 1.03
85 Expose _get_allowed_methods to the API (wreis)
87 Fix default OPTIONS handler: As the ->body is defined, then serialization
88 won't happen and we don't get wrong responses. (wreis)
90 Add default HEAD handler: auto dispatches to _GET method if it exists (wreis)
92 Tue 5 Jun 2012 22:23:00 BST - Release 1.02
93 Fix forwarded REST methods, e.g. foo_GET to be more
94 correctly displayed as a forward in the stats info.
96 Make public response building methods for errors
97 _unsupported_media_type and _serialize_bad_request which
98 can be extended from an action-role to return custom
101 Tue 29 May 2012 20:19:00 BST - Release 1.01
102 Add Catalyst::Action::Deserialize::JSON::XS
104 Fix JSON::XS useage to depend on JSON.pm v2.0, and rely on the
105 fact that can be backed by XS code, by explicitly setting
106 $ENV{'PERL_JSON_BACKEND'} = 2
108 Fri 13 Apr 2012 09:31:00 BST - Release 1.00
109 Repack without auto_include to stop Module::Install inlining
110 Test::More without Test::Builder. RT#76524
112 Tue 28 Feb 2012 09:09:00 GMT - Release 0.99
113 Repack with new Module::Install to stop depending on an unnecessary
114 ExtUtils::MakeMaker version.
116 Tue 21 Feb 2012 11:40:00 GMT - Release 0.98
117 More fixes as per last release.
119 Tue 21 Feb 2012 09:58:00 GMT - Release 0.97
120 Fix test with latest Catalyst version which passes _log into
123 Mon 20 Jan 2012 11:22:00 GMT - Release 0.96
124 Added fix for RT 63537 (from Gerv) and tests to check it.
126 Wed 04 Jan 2012 19:34:00 GMT - Release 0.95
127 Fix regex for JSONP parameter name to be able to include the . character
128 in Catalyst::Action::Serialize::JSONP. RT#73741
130 Add optional location parameter to status_accepted handler. RT#73691 (ghenry)
132 Fri 09 Dec 2011 08:35:00 GMT - Release 0.94
133 Add 403 Forbidden and 302 Not Found status methods to
134 Catalyst::Controller::REST (Caleb Cushing)
136 Wed 12 Oct 2011 11:37:00 CDT - Release 0.93
137 Add a "Callback" serializer/deserializer to allow for more customization in
138 how the REST data is parsed/generated (bphillips)
140 Sat 01 Oct 2011 11:04:00 BST - Release 0.92
141 Add a Catalyst::Action::DeserializeMultiPart, allowing one part of a multipart
142 request to be deserialized as the REST data (allowing other parts to be used for
143 file uploads, for example) (bphillips)
145 Thu 04 Aug 2011 14:37:21 CEST - Release 0.91
146 For the deserialization action class, make the HTTP methods it operates on
147 configurable on a per-action level (plu, rafl).
149 Fri 25 Feb 2011 13:56:00 GMT - Release 0.90
150 Remove test which is no longer applicable and fails in the latest Catalyst
153 Mon 24 Jan 2011 21:57:42 GMT - Release 0.89
154 All classes are now made immutable. (Dave Rolsky)
156 Added a Catalyst::Action::REST::ForBrowsers class. This will try to dispatch
157 GET requests to a foo_GET_html method before trying foo_GET. (Dave Rolsky)
159 Tue 11 Jan 2011 23:07:00 GMT - Release 0.88
160 Fix documentation for overriding Serialize and Deserialize actions
161 in Catalyst::Controller::REST.
163 Avoid warning with empty response bodies and new Catalyst version
166 Returning a body of '' is now possible - Catalyst::Action::Serialize
167 acts like Catalyst::Action::RenderView (>= 0.16) by using the has_body
168 predicate in Catalyst::Response (>= 5.80030)
170 Wed 3 Nov 2010 19:46:00 GMT - Release 0.87
172 Fix Request class role when used with new Moose and other request
175 Wed 1 Sept 2010 23:14:00 BST - Release 0.86
177 Add rest_serializer_json_options config key useable to set options
178 like relaxed => 1 to be passed to the JSON serializer (Ton Voon)
180 Make Data::Dumper unserializer safer by using a Safe compartment (Ton Voon)
182 Thu 13 May 2010 10:09:19 CEST - Release 0.85
184 Make Catalyst::Action::Serialize::View return directly rather than serializing
185 a response for 3XX status codes. This stops back-compat breakage from the
186 previous change (in 0.84), whilst also allowing actual data serializers
189 Fix docs in Catalyst::TraitFor::Request::REST::ForBrowsers. (RT#54983)
191 Thu 6 May 2010 09:27:56 BST - Release 0.84
192 Revert always using a trait rather than Catalyst::Request::REST to improve
195 Add a status_multiple_choices helper method to the Controller base class.
197 Allow 3XX responses to be serialized.
199 Mon 8 Feb 2010 22:17:12 GMT - Release 0.83
200 Make it possible to deserialize a request with a DELETE method. This probably
201 breaks 'strict' REST guidelines, but is useful for being able to delete multiple
202 resources from a single call by providing a batch delete method.
204 Remove JSONP from the list of default serializers (RT#54336)
206 Fix MANIFEST (RT#54408)
208 Thu 4 Feb 2010 22:31:57 GMT - Release 0.82
210 Integrated Catalyst::Request::REST::ForBrowsers as
211 Catalyst::TraitFor::Request::ForBrowsers. (Dave Rolsky)
213 Clarified docs so that they encourage the use of the request traits, rather
214 than using Catalyst::Request::REST. (Dave Rolsky)
216 When Catalyst::Action::REST or Controller::REST automatically add the trait,
217 your request class will no longer end up getting set to
218 Catalyst::Request::REST. Instead, creates an anon class with the appropriate
221 Shut up log output from the tests. (Dave Rolsky)
223 Added a $VERSION to every module, mostly to make sure that when people
224 install Catalyst::Request::REST::ForBrowsers, they get the version in this
225 distro. (Dave Rolsky)
227 Change Catalyst::Action::Serialize, Catalyst::Action::Deserialize and
228 Catalyst::Action::SerializeBase to be more Moose like.
230 Fix JSON and JSON::XS to encode_blessed. (fREW)
232 Fix Catalyst::Action::Serialize to use objects instead of classes. (fREW)
234 Fix doc nits. (RT#53780)
236 Thu 14 Jan 20:56:00 GMT 2010 - Release 0.81
238 Add a JSONP serialization type.
240 Sat 19 Dec 14:54:00 GMT 2009 - Release 0.80
242 Convert all classes to Moose
244 Change Catalyst::Request::REST to be a mostly empty class, with
245 all the functionality in Catalyst::TraitFor::Request::REST
247 Simplify _get_allowed_methods method (aristotle)
249 Rework serializer return so that serializers throw an exception in
250 the case of issues serializing the data (hobbs).
252 Fri 11 Dec 01:08:00 GMT 2009 - Release 0.79
254 Cope with invalid (missing required q parameter) header like:
255 application/json; charset="utf-8"
257 Fix documentation to not mention deprecated things and generally be
260 Make author information consistant and only in one module.
262 Mon 28 Sep 15:01:03 BST 2009 - Release 0.78
264 Require Moose for the tests (RT#50066).
266 Thu 27 Aug 02:21:09 BST 2009 - Release 0.77
268 Allow dispatching to Catalyst Actions, for use with ActionClasses
271 Fix test if CATALYST_DEBUG environment variable is set
273 Fri Aug 21 21:20:52 BST 2009 - Release 0.76
275 Added two new status response helpers (202 no content and 410 gone),
276 and tests - Franck Cuny
278 Mon Aug 17 14:07:41 BST 2009 - Release 0.75
280 Fix optional test failures in catalyst-action-serialize-accept.t
282 Added a serializer for JSON::XS
284 Made test independent of YAML::Syck bugs (dandv)
286 Wed Jul 22 23:49:16 BST 2009 (t0m) - Release 0.74
288 Switch from NEXT to MRO::Compat (agladdish).
290 Add display of additional REST actions in the stats, and also fix a warning
291 in Catalyst 5.80 when you forward to another action from inside an
292 action_FOO method (as it was confusing the stats).
296 Catalyst::Action::REST no longer @ISA Catalyst or Catalyst::Controller.
298 Change constructor to call next::method instead of SUPER::
300 Change method used to find the application class to be more correct
302 Sat Jun 27 20:20:09 EDT 2009 (hdp) - Release 0.73
305 Thu Jun 25 14:52:29 EDT 2009 (hdp) - Release 0.72
306 Refresh Module::Install
308 Sat Mar 28 09:16:09 PDT 2009 (hdp) - Release 0.71
309 Fix RT#44641, missing documented 'end' action
311 Fri Mar 27 23:21:17 PDT 2009 (hdp) - Release 0.70
312 Tests that use JSON were either not checking for the version or checking in a
313 way that was a syntax error.
315 Thu Mar 26 14:16:03 PDT 2009 (hdp) - Release 0.69
316 Fix RT#32342, deprecated config loses default map (hdp)
317 Fix broken insertion of Catalyst::Request::REST for Action::REST (jshirley)
319 Wed Mar 25 22:33:38 PDT 2009 (hdp) - Release 0.68
320 Remove prompt for ancient and deprecated Data::Denter from Makefile.PL
321 Remove Data::Dump, which was entirely unused
322 Stop tests from dying with Catalyst 5.80
324 Wed Mar 25 21:59:59 PDT 2009 (hdp) - Release 0.67
325 (no changes from 0.67_01)
327 Wed Mar 25 09:36:00 PDT 2009 (hdp) - Release 0.67_01
328 Fix RT#43840, improper app-level config handling
329 Fix RT#42859, 'wrong' Catalyst dependency
330 Fix RT#42025, stepping on custom request classes
332 Wed Aug 20 10:42:00 PST 2008 (jshirley) - Release 0.65
333 Fully revamped tests to work without any JSON support
334 Final removal of JSON::Syck
335 Special thanks to jgoulah for helping test this release
337 Wed Aug 13 08:55:00 PST 2008 (jshirley) - Release 0.64
338 New dist to fix issue with Module::Install
340 Wed Jul 09 11:16:00 PST 2008 (jshirley) - Release 0.63
341 Changing from JSON::Syck to JSON/JSON::XS
342 Refactored tests to be more applicable to current state of affairs
344 Wed Jul 02 07:53:00 PST 2008 (jshirley) - Release 0.62
345 Reshipping with current Module::Install included due to error reports
346 about failed installs
349 Mon Jun 30 12:28:00 PST 2008 (jshirley) - Release 0.61
350 Support official application/json and carp about text/x-json
351 Accepted patch from Luke Saunders for processing all accepted content types
353 Thu Jan 3 17:23:58 PST 2008 (adam) - Release 0.60
354 Updated my contact information.
357 Thu Jan 3 19:42:16 EST 2008
358 Fixed RT#30498 - REST controller references Catalyst without
360 Fixed RT#32042 - Import of Params::Validate :all plays badly
361 with subclasses that have their own validate()
362 Fixed RT#30456 - Debug messages print even with debugging disabled
364 Thu Jan 3 08:54:09 PST 2008
365 Fixed an issue where YAML::Syck versions 0.92 require $c->request->body to
368 Fri Dec 21 15:23:46 EDT 2007
369 Updated the configuration specifiers to operate more in line with the way
370 Catalyst expects. Most notably component based configuration through
371 "Controller::RestClass" now works. "serialize" at the top level simply
372 is suggested defaults that all REST classes inherit.
374 Wed Jul 04 11:17:20 EDT 2007
375 Fixed 'default' serializer to set a valid Content-Type: header. Fixes
376 RT ticket 27949. Note that behavior has changed -- the default
377 serializer must now be specified as a content-type, not as a plugin
378 name. (dmo@roaringpenguin.com)
380 Thu May 24 14:01:06 PDT 2007 (adam) - Release 0.41
381 Moved a bogus $self->class to $c->component($self->class)
383 Fri Mar 9 14:13:29 PST 2007 (adam) - Release 0.40
384 Refactored the Content-Type negotiation to live in Catalyst::Request::REST. (drolsky)
385 Added some useful debugging. (drolsky)
386 Added a View serializer/deserializer, which simply calls the correct
387 Catalyst view. ('text/html' => [ 'View', 'TT' ]) (claco, adam)
389 Wed Dec 6 00:45:02 PST 2006 (adam) - Release 0.31
390 Fixed a bug where we would report a blank content-type negotiation.
391 Added Data::Dump as a dependency.
393 Tue Dec 5 13:02:08 PST 2006 (adam)
394 Made the YAML::HTML view automatically append content-type=text/html on
397 Sun Dec 3 12:24:16 PST 2006 (adam) - Release 0.30
398 Updated the Makefile to support optional installation of the different
399 Serialization formats.
400 Renamed some of the test cases, since the execution order doesn't
402 Fixed things so that not having a Serialization module returns 415.
403 Fixed things so that failure to Deserialize sends the proper status.
404 Refactored the Plugin loading to Catalyst::Action::SerializeBase.
405 Updated the Documentation.
406 Added a whole raft of serializers. (JSON, all the Data::Serializer
407 supported ones, and XML::Simple)
410 Thu Nov 30 23:51:04 PST 2006 (adam)
411 Refactored the Catalyst::Action::REST dispatch, so that the default
412 method is called before any _METHOD handlers. In addition, moved
413 the 405 Not Implemented handler to be foo_not_implemented, instead
414 of the default sub. (daisuke++ pointed out the inconsistency and
415 provided a patch, and I added the foo_not_implemented support)
417 Added in automated OPTIONS handler, which constructs the allow
418 header for you, just like the 405 handler. Can be overridden
419 with a normal _METHOD sub.
421 Refactored Test::Rest, so that it uses closures to create the
422 very similar $test->method() subs.
424 Added tests for Catalyst::Action::REST.
426 Thu Nov 30 17:14:51 PST 2006 (adam) - Release 0.2
427 Added documentation patch from Daisuke Maki (daisuke@endeworks.jp)
428 Added dependency patch from Daisuke Maki (daisuke@endeworks.jp)
430 Sun Nov 19 16:24:20 PST 2006 (adam) - Release 0.1
431 Added status_accepted (Code 202)
432 Added a first pass at documentation.
434 Mon Oct 16 14:48:54 PDT 2006 (adam)
436 Created Catalyst::Action::Serialize and Catalyst::Action::Deserialize
437 Added Data::Serializer actions
438 Added status_created helper method
440 Wed Oct 18 17:29:07 PDT 2006 (adam)
441 Added more status_ helpers
443 Thu Oct 19 16:04:33 PDT 2006 (adam)
444 Converted error helpers to return an object instead of plain-text. It's
445 a more consistent model than a text/plain error message.
446 Added logging to 4xx status handlers