r43498 - in /branches/upstream/libanyevent-perl/current: Changes META.yml README lib/AnyEvent.pm lib/AnyEvent/DNS.pm lib/AnyEvent/Handle.pm lib/AnyEvent/Impl/Perl.pm

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Wed Sep 2 15:27:54 UTC 2009


Author: jawnsy-guest
Date: Wed Sep  2 15:27:48 2009
New Revision: 43498

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=43498
Log:
[svn-upgrade] Integrating new upstream version, libanyevent-perl (5.120)

Modified:
    branches/upstream/libanyevent-perl/current/Changes
    branches/upstream/libanyevent-perl/current/META.yml
    branches/upstream/libanyevent-perl/current/README
    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

Modified: branches/upstream/libanyevent-perl/current/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/Changes?rev=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/Changes (original)
+++ branches/upstream/libanyevent-perl/current/Changes Wed Sep  2 15:27:48 2009
@@ -1,4 +1,17 @@
 Revision history for Perl extension AnyEvent.
+
+5.12 Tue Sep  1 20:26:50 CEST 2009
+	- be more lenient when parsing resolv.conf files, as some people
+          use hashmarks as comment indicator inside directives (reported
+          by Michael S. Fischer).
+        - use same set of warnings as common::sense 2.0.
+	- fix a potential 32 bit overflow issue due to perl having problems
+          with large hex constants in the Perl backend.
+        - do not use the slower 5.6 version fo the enc_name code in AnyEvent::DNS
+          by default.
+        - fix some prototypes.
+	- (optionally) require Async::Interrupt 1.02.
+        - replace opendns fallbacks by verizon/level3 public dns servers.
 
 5.112 Fri Aug 21 13:59:04 CEST 2009
         - AnyEvent::Handle could cause hard crashes in Net::SSLeay when

Modified: branches/upstream/libanyevent-perl/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/META.yml?rev=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/META.yml (original)
+++ branches/upstream/libanyevent-perl/current/META.yml Wed Sep  2 15:27:48 2009
@@ -11,7 +11,7 @@
    },
    "generated_by" : "ExtUtils::MakeMaker version 6.50",
    "distribution_type" : "module",
-   "version" : "5.112",
+   "version" : "5.12",
    "name" : "AnyEvent",
    "author" : [],
    "license" : "unknown",

Modified: branches/upstream/libanyevent-perl/current/README
URL: http://svn.debian.org/wsvn/pkg-perl/branches/upstream/libanyevent-perl/current/README?rev=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/README (original)
+++ branches/upstream/libanyevent-perl/current/README Wed Sep  2 15:27:48 2009
@@ -1230,16 +1230,9 @@
           },
        );
 
-       my $time_watcher; # can only be used once
-
-       sub new_timer {
-          $timer = AnyEvent->timer (after => 1, cb => sub {
-             warn "timeout\n"; # print 'timeout' about every second
-             &new_timer; # and restart the time
-          });
-       }
-
-       new_timer; # create first timer
+       my $time_watcher = AnyEvent->timer (after => 1, interval => 1, cb => sub {
+          warn "timeout\n"; # print 'timeout' at most every second
+       });
 
        $cv->recv; # wait until user enters /^q/i
 
@@ -1667,13 +1660,13 @@
     backend easily beats IO::Lambda and POE.
 
     And even the 100% non-blocking version written using the high-level (and
-    slow :) AnyEvent::Handle abstraction beats both POE and IO::Lambda by a
-    large margin, even though it does all of DNS, tcp-connect and socket I/O
-    in a non-blocking way.
+    slow :) AnyEvent::Handle abstraction beats both POE and IO::Lambda
+    higher level ("unoptimised") abstractions by a large margin, even though
+    it does all of DNS, tcp-connect and socket I/O in a non-blocking way.
 
     The two AnyEvent benchmarks programs can be found as eg/ae0.pl and
     eg/ae2.pl in the AnyEvent distribution, the remaining benchmarks are
-    part of the IO::lambda distribution and were used without any changes.
+    part of the IO::Lambda distribution and were used without any changes.
 
 SIGNALS
     AnyEvent currently installs handlers for these signals:

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=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent.pm Wed Sep  2 15:27:48 2009
@@ -1108,8 +1108,8 @@
 
 # basically a tuned-down version of common::sense
 sub common_sense {
-   # no warnings
-   ${^WARNING_BITS} ^= ${^WARNING_BITS};
+   # from common:.sense 1.0
+   ${^WARNING_BITS} = "\xfc\x3f\xf3\x00\x0f\xf3\xcf\xc0\xf3\xfc\x33\x03";
    # use strict vars subs
    $^H |= 0x00000600;
 }
@@ -1118,7 +1118,7 @@
 
 use Carp ();
 
-our $VERSION = '5.112';
+our $VERSION = '5.12';
 our $MODEL;
 
 our $AUTOLOAD;
@@ -1345,7 +1345,7 @@
 
 # default implementations for many methods
 
-sub _time {
+sub _time() {
    # probe for availability of Time::HiRes
    if (eval "use Time::HiRes (); Time::HiRes::time (); 1") {
       warn "AnyEvent: using Time::HiRes for sub-second timing accuracy.\n" if $VERBOSE >= 8;
@@ -1375,7 +1375,7 @@
 
 sub _have_async_interrupt() {
    $HAVE_ASYNC_INTERRUPT = 1*(!$ENV{PERL_ANYEVENT_AVOID_ASYNC_INTERRUPT}
-                              && eval "use Async::Interrupt 1.0 (); 1")
+                              && eval "use Async::Interrupt 1.02 (); 1")
       unless defined $HAVE_ASYNC_INTERRUPT;
 
    $HAVE_ASYNC_INTERRUPT
@@ -1914,16 +1914,9 @@
       },
    );
 
-   my $time_watcher; # can only be used once
-
-   sub new_timer {
-      $timer = AnyEvent->timer (after => 1, cb => sub {
-         warn "timeout\n"; # print 'timeout' about every second
-         &new_timer; # and restart the time
-      });
-   }
-
-   new_timer; # create first timer
+   my $time_watcher = AnyEvent->timer (after => 1, interval => 1, cb => sub {
+      warn "timeout\n"; # print 'timeout' at most every second
+   });
 
    $cv->recv; # wait until user enters /^q/i
 
@@ -2377,13 +2370,13 @@
 backend easily beats IO::Lambda and POE.
 
 And even the 100% non-blocking version written using the high-level (and
-slow :) L<AnyEvent::Handle> abstraction beats both POE and IO::Lambda by a
-large margin, even though it does all of DNS, tcp-connect and socket I/O
-in a non-blocking way.
+slow :) L<AnyEvent::Handle> abstraction beats both POE and IO::Lambda
+higher level ("unoptimised") abstractions by a large margin, even though
+it does all of DNS, tcp-connect and socket I/O in a non-blocking way.
 
 The two AnyEvent benchmarks programs can be found as F<eg/ae0.pl> and
 F<eg/ae2.pl> in the AnyEvent distribution, the remaining benchmarks are
-part of the IO::lambda distribution and were used without any changes.
+part of the IO::Lambda distribution and were used without any changes.
 
 
 =head1 SIGNALS

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=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/DNS.pm Wed Sep  2 15:27:48 2009
@@ -36,7 +36,11 @@
 
 our $VERSION = $AnyEvent::VERSION;
 
-our @DNS_FALLBACK = (v208.67.220.220, v208.67.222.222);
+# some public dns servers
+our @DNS_FALLBACK = (
+   v209.244.0.3, v209.244.0.4, # level3
+   v4.2.2.1, v4.2.2.3, v4.2.2.4, v4.2.2.5, v4.2.2.6, # vnsc-pri.sys.gtei.net
+);
 
 =item AnyEvent::DNS::a $domain, $cb->(@addrs)
 
@@ -378,9 +382,9 @@
    pack "(C/a*)*", (split /\./, shift), ""
 }
 
-if ($[ < 5.008) {
+if ($] < 5.008) {
    # special slower 5.6 version
-   *_enc_name = sub {
+   *_enc_name = sub ($) {
       join "", map +(pack "C/a*", $_), (split /\./, shift), ""
    };
 }
@@ -812,9 +816,9 @@
    my $attempts;
 
    for (split /\n/, $resolvconf) {
-      if (/^\s*#/) {
-         # comment
-      } elsif (/^\s*nameserver\s+(\S+)\s*$/i) {
+      s/#.*$//; # not quite legal, but many people insist
+
+      if (/^\s*nameserver\s+(\S+)\s*$/i) {
          my $ip = $1;
          if (my $ipn = AnyEvent::Socket::parse_address ($ip)) {
             push @{ $self->{server} }, $ipn;

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=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Handle.pm Wed Sep  2 15:27:48 2009
@@ -1192,7 +1192,6 @@
       $cb = ($RH{$type} or Carp::croak "unsupported type passed to AnyEvent::Handle::unshift_read")
             ->($self, $cb, @_);
    }
-
 
    unshift @{ $self->{_queue} }, $cb;
    $self->_drain_rbuf;

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=43498&op=diff
==============================================================================
--- branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm (original)
+++ branches/upstream/libanyevent-perl/current/lib/AnyEvent/Impl/Perl.pm Wed Sep  2 15:27:48 2009
@@ -140,7 +140,7 @@
 
          $next = (POSIX::times ())[0];
          # we assume 32 bit signed on wrap but 64 bit will never wrap
-         $last -= 0x100000000 if $last > $next;
+         $last -= 4294967296 if $last > $next; # 0x100000000, but perl has probelsm with big hex constants
          $MNOW += ($next - $last) * $HZ1;
          $last = $next;
       };
@@ -303,7 +303,7 @@
    }
 }
 
-sub AE::timer {
+sub AE::timer($$$) {
    my ($after, $interval, $cb) = @_;
    
    my $self;




More information about the Pkg-perl-cvs-commits mailing list