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