r77100 - in /trunk/libipc-run-perl: ./ debian/ lib/IPC/ lib/IPC/Run/ t/

carnil at users.alioth.debian.org carnil at users.alioth.debian.org
Mon Jul 4 16:29:43 UTC 2011


Author: carnil
Date: Mon Jul  4 16:29:41 2011
New Revision: 77100

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=77100
Log:
New upstream release

Added:
    trunk/libipc-run-perl/META.json
      - copied unchanged from r77099, branches/upstream/libipc-run-perl/current/META.json
Modified:
    trunk/libipc-run-perl/Changes
    trunk/libipc-run-perl/MANIFEST
    trunk/libipc-run-perl/META.yml
    trunk/libipc-run-perl/Makefile.PL
    trunk/libipc-run-perl/debian/changelog
    trunk/libipc-run-perl/lib/IPC/Run.pm
    trunk/libipc-run-perl/lib/IPC/Run/Debug.pm
    trunk/libipc-run-perl/lib/IPC/Run/IO.pm
    trunk/libipc-run-perl/lib/IPC/Run/Timer.pm
    trunk/libipc-run-perl/lib/IPC/Run/Win32Helper.pm
    trunk/libipc-run-perl/lib/IPC/Run/Win32IO.pm
    trunk/libipc-run-perl/lib/IPC/Run/Win32Pump.pm
    trunk/libipc-run-perl/t/parallel.t
    trunk/libipc-run-perl/t/pty.t
    trunk/libipc-run-perl/t/run.t
    trunk/libipc-run-perl/t/timeout.t

Modified: trunk/libipc-run-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/Changes?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/Changes (original)
+++ trunk/libipc-run-perl/Changes Mon Jul  4 16:29:41 2011
@@ -1,5 +1,15 @@
 Revision history for Perl extension IPC::Run
 
+0.90 Wed 29 Jun 2011
+ - RT 57277 - Add breaking test. No solution at present.
+ - RT 68623 - disable parallel tests on windows
+ - RT 43072 - Skip dragonfly platform on t/pty.t (hangs)
+ - RT 14078 - run() miscalculates length of UTF-8 strings
+ - RT 49693 - security patch for lib/IPC/Run/Win32IO.pm s/INADDR_ANY//
+ - RT 38193 - Fix error detection on non-English operating systems
+ - Add a blank doc entry for IPC::Run::Win32IO::poll to quiet windows pod parser errors
+ - RT 57190 - handle PATH environment variable not being defined. WILL NOT default to '.' since UNIX would not do this and the program has been behaving the UNIX way to date.
+  
 0.89 Wed 31 Mar 2010
   - Revert extended tests to require "oslo consensus" variables - http://use.perl.org/~Alias/journal/36128
   - Add IO::Pty to META.yml requirement This has been inconsistently depended on over the years in META.yml

Modified: trunk/libipc-run-perl/MANIFEST
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/MANIFEST?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/MANIFEST (original)
+++ trunk/libipc-run-perl/MANIFEST Mon Jul  4 16:29:41 2011
@@ -44,3 +44,4 @@
 t/win32_compile.t
 TODO
 META.yml                                 Module meta-data (added by MakeMaker)
+META.json                                Module JSON meta-data (added by MakeMaker)

Modified: trunk/libipc-run-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/META.yml?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/META.yml (original)
+++ trunk/libipc-run-perl/META.yml Mon Jul  4 16:29:41 2011
@@ -1,30 +1,30 @@
---- #YAML:1.0
-name:               IPC-Run
-version:            0.89
-abstract:           system() and background procs w/ piping, redirs, ptys (Unix, Win32)
+---
+abstract: 'system() and background procs w/ piping, redirs, ptys (Unix, Win32)'
 author:
-    - Barrie Slaymaker <barries at slaysys.com>
-license:            perl
-distribution_type:  module
+  - 'Barrie Slaymaker <barries at slaysys.com>'
+build_requires:
+  ExtUtils::MakeMaker: 0
+  Test::More: 0
 configure_requires:
-    ExtUtils::MakeMaker:  0
-build_requires:
-    ExtUtils::MakeMaker:  0
-    Test::More:           0
+  ExtUtils::MakeMaker: 0
+dynamic_config: 1
+generated_by: 'ExtUtils::MakeMaker version 6.571, CPAN::Meta::Converter version 2.110930'
+license: perl
+meta-spec:
+  url: http://module-build.sourceforge.net/META-spec-v1.4.html
+  version: 1.4
+name: IPC-Run
+no_index:
+  directory:
+    - t
+    - inc
+recommends:
+  IO::Pty: 1.08
 requires:
-    IO::Pty:     1.08
-    Test::More:  0.47
+  IO::Pty: 1.08
+  Test::More: 0.47
 resources:
-    bugtracker:  https://rt.cpan.org/NoAuth/Bugs.html?Dist=IPC-Run
-    license:     http://dev.perl.org/licenses/
-    repository:  http://svn.ali.as/cpan/trunk/IPC-Run
-no_index:
-    directory:
-        - t
-        - inc
-generated_by:       ExtUtils::MakeMaker version 6.55_02
-meta-spec:
-    url:      http://module-build.sourceforge.net/META-spec-v1.4.html
-    version:  1.4
-recommends:
-    IO::Pty:  1.08
+  bugtracker: https://rt.cpan.org/NoAuth/Bugs.html?Dist=IPC-Run
+  license: http://dev.perl.org/licenses/
+  repository: http://svn.ali.as/cpan/trunk/IPC-Run
+version: 0.90

Modified: trunk/libipc-run-perl/Makefile.PL
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/Makefile.PL?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/Makefile.PL (original)
+++ trunk/libipc-run-perl/Makefile.PL Mon Jul  4 16:29:41 2011
@@ -49,6 +49,8 @@
 		Test::More => '0.47',
 		%PREREQ_PM,
 	},
+        dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
+        clean               => { FILES => 'IPC-Run-*' },
 	META_MERGE  => {
 	    recommends => {
 		'IO::Pty' => '1.08',

Modified: trunk/libipc-run-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/debian/changelog?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/debian/changelog (original)
+++ trunk/libipc-run-perl/debian/changelog Mon Jul  4 16:29:41 2011
@@ -1,5 +1,6 @@
-libipc-run-perl (0.89-2) UNRELEASED; urgency=low
+libipc-run-perl (0.90-1) UNRELEASED; urgency=low
 
+  * New upstream release
   * Email change: Salvatore Bonaccorso -> carnil at debian.org
 
  -- Salvatore Bonaccorso <carnil at debian.org>  Sun, 10 Oct 2010 15:03:06 +0200

Modified: trunk/libipc-run-perl/lib/IPC/Run.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run.pm Mon Jul  4 16:29:41 2011
@@ -1,4 +1,5 @@
 package IPC::Run;
+use bytes;
 
 =pod
 
@@ -1013,7 +1014,7 @@
 use Exporter ();
 use vars qw{$VERSION @ISA @FILTER_IMP @FILTERS @API @EXPORT_OK %EXPORT_TAGS};
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 	@ISA     = qw{ Exporter };
 
 	## We use @EXPORT for the end user's convenience: there's only one function
@@ -1075,6 +1076,16 @@
 ###############################################################################
 
 ##
+## Error constants, not too locale-dependant
+use vars  qw( $_EIO $_EAGAIN );
+use Errno qw(   EIO   EAGAIN );
+BEGIN {
+  local $!;
+  $! = EIO;    $_EIO    = qr/^$!/;
+  $! = EAGAIN; $_EAGAIN = qr/^$!/;
+}
+
+##
 ## State machine states, set in $self->{STATE}
 ##
 ## These must be in ascending order numerically
@@ -1188,7 +1199,7 @@
       my $re = Win32_MODE ? qr/;/ : qr/:/;
 
 LOOP:
-   for ( split( $re, $ENV{PATH}, -1 ) ) {
+   for ( split( $re, $ENV{PATH} || '', -1 ) ) {
       $_ = "." unless length $_;
       push @searched_in, $_;
 
@@ -2405,7 +2416,7 @@
 	       ## read() throws the bad file descriptor message if the
 	       ## kid dies on Win32.
                die $@ unless
-	          $@ =~ /^Input\/output error: read/ ||
+	          $@ =~ $_EIO ||
 		  ($@ =~ /input or output/ && $^O =~ /aix/) 
 		  || ( Win32_MODE && $@ =~ /Bad file descriptor/ );
             }

Modified: trunk/libipc-run-perl/lib/IPC/Run/Debug.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/Debug.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/Debug.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/Debug.pm Mon Jul  4 16:29:41 2011
@@ -70,7 +70,7 @@
 use Exporter;
 use vars qw{$VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS};
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 	@ISA     = qw( Exporter );
 	@EXPORT  = qw(
 		_debug

Modified: trunk/libipc-run-perl/lib/IPC/Run/IO.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/IO.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/IO.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/IO.pm Mon Jul  4 16:29:41 2011
@@ -72,7 +72,7 @@
 
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 	if ( Win32_MODE ) {
 		eval "use IPC::Run::Win32Helper; require IPC::Run::Win32IO; 1"
 		or ( $@ && die ) or die "$!";
@@ -557,8 +557,8 @@
 	   $@ = '';
 	   $r = eval { IPC::Run::get_more_input(); };
 
-	   # Detect Resource temporarily unavailable and re-try to a point (200 or 2 seconds),  assuming select behaves (which it doesn't always? need ref)
-	   if($@ && $@ =~ m/^Resource temporarily/ && $redos++ < 200) {
+	   # Detect Resource temporarily unavailable and re-try 200 times (2 seconds),  assuming select behaves (which it doesn't always? need ref)
+	   if(($@||'') =~ $IPC::Run::_EAGAIN && $redos++ < 200) {
 	       select(undef, undef, undef, 0.01);
 	       redo;
 	   }

Modified: trunk/libipc-run-perl/lib/IPC/Run/Timer.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/Timer.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/Timer.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/Timer.pm Mon Jul  4 16:29:41 2011
@@ -163,7 +163,7 @@
 use Exporter;
 use vars qw( $VERSION @ISA @EXPORT_OK %EXPORT_TAGS );
 BEGIN {
-	$VERSION   = '0.89';
+	$VERSION   = '0.90';
 	@ISA       = qw( Exporter );
 	@EXPORT_OK = qw(
 		check

Modified: trunk/libipc-run-perl/lib/IPC/Run/Win32Helper.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/Win32Helper.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/Win32Helper.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/Win32Helper.pm Mon Jul  4 16:29:41 2011
@@ -24,7 +24,7 @@
 use IO::Handle;
 use vars qw{ $VERSION @ISA @EXPORT };
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 	@ISA = qw( Exporter );
 	@EXPORT = qw(
 		win32_spawn

Modified: trunk/libipc-run-perl/lib/IPC/Run/Win32IO.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/Win32IO.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/Win32IO.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/Win32IO.pm Mon Jul  4 16:29:41 2011
@@ -31,7 +31,7 @@
 
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 }
 
 use Socket qw( IPPROTO_TCP TCP_NODELAY );
@@ -288,6 +288,17 @@
    IPC::Run::_close( $self->{TFD} );
 }
 
+=head1 SUBROUTINES
+
+=over
+
+=item poll
+
+Windows version of IPC::Run::IP::poll.
+
+=back
+
+=cut
 
 sub poll {
    my IPC::Run::Win32IO $self = shift;
@@ -393,7 +404,7 @@
    {
       $port = $next_port;
       $next_port = 2048 if ++$next_port > 65_535; 
-      unless ( bind $listener, sockaddr_in( $port, INADDR_ANY ) ) {
+      unless ( bind $listener, sockaddr_in( $port, $loopback ) ) {
 	 push @errors, "$! on port $port";
 	 croak join "\n", @errors if @errors > 10;
          goto PORT_FINDER_LOOP;

Modified: trunk/libipc-run-perl/lib/IPC/Run/Win32Pump.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/lib/IPC/Run/Win32Pump.pm?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/lib/IPC/Run/Win32Pump.pm (original)
+++ trunk/libipc-run-perl/lib/IPC/Run/Win32Pump.pm Mon Jul  4 16:29:41 2011
@@ -29,7 +29,7 @@
 use strict;
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.89';
+	$VERSION = '0.90';
 }
 
 use Win32API::File qw(

Modified: trunk/libipc-run-perl/t/parallel.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/t/parallel.t?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/t/parallel.t (original)
+++ trunk/libipc-run-perl/t/parallel.t Mon Jul  4 16:29:41 2011
@@ -24,7 +24,15 @@
 select STDERR;
 select STDOUT;
 
-use Test::More tests => 6;
+BEGIN {
+    use Test::More;
+    if($^O eq 'MSWin32') {
+	plan skip_all => 'Parallel tests are dangerous on MSWin32';
+    } else {
+	plan tests => 6;
+    }
+
+}
 use IPC::Run qw( start pump finish );
 
 my $text1 = "Hello world 1\n";

Modified: trunk/libipc-run-perl/t/pty.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/t/pty.t?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/t/pty.t (original)
+++ trunk/libipc-run-perl/t/pty.t Mon Jul  4 16:29:41 2011
@@ -99,7 +99,7 @@
 
 ## Older Perls can't ok( a, qr// ), so I manually do that here.
 my $exp;
-my $platform_skip = $^O =~ /(?:aix|freebsd|openbsd|darwin)/ ? "$^O deadlocks on this test" : "";
+my $platform_skip = $^O =~ /(?:dragonfly|aix|freebsd|openbsd|darwin)/ ? "$^O deadlocks on this test" : "";
 
 ##
 ## stdin only

Modified: trunk/libipc-run-perl/t/run.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/t/run.t?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/t/run.t (original)
+++ trunk/libipc-run-perl/t/run.t Mon Jul  4 16:29:41 2011
@@ -19,12 +19,23 @@
 	}
 }
 
+my @WARNING_MESSAGES;
+$SIG{__WARN__} = sub{
+    push @WARNING_MESSAGES, @_; 
+    diag("WARN: $_") foreach(@_);
+}; 
+sub get_warnings {
+    my @warnings = @WARNING_MESSAGES;
+    @WARNING_MESSAGES = ();
+    return @warnings
+} 
+
 ## Handy to have when our output is intermingled with debugging output sent
 ## to the debugging fd.
 select STDERR;
 select STDOUT;
 
-use Test::More tests => 266;
+use Test::More tests => 268;
 use IPC::Run::Debug qw( _map_fds );
 use IPC::Run qw( :filters :filter_imp start );
 use t::lib::Test;
@@ -969,3 +980,20 @@
 eok( $in,      $text   );
 eok( $out,    "HeLlO WoRlD\n" );
 eok( $err,    uc( $text ) );
+
+
+{ # no warnings for an empty path but it does die.
+    # Some other OSes might not support find. Windows and UNIX do...
+    my @simple_command = ('bogusprogram');
+
+    local $ENV{PATH};
+    delete $ENV{PATH};
+    
+    eval {$h = start \@simple_command, \$in, \$out;};
+    ok($@, "Error running bogus program when path is empty");
+
+    my ($message) = get_warnings();
+    is($message, undef, "No warnings found during program call with empty path");
+    finish $h; # Close out the program call    
+}
+

Modified: trunk/libipc-run-perl/t/timeout.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libipc-run-perl/t/timeout.t?rev=77100&op=diff
==============================================================================
--- trunk/libipc-run-perl/t/timeout.t (original)
+++ trunk/libipc-run-perl/t/timeout.t Mon Jul  4 16:29:41 2011
@@ -20,7 +20,7 @@
 }
 
 ## Separate from run.t so run.t is not too slow.
-use Test::More tests => 25;
+use Test::More tests => 26;
 use IPC::Run qw( harness timeout );
 
 my $h;
@@ -85,3 +85,14 @@
 	my $elapsed = time - $started;
 	$elapsed >= 1 ? ok( 1 ) : is( $elapsed, ">= 1" );
 }
+
+TODO: {
+    local $TODO = 'RT 57277 -  timeout causes delay with output not captured';
+    $h = harness( [ $^X, '-e', 'sleep 1' ], timeout( 10 ), debug => 0);
+    my $started_at = time;
+    $h->start;
+    $h->finish;
+    my $finished_at = time;
+    ok( $finished_at-$started_at <= 2, 'not too slow to reap' )
+        or diag($finished_at-$started_at . " seconds passed");
+}




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