r40916 - in /trunk/libanyevent-perl: Changes META.yml README debian/changelog lib/AnyEvent.pm lib/AnyEvent/DNS.pm lib/AnyEvent/Handle.pm lib/AnyEvent/Impl/Perl.pm lib/AnyEvent/Socket.pm lib/AnyEvent/TLS.pm lib/AnyEvent/Util.pm t/02_signals.t

jawnsy-guest at users.alioth.debian.org jawnsy-guest at users.alioth.debian.org
Tue Jul 28 19:57:17 UTC 2009


Author: jawnsy-guest
Date: Tue Jul 28 19:57:11 2009
New Revision: 40916

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=40916
Log:
* New upstream release
  + Re-bless the AnyEvent::Handle into a dummy package after calling
    destroy, so the user doesn't need to test for errors after every
    push_write

Modified:
    trunk/libanyevent-perl/Changes
    trunk/libanyevent-perl/META.yml
    trunk/libanyevent-perl/README
    trunk/libanyevent-perl/debian/changelog
    trunk/libanyevent-perl/lib/AnyEvent.pm
    trunk/libanyevent-perl/lib/AnyEvent/DNS.pm
    trunk/libanyevent-perl/lib/AnyEvent/Handle.pm
    trunk/libanyevent-perl/lib/AnyEvent/Impl/Perl.pm
    trunk/libanyevent-perl/lib/AnyEvent/Socket.pm
    trunk/libanyevent-perl/lib/AnyEvent/TLS.pm
    trunk/libanyevent-perl/lib/AnyEvent/Util.pm
    trunk/libanyevent-perl/t/02_signals.t

Modified: trunk/libanyevent-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/Changes?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/Changes (original)
+++ trunk/libanyevent-perl/Changes Tue Jul 28 19:57:11 2009
@@ -1,4 +1,15 @@
 Revision history for Perl extension AnyEvent.
+
+4.881 Tue Jul 28 12:51:53 CEST 2009
+	- work around a bug in local in pre-5.10 perls, causing
+          AnyEvent::Handle to recurse when it should not.
+
+4.88 Tue Jul 28 04:04:37 CEST 2009
+	- re-bless the handle into a dummy package after calling
+          AnyEvent::Handle::destroy, so the user does not need to check
+          for errors after every push_write etc.
+        - do not attempt to run t/02_signals.t on obviously broken
+          platforms.
 
 4.87 Sun Jul 26 02:06:16 CEST 2009
 	- do not attempt to linger when there is no longer a valid fh.
@@ -16,7 +27,7 @@
         - try to align signal-race timer to full-second boundaries.
         - work around Tk not liking negative timeouts.
         - don't complain of different grades of environmental unfriendlyness
-          in IO::ASync.
+          in IO::Async.
 
 4.85 Sat Jul 18 06:16:14 CEST 2009
         - nail the signal race problem in perl once and for all

Modified: trunk/libanyevent-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/META.yml?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/META.yml (original)
+++ trunk/libanyevent-perl/META.yml Tue Jul 28 19:57:11 2009
@@ -11,7 +11,7 @@
    },
    "generated_by" : "ExtUtils::MakeMaker version 6.50",
    "distribution_type" : "module",
-   "version" : "4.87",
+   "version" : "4.881",
    "name" : "AnyEvent",
    "author" : [],
    "license" : "unknown",

Modified: trunk/libanyevent-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/README?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/README (original)
+++ trunk/libanyevent-perl/README Tue Jul 28 19:57:11 2009
@@ -1,8 +1,8 @@
 NAME
     AnyEvent - the DBI of event loop programming
 
-    EV, Event, Glib, Tk, Perl, Event::Lib, Irssi, IO::Async, Qt and POE are
-    various supported event loops/environments.
+    EV, Event, Glib, Tk, Perl, Event::Lib, Irssi, rxvt-unicode, IO::Async,
+    Qt and POE are various supported event loops/environments.
 
 SYNOPSIS
        use AnyEvent;

Modified: trunk/libanyevent-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/debian/changelog?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/debian/changelog (original)
+++ trunk/libanyevent-perl/debian/changelog Tue Jul 28 19:57:11 2009
@@ -1,3 +1,12 @@
+libanyevent-perl (4.881-1) UNRELEASED; urgency=low
+
+  * New upstream release
+    + Re-bless the AnyEvent::Handle into a dummy package after calling
+      destroy, so the user doesn't need to test for errors after every
+      push_write
+
+ -- Jonathan Yu <frequency at cpan.org>  Tue, 28 Jul 2009 11:53:34 -0400
+
 libanyevent-perl (4.870-1) unstable; urgency=low
 
   * New upstream release

Modified: trunk/libanyevent-perl/lib/AnyEvent.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent.pm Tue Jul 28 19:57:11 2009
@@ -2,8 +2,8 @@
 
 AnyEvent - the DBI of event loop programming
 
-EV, Event, Glib, Tk, Perl, Event::Lib, Irssi, IO::Async, Qt and POE are
-various supported event loops/environments.
+EV, Event, Glib, Tk, Perl, Event::Lib, Irssi, rxvt-unicode, IO::Async, Qt
+and POE are various supported event loops/environments.
 
 =head1 SYNOPSIS
 
@@ -1088,7 +1088,7 @@
 
 use Carp ();
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 our $MODEL;
 
 our $AUTOLOAD;

Modified: trunk/libanyevent-perl/lib/AnyEvent/DNS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/DNS.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/DNS.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/DNS.pm Tue Jul 28 19:57:11 2009
@@ -34,7 +34,7 @@
 use AnyEvent (); BEGIN { AnyEvent::common_sense }
 use AnyEvent::Util qw(AF_INET6);
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 our @DNS_FALLBACK = (v208.67.220.220, v208.67.222.222);
 

Modified: trunk/libanyevent-perl/lib/AnyEvent/Handle.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/Handle.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/Handle.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/Handle.pm Tue Jul 28 19:57:11 2009
@@ -13,7 +13,7 @@
 
 =cut
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 =head1 SYNOPSIS
 
@@ -983,7 +983,7 @@
    my ($self) = @_;
 
    # avoid recursion
-   return if exists $self->{_skip_drain_rbuf};
+   return if $self->{_skip_drain_rbuf};
    local $self->{_skip_drain_rbuf} = 1;
 
    if (
@@ -996,16 +996,17 @@
    while () {
       # we need to use a separate tls read buffer, as we must not receive data while
       # we are draining the buffer, and this can only happen with TLS.
-      $self->{rbuf} .= delete $self->{_tls_rbuf} if exists $self->{_tls_rbuf};
+      $self->{rbuf} .= delete $self->{_tls_rbuf}
+         if exists $self->{_tls_rbuf};
 
       my $len = length $self->{rbuf};
 
       if (my $cb = shift @{ $self->{_queue} }) {
          unless ($cb->($self)) {
-            if ($self->{_eof}) {
-               # no progress can be made (not enough data and no data forthcoming)
-               $self->_error (Errno::EPIPE, 1), return;
-            }
+            # no progress can be made
+            # (not enough data and no data forthcoming)
+            $self->_error (Errno::EPIPE, 1), return
+               if $self->{_eof};
 
             unshift @{ $self->{_queue} }, $cb;
             last;
@@ -1035,11 +1036,11 @@
    }
 
    if ($self->{_eof}) {
-      if ($self->{on_eof}) {
-         $self->{on_eof}($self)
-      } else {
-         $self->_error (0, 1, "Unexpected end-of-file");
-      }
+      $self->{on_eof}
+         ? $self->{on_eof}($self)
+         : $self->_error (0, 1, "Unexpected end-of-file");
+
+      return;
    }
 
    # may need to restart read watcher
@@ -1798,7 +1799,9 @@
 
 Shuts down the handle object as much as possible - this call ensures that
 no further callbacks will be invoked and as many resources as possible
-will be freed. You must not call any methods on the object afterwards.
+will be freed. Any method you will call on the handle object after
+destroying it in this way will be silently ignored (and it will return the
+empty list).
 
 Normally, you can just "forget" any references to an AnyEvent::Handle
 object and it will simply shut down. This works in fatal error and EOF
@@ -1822,6 +1825,11 @@
 
    $self->DESTROY;
    %$self = ();
+   bless $self, "AnyEvent::Handle::destroyed";
+}
+
+sub AnyEvent::Handle::destroyed::AUTOLOAD {
+   #nop
 }
 
 =item AnyEvent::Handle::TLS_CTX

Modified: trunk/libanyevent-perl/lib/AnyEvent/Impl/Perl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/Impl/Perl.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/Impl/Perl.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/Impl/Perl.pm Tue Jul 28 19:57:11 2009
@@ -110,7 +110,7 @@
 use AnyEvent (); BEGIN { AnyEvent::common_sense }
 use AnyEvent::Util ();
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 our ($NOW, $MNOW);
 

Modified: trunk/libanyevent-perl/lib/AnyEvent/Socket.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/Socket.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/Socket.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/Socket.pm Tue Jul 28 19:57:11 2009
@@ -58,7 +58,7 @@
    tcp_connect
 );
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 =item $ipn = parse_ipv4 $dotted_quad
 

Modified: trunk/libanyevent-perl/lib/AnyEvent/TLS.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/TLS.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/TLS.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/TLS.pm Tue Jul 28 19:57:11 2009
@@ -14,7 +14,7 @@
 
 =cut
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 =head1 SYNOPSIS
 
@@ -24,18 +24,14 @@
    use AnyEvent::Handle;
    use AnyEvent::Socket;
 
-   # ssl-connect
-   tcp_connect $host, $port, sub {
-      my ($fh) = @_;
-
-       my $handle = new AnyEvent::Handle
-          fh       => $fh,
-          peername => $host,
-          tls      => "connect",
-          tls_ctx  => { verify => 1, verify_peername => "https" },
-          ...
-
-   # ssl-server
+   # simple https-client
+   my $handle = new AnyEvent::Handle
+      connect  => [$host, $port],
+      tls      => "connect",
+      tls_ctx  => { verify => 1, verify_peername => "https" },
+      ...
+
+   # simple ssl-server
    tcp_server undef, $port, sub {
       my ($fh) = @_;
 

Modified: trunk/libanyevent-perl/lib/AnyEvent/Util.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/lib/AnyEvent/Util.pm?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/lib/AnyEvent/Util.pm (original)
+++ trunk/libanyevent-perl/lib/AnyEvent/Util.pm Tue Jul 28 19:57:11 2009
@@ -31,7 +31,7 @@
 our @EXPORT = qw(fh_nonblocking guard fork_call portable_pipe portable_socketpair);
 our @EXPORT_OK = qw(AF_INET6 WSAEWOULDBLOCK WSAEINPROGRESS WSAEINVAL);
 
-our $VERSION = 4.87;
+our $VERSION = 4.881;
 
 BEGIN {
    my $af_inet6 = eval { local $SIG{__DIE__}; &Socket::AF_INET6 };

Modified: trunk/libanyevent-perl/t/02_signals.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libanyevent-perl/t/02_signals.t?rev=40916&op=diff
==============================================================================
--- trunk/libanyevent-perl/t/02_signals.t (original)
+++ trunk/libanyevent-perl/t/02_signals.t Tue Jul 28 19:57:11 2009
@@ -1,3 +1,12 @@
+BEGIN {
+   unless (exists $SIG{USR1}) {
+      print <<EOF;
+1..0 # SKIP Broken perl detected, skipping tests.
+EOF
+      exit 0;
+   }
+}
+
 use AnyEvent;
 use AnyEvent::Impl::Perl;
 




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