AnyEvent
view release on metacpan or search on metacpan
on different architectures in parse_ipv4 (reported and
analysed by Keiichi DAIBA).
4.151 Fri Jun 6 17:34:24 CEST 2008
- make sure specifying _only_ on_read and never pushing reads
works.
4.15 Fri Jun 6 13:00:46 CEST 2008
- the pure perl backend would keep some watchers alive when more than
one watcher was registered for the same fd.
- new "packstring" and "storable" read and write types
for AnyEvent::Handle.
- allow on_eof handler to be called after on_error with EPIPE returns.
- do not immediately call on_read callback in handle constructor.
4.14 Thu Jun 5 20:29:31 CEST 2008
- Fixed a bug in DNS SRV priority sorting.
- AnyEvent::Util::guard now reports runtime errors while
executing the guard block as warnings.
- handle 0-byte-reads just before EOF correctly in AnyEvent::Handle.
4.13 Thu Jun 5 00:47:59 CEST 2008
- AnyEvent::DNS only followed cname chains with length 2,
contrary to documentation. bumped it up to 10, thanks to
microsoft, the current broken-dns-config-king.
- AnyEvent::DNS didn't check for socket return status
but instead relied on perl not creating filehandles in that
case - too bad it gives you a bogus file handle (reported
and analysed by Vladimir Timofeev).
- fix queue management logic in AnyEvent::Handle:
when on_read was registered, the queue was empty
and no progress could be made AnyEvent::Handle would
enter an endless loop.
- correctly start reading again when the handle became
busy again after idling.
- correctly treat tls shut-downs as EOF condition
(for the time being, would be nice to have a callback for that).
- correctly call eof callback under all conditions
(hopefully).
- the timeout callback did not expect that $self can go
away any time.
4.12 Tue Jun 3 10:58:04 CEST 2008
- include AnyEvent::Intro, a tutorial for anyevent,
anyevent::socket and anyevent::handle.
- allow more options in on_error.
4.11 Fri May 30 23:42:25 CEST 2008
- INCOMPATIBLE CHANGE: replace ptr by real PTR lookup, provide
reverse_lookup and reverse_verify to replace it, support
v4mapped and v4compat addresses.
- provide more documentation for the resolver class.
- really replace longest run of :0: by :: in format_address,
also properly convert :: and ::1 again.
- support NAPTR record name and decode it.
- implement random weight sampling for SRV records, as per
rfc 2782.
- correctly abort on srv-record targets of ".".
- added AnyEvent::DNS::wait_for_slot.
- in the unlikely event of a virtual circuit connection
being invalidated by a delayed udp reply, AnyEvent::DNS
could die. this has been fixed.
- plug a probable memleak in the DNS vc code.
- use configured timeout also for VC request phase.
- implement timeout and max_outstanding methods
for resolver class.
- update version numbers in all modules.
4.1 Thu May 29 05:45:40 CEST 2008
- INCOMPATIBLE CHANGE: renamed xxx_ip functions to xxx_address
which mirrors their purpose better (old names still available
for a while). Also moved AnyEvent::DNS::addr to
AnyEvent::Socket::resolve_sockaddr.
- implement AnyEvent->time and AnyEvent->now.
- fix IPv6 support in pack_sockaddr.
- officially un-experimentalise all newly introduced code.
- support unix domain sockets everywhere by specifying
a host of "unix/" and the pathname as service.
- implement an activity timeout in AnyEvent::Handle.
- added a regex read type to AnyEvent::Handle.
- added a json read/write type to AnyEvent::Handle.
- always croak in on_error in AnyEvent::Handle.
- document how to subclass AnyEvent::Handle.
- implement AnyEvent::Util::fork_call.
- add support for IPv6 nameservers and nameserver statements.
- work around _yet_ _another_ windows perl bug in where empty
select masks cause errors in the pure perl backend (this
workaround cannot be implemented for the other event loops,
but EV also works around this).
- supply AnyEvent::Socket::address_type and make good use of it.
- clarify and fix the Handle documentation w.r.t $self vs. $handle
vs. callback arguments.
- add some recommends to the META.yml.
4.05 Mon May 26 19:44:06 CEST 2008
- some platforms ignore the rfc and prepend an extra sa_len member to
the sockaddr structure, cater for those. also use sockaddr_family,
didn't know it was there, but comes in handy for the workaround.
- undo the import WIN32 hack.
4.04 Mon May 26 08:03:31 CEST 2008
- try to work around yet another windows bug: failed connects are reported
as if it were out-of-band data. windows users: you suck. Only
EV, Glib, Event and the pure perl backend can handle this condition.
- optimize write algorithm in AnyEvent::Handle.
- properly parse PERL_ANYEVENT_PROTOCOLS and use the info correctly.
- tcp_connect now properly iterates through all targets.
- check wether IPv6 sockets can actually be created, otherwise, disable ipv6
support entirely. also hardcode some AF_INET6 constants for the
sake of perl 5.8.
- vastly improved nameserver/suffix detection algorithm for windows
(still a hack...)
- try to use a fallback dns server if no dns servers could be found.
- splatter around some local $SIG{__DIE__}'s to work around bad
die handlers.
4.03 Sun May 25 05:05:57 CEST 2008
- work around perl bugs on windows, where perl returns undocumented
error codes for sysread, syswrite etc.
- fix AnyEvent::Handle::unshift_read to really unshift and not push.
- AnyEvent::Handle could sometimes stumble over 0-byte writes.
( run in 2.644 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )