ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/AnyEvent-HTTP/Changes
Revision: 1.69
Committed: Thu Feb 24 12:13:11 2011 UTC (13 years, 2 months ago) by root
Branch: MAIN
CVS Tags: rel-2_1
Changes since 1.68: +9 -0 lines
Log Message:
2.1

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