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