1 Revision history for {{$dist->name}}
4 - Make 3xx status codes skip serialization when there is no data to serialize
5 (Thanks Jesse Sheidlower!)
7 1.16 2014-09-12 13:21:43-05:00 America/Chicago
8 - Switch from JSON to JSON::MaybeXS to get a better choice of JSON parsers.
10 1.15 2014-05-07 09:02:44-05:00 CST6CDT
12 - Added new status_see_other method for returning a 303 redirect.
13 - Added new status_moved method for returning a 301 redirect. (Matthew Keller)
15 1.14 2013-12-27 15:32:19 America/Chicago
17 - Stop prompting for features at install time
19 1.13 2013-11-08 09:40:00 EST
21 - Fix tests to skip if YAML::Syck is not installed (Arthur Axel fREW Schmidt)
23 1.12 2013-09-03 13:00:00 EST
25 WARNING BACK COMPAT BREAKAGE FOLLOWS
27 Removed The YAML and HTML parser from the distro. You
28 should install these if you actually use them. They are listed as
29 optional dependencies going forward.
31 This is possibly a breaking change, but necessary for security and
32 considered acceptable since those formats have not generally
33 become preferred for web services.
35 In addition, the default de/serialization mappings for HTML and YAML
36 have been removed. You can add that back by adding the following to
37 you Configuration for the subclass of Catalyst::Controller::REST -
39 package Foo::Controller::Bar;
42 use namespace::autoclean;
44 BEGIN { extends 'Catalyst::Controller::REST' }
47 'text/html' => 'YAML::HTML',
48 'text/x-yaml' => 'YAML',
52 You should do this if you are using these de/serialization formats.
54 1.11 2013-06-16 15:23:03 BST
56 - Fix infinite recursion in tests under Catalyst 5.90040
58 1.10 2013-04-22 14:36:53 BST
60 - Use YAML rather than JSON in basic tests
62 1.09 2013-04-19 13:34:38 BST
64 - Don't load Data::Serializer unnecessarily in tests
66 1.08 2013-04-16 08:33:00 BST
68 - Factor Data::Serializable into it's own dist to stop breakages.
78 You'll need to install Catalyst-Action-Serialize-Data-Serializer and add the
79 appropriate lines to your controller config. Said lines may be:
81 'text/x-data-dumper' => [ 'Data::Serializer', 'Data::Dumper' ],
82 'text/x-data-denter' => [ 'Data::Serializer', 'Data::Denter' ],
83 'text/x-data-taxi' => [ 'Data::Serializer', 'Data::Taxi' ],
84 'text/x-config-general' => [ 'Data::Serializer', 'Config::General' ],
85 'text/x-php-serialization' => [ 'Data::Serializer', 'PHP::Serialization' ],
87 1.07 2013-04-11 20:20:00 BST
89 - Don't serialize if a view is explicitly set.
91 - If the controller sets the view in $c->stash->{current_view} or
92 $c->stash->{current_view_instance}, then it is explicitly requesting a
93 certain kind of serialization and C::A::Serialize shouldn't override
96 - Remove Storable and FreezeThaw from the list
97 of serialization methods offered by default, and
98 from the docs - they're totally unsafe :/
100 1.06 2012-12-11 22:04:00 UTC
102 - Sort list of allowed methods. RT#81825
104 1.05 2012-07-02 20:13:00 BST
106 - Bugfix get_allowed_methods list:
108 - remove "not_implemented"
110 1.04 2012-06-30 10:25:00 BST
112 - Bugfix to _dispatch_rest_method
114 1.03 2012-06-28 00:40:00 BST
116 - Expose _get_allowed_methods to the API (wreis)
118 - Fix default OPTIONS handler: As the ->body is defined, then serialization
119 won't happen and we don't get wrong responses. (wreis)
121 - Add default HEAD handler: auto dispatches to _GET method if it exists (wreis)
123 1.02 2012-06-05 22:23:00 BST
125 - Fix forwarded REST methods, e.g. foo_GET to be more
126 correctly displayed as a forward in the stats info.
128 - Make public response building methods for errors
129 _unsupported_media_type and _serialize_bad_request which
130 can be extended from an action-role to return custom
133 1.01 2012-05-29 20:19:00 BST
135 - Add Catalyst::Action::Deserialize::JSON::XS
137 - Fix JSON::XS useage to depend on JSON.pm v2.0, and rely on the
138 fact that can be backed by XS code, by explicitly setting
139 $ENV{'PERL_JSON_BACKEND'} = 2
141 1.00 2012-04-13 09:31:00 BST
143 - Repack without auto_include to stop Module::Install inlining
144 Test::More without Test::Builder. RT#76524
146 0.99 2012-02-28 09:09:00 UTC
148 - Repack with new Module::Install to stop depending on an unnecessary
149 ExtUtils::MakeMaker version.
151 0.98 2012-02-21 11:40:00 UTC
153 - More fixes as per last release.
155 0.97 2012-02-21 09:58:00 UTC
157 - Fix test with latest Catalyst version which passes _log into
160 0.96 2012-01-20 11:22:00 UTC
162 - Added fix for RT 63537 (from Gerv) and tests to check it.
164 0.95 2012-01-04 19:34:00 UTC
166 - Fix regex for JSONP parameter name to be able to include the . character
167 in Catalyst::Action::Serialize::JSONP. RT#73741
169 - Add optional location parameter to status_accepted handler. RT#73691 (ghenry)
171 0.94 2011-12-09 08:35:00 UTC
173 - Add 403 Forbidden and 302 Not Found status methods to
174 Catalyst::Controller::REST (Caleb Cushing)
176 0.93 2011-10-12 11:37:00 America/Chicago
178 - Add a "Callback" serializer/deserializer to allow for more customization in
179 how the REST data is parsed/generated (bphillips)
181 0.92 2011-10-01 11:04:00 BST
183 - Add a Catalyst::Action::DeserializeMultiPart, allowing one part of a multipart
184 request to be deserialized as the REST data (allowing other parts to be used for
185 file uploads, for example) (bphillips)
187 0.91 2011-08-04 14:37:21 Europe/Berlin
189 - For the deserialization action class, make the HTTP methods it operates on
190 configurable on a per-action level (plu, rafl).
192 0.90 2011-02-25 13:56:00 UTC
194 - Remove test which is no longer applicable and fails in the latest Catalyst
197 0.89 2011-01-24 21:57:42 UTC
199 - All classes are now made immutable. (Dave Rolsky)
201 - Added a Catalyst::Action::REST::ForBrowsers class. This will try to dispatch
202 GET requests to a foo_GET_html method before trying foo_GET. (Dave Rolsky)
204 0.88 2011-01-11 23:07:00 UTC
206 - Fix documentation for overriding Serialize and Deserialize actions
207 in Catalyst::Controller::REST.
209 - Avoid warning with empty response bodies and new Catalyst version
212 - Returning a body of '' is now possible - Catalyst::Action::Serialize
213 acts like Catalyst::Action::RenderView (>= 0.16) by using the has_body
214 predicate in Catalyst::Response (>= 5.80030)
216 0.87 2010-11-03 19:46:00 UTC
218 - Fix Request class role when used with new Moose and other request
221 0.86 2010-09-01 23:14:00 BST
223 - Add rest_serializer_json_options config key useable to set options
224 like relaxed => 1 to be passed to the JSON serializer (Ton Voon)
226 - Make Data::Dumper unserializer safer by using a Safe compartment (Ton Voon)
228 0.85 2010-05-13 10:09:19 Europe/Berlin
230 - Make Catalyst::Action::Serialize::View return directly rather than serializing
231 a response for 3XX status codes. This stops back-compat breakage from the
232 previous change (in 0.84), whilst also allowing actual data serializers
235 - Fix docs in Catalyst::TraitFor::Request::REST::ForBrowsers. (RT#54983)
237 0.84 2010-05-06 09:27:56 BST
239 - Revert always using a trait rather than Catalyst::Request::REST to improve
242 - Add a status_multiple_choices helper method to the Controller base class.
244 - Allow 3XX responses to be serialized.
246 0.83 2010-02-08 22:17:12 UTC
248 - Make it possible to deserialize a request with a DELETE method. This probably
249 breaks 'strict' REST guidelines, but is useful for being able to delete multiple
250 resources from a single call by providing a batch delete method.
252 - Remove JSONP from the list of default serializers (RT#54336)
253 Fix MANIFEST (RT#54408)
255 0.82 2010-02-04 22:31:57 UTC
257 - Integrated Catalyst::Request::REST::ForBrowsers as
258 Catalyst::TraitFor::Request::ForBrowsers. (Dave Rolsky)
260 - Clarified docs so that they encourage the use of the request traits, rather
261 than using Catalyst::Request::REST. (Dave Rolsky)
263 - When Catalyst::Action::REST or Controller::REST automatically add the trait,
264 your request class will no longer end up getting set to
265 Catalyst::Request::REST. Instead, creates an anon class with the appropriate
268 - Shut up log output from the tests. (Dave Rolsky)
270 - Added a $VERSION to every module, mostly to make sure that when people
271 install Catalyst::Request::REST::ForBrowsers, they get the version in this
272 distro. (Dave Rolsky)
274 - Change Catalyst::Action::Serialize, Catalyst::Action::Deserialize and
275 Catalyst::Action::SerializeBase to be more Moose like.
277 - Fix JSON and JSON::XS to encode_blessed. (fREW)
278 - Fix Catalyst::Action::Serialize to use objects instead of classes. (fREW)
279 - Fix doc nits. (RT#53780)
281 0.81 2010-01-14 20:56:00 UTC
283 - Add a JSONP serialization type.
285 0.80 2009-12-19 14:54:00 UTC
287 - Convert all classes to Moose
289 - Change Catalyst::Request::REST to be a mostly empty class, with
290 all the functionality in Catalyst::TraitFor::Request::REST
292 - Simplify _get_allowed_methods method (aristotle)
294 - Rework serializer return so that serializers throw an exception in
295 the case of issues serializing the data (hobbs).
297 0.79 2009-12-11 01:08:00 UTC
299 - Cope with invalid (missing required q parameter) header like:
300 application/json; charset="utf-8"
302 - Fix documentation to not mention deprecated things and generally be
305 - Make author information consistant and only in one module.
307 0.78 2009-09-28 15:01:03 BST
309 - Require Moose for the tests (RT#50066).
311 0.77 2009-08-27 02:21:09 BST
313 - Allow dispatching to Catalyst Actions, for use with ActionClasses
316 - Fix test if CATALYST_DEBUG environment variable is set
318 0.76 2009-08-21 21:20:52 BST
320 - Added two new status response helpers (202 no content and 410 gone),
321 and tests - Franck Cuny
323 0.75 2009-08-17 14:07:41 BST
325 - Fix optional test failures in catalyst-action-serialize-accept.t
326 - Added a serializer for JSON::XS
327 - Made test independent of YAML::Syck bugs (dandv)
329 0.74 2009-07-22 23:49:16 BST (t0m)
331 - Switch from NEXT to MRO::Compat (agladdish).
333 - Add display of additional REST actions in the stats, and also fix a warning
334 in Catalyst 5.80 when you forward to another action from inside an
335 action_FOO method (as it was confusing the stats).
338 - Catalyst::Action::REST no longer @ISA Catalyst or Catalyst::Controller.
339 - Change constructor to call next::method instead of SUPER::
340 - Change method used to find the application class to be more correct
342 0.73 2009-06-27 20:20:09 America/New_York (hdp)
346 0.72 2009-06-25 14:52:29 America/New_York (hdp)
348 - Refresh Module::Install
350 0.71 2009-03-28 09:16:09 America/Los_Angeles (hdp)
352 - Fix RT#44641, missing documented 'end' action
354 0.70 2009-03-27 23:21:17 America/Los_Angeles (hdp)
356 - Tests that use JSON were either not checking for the version or checking in a
357 - way that was a syntax error.
359 0.69 2009-03-26 14:16:03 America/Los_Angeles (hdp)
361 - Fix RT#32342, deprecated config loses default map (hdp)
362 - Fix broken insertion of Catalyst::Request::REST for Action::REST (jshirley)
364 0.68 2009-03-25 22:33:38 America/Los_Angeles (hdp)
366 - Remove prompt for ancient and deprecated Data::Denter from Makefile.PL
367 - Remove Data::Dump, which was entirely unused
368 - Stop tests from dying with Catalyst 5.80
370 0.67 2009-03-25 21:59:59 America/Los_Angeles (hdp)
372 - (no changes from 0.67_01)
374 0.67_01 2009-03-25 09:36:00 America/Los_Angeles (hdp)
376 - Fix RT#43840, improper app-level config handling
377 - Fix RT#42859, 'wrong' Catalyst dependency
378 - Fix RT#42025, stepping on custom request classes
380 0.65 2008-08-20 10:42:00 America/Los_Angeles (jshirley)
382 - Fully revamped tests to work without any JSON support
383 - Final removal of JSON::Syck
384 - Special thanks to jgoulah for helping test this release
386 0.64 2008-08-13 08:55:00 America/Los_Angeles (jshirley)
388 - New dist to fix issue with Module::Install
390 0.63 2008-07-09 11:16:00 America/Los_Angeles (jshirley)
392 - Changing from JSON::Syck to JSON/JSON::XS
393 - Refactored tests to be more applicable to current state of affairs
395 0.62 2008-07-02 07:53:00 America/Los_Angeles (jshirley)
397 - Reshipping with current Module::Install included due to error reports
398 about failed installs
400 0.61 2008-06-30 12:28:00 America/Los_Angeles (jshirley)
402 - Support official application/json and carp about text/x-json
404 - Accepted patch from Luke Saunders for processing all accepted content types
406 0.60 2008-01-03 17:23:58 America/Los_Angeles (adam)
408 - Updated my contact information.
410 - Fixed RT#30498 - REST controller references Catalyst without
413 - Fixed RT#32042 - Import of Params::Validate :all plays badly
414 with subclasses that have their own validate()
416 - Fixed RT#30456 - Debug messages print even with debugging disabled
418 - Fixed an issue where YAML::Syck versions 0.92 require $c->request->body to
421 - Updated the configuration specifiers to operate more in line with the way
422 Catalyst expects. Most notably component based configuration through
423 "Controller::RestClass" now works. "serialize" at the top level simply
424 is suggested defaults that all REST classes inherit.
426 - Fixed 'default' serializer to set a valid Content-Type: header. Fixes
427 RT ticket 27949. Note that behavior has changed -- the default
428 serializer must now be specified as a content-type, not as a plugin
429 name. (dmo@roaringpenguin.com)
431 0.41 2007-05-24 14:01:06 America/Los_Angeles (adam)
433 - Moved a bogus $self->class to $c->component($self->class)
435 0.40 2007-03-09 14:13:29 America/Los_Angeles (adam)
437 - Refactored the Content-Type negotiation to live in Catalyst::Request::REST. (drolsky)
438 - Added some useful debugging. (drolsky)
439 - Added a View serializer/deserializer, which simply calls the correct
440 - Catalyst view. ('text/html' => [ 'View', 'TT' ]) (claco, adam)
442 0.31 2006-12-06 00:45:02 America/Los_Angeles (adam)
444 - Fixed a bug where we would report a blank content-type negotiation.
445 - Added Data::Dump as a dependency.
447 - Made the YAML::HTML view automatically append content-type=text/html on
450 0.30 2006-12-03 12:24:16 America/Los_Angeles (adam)
452 - Updated the Makefile to support optional installation of the different
453 Serialization formats.
455 - Renamed some of the test cases, since the execution order doesn't
458 - Fixed things so that not having a Serialization module returns 415.
459 - Fixed things so that failure to Deserialize sends the proper status.
460 - Refactored the Plugin loading to Catalyst::Action::SerializeBase.
461 - Updated the Documentation.
463 - Added a whole raft of serializers. (JSON, all the Data::Serializer
464 supported ones, and XML::Simple)
468 - Refactored the Catalyst::Action::REST dispatch, so that the default
469 method is called before any _METHOD handlers. In addition, moved
470 the 405 Not Implemented handler to be foo_not_implemented, instead
471 of the default sub. (daisuke++ pointed out the inconsistency and
472 provided a patch, and I added the foo_not_implemented support)
474 - Added in automated OPTIONS handler, which constructs the allow
475 header for you, just like the 405 handler. Can be overridden
476 with a normal _METHOD sub.
478 - Refactored Test::Rest, so that it uses closures to create the
479 very similar $test->method() subs.
481 - Added tests for Catalyst::Action::REST.
483 0.2 2006-11-30 17:14:51 America/Los_Angeles (adam)
485 - Added documentation patch from Daisuke Maki (daisuke@endeworks.jp)
486 - Added dependency patch from Daisuke Maki (daisuke@endeworks.jp)
488 0.1 2006-11-19 16:24:20 America/Los_Angeles (adam)
490 - Added status_accepted (Code 202)
491 - Added a first pass at documentation.
492 - Added in Test Suite
493 - Created Catalyst::Action::Serialize and Catalyst::Action::Deserialize
494 - Added Data::Serializer actions
495 - Added status_created helper method
496 - Added more status_ helpers
498 - Converted error helpers to return an object instead of plain-text. It's
499 a more consistent model than a text/plain error message.
501 - Added logging to 4xx status handlers