0.17 2016-06-23
* Fixed bind_path() from Web::Machine::Util to handle path parts which
evaluated to false, like "/user/0". Patch by Stevan Little. GH #34.
0.16 2015-07-05
[MISC]
* Made the state machine only called allowed_methods() on your resource class
once. RT #101203. Implemented by Nathan Cutler.
* Noted in the docs that resource methods may be called more than once and
that they should therefore by idempotent. RT #101219. Implemented by Nathan
Cutler.
* Removed the CAVEAT section of the docs warning people not to use this
module. RT #97534. Implemented by Nathan Cutler.
* Setting the WM_DEBUG environtment variable to "diag" now sends debugging
output to Test::More::diag() instead of printing directly to STDERR.
* Resource classes were being passed a string for known_content_type() instead
of an HTTP::Headers::ActionPack::MediaType object. Reported by Robert
Rothenberg. GH #27.
[BUG FIXES]
* Fixed the docs for the valid_content_headers() method. This defaults to
true, not false, as the docs previously said. Fixed by Nathan Cutler.
0.15 2014-06-26
[MISC]
* The Web::Machine class now accepts an addition parameter,
request_class. This allows you to use a custom subclass of
Plack::Request. (Mike Raynham)
* Documented the request and response methods in
Web::Machine::Resource. Requested by Olaf Alders.
0.14 2014-04-14
[MISC]
* Automatically load resources (Arthur Axel fREW Schmidt)
* Ensure closed-over $resource variable is weak in
Web::Machine::Util::BodyEncoding::encode_body (Carlos Fernando Avila Gratz)
* The n11 state was not taking into account any query parameters that might
have been passed back from `create_path`, this is fixed now (Stevan Little)
* Errors from $resource->finish_request are now logged (Greg Oschwald)
0.12 2013-08-01
[BUG FIX]
* Calculate Content-Length of the filtered body (Thomas Sibley)
[MISC]
* Link state machine diagram (Andreas Marienborg)
* Fix a POD link to PSGI (Andreas Marienborg)
0.11 2013-05-01
[NEW FEATURES]
* A resource class can now provide a default_charset() sub. This is called if
the client does not pass an Accept-Charset header, allowing you to ensure
that responses are always encoded as bytes. (Dave Rolsky)
* Both charsets_provided and default_charset can return string, rather that
key/value hashref pairs. These strings are assumed to be character set
names, and Web::Machine will use Encode::encode() to turn the body into
bytes with that string. (Dave Rolsky)
* Started working on a new Web::Machine::Manual document, and tweaked some of
the other docs in the distro. (Dave Rolsky)
[MISC]
* Fix test failures on 5.17.x. (Dave Rolsky)
* Tests on older Perls would fail when trying to parse a date in
2112. Reported by Bernhard Graf. (Dave Rolsky)
0.10 2013-04-15
[MISC]
* Requests with an If-None-Match error caused an undef warning if your
resource did not return a value from the generate_etag() sub (Dave Rolsky)
* Content negotiation is generally smarter. If a client asks for "utf8" and
your resources provides "UTF-8", this will be considered a match. This is
all implemented in HTTP::Headers::ActionPack 0.05 but it affects
Web::Machine. (Dave Rolsky)
* If you actually implemented charsets_provided in a resource this would cause
Web::Machine to die with an error like 'Can't locate object method
"HASH(0x2f613f8)" via package My::Resource'. (Dave Rolsky)
* None of the body filtering code for applying encodings or charset encoding
actually work when the body was returned as an arrayref. (Dave Rolsky)
0.09 2013-03-27
[MISC]
* Malformed headers no longer cause a 500 error (Greg Oschwald)
0.08 2013-02-12
[NEW FEATURES]
* It is now possible to have the create_path resource method fire *after* the
entity is processed. This resolves RT #78631, which also has an excellent
description of the problem in it.
0.07 2013-01-24
[MISC]
* Fixing some broken test dependencies
0.06 2013-01-23
[COMPATABILITY BREAKAGE]
* Removed the $metadata variable in the FSM and moved this into the PSGI $env
instead (blame Jesse Luehrs if this is a problem)
* Content-Type is a required header (Jesse Luehrs)
[NEW FEATURES]
* Implement PSGI style streaming responses (Jesse Luehrs)
* Allow IO handle responses (Jesse Luehrs)
[MISC]
* Fix some tests (Jesse Luehrs)
* When a resource throws an error, log this to the logger defined in the
Plack::Request object if one is available (Dave Rolsky)
0.05 2012-10-29
* If a resource returned undef from is_authorized this caused an uninitialized
value warning (Dave Rolsky)
0.04 2012-09-09
* Move all the content negotation code to HTTP::Headers::ActionPack
* Improve the bind_path function in Util
* Improve existing and add more tests for this
* Improve the docs on this too
0.03 2012-06-19
* Fix a missing semicolon (thanks to bricas)
* Fix missing $VERSION numbers (also thanks to bricas)
* Allow the resource to choose how to handle exceptions instead of always
writing them to the body
0.02 2012-06-17
* Add missing dependencies
0.01 2012-06-12
* First release