r35887 - in /branches/upstream/libanyevent-perl/current: Changes META.yml lib/AnyEvent.pm lib/AnyEvent/DNS.pm lib/AnyEvent/Handle.pm lib/AnyEvent/Impl/Perl.pm lib/AnyEvent/Socket.pm lib/AnyEvent/Util.pm t/03_child.t
jawnsy-guest at users.alioth.debian.org
jawnsy-guest at users.alioth.debian.org
Tue May 19 18:31:03 UTC 2009
Author: jawnsy-guest
Date: Tue May 19 18:30:58 2009
New Revision: 35887
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=35887
Log:
[svn-upgrade] Integrating new upstream version, libanyevent-perl (4.41)
Modified:
branches/upstream/libanyevent-perl/current/Changes
branches/upstream/libanyevent-perl/current/META.yml
branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm
branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm
branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm
branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm
branches/upstream/libanyevent-perl/current/lib/AnyEvent/Socket.pm
branches/upstream/libanyevent-perl/current/lib/AnyEvent/Util.pm
branches/upstream/libanyevent-perl/current/t/03_child.t
Modified: branches/upstream/libanyevent-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/Changes?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/Changes (original)
+++ branches/upstream/libanyevent-perl/current/Changes Tue May 19 18:30:58 2009
@@ -1,4 +1,15 @@
Revision history for Perl extension AnyEvent.
+
+4.41 Thu May 14 06:40:11 CEST 2009
+ - work around issues in older perls (5.8.0?) when
+ a signal handler is deleted from the %SIG hash.
+ - use POSIX::_exit in child test, to avoid running
+ destructors.
+ - speed up CHLD handling by relying on SIGCHLD being
+ synchronously delivered, even when we roll our own
+ implementation.
+ - AnyEvent::DNS: add the "dname" resource record name
+ for cosmetic reasons.
4.4 Sun Apr 26 20:12:33 CEST 2009
- implemented idle watchers, where applicable.
Modified: branches/upstream/libanyevent-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/META.yml?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/META.yml (original)
+++ branches/upstream/libanyevent-perl/current/META.yml Tue May 19 18:30:58 2009
@@ -1,6 +1,6 @@
--- #YAML:1.0
name: AnyEvent
-version: 4.4
+version: 4.41
abstract: ~
author: []
license: unknown
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm Tue May 19 18:30:58 2009
@@ -932,7 +932,7 @@
use Carp;
-our $VERSION = 4.4;
+our $VERSION = 4.41;
our $MODEL;
our $AUTOLOAD;
@@ -1173,7 +1173,10 @@
delete $SIG_CB{$signal}{$cb};
- delete $SIG{$signal} unless keys %{ $SIG_CB{$signal} };
+ # delete doesn't work with older perls - they then
+ # print weird messages, or just unconditionally exit
+ # instead of getting the default action.
+ undef $SIG{$signal} unless keys %{ $SIG_CB{$signal} };
}
# default implementation for ->child
@@ -1181,24 +1184,13 @@
our %PID_CB;
our $CHLD_W;
our $CHLD_DELAY_W;
-our $PID_IDLE;
our $WNOHANG;
-sub _child_wait {
+sub _sigchld {
while (0 < (my $pid = waitpid -1, $WNOHANG)) {
$_->($pid, $?) for (values %{ $PID_CB{$pid} || {} }),
(values %{ $PID_CB{0} || {} });
}
-
- undef $PID_IDLE;
-}
-
-sub _sigchld {
- # make sure we deliver these changes "synchronous" with the event loop.
- $CHLD_DELAY_W ||= AnyEvent->timer (after => 0, cb => sub {
- undef $CHLD_DELAY_W;
- &_child_wait;
- });
}
sub child {
@@ -1209,9 +1201,7 @@
$PID_CB{$pid}{$arg{cb}} = $arg{cb};
- unless ($WNOHANG) {
- $WNOHANG = eval { local $SIG{__DIE__}; require POSIX; &POSIX::WNOHANG } || 1;
- }
+ $WNOHANG ||= eval { local $SIG{__DIE__}; require POSIX; &POSIX::WNOHANG } || 1;
unless ($CHLD_W) {
$CHLD_W = AnyEvent->signal (signal => 'CHLD', cb => \&_sigchld);
@@ -1232,7 +1222,7 @@
}
# idle emulation is done by simply using a timer, regardless
-# of whether the proces sis idle or not, and not letting
+# of whether the process is idle or not, and not letting
# the callback use more than 50% of the time.
sub idle {
my (undef, %arg) = @_;
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm Tue May 19 18:30:58 2009
@@ -37,7 +37,7 @@
use AnyEvent::Handle ();
use AnyEvent::Util qw(AF_INET6);
-our $VERSION = 4.4;
+our $VERSION = 4.41;
our @DNS_FALLBACK = (v208.67.220.220, v208.67.222.222);
@@ -354,6 +354,7 @@
aaaa => 28,
srv => 33,
naptr => 35, # rfc2915
+ dname => 39, # rfc2672
opt => 41,
spf => 99,
tkey => 249,
@@ -513,6 +514,7 @@
local $ofs = $ofs + $offset - length;
($order, $preference, $flags, $service, $regexp, _dec_name)
},
+ 39 => sub { local $ofs = $ofs - length; _dec_name }, # dname
99 => sub { unpack "(C/a*)*", $_ }, # spf
);
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm Tue May 19 18:30:58 2009
@@ -16,7 +16,7 @@
=cut
-our $VERSION = 4.4;
+our $VERSION = 4.41;
=head1 SYNOPSIS
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm Tue May 19 18:30:58 2009
@@ -91,7 +91,7 @@
use AnyEvent ();
use AnyEvent::Util ();
-our $VERSION = 4.4;
+our $VERSION = 4.41;
our ($NOW, $MNOW);
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent/Socket.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent/Socket.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Socket.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Socket.pm Tue May 19 18:30:58 2009
@@ -59,7 +59,7 @@
tcp_connect
);
-our $VERSION = 4.4;
+our $VERSION = 4.41;
=item $ipn = parse_ipv4 $dotted_quad
Modified: branches/upstream/libanyevent-perl/current/lib/AnyEvent/Util.pm
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/lib/AnyEvent/Util.pm?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Util.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Util.pm Tue May 19 18:30:58 2009
@@ -34,7 +34,7 @@
our @EXPORT = qw(fh_nonblocking guard fork_call portable_pipe portable_socketpair);
our @EXPORT_OK = qw(AF_INET6 WSAEWOULDBLOCK WSAEINPROGRESS WSAEINVAL WSAWOULDBLOCK);
-our $VERSION = 4.4;
+our $VERSION = 4.41;
BEGIN {
my $posix = 1 * eval { local $SIG{__DIE__}; require POSIX };
Modified: branches/upstream/libanyevent-perl/current/t/03_child.t
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/t/03_child.t?rev=35887&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/t/03_child.t (original)
+++ branches/upstream/libanyevent-perl/current/t/03_child.t Tue May 19 18:30:58 2009
@@ -1,5 +1,3 @@
-$|=1;
-
BEGIN {
# check for broken perls
if ($^O =~ /mswin32/i) {
@@ -17,8 +15,11 @@
}
BEGIN {
+ $|=1;
print "1..7\n"
}
+
+use POSIX ();
use AnyEvent;
use AnyEvent::Impl::Perl;
@@ -38,7 +39,7 @@
unless ($pid) {
print "ok 2\n";
- exit 3;
+ POSIX::_exit 3;
}
my $w = AnyEvent->child (pid => $pid, cb => sub {
@@ -49,7 +50,7 @@
$cv->wait;
-my $pid2 = fork || exit 7;
+my $pid2 = fork || POSIX::_exit 7;
my $cv2 = AnyEvent->condvar;
More information about the Pkg-perl-cvs-commits
mailing list