ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-HTTP/Changes
Revision: 1.85
Committed: Fri May 8 21:26:16 2015 UTC (9 years ago) by root
Branch: MAIN
Changes since 1.84: +5 -1 lines
Log Message:
*** empty log message ***

File Contents

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