ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-HTTP/Changes
Revision: 1.80
Committed: Sun Jun 8 23:33:28 2014 UTC (9 years, 11 months ago) by root
Branch: MAIN
CVS Tags: rel-2_2
Changes since 1.79: +5 -0 lines
Log Message:
2.2

File Contents

# Content
1 Revision history for AnyEvent::HTTP
2
3 TODO: provide lwp_request function that takes an lwp http requets and returns a http response.
4 TODO: httpbis: $location = URI->new_abs($location, "$scheme://$host:$port$path_query")->as_string;
5 TODO: set_proxy hook
6 TODO: use proxy hook
7 TODO: ip6 literals in url
8 TODO: maybe read big chunks in smaller portions for chunked-encoding + on_body.
9 TODO: request body is deleted on POST, but might need to be used later for redirects.
10 TODL: on_upgrade, for 101 responses?
11 TODO: document session vs. sessionid correctly.
12
13 2.2 Mon Jun 9 01:31:46 CEST 2014
14 - connection header was malformed (patch by Raphael Geissert).
15 - add lots of known idempotent methods from httpbis.
16 - implement relative location headers (rfc 7231), with fallback on URI.
17 - add support for status code 308 from rfc 7238.
18 - recommend URI.
19
20 2.15 Wed Nov 14 23:22:07 CET 2012
21 - use the recurse parameter to also limit the number of retries to be
22 done, avodiing endless loops with broken servers, as reported
23 by Carl Chambers.
24
25 2.14 Sun Apr 22 14:57:51 CEST 2012
26 - Time::Local::timegm croaks on out-of-range values. Don't let
27 this disturb AnyEvent::HTTP (reported by: tell me, I forgot...).
28
29 2.13 Wed Jul 27 17:53:58 CEST 2011
30 - garbled chunked responses caused AnyEvent::HTTP to malfunction
31 (patch by Dmitri Melikyan).
32 - fix GET => HEAD in one case in the documentation (James Bromberger).
33
34 2.12 Tue Jun 14 07:22:54 CEST 2011
35 - fix a possible 'Can't call method "destroyed"' error (which would
36 have been reported by Carl Chambers).
37
38 2.11 Tue May 10 14:33:28 CEST 2011
39 - the keepalive session cache wouldn't take port and scheme into account
40 when reusing connection - potentially causing information leaks
41 (reported by Nick Kostirya).
42 - bump AnyEvent dependency version (reported by Richard Harris).
43
44 2.1 Thu Feb 24 13:11:51 CET 2011
45 - the keepalive and persistent parameters were actually named
46 differently in the code - they now work as documented.
47 - fix a bug where callbacks would sometimes never be called when
48 the request timeout is near or below the persistent connection
49 timeout (testcase by Cindy Wang).
50 - destroying the guard would have no effect when a request was
51 recursing or being retired.
52
53 2.04 Sat Feb 19 07:45:24 CET 2011
54 - "proxy => undef" now overrides any global proxy when specified.
55 - require scheme in urls, also use a stricter match to match urls,
56 leading or trailing garbage is no longer tolerated.
57 - EXPERIMENTAL: allow '=' in cookie values.
58
59 2.03 Tue Jan 18 18:49:35 CET 2011
60 - dummy reupload, file gone from cpan somehow.
61
62 2.02 Wed Jan 12 04:29:37 CET 2011
63 - do not lowercase cookie names, only parameter names.
64
65 2.01 Tue Jan 11 07:38:15 CET 2011
66 - add missing dependency on common::sense.
67 - add a resume download example.
68
69 2.0 Tue Jan 4 09:16:56 CET 2011
70 - hopefully fully upgraded to HTTP/1.1.
71 - support HTTP/1.1 persistent and HTTP/1.0 keep-alive connections.
72 - drop https-proxy-connection support. seems unused and ill-specified.
73 - use more differentiated 59x status codes.
74 - properly use url (not proxy) hostname to verify server certificate.
75 - much improved cookie implementation:
76 - properly implement cookie expiry (for new cookies).
77 - new function to expire cookies and sessions: cookie_jar_expire.
78 - add special exception to parse broken expires= keys in
79 set-cookie headers.
80 - do not quote cookie values when not strictly necessary, to
81 improve compatibility with broken servers.
82 - accept and send lots of invalid cookie values exactly as
83 they were received - this should not impact valid values.
84 - lowercase cookie parameter names for improved compatibility.
85 - support the max-age cookie parameter, overrides expires.
86 - support cookie dates (and a few others) in parse_date.
87 - properly support value-less parameters (e.g. secure, httponly).
88 - do not send Host: header in a proxy CONNECT request.
89 - use common::sense.
90 - lowercase hostnames and schemes.
91 - ignore leading zeroes in http version.
92 - handle spaces in content-length headers more gracefully.
93
94 1.5 Fri Dec 31 04:47:08 CET 2010
95 - bugfix: after headers were received, if any error occured the wrong
96 (server-sent) Status and Reason fields would be passed to the callback.
97 - when an error occurs during transfer, preserve status/reason.
98 - add socks4a connect example.
99 - new "tcp_connect" parameter.
100 - new format_date and parse_date functions.
101 - diagnose unexpected eof as such when the length is known.
102 - add 205 to the responses without body.
103
104 1.46 Mon Sep 6 08:29:34 CEST 2010
105 - some (broken) servers differentiate between empty search parts
106 and nonexistant search parts, work around this (problem
107 analyzed by Sergey Zasenko).
108 - possibly increase robustness by always setting an on_error
109 callback on the AnyEvent::Handle object (especially in case
110 of user errors, such as nehative timeouts).
111 - we now always follow 301/302/303 redirects and mutate POST to GET.
112 - we now always follow 307 redirects, even for POST.
113 - header-less responses are not parsed correctly (at a negative
114 speed penatly :).
115
116 1.45 Wed Jun 16 21:15:26 CEST 2010
117 - fix a bug where the handle would go away directly after a successful
118 connect (analyzed and patch by Maxim Dounin).
119 - due to popular demand, introduce the Redirect pseudo response header.
120 - document URL pseudo-header better.
121 - explain how to implement DNS caching.
122
123 1.44 Sat Dec 5 16:36:20 CET 2009
124 - do not generate content-length on get requests (if the body is empty),
125 as there are even more broken servers out there.
126 - allow set_proxy to clear the proxy again.
127 - set_proxy will now croak on invalid urls.
128 - support overriding the Host-header (requested by Tatsuhiko Miyagawa).
129
130 1.43 Fri Aug 14 17:02:02 CEST 2009
131 - provide on_prepare callback on common request.
132
133 1.42 Wed Aug 5 18:43:01 CEST 2009
134 - allow suppression of auto-supplied header fields by specifying undef
135 (requested by Mr Guest).
136 - allow proxy scheme to be missing, as documented
137 (reported by Mr Guest).
138 - do not follow redirects if we do not have a location header
139 (requested by Mr Guest).
140
141 1.41 Sat Jul 25 03:27:05 CEST 2009
142 - correctly parse completely headerless responses (e.g. by gatling).
143 (analysed by Robin Redeker).
144
145 1.4 Tue Jul 7 02:14:53 CEST 2009
146 - http_request would not instantly clear the connection slot on
147 tcp_connect failures, potentially leading to deadlocks.
148 - fix a bug where a connection error is wrongly reported
149 as EINPROGRESS.
150 - new parameters: on_header, on_body, want_body_handle.
151 - redirects will be followed when recurse is enabled whether or not
152 the body dowload was successful or not.
153 - include :port in Host header when given in the url (many sites break
154 when it's always there, and many break if it's missing...).
155 - pass the empty string, not undef, when there is no body but
156 no error occured.
157 - allow passing of tls_ctx, predefine two https security profiles.
158 - ucfirst all error messages generated internally.
159 - include "U" token in User-Agent.
160 - document $AnyEvent::HTTP::MAX_PER_HOST.
161 - allow empty field names in response headers (microsoft hits. microsoft
162 hits. microsoft hits. you die).
163
164 1.12 Thu Jun 11 14:45:18 CEST 2009
165 - $scheme wasn't optional in the proxy specification (reported by
166 Felix Antonius Wilhelm Ostmann).
167
168 1.11 Fri Nov 21 09:18:11 CET 2008
169 - work around a perl core bug not properly refcounting function arguments,
170 causing "200 OK" with random body results (reported by Дмитрий Шалашов).
171
172 1.1 Thu Oct 30 04:46:27 CET 2008
173 - work around different behaviour of AnyEvent::Handle in TLS mode.
174 - cleanup cookie implementation, many examples and comments were
175 provided by Дмитрий Шалашов.
176 - document the return values of http_* functions better.
177 - separate multiple header values by "," not "\x00" (this does not
178 break correctly written users of the old API).
179 - improve Set-Cookie: parsing.
180 - add experimental https-over-http-proxy support.
181 - downgrade https-over-https proxy to https-over-http.
182 - ignore spurious CR characters in headers, they show up
183 in the weirdest of places.
184 - ucfirst the request headers, for a slightly less weird look.
185 - work around (some) memleaks in perl regarding qr.
186
187 1.05 Mon Sep 29 15:49:58 CEST 2008
188 - fix a regex when parsing cookie domains
189 (patch by Дмитрий Шалашов).
190
191 1.04 Thu Jul 24 08:00:46 CEST 2008
192 - parse reason-less http status responses.
193 - parse more forms of broken location headers.
194
195 1.03 Thu Jul 3 03:47:58 CEST 2008
196 - fix http_post, which was totally broken (patch by Pedro Melo).
197 - do not recurse on POST requests, as per HTTP/1.[01] (this might
198 change as the recommendation isn't followed by anybody else).
199 - implement preliminary support for 303/307 redirects.
200
201 1.02 Thu Jun 12 13:50:08 CEST 2008
202 - make the request URL available in the callback of http_request.
203 - export http_post, http_head.
204
205 1.01 Fri Jun 6 14:56:37 CEST 2008
206 - fixed prototypes for http_* functions
207
208 1.0 Thu Jun 5 20:41:43 CEST 2008
209 - original version, an AnyEvent::AIO clone.