Update Module::Build to 0.39_01
authorDavid Golden <dagolden@cpan.org>
Thu, 21 Jul 2011 21:06:48 +0000 (17:06 -0400)
committerDavid Golden <dagolden@cpan.org>
Thu, 21 Jul 2011 21:06:48 +0000 (17:06 -0400)
0.39_01 - Thu Jul 21 16:48:48 EDT 2011

  [BUG FIXES]

  - Fixed bug with a nested directory named 'share' inside a ShareDir
    (RT#68585) [David Golden]

  - Fixed failing tilde.t when run under UID without passwd entry
    (RT#67893) [Dominic Hargreaves]

  [DOCUMENTATION]

  - Fixed typo in Module::Build (RT#67008) [David Golden]

  [OTHER]

  - Pod to HTML internals changed to support new Pod::Html work
    in the Perl core

32 files changed:
Porting/Maintainers.pl
cpan/Module-Build/Changes
cpan/Module-Build/lib/Module/Build.pm
cpan/Module-Build/lib/Module/Build/Base.pm
cpan/Module-Build/lib/Module/Build/Compat.pm
cpan/Module-Build/lib/Module/Build/Config.pm
cpan/Module-Build/lib/Module/Build/Cookbook.pm
cpan/Module-Build/lib/Module/Build/Dumper.pm
cpan/Module-Build/lib/Module/Build/ModuleInfo.pm
cpan/Module-Build/lib/Module/Build/Notes.pm
cpan/Module-Build/lib/Module/Build/PPMMaker.pm
cpan/Module-Build/lib/Module/Build/Platform/Amiga.pm
cpan/Module-Build/lib/Module/Build/Platform/Default.pm
cpan/Module-Build/lib/Module/Build/Platform/EBCDIC.pm
cpan/Module-Build/lib/Module/Build/Platform/MPEiX.pm
cpan/Module-Build/lib/Module/Build/Platform/MacOS.pm
cpan/Module-Build/lib/Module/Build/Platform/RiscOS.pm
cpan/Module-Build/lib/Module/Build/Platform/Unix.pm
cpan/Module-Build/lib/Module/Build/Platform/VMS.pm
cpan/Module-Build/lib/Module/Build/Platform/VOS.pm
cpan/Module-Build/lib/Module/Build/Platform/Windows.pm
cpan/Module-Build/lib/Module/Build/Platform/aix.pm
cpan/Module-Build/lib/Module/Build/Platform/cygwin.pm
cpan/Module-Build/lib/Module/Build/Platform/darwin.pm
cpan/Module-Build/lib/Module/Build/Platform/os2.pm
cpan/Module-Build/lib/Module/Build/PodParser.pm
cpan/Module-Build/lib/inc/latest.pm
cpan/Module-Build/lib/inc/latest/private.pm
cpan/Module-Build/t/mymeta.t
cpan/Module-Build/t/properties/share_dir.t
cpan/Module-Build/t/tilde.t
pod/perldelta.pod

index 835a7e1..837252c 100755 (executable)
@@ -1245,7 +1245,7 @@ use File::Glob qw(:case);
     'Module::Build' =>
        {
        'MAINTAINER'    => 'kwilliams',
-       'DISTRIBUTION'  => 'DAGOLDEN/Module-Build-0.3800.tar.gz',
+       'DISTRIBUTION'  => 'DAGOLDEN/Module-Build-0.39_01.tar.gz',
        'FILES'         => q[cpan/Module-Build],
        'EXCLUDED'      => [
                qw{ t/par.t t/signature.t },
index 9df6786..02f73b0 100644 (file)
@@ -1,5 +1,24 @@
 Revision history for Perl extension Module::Build.
 
+0.39_01 - Thu Jul 21 16:48:48 EDT 2011
+
+  [BUG FIXES]
+
+  - Fixed bug with a nested directory named 'share' inside a ShareDir
+    (RT#68585) [David Golden]
+
+  - Fixed failing tilde.t when run under UID without passwd entry
+    (RT#67893) [Dominic Hargreaves]
+
+  [DOCUMENTATION]
+
+  - Fixed typo in Module::Build (RT#67008) [David Golden]
+
+  [OTHER]
+
+  - Pod to HTML internals changed to support new Pod::Html work
+    in the Perl core
+
 0.3800 - Sat Mar  5 15:11:41 EST 2011
 
   Summary of major changes since 0.3624:
index 14db926..e1fc6ca 100644 (file)
@@ -16,7 +16,7 @@ use Module::Build::Base;
 
 use vars qw($VERSION @ISA);
 @ISA = qw(Module::Build::Base);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 
@@ -139,7 +139,7 @@ You can run the 'help' action for a complete list of actions.
 
 =head1 GUIDE TO DOCUMENTATION
 
-The documentation for C<Module::Build> is broken up into three sections:
+The documentation for C<Module::Build> is broken up into sections:
 
 =over
 
index fba916a..a29f500 100644 (file)
@@ -4,7 +4,7 @@ package Module::Build::Base;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 BEGIN { require 5.00503 }
 
@@ -2940,7 +2940,7 @@ sub _share_dir_map {
   my %files;
   for my $dir ( @$list ) {
     for my $f ( @{ $self->rscan_dir( $dir, sub {-f} )} ) {
-      $f =~ s{\A.*\Q$dir\E/}{};
+      $f =~ s{\A.*?\Q$dir\E/}{};
       $files{"$dir/$f"} = "$prefix/$f";
     }
   }
@@ -3428,7 +3428,6 @@ sub htmlify_pods {
       $title .= " - $abstract" if $abstract;
 
       my @opts = (
-        '--flush',
         "--title=$title",
         "--podpath=$podpath",
         "--infile=$infile",
@@ -3437,7 +3436,13 @@ sub htmlify_pods {
         "--htmlroot=$path2root",
       );
 
-      if ( eval{Pod::Html->VERSION(1.03)} ) {
+      unless ( eval{Pod::Html->VERSION(1.12)} ) {
+        push( @opts, ('--flush') ); # caching removed in 1.12
+      }
+
+      if ( eval{Pod::Html->VERSION(1.12)} ) {
+        push( @opts, ('--header', '--backlink') );
+      } elsif ( eval{Pod::Html->VERSION(1.03)} ) {
         push( @opts, ('--header', '--backlink=Back to Top') );
       }
 
index 1863b55..452dfb9 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Compat;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 
 use File::Basename ();
 use File::Spec;
index b36e767..9f3dc67 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Config;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Config;
 
index 9ead165..80af7c4 100644 (file)
@@ -1,7 +1,7 @@
 package Module::Build::Cookbook;
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 
 
 =head1 NAME
index df45985..8191410 100644 (file)
@@ -1,7 +1,7 @@
 package Module::Build::Dumper;
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 
 # This is just a split-out of a wrapper function to do Data::Dumper
 # stuff "the right way".  See:
index e15c010..a4c6685 100644 (file)
@@ -4,7 +4,7 @@ package Module::Build::ModuleInfo;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 require Module::Metadata;
index 1165799..9a80a59 100644 (file)
@@ -4,7 +4,7 @@ package Module::Build::Notes;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Data::Dumper;
 use IO::File;
index 20f0b61..62e8b04 100644 (file)
@@ -5,7 +5,7 @@ use Config;
 use vars qw($VERSION);
 use IO::File;
 
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 # This code is mostly borrowed from ExtUtils::MM_Unix 6.10_03, with a
index a4b9541..e088c84 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::Amiga;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index b4d2ca2..8669036 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::Default;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index a030ba9..0cd5264 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::EBCDIC;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index 33fae1c..21c757b 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::MPEiX;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index fc205d3..3f49c82 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::MacOS;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 use vars qw(@ISA);
index 94f8458..4717481 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::RiscOS;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index 956c64e..611c2cf 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::Unix;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index bf2118b..4842e6c 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::VMS;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 use Config;
index fd809c0..bec44da 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::VOS;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Base;
 
index 2924f9d..5094c41 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::Windows;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 use Config;
index 59eec0d..cd4cf24 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::aix;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Platform::Unix;
 
index 7b76804..2ecd9ae 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::cygwin;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Platform::Unix;
 
index 5c9a177..e7d256a 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::darwin;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Platform::Unix;
 
index b78d153..d943671 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::Platform::os2;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use Module::Build::Platform::Unix;
 
index 5bba10a..8230192 100644 (file)
@@ -2,7 +2,7 @@ package Module::Build::PodParser;
 
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 use vars qw(@ISA);
 
@@ -11,17 +11,8 @@ sub new {
   my $package = shift;
 
   my $self;
-
-  # Try using Pod::Parser first
-  if (eval{ require Pod::Parser; 1; }) {
-    @ISA = qw(Pod::Parser);
-    $self = $package->SUPER::new(@_);
-    $self->{have_pod_parser} = 1;
-  } else {
-    @ISA = ();
-    *parse_from_filehandle = \&_myparse_from_filehandle;
-    $self = bless {have_pod_parser => 0, @_}, $package;
-  }
+  @ISA = ();
+  $self = bless {have_pod_parser => 0, @_}, $package;
 
   unless ($self->{fh}) {
     die "No 'file' or 'fh' parameter given" unless $self->{file};
@@ -31,7 +22,7 @@ sub new {
   return $self;
 }
 
-sub _myparse_from_filehandle {
+sub parse_from_filehandle {
   my ($self, $fh) = @_;
 
   local $_;
@@ -71,36 +62,3 @@ sub get_author {
 
   return $self->{author} || [];
 }
-
-################## Pod::Parser overrides ###########
-sub initialize {
-  my $self = shift;
-  $self->{_head} = '';
-  $self->SUPER::initialize();
-}
-
-sub command {
-  my ($self, $cmd, $text) = @_;
-  if ( $cmd eq 'head1' ) {
-    $text =~ s/^\s+//;
-    $text =~ s/\s+$//;
-    $self->{_head} = $text;
-  }
-}
-
-sub textblock {
-  my ($self, $text) = @_;
-  $text =~ s/^\s+//;
-  $text =~ s/\s+$//;
-  if (uc $self->{_head} eq 'NAME') {
-    my ($name, $abstract) = split( /\s+-\s+/, $text, 2 );
-    $self->{abstract} = $abstract;
-  } elsif ($self->{_head} =~ /^AUTHORS?$/i) {
-    push @{$self->{author}}, $text if $text =~ /\@/;
-  }
-}
-
-sub verbatim {}
-sub interior_sequence {}
-
-1;
index 94802e7..c831671 100644 (file)
@@ -1,7 +1,7 @@
 package inc::latest;
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 use Carp;
index 1e40b29..9e4d5d7 100644 (file)
@@ -1,7 +1,7 @@
 package inc::latest::private;
 use strict;
 use vars qw($VERSION);
-$VERSION = '0.3800';
+$VERSION = '0.39_01';
 $VERSION = eval $VERSION;
 
 use File::Spec;
index 86a67f7..d760eda 100644 (file)
@@ -4,6 +4,7 @@ use strict;
 use lib 't/lib';
 use MBTest;
 use CPAN::Meta 2.110420;
+use CPAN::Meta::YAML;
 use Parse::CPAN::Meta 1.4401;
 plan tests => 39;
 
index 1d81a0a..f1cda13 100644 (file)
@@ -9,7 +9,7 @@ use File::Spec::Functions qw/catdir catfile/;
 # Begin testing
 #--------------------------------------------------------------------------#
 
-plan tests => 21;
+plan tests => 23;
 
 blib_load('Module::Build');
 
@@ -43,11 +43,19 @@ ok( ! exists $mb->{properties}{requires}{'File::ShareDir'},
 $dist->add_file('share/foo.txt',<< '---');
 This is foo.txt
 ---
+$dist->add_file('share/subdir/share/anotherbar.txt',<< '---');
+This is anotherbar.txt in a subdir - test for a bug in M::B 0.38 when full path contains 'share/.../*share/...' subdir
+---
+$dist->add_file('share/subdir/whatever/anotherfoo.txt',<< '---');
+This is anotherfoo.txt in a subdir - this shoud work on M::B 0.38
+---
 $dist->add_file('other/share/bar.txt',<< '---');
 This is bar.txt
 ---
 $dist->regen;
 ok( -e catfile(qw/share foo.txt/), "Created 'share' directory" );
+ok( -d catfile(qw/share subdir share/), "Created 'share/subdir/share' directory" );
+ok( -d catfile(qw/share subdir whatever/), "Created 'share/subdir/whatever' directory" );
 ok( -e catfile(qw/other share bar.txt/), "Created 'other/share' directory" );
 
 # Check default when share_dir is not given
@@ -163,6 +171,8 @@ is_deeply( $mb->share_dir,
 is_deeply( $mb->_find_share_dir_files,
   {
     "share/foo.txt" => "dist/Simple-Share/foo.txt",
+    "share/subdir/share/anotherbar.txt" => "dist/Simple-Share/subdir/share/anotherbar.txt",
+    "share/subdir/whatever/anotherfoo.txt" => "dist/Simple-Share/subdir/whatever/anotherfoo.txt",
     "other/share/bar.txt" => "module/Simple-Share/bar.txt",
   },
   "share_dir filemap for copying to lib complete"
@@ -187,6 +197,8 @@ skip 'filename case not necessarily preserved', 1 if $^O eq 'VMS';
 is_deeply(
   [ sort @$share_list ], [
     'blib/lib/auto/share/dist/Simple-Share/foo.txt',
+    'blib/lib/auto/share/dist/Simple-Share/subdir/share/anotherbar.txt',
+    'blib/lib/auto/share/dist/Simple-Share/subdir/whatever/anotherfoo.txt',
     'blib/lib/auto/share/module/Simple-Share/bar.txt',
   ],
   "share_dir files copied to blib"
@@ -217,6 +229,8 @@ skip 'filename case not necessarily preserved', 1 if $^O eq 'VMS';
 is_deeply(
   [ sort @$share_list ], [
     "$temp_install/lib/perl5/auto/share/dist/Simple-Share/foo.txt",
+    "$temp_install/lib/perl5/auto/share/dist/Simple-Share/subdir/share/anotherbar.txt",
+    "$temp_install/lib/perl5/auto/share/dist/Simple-Share/subdir/whatever/anotherfoo.txt",
     "$temp_install/lib/perl5/auto/share/module/Simple-Share/bar.txt",
   ],
   "share_dir files correctly installed"
index fac821b..04f0210 100644 (file)
@@ -46,7 +46,8 @@ SKIP: {
 
     unless (defined $home) {
       my @info = eval { getpwuid $> };
-      skip "No home directory for tilde-expansion tests", 15 if $@;
+      skip "No home directory for tilde-expansion tests", 15 if $@
+        or !defined $info[7];
       $home = $info[7];
     }
 
@@ -95,7 +96,8 @@ SKIP: {
 # Again, with named users
 SKIP: {
     my @info = eval { getpwuid $> };
-    skip "No home directory for tilde-expansion tests", 1 if $@;
+    skip "No home directory for tilde-expansion tests", 1 if $@
+        or !defined $info[7] or !defined $info[0];
     my ($me, $home) = @info[0,7];
 
     my $expected = "$home/fooxzy";
index a2f125a..d03695a 100644 (file)
@@ -104,6 +104,14 @@ to version 1.999002 and a new C<skip_cwd> attribute has been added.
 
 =item *
 
+L<Module::Build> has been upgraded from version 0.3800 to version 0.39_01.
+
+Pod to HTML internals changed to support revisions to Pod::Html in core.
+Also fixes some minor bugs. [rt.cpan.org #68585] [rt.cpan.org #67893]
+[rt.cpan.org #67008]
+
+=item *
+
 L<PerlIO::via> has been upgraded from version 0.11 to version 0.12.
 
 The only change is a correction in the documentation.