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