Changes for version 2.0 - 2011-01-04
- hopefully fully upgraded to HTTP/1.1.
- support HTTP/1.1 persistent and HTTP/1.0 keep-alive connections.
- drop https-proxy-connection support. seems unused and ill-specified.
- use more differentiated status 59x codes.
- properly use url hostname to verify server certificate.
- much improved cookie implementation:
- properly implement cookie expiry (for new cookies).
- new function to expire cookies and sessions: cookie_jar_expire.
- add special exception to parse broken expires= keys in set-cookie headers.
- do not quote cookie values when not strictly necessary, to improve compatibility with broken servers.
- accept and send lots of invalid cookie values exactly as they were received - this should not impact valid values.
- lowercase cookie parameter names for improved compatibility.
- support the max-age cookie parameter, used if expires is missing.
- support cookie dates (and a few others) in parse_date.
- suppoer value-less parameters (e.g. secure, httponly).
- do not send Host: header in a proxy CONNECT request.
- use common::sense.
- lowercase hostnames and schemes.
- ignore leading zeroes in http version.
- handle spaces in content-length headers more gracefully.
Modules
simple but non-blocking HTTP/HTTPS client