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