-
Notifications
You must be signed in to change notification settings - Fork 18
/
Changes
165 lines (110 loc) · 5.06 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
{{$NEXT}}
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