--- AnyEvent/Changes 2014/09/05 22:17:26 1.594 +++ AnyEvent/Changes 2016/09/15 01:14:42 1.613 @@ -1,10 +1,5 @@ Revision history for Perl extension AnyEvent. -03:55:22 Doku zu new: It is possible to push requests on the read and write queues, and modify properties of the stream, even - while -03:55:23 AnyEvent::Handle is connecting. -03:55:39 doku zu on_connect: It is not allowed to use the read or write queues while the handle object is connecting. - TODO: document TCP_*** constants TODO: add debug/trace logging to some modules TODO: use the eval-with-cb-call trick also to speed up JSON? @@ -13,7 +8,62 @@ TODO: AnyEvent::Handle with AnyEvent::IO? TODO: invalid. and localhost. specialcasing inside AEDNS and not AESocket (rfc6761) TODO: maybe implement env variable to give hosts precedence +TODO: more formats for parse_ipv6 (single ipv6 address without port, ...p80, ...#80) + +TODO: inet_aton maybe pack C4? no, add a comment why not +TODO: hosts read multiple times for initial concurrent tcp_connect's? + +TODO: check that uts46/unicode 9.0.0 is released + - Only call tlsext_host_name for non-empty common names (reported + by Maxime Soulé). + - log a (single) notice message if SNI is not supported. + - upgrade to UTS-46:9.0.0 draft and switch to non-transitional + behaviour, beating thunderbird, ie, edge, chrome and safari to it :) + (see also https://bugzilla.mozilla.org/show_bug.cgi?id=1218179) + - turns out the UTS-46 IDNA testcase failures were indeed bugs in the + testcases and the specification and not in the code - the post-9.0.0 + unicode files have all known problems fixed, so finally the AnyEvent + IDNA implementation can pass the full IDNA testsuite - without needing + a single fix :) + - guarantee (and document) that condvar callbacks will be removed + on invocation - important to avoid circular references. + +7.12 Wed Jan 27 19:12:26 CET 2016 + - use common name as hostname for tls connects, if Net::SSLeay + supports SNI. + - fix documentation of tls_autostart read type in AnyEvent::Handle, + analyzed by Felix Ostmann. + +7.11 Thu Jul 16 14:36:00 CEST 2015 + - AnyEvent::Socket::parse_ipv6 could accept malformed ipv6 + addresses (extra "::" at end and similar cases). + - add a more explicit warning to AnyEvent::Handle that it doesn't + work on files, people keep getting confused. + - new function AnyEvent::Socket::tcp_bind. + - new functions AnyEvent::fh_block and AnyEvent::fh_unblock. + - aligned ipv6 address formatting with RFC 5952 (by not shortening + a single :0: to ::). + - added stability canary support. + +7.09 Sat May 2 16:38:53 CEST 2015 + - AnyEvent::Debug called an internal function (AnyEvent::Log::ft) + that was renamed to AnyEvent::Log:format_time. uinder its old name + (analyzed by Michael Stovenour). + - update AnyEvent::DNS fallback resolver addresses: + seems google effectively killed most other free dns resolvers, + so remove them, but add cable and wireless (ecrc) since it was + stable for 20 years or so, official or not, and there should be + an alternative to google. + - perl5porters broke windows error codes in 5.20, and mapped + WSAEWOULDBLOCK on the (different) EWOULDBLOCK error code, and + WSAEINPROGRESS into the incompatible ERINPROGRESS code, probably + because they were so cool. They probably broke other error codes + for no reason, too, but I didn't care for checking, it's too + depressing. This version only works around the WSAEWOULDBLOCK + issue, because I don't have a nice way to work around the + WSAEINPROGRESS bug. +7.08 Wed Dec 10 05:27:17 CET 2014 - work around a newly introduced bug in Socket 2.011 (an errornous sun_length check) (analyzed by Maxime Soulé). - AnyEvent::TLS didn't load (but refer to) AnyEvent::Socket @@ -653,7 +703,7 @@ - add an additional error message parameter to AnyEvent::Handle's on_error callback (for TLS, $! is still available). - add AnyEvent::Handle on_starttls/on_stoptls callbacks. - - make AnyEvent::Handle more robust against early conenction + - make AnyEvent::Handle more robust against early connection failures (during new), and return C in that case from the constructor. - AnyEvent::Handle will now try to load only JSON::XS first,