--- AnyEvent/Changes 2011/08/02 22:07:16 1.453 +++ AnyEvent/Changes 2011/08/26 04:57:45 1.495 @@ -1,31 +1,80 @@ 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: Kevin Ryde (3.8K) 1 inbox Glib child processes - - 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. +6.01 + - INCOMPATIBLE CHANGE: AnyEvent::DNS resource records now include + the TTL as fourth element - this affects ->resolve, ->request + and ->dns_unpack indirectly. Convenience functions 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. + - INCOMPATIBLE CHANGE: verbosity levels have been redefined, see + AnyEvent (PERL_ANYEVENT_VERBOSE) and AnyEvent::Log for details. + - DEPRECIATION: please change + "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 functions: AnyEvent::postpone, AnyEvent::log. + - new module: AnyEvent::Log, for simple logging needs. + - new env variable, PERL_ANYEVENT_LOG, for fine-grained logging config. + - 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). + - new env variable, PERL_ANYEVENT_HOSTS, to override the place where + F can be found. + - an empty PERL_ANYEVENT_RESOLV_CONF now selects the default + configuration. + - env variables can now be specified using AE_xyz instead of + PERL_ANYEVENT_xyz, subject to some rules. + - lots of new AnyEvent::Debug functionality. + - AnyEvent::Strict now checks for modifications $_ by the callback + (by setting it to readonly while executing the callback, if possible). + - 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 errornously keep an AE::Handle object alive on their own (reported by Mohammad Toossi). + - AnyEvent::Socket::resolve_sockaddr and all functions using it now + supports /etc/hosts overrides. - add more workarounds around child watcher bugs in IO::Async 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. + - suppress the idiotic warning inside POE by patching the POE::Kernel + run flags instead of asking the user to jump through contortions. + - add Task::Weaken as dependency (as recommends only at this time). + - replace PF_UNSPEC by 0, for good old minix. + +6.0 (not officially released, but was on CPAN for about 15 minutes :/) 5.34 Thu May 12 09:59:41 CEST 2011 - AE::TLS didn't support both cert_file and key at the same time,