--- AnyEvent/Changes 2011/08/11 20:58:10 1.457 +++ AnyEvent/Changes 2011/08/15 23:21:09 1.474 @@ -1,18 +1,16 @@ Revision history for Perl extension AnyEvent. TODO: document TCP_*** constants -TODO: catch AE::xxx for anyevent strict and anyevent debug -TODO: anyevent::trace? or debug tracing all watchers? -TODO: anyevent strict checking for $_ changes? -TODO: AnyEvent->postpone -TODO: redesign Impl -TODO: too long domain names -TODO: make ae::run mroe robust against eintr, find out which env still causes these issues +TODO: logging? / trace_level AnyEvent::Log +6.01 + +6.0 (not officially released) - INCOMPATIBLE CHANGE: AnyEvent::DNS resource records now include the TTL as fourth element - this affects ->resolve directly, and ->request and ->dns_unpack indirectly. Convenience functions - such as AnyEvent::DNS::{a,txt,mx,srv} are not affected. + such as AnyEvent::DNS::{a,txt,mx,srv} are not affected, neither + is AnyEvent::Socket. - INCOMPATIBLE CHANGE: backend authors now should not implement one_event or loop, but instead the AnyEvent::CondVar::_wait and _poll methods. @@ -20,7 +18,22 @@ "use AnyEvent::Impl::Perl" to "use AnyEvent::Loop" and "AnyEvent::Impl::Perl::loop" to "AnyEvent::Loop::run" in your programs, for future compatibility. + - *blush* idle watcher emulation was borked. + - AnyEvent::Strict now checks the AE::xxx functions as well. + - querying too long domain names would barf deep inside AnyEvent::DNS - since + this is hard to avoid for applications, AnyEvent:.DNS::request now checks for + for too long domain names explicitly and passes an undef to the callback + instead (reported by James Bromberger). + - make AnyEvent::Util more robust against EINTR (analyzed by Andrew Suffield). - new function: AnyEvent::postpone. + - new env variable, PERL_ANYEVENT_DEBUG_SHELL, to automatically start + a debug shell. + - new env variable, PERL_ANYEVENT_DEBUG_WRAP, to automatically enable + watcher instrumentation/wrapping (see AnyEvent::Debug::wrap). + - lots of new AnyEvent::Debug functionality. + - AnyEvent::Strict now checks for modifications $_ by the callback. + - IO::Async sometimes cancels the wrong timer when you call cancel_timer. + Invest extra overhead to work around this peculiar behaviour. - split the pure perl backend into a loop module and an impl module (AnyEvent::Loop and AnyEvent::Impl::Perl). - some read types (regex, netstring, json, storable) could @@ -30,15 +43,22 @@ and (newly introduced) in POE. - use glib child watchers and try to work around its limitations, if possible (based on a patch by Kevin Ryde). - - add support for (currently third-party) AnyEvent::Impl::FLTK. + - add support for FLTK (fltk2), via AnyEvent::Impl::FLTK2. - many read types in AnyEvent::Handle would malfunction during transitions to TLS because of a "delete $self->{rbuf}". (reported by Gerald Galster). - - resolve AnyEvent::Util::guard at first-use-time, not at load time, - for further speed and memory savings when not used. - improve condvar blocking wait performance (probably only noticable with faster backends), also make it easier for event loops that do not support blocking waits. + - PERL_ANYEVENT_MODEL now also allows full module names, although + the usefulness of this feature is not yet clear. + - add tests for all supported event loops, conditional on PERL_ANYEVENT_LOOP_TESTS. + - add t/80_ssltext.t. + - no longer use AUTOLOAD for the initial loading (for no very good reason). + - tcp_server now tries to unlink unix domain sockets when it gets destroyed. + - do not run event loop detection multiple times when programs call their cached + copies of AnyEvent::detect. + - parse_hostport now accepts absolute paths als unix domain sockets. 5.34 Thu May 12 09:59:41 CEST 2011 - AE::TLS didn't support both cert_file and key at the same time,