The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 029
META.json 22
META.yml 22
lib/ExtUtils/Command/MM.pm 11
lib/ExtUtils/Liblist/Kid.pm 11
lib/ExtUtils/Liblist.pm 11
lib/ExtUtils/MM.pm 11
lib/ExtUtils/MM_AIX.pm 11
lib/ExtUtils/MM_Any.pm 11
lib/ExtUtils/MM_BeOS.pm 11
lib/ExtUtils/MM_Cygwin.pm 11
lib/ExtUtils/MM_DOS.pm 11
lib/ExtUtils/MM_Darwin.pm 11
lib/ExtUtils/MM_MacOS.pm 11
lib/ExtUtils/MM_NW5.pm 11
lib/ExtUtils/MM_OS2.pm 11
lib/ExtUtils/MM_QNX.pm 11
lib/ExtUtils/MM_UWIN.pm 11
lib/ExtUtils/MM_Unix.pm 22
lib/ExtUtils/MM_VMS.pm 11
lib/ExtUtils/MM_VOS.pm 11
lib/ExtUtils/MM_Win32.pm 11
lib/ExtUtils/MM_Win95.pm 11
lib/ExtUtils/MY.pm 11
lib/ExtUtils/MakeMaker/Config.pm 11
lib/ExtUtils/MakeMaker/FAQ.pod 11
lib/ExtUtils/MakeMaker/Tutorial.pod 11
lib/ExtUtils/MakeMaker.pm 215
lib/ExtUtils/Mkbootstrap.pm 11
lib/ExtUtils/Mksymlists.pm 11
lib/ExtUtils/testlib.pm 11
t/PL_FILES.t 14
t/metafile_data.t 14
t/min_perl_version.t 123
34 files changed (This is a version diff) 37107
@@ -1,3 +1,32 @@
+6.96 Fri Apr 11 21:54:25 BST 2014
+
+    No changes from 6.95_02
+
+6.95_02 Mon Apr  7 15:26:20 BST 2014
+    Bug fixes:
+    * Work-around v5.10.1 for the MIN_PERL_VERSION v-string handling
+
+6.95_01 Wed Apr  2 21:49:22 BST 2014
+    Bug fixes:
+    * Make MIN_PERL_VERSION handle v-strings properly
+
+6.94 Tue Mar 25 19:26:31 GMT 2014
+
+    No changes from 6.93_01
+
+6.93_01 Mon Mar 24 16:53:31 GMT 2014
+    Bug fixes:
+    * Resolved a regression in MM_Unix.pm
+      (https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/issues/96)
+
+6.92 Thu Mar 13 16:18:32 GMT 2014
+
+    No changes from 6.91_01
+
+6.91_01 Thu Mar  6 13:48:22 GMT 2014
+    Test fixes:
+    * Make meta tests more robust to changes in CPAN::Meta
+
 6.90 Thu Feb 20 20:46:04 GMT 2014
 
     No changes from 6.89_01
@@ -4,7 +4,7 @@
       "Michael G Schwern <schwern@pobox.com>"
    ],
    "dynamic_config" : 1,
-   "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",
+   "generated_by" : "ExtUtils::MakeMaker version 6.96, CPAN::Meta::Converter version 2.120351",
    "license" : [
       "perl_5"
    ],
@@ -58,5 +58,5 @@
       },
       "x_MailingList" : "makemaker@perl.org"
    },
-   "version" : "6.90"
+   "version" : "6.96"
 }
@@ -6,7 +6,7 @@ build_requires:
   Data::Dumper: 0
 configure_requires: {}
 dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'
+generated_by: 'ExtUtils::MakeMaker version 6.96, CPAN::Meta::Converter version 2.120351'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -33,4 +33,4 @@ resources:
   license: http://dev.perl.org/licenses/
   repository: http://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker
   x_MailingList: makemaker@perl.org
-version: 6.90
+version: 6.96
@@ -10,7 +10,7 @@ our @ISA = qw(Exporter);
 
 our @EXPORT  = qw(test_harness pod2man perllocal_install uninstall
                   warn_if_old_packlist test_s cp_nonempty);
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 my $Is_VMS = $^O eq 'VMS';
 
@@ -11,7 +11,7 @@ use 5.006;
 
 use strict;
 use warnings;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 use ExtUtils::MakeMaker::Config;
 use Cwd 'cwd';
@@ -2,7 +2,7 @@ package ExtUtils::Liblist;
 
 use strict;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 use File::Spec;
 require ExtUtils::Liblist::Kid;
@@ -3,7 +3,7 @@ package ExtUtils::MM;
 use strict;
 use ExtUtils::MakeMaker::Config;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::Liblist;
 require ExtUtils::MakeMaker;
@@ -1,7 +1,7 @@
 package ExtUtils::MM_AIX;
 
 use strict;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
@@ -1,7 +1,7 @@
 package ExtUtils::MM_Any;
 
 use strict;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 use Carp;
 use File::Spec;
@@ -26,7 +26,7 @@ require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 
 =item os_flavor
@@ -9,7 +9,7 @@ require ExtUtils::MM_Unix;
 require ExtUtils::MM_Win32;
 our @ISA = qw( ExtUtils::MM_Unix );
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 
 =head1 NAME
@@ -2,7 +2,7 @@ package ExtUtils::MM_DOS;
 
 use strict;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
@@ -7,7 +7,7 @@ BEGIN {
     our @ISA = qw( ExtUtils::MM_Unix );
 }
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 
 =head1 NAME
@@ -2,7 +2,7 @@ package ExtUtils::MM_MacOS;
 
 use strict;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 sub new {
     die <<'UNSUPPORTED';
@@ -22,7 +22,7 @@ use strict;
 use ExtUtils::MakeMaker::Config;
 use File::Basename;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
@@ -5,7 +5,7 @@ use strict;
 use ExtUtils::MakeMaker qw(neatvalue);
 use File::Spec;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
@@ -1,7 +1,7 @@
 package ExtUtils::MM_QNX;
 
 use strict;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
@@ -1,7 +1,7 @@
 package ExtUtils::MM_UWIN;
 
 use strict;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
@@ -15,7 +15,7 @@ use ExtUtils::MakeMaker qw($Verbose neatvalue);
 
 # If we make $VERSION an our variable parse_version() breaks
 use vars qw($VERSION);
-$VERSION = '6.90';
+$VERSION = '6.96';
 $VERSION = eval $VERSION;  ## no critic [BuiltinFunctions::ProhibitStringyEval]
 
 require ExtUtils::MM_Any;
@@ -1291,7 +1291,7 @@ sub init_dirscan {	# --- File and Directory Lists (.xs .pm .pod etc)
 
     foreach my $name ($self->lsdir($Curdir)){
 	next if $name =~ /\#/;
-	next if $name =~ $distprefix;
+	next if $name =~ $distprefix && -d $name;
 	$name = lc($name) if $Is{VMS};
 	next if $name eq $Curdir or $name eq $Updir or $ignore{$name};
 	next unless $self->libscan($name);
@@ -15,7 +15,7 @@ BEGIN {
 
 use File::Basename;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
@@ -1,7 +1,7 @@
 package ExtUtils::MM_VOS;
 
 use strict;
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Unix;
 our @ISA = qw(ExtUtils::MM_Unix);
@@ -27,7 +27,7 @@ use ExtUtils::MakeMaker qw( neatvalue );
 require ExtUtils::MM_Any;
 require ExtUtils::MM_Unix;
 our @ISA = qw( ExtUtils::MM_Any ExtUtils::MM_Unix );
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 $ENV{EMXSHELL} = 'sh'; # to run `commands`
 
@@ -2,7 +2,7 @@ package ExtUtils::MM_Win95;
 
 use strict;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require ExtUtils::MM_Win32;
 our @ISA = qw(ExtUtils::MM_Win32);
@@ -3,7 +3,7 @@ package ExtUtils::MY;
 use strict;
 require ExtUtils::MM;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 our @ISA = qw(ExtUtils::MM);
 
 {
@@ -2,7 +2,7 @@ package ExtUtils::MakeMaker::Config;
 
 use strict;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 use Config ();
 
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::FAQ;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 1;
 __END__
@@ -1,6 +1,6 @@
 package ExtUtils::MakeMaker::Tutorial;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 
 =head1 NAME
@@ -18,7 +18,7 @@ our @Overridable;
 my @Prepend_parent;
 my %Recognized_Att_Keys;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 $VERSION = eval $VERSION;  ## no critic [BuiltinFunctions::ProhibitStringyEval]
 
 # Emulate something resembling CVS $Revision$
@@ -441,9 +441,22 @@ sub new {
 
     check_hints($self);
 
+    if ( defined $self->{MIN_PERL_VERSION}
+          && $self->{MIN_PERL_VERSION} !~ /^v?[\d_\.]+$/ ) {
+      require version;
+      my $normal = eval {
+        local $SIG{__WARN__} = sub {
+            # simulate "use warnings FATAL => 'all'" for vintage perls
+            die @_;
+        };
+        version->parse( $self->{MIN_PERL_VERSION} )
+      };
+      $self->{MIN_PERL_VERSION} = $normal if defined $normal && !$@;
+    }
+
     # Translate X.Y.Z to X.00Y00Z
     if( defined $self->{MIN_PERL_VERSION} ) {
-        $self->{MIN_PERL_VERSION} =~ s{ ^ (\d+) \. (\d+) \. (\d+) $ }
+        $self->{MIN_PERL_VERSION} =~ s{ ^v? (\d+) \. (\d+) \. (\d+) $ }
                                       {sprintf "%d.%03d%03d", $1, $2, $3}ex;
     }
 
@@ -3,7 +3,7 @@ package ExtUtils::Mkbootstrap;
 # There's just too much Dynaloader incest here to turn on strict vars.
 use strict 'refs';
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 require Exporter;
 our @ISA = ('Exporter');
@@ -10,7 +10,7 @@ use Config;
 
 our @ISA = qw(Exporter);
 our @EXPORT = qw(&Mksymlists);
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 sub Mksymlists {
     my(%spec) = @_;
@@ -3,7 +3,7 @@ package ExtUtils::testlib;
 use strict;
 use warnings;
 
-our $VERSION = '6.90';
+our $VERSION = '6.96';
 
 use Cwd;
 use File::Spec;
@@ -3,7 +3,6 @@
 BEGIN {
     unshift @INC, 't/lib';
 }
-chdir 't';
 
 use strict;
 use Config;
@@ -13,6 +12,7 @@ use Test::More
     : (tests => 9);
 
 use File::Spec;
+use File::Temp qw[tempdir];
 use MakeMaker::Test::Setup::PL_FILES;
 use MakeMaker::Test::Utils;
 
@@ -20,6 +20,9 @@ my $perl = which_perl();
 my $make = make_run();
 perl_lib();
 
+my $tmpdir = tempdir( DIR => 't', CLEANUP => 1 );
+chdir $tmpdir;
+
 setup;
 
 END {
@@ -3,7 +3,7 @@ BEGIN {
 }
 
 use strict;
-use Test::More tests => 29;
+use Test::More tests => 31;
 
 use Data::Dumper;
 use File::Temp;
@@ -41,9 +41,12 @@ sub mymeta_ok {
 
     my $have_gen = delete $have->{generated_by};
     my $want_gen = delete $want->{generated_by};
+    my $have_url = delete $have->{'meta-spec'}->{url};
+    my $want_url = delete $want->{'meta-spec'}->{url};
 
     is_deeply $have, $want, $name;
     like $have_gen, qr{CPAN::Meta}, "CPAN::Meta mentioned in the generated_by";
+    like $have_url, qr{CPAN::Meta::Spec}, "CPAN::Meta::Spec mentioned in meta-spec URL";
 
     return;
 }
@@ -12,7 +12,7 @@ use Config;
 use Test::More
     $ENV{PERL_CORE} && $Config{'usecrosscompile'}
     ? (skip_all => "no toolchain installed when cross-compiling")
-    : (tests => 32);
+    : (tests => 36);
 
 use TieOut;
 use MakeMaker::Test::Utils;
@@ -74,6 +74,28 @@ note "Argument verification"; {
     eval {
         WriteMakefile(
             NAME             => 'Min::PerlVers',
+            MIN_PERL_VERSION => 5.4.4,
+        );
+    };
+    is( $warnings, '', 'MIN_PERL_VERSION=X.Y.Z does not trigger a warning' );
+    is( $@, '',        '  nor a hard failure' );
+
+
+    $warnings = '';
+    eval {
+        WriteMakefile(
+            NAME             => 'Min::PerlVers',
+            MIN_PERL_VERSION => v5.4.4,
+        );
+    };
+    is( $warnings, '', 'MIN_PERL_VERSION=X.Y.Z does not trigger a warning' );
+    is( $@, '',        '  nor a hard failure' );
+
+
+    $warnings = '';
+    eval {
+        WriteMakefile(
+            NAME             => 'Min::PerlVers',
             MIN_PERL_VERSION => '999999',
         );
     };