Hello community, here is the log from the commit of package perl-Module-Build for openSUSE:Factory checked in at 2016-08-22 10:49:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Module-Build (Old) and /work/SRC/openSUSE:Factory/.perl-Module-Build.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Module-Build" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Module-Build/perl-Module-Build.changes 2016-05-31 12:08:16.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-Module-Build.new/perl-Module-Build.changes 2016-08-22 10:49:14.000000000 +0200 @@ -1,0 +2,20 @@ +Wed Aug 17 05:34:16 UTC 2016 - [email protected] + +- updated to 0.4220 + see /usr/share/doc/packages/perl-Module-Build/Changes + + 0.4220 - Tue Aug 16 22:11:14 CEST 2016 + + - Released 0.42_19 as 0.4220 + + 0.42_19 - Sun Aug 7 17:07:38 CEST 2016 + + - Initialize MM Compat environmental variables to empty strings [Leon Timmermans] + + - Skip PPM test when link_executable fails [Leon Timmermans] + + - Make more actions deterministic [Zefram] + + - Preprocess file lists generated by rscan_dir() to sort them [Niko Tyni] + +------------------------------------------------------------------- Old: ---- Module-Build-0.4218.tar.gz New: ---- Module-Build-0.4220.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Module-Build.spec ++++++ --- /var/tmp/diff_new_pack.GCQ1F7/_old 2016-08-22 10:49:15.000000000 +0200 +++ /var/tmp/diff_new_pack.GCQ1F7/_new 2016-08-22 10:49:15.000000000 +0200 @@ -17,10 +17,10 @@ Name: perl-Module-Build -Version: 0.421800 +Version: 0.422000 Release: 0 -%define cpan_version 0.4218 -Provides: perl(Module::Build) = 0.421800 +%define cpan_version 0.4220 +Provides: perl(Module::Build) = 0.422000 %define cpan_name Module-Build Summary: Build and install Perl modules License: Artistic-1.0 or GPL-1.0+ @@ -100,7 +100,6 @@ %prep %setup -q -n %{cpan_name}-%{cpan_version} -find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644 %build %{__perl} Build.PL installdirs=vendor ++++++ Module-Build-0.4218.tar.gz -> Module-Build-0.4220.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/Changes new/Module-Build-0.4220/Changes --- old/Module-Build-0.4218/Changes 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/Changes 2016-08-16 22:49:30.000000000 +0200 @@ -1,5 +1,19 @@ Revision history for Perl extension Module::Build. +0.4220 - Tue Aug 16 22:11:14 CEST 2016 + + - Released 0.42_19 as 0.4220 + +0.42_19 - Sun Aug 7 17:07:38 CEST 2016 + + - Initialize MM Compat environmental variables to empty strings [Leon Timmermans] + + - Skip PPM test when link_executable fails [Leon Timmermans] + + - Make more actions deterministic [Zefram] + + - Preprocess file lists generated by rscan_dir() to sort them [Niko Tyni] + 0.4218 - Sun Apr 24 16:39:47 BST 2016 - Skip XS test when link_executable fails diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/META.json new/Module-Build-0.4220/META.json --- old/Module-Build-0.4218/META.json 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/META.json 2016-08-16 22:49:30.000000000 +0200 @@ -5,7 +5,7 @@ "Module-Build mailing list at <[email protected]>." ], "dynamic_config" : 1, - "generated_by" : "Module::Build version 0.4218", + "generated_by" : "Module::Build version 0.422", "license" : [ "perl_5" ], @@ -67,79 +67,79 @@ "provides" : { "Module::Build" : { "file" : "lib/Module/Build.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Base" : { "file" : "lib/Module/Build/Base.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Compat" : { "file" : "lib/Module/Build/Compat.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Config" : { "file" : "lib/Module/Build/Config.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Cookbook" : { "file" : "lib/Module/Build/Cookbook.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Dumper" : { "file" : "lib/Module/Build/Dumper.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Notes" : { "file" : "lib/Module/Build/Notes.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::PPMMaker" : { "file" : "lib/Module/Build/PPMMaker.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::Default" : { "file" : "lib/Module/Build/Platform/Default.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::MacOS" : { "file" : "lib/Module/Build/Platform/MacOS.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::Unix" : { "file" : "lib/Module/Build/Platform/Unix.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::VMS" : { "file" : "lib/Module/Build/Platform/VMS.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::VOS" : { "file" : "lib/Module/Build/Platform/VOS.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::Windows" : { "file" : "lib/Module/Build/Platform/Windows.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::aix" : { "file" : "lib/Module/Build/Platform/aix.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::cygwin" : { "file" : "lib/Module/Build/Platform/cygwin.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::darwin" : { "file" : "lib/Module/Build/Platform/darwin.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::Platform::os2" : { "file" : "lib/Module/Build/Platform/os2.pm", - "version" : "0.4218" + "version" : "0.4220" }, "Module::Build::PodParser" : { "file" : "lib/Module/Build/PodParser.pm", - "version" : "0.4218" + "version" : "0.4220" } }, "release_status" : "stable", @@ -153,5 +153,6 @@ "x_IRC" : "irc://irc.perl.org/#toolchain", "x_MailingList" : "mailto:[email protected]" }, - "version" : "0.4218" + "version" : "0.4220", + "x_serialization_backend" : "JSON::PP version 2.27300" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/META.yml new/Module-Build-0.4220/META.yml --- old/Module-Build-0.4218/META.yml 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/META.yml 2016-08-16 22:49:30.000000000 +0200 @@ -15,7 +15,7 @@ Perl::OSType: '1' version: '0.87' dynamic_config: 1 -generated_by: 'Module::Build version 0.4218, CPAN::Meta::Converter version 2.143240' +generated_by: 'Module::Build version 0.422, CPAN::Meta::Converter version 2.150005' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html @@ -24,61 +24,61 @@ provides: Module::Build: file: lib/Module/Build.pm - version: '0.4218' + version: '0.4220' Module::Build::Base: file: lib/Module/Build/Base.pm - version: '0.4218' + version: '0.4220' Module::Build::Compat: file: lib/Module/Build/Compat.pm - version: '0.4218' + version: '0.4220' Module::Build::Config: file: lib/Module/Build/Config.pm - version: '0.4218' + version: '0.4220' Module::Build::Cookbook: file: lib/Module/Build/Cookbook.pm - version: '0.4218' + version: '0.4220' Module::Build::Dumper: file: lib/Module/Build/Dumper.pm - version: '0.4218' + version: '0.4220' Module::Build::Notes: file: lib/Module/Build/Notes.pm - version: '0.4218' + version: '0.4220' Module::Build::PPMMaker: file: lib/Module/Build/PPMMaker.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::Default: file: lib/Module/Build/Platform/Default.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::MacOS: file: lib/Module/Build/Platform/MacOS.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::Unix: file: lib/Module/Build/Platform/Unix.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::VMS: file: lib/Module/Build/Platform/VMS.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::VOS: file: lib/Module/Build/Platform/VOS.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::Windows: file: lib/Module/Build/Platform/Windows.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::aix: file: lib/Module/Build/Platform/aix.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::cygwin: file: lib/Module/Build/Platform/cygwin.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::darwin: file: lib/Module/Build/Platform/darwin.pm - version: '0.4218' + version: '0.4220' Module::Build::Platform::os2: file: lib/Module/Build/Platform/os2.pm - version: '0.4218' + version: '0.4220' Module::Build::PodParser: file: lib/Module/Build/PodParser.pm - version: '0.4218' + version: '0.4220' recommends: ExtUtils::Install: '0.3' ExtUtils::Manifest: '1.54' @@ -111,4 +111,5 @@ MailingList: mailto:[email protected] license: http://dev.perl.org/licenses/ repository: https://github.com/Perl-Toolchain-Gang/Module-Build -version: '0.4218' +version: '0.4220' +x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Base.pm new/Module-Build-0.4220/lib/Module/Build/Base.pm --- old/Module-Build-0.4218/lib/Module/Build/Base.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Base.pm 2016-08-16 22:49:30.000000000 +0200 @@ -6,7 +6,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Carp; @@ -164,8 +164,8 @@ $ph->{$_}->restore if -e $file; if (exists $p->{$_}) { my $vals = delete $p->{$_}; - while (my ($k, $v) = each %$vals) { - $self->$_($k, $v); + foreach my $k (sort keys %$vals) { + $self->$_($k, $vals->{$k}); } } } @@ -1276,7 +1276,7 @@ sub cleanup { my $self = shift; my $all = $self->{phash}{cleanup}->read; - return keys %$all; + return wantarray ? sort keys %$all : keys %$all; } sub config_file { @@ -2036,7 +2036,8 @@ my @specs; my $args = {}; # Construct the specifications for GetOptions. - while (my ($k, $v) = each %$specs) { + foreach my $k (sort keys %$specs) { + my $v = $specs->{$k}; # Throw an error if specs conflict with our own. die "Option specification '$k' conflicts with a " . ref $self . " option of the same name" @@ -2061,8 +2062,9 @@ sub unparse_args { my ($self, $args) = @_; my @out; - while (my ($k, $v) = each %$args) { - push @out, (ref $v eq 'HASH' ? map {+"--$k", "$_=$v->{$_}"} keys %$v : + foreach my $k (sort keys %$args) { + my $v = $args->{$k}; + push @out, (ref $v eq 'HASH' ? map {+"--$k", "$_=$v->{$_}"} sort keys %$v : ref $v eq 'ARRAY' ? map {+"--$k", $_} @$v : ("--$k", $v)); } @@ -2521,13 +2523,14 @@ my $info = $self->prereq_data; my $output = ''; - foreach my $type (keys %$info) { + foreach my $type (sort keys %$info) { my $prereqs = $info->{$type}; $output .= "\n$type:\n"; my $mod_len = 2; my $ver_len = 4; my %mods; - while ( my ($modname, $spec) = each %$prereqs ) { + foreach my $modname (sort keys %$prereqs) { + my $spec = $prereqs->{$modname}; my $len = length $modname; $mod_len = $len if $len > $mod_len; $spec ||= '0'; @@ -2638,7 +2641,7 @@ my ($self) = @_; my $t = $self->{properties}->{test_types}; - return ( defined $t ? ( keys %$t ) : () ); + return ( defined $t ? ( wantarray ? sort keys %$t : keys %$t ) : () ); } @@ -2847,8 +2850,8 @@ my $method = "find_${ext}_files"; my $files = $self->can($method) ? $self->$method() : $self->_find_file_by_type($ext, 'lib'); - while (my ($file, $dest) = each %$files) { - $self->copy_if_modified(from => $file, to => File::Spec->catfile($self->blib, $dest) ); + foreach my $file (sort keys %$files) { + $self->copy_if_modified(from => $file, to => File::Spec->catfile($self->blib, $files->{$file}) ); } } @@ -2882,9 +2885,9 @@ my $share_prefix = File::Spec->catdir($self->blib, qw/lib auto share/); # copy all share files to blib - while (my ($file, $dest) = each %$files) { + foreach my $file (sort keys %$files) { $self->copy_if_modified( - from => $file, to => File::Spec->catfile( $share_prefix, $dest ) + from => $file, to => File::Spec->catfile( $share_prefix, $files->{$file} ) ); } } @@ -2901,7 +2904,7 @@ } if ( $share_dir->{module} ) { - for my $mod ( keys %{ $share_dir->{module} } ) { + for my $mod ( sort keys %{ $share_dir->{module} } ) { (my $altmod = $mod) =~ s{::}{-}g; my $prefix = "module/$altmod"; push @file_map, $self->_share_dir_map($prefix, $share_dir->{module}{$mod}); @@ -2927,7 +2930,8 @@ my ($self) = @_; my $files = $self->find_PL_files; - while (my ($file, $to) = each %$files) { + foreach my $file (sort keys %$files) { + my $to = $files->{$file}; unless ($self->up_to_date( $file, $to )) { $self->run_perl_script($file, [], [@$to]) or die "$file failed"; $self->add_to_cleanup(@$to); @@ -2940,7 +2944,8 @@ return if $self->pureperl_only && $self->allow_pureperl; my $files = $self->find_xs_files; croak 'Can\'t build xs files under --pureperl-only' if %$files && $self->pureperl_only; - while (my ($from, $to) = each %$files) { + foreach my $from (sort keys %$files) { + my $to = $files->{$from}; unless ($from eq $to) { $self->add_to_cleanup($to); $self->copy_if_modified( from => $from, to => $to ); @@ -2960,7 +2965,7 @@ my $script_dir = File::Spec->catdir($self->blib, 'script'); File::Path::mkpath( $script_dir ); - foreach my $file (keys %$files) { + foreach my $file (sort keys %$files) { my $result = $self->copy_if_modified($file, $script_dir, 'flatten') or next; $self->fix_shebang_line($result) unless $self->is_vmsish; $self->make_executable($result); @@ -3018,7 +3023,7 @@ my $p = $self->{properties}; if (my $files = $p->{test_files}) { - $files = [keys %$files] if ref $files eq 'HASH'; + $files = [sort keys %$files] if ref $files eq 'HASH'; $files = [map { -d $_ ? $self->expand_test_dir($_) : $_ } map glob, $self->split_like_shell($files)]; @@ -3217,7 +3222,7 @@ File::Path::mkpath( $mandir, 0, oct(777) ); require Pod::Man; - foreach my $file (keys %$files) { + foreach my $file (sort keys %$files) { # Pod::Simple based parsers only support one document per instance. # This is expected to change in a future version (Pod::Simple > 3.03). my $parser = Pod::Man->new( %podman_args ); @@ -3243,11 +3248,11 @@ File::Path::mkpath( $mandir, 0, oct(777) ); require Pod::Man; - while (my ($file, $relfile) = each %$files) { + foreach my $file (sort keys %$files) { # Pod::Simple based parsers only support one document per instance. # This is expected to change in a future version (Pod::Simple > 3.03). my $parser = Pod::Man->new( %podman_args ); - my $manpage = $self->man3page_name( $relfile ) . '.' . + my $manpage = $self->man3page_name( $files->{$file} ) . '.' . $self->config( 'man3ext' ); my $outfile = File::Spec->catfile( $mandir, $manpage); next if $self->up_to_date( $file, $outfile ); @@ -3363,7 +3368,7 @@ my $errors = 0; POD: - foreach my $pod ( keys %$pods ) { + foreach my $pod ( sort keys %$pods ) { my ($name, $path) = File::Basename::fileparse($pods->{$pod}, $self->file_qr('\.(?:pm|plx?|pod)$') @@ -3394,10 +3399,10 @@ depth => $depth, ); eval { - ActivePerl::DocTools::Pod::pod2html(%opts); + ActivePerl::DocTools::Pod::pod2html(map { ($_, $opts{$_}) } sort keys %opts); 1; } or $self->log_warn("[$htmltool] pod2html (" . - join(", ", map { "q{$_} => q{$opts{$_}}" } (keys %opts)) . ") failed: $@"); + join(", ", map { "q{$_} => q{$opts{$_}}" } (sort keys %opts)) . ") failed: $@"); } else { my $path2root = File::Spec->catdir((File::Spec->updir) x @dirs); open(my $fh, '<', $infile) or die "Can't read $infile: $!"; @@ -3510,7 +3515,7 @@ my $text_suffix = $self->file_qr('\.(pm|pod)$'); - while (my $localdir = each %$installmap) { + foreach my $localdir (sort keys %$installmap) { my @localparts = File::Spec->splitdir($localdir); my $files = $self->rscan_dir($localdir, sub {-f}); @@ -3623,13 +3628,14 @@ } my @install; - while (my ($type, $prereqs) = each %$failures) { + foreach my $type (sort keys %$failures) { + my $prereqs = $failures->{$type}; if($type =~ m/^(?:\w+_)?requires$/) { - push(@install, keys %$prereqs); + push(@install, sort keys %$prereqs); next; } $self->log_info("Checking optional dependencies:\n"); - while (my ($module, $status) = each %$prereqs) { + foreach my $module (sort keys %$prereqs) { push(@install, $module) if($self->y_n("Install $module?", 'y')); } } @@ -4039,7 +4045,7 @@ $self->log_info("Creating $dist_dir\n"); $self->add_to_cleanup($dist_dir); - foreach my $file (keys %$dist_files) { + foreach my $file (sort keys %$dist_files) { next if $file =~ m{^MYMETA\.}; # Double check that we skip MYMETA.* my $new = $self->copy_if_modified(from => $file, to_dir => $dist_dir, verbose => 0); } @@ -4328,7 +4334,7 @@ if ( defined $share_dir->{module} ) { my $mod_hash = $share_dir->{module}; if ( ref $mod_hash eq 'HASH' ) { - for my $k ( keys %$mod_hash ) { + for my $k ( sort keys %$mod_hash ) { if ( ! ref $mod_hash->{$k} ) { $mod_hash->{$k} = [ $mod_hash->{$k} ]; } @@ -4759,7 +4765,7 @@ my %dist_files = map { $self->localize_file_path($_) => $_ } keys %$manifest; - my @pm_files = grep { $_ !~ m{^t} } # skip things in t/ + my @pm_files = sort grep { $_ !~ m{^t} } # skip things in t/ grep {exists $dist_files{$_}} keys %{ $self->find_pm_files }; @@ -4808,7 +4814,7 @@ # Then we iterate over all the packages found above, identifying conflicts # and selecting the "best" candidate for recording the file & version # for each package. - foreach my $package ( keys( %alt ) ) { + foreach my $package ( sort keys( %alt ) ) { my $result = $self->_resolve_module_versions( $alt{$package} ); if ( exists( $prime{$package} ) ) { # primary package selected @@ -5249,7 +5255,7 @@ ref($pattern) eq 'CODE' ? sub {push @result, $File::Find::name if $pattern->()} : die "Unknown pattern type"; - File::Find::find({wanted => $subr, no_chdir => 1}, $dir); + File::Find::find({wanted => $subr, no_chdir => 1, preprocess => sub { sort @_ } }, $dir); return \@result; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Compat.pm new/Module-Build-0.4220/lib/Module/Build/Compat.pm --- old/Module-Build-0.4218/lib/Module/Build/Compat.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Compat.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; use File::Basename (); use File::Spec; @@ -33,7 +33,7 @@ installarchlib => "$lib/$Config{archname}", installsitearch => "$lib/$Config{archname}" ); - return map { (config => "$_=$config{$_}") } keys %config; + return map { (config => "$_=$config{$_}") } sort keys %config; }, # Convert INSTALLVENDORLIB and friends. @@ -71,7 +71,7 @@ # validate formats for my $p ( $req, $breq ) { - for my $k (keys %$p) { + for my $k (sort keys %$p) { next if $k eq 'perl'; my $v_obj = eval { version->new($p->{$k}) }; @@ -306,7 +306,8 @@ sub makefile_to_build_macros { my @out; my %config; # must accumulate and return as a hashref - while (my ($macro, $trans) = each %macro_to_build) { + foreach my $macro (sort keys %macro_to_build) { + my $trans = $macro_to_build{$macro}; # On some platforms (e.g. Cygwin with 'make'), the mere presence # of "EXPORT: FOO" in the Makefile will make $ENV{FOO} defined. # Therefore we check length() too. @@ -363,9 +364,11 @@ my $unlink = $class->oneliner('1 while unlink $ARGV[0]', [], [$args{makefile}]); $unlink =~ s/\$/\$\$/g unless $class->is_vmsish; - my $maketext = ($^O eq 'os2' ? "SHELL = sh\n\n" + my $maketext = join '', map { "$_=\n" } sort keys %macro_to_build; + + $maketext .= ($^O eq 'os2' ? "SHELL = sh\n\n" : $^O eq 'MSWin32' && $Config{make} =~ /gmake/ - ? "SHELL = $ENV{COMSPEC}\n\n" : ''); + ? "SHELL = $ENV{COMSPEC}\n\n" : "\n\n"); $maketext .= <<"EOF"; all : force_do_it @@ -393,13 +396,13 @@ if ($self->_is_vms_mms) { # Roll our own .EXPORT as MMS/MMK don't honor that directive. $maketext .= "\n.FIRST\n\t\@ $noop\n"; - for my $macro (keys %macro_to_build) { + for my $macro (sort keys %macro_to_build) { $maketext .= ".IFDEF $macro\n\tDEFINE $macro \"\$($macro)\"\n.ENDIF\n"; } $maketext .= "\n"; } else { - $maketext .= "\n.EXPORT : " . join(' ', keys %macro_to_build) . "\n\n"; + $maketext .= "\n.EXPORT : " . join(' ', sort keys %macro_to_build) . "\n\n"; } return $maketext; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Config.pm new/Module-Build-0.4220/lib/Module/Build/Config.pm --- old/Module-Build-0.4218/lib/Module/Build/Config.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Config.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Config; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Cookbook.pm new/Module-Build-0.4220/lib/Module/Build/Cookbook.pm --- old/Module-Build-0.4218/lib/Module/Build/Cookbook.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Cookbook.pm 2016-08-16 22:49:30.000000000 +0200 @@ -1,7 +1,7 @@ package Module::Build::Cookbook; use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; =head1 NAME diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Dumper.pm new/Module-Build-0.4220/lib/Module/Build/Dumper.pm --- old/Module-Build-0.4218/lib/Module/Build/Dumper.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Dumper.pm 2016-08-16 22:49:30.000000000 +0200 @@ -1,7 +1,7 @@ package Module::Build::Dumper; use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; # This is just a split-out of a wrapper function to do Data::Dumper # stuff "the right way". See: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Notes.pm new/Module-Build-0.4220/lib/Module/Build/Notes.pm --- old/Module-Build-0.4218/lib/Module/Build/Notes.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Notes.pm 2016-08-16 22:49:30.000000000 +0200 @@ -4,7 +4,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Data::Dumper; use Module::Build::Dumper; @@ -178,14 +178,14 @@ sub set_config { $config->{$_[1]} = $_[2] } sub set_feature { $features->{$_[1]} = 0+!!$_[2] } # Constrain to 1 or 0 -sub auto_feature_names { grep !exists $features->{$_}, keys %$auto_features } +sub auto_feature_names { sort grep !exists $features->{$_}, keys %$auto_features } sub feature_names { - my @features = (keys %$features, auto_feature_names()); + my @features = (sort keys %$features, auto_feature_names()); @features; } -sub config_names { keys %$config } +sub config_names { sort keys %$config } sub write { my $me = __FILE__; @@ -221,18 +221,13 @@ my $info = $auto_features->{$key} or return 0; - # Under perl 5.005, each(%$foo) isn't working correctly when $foo - # was reanimated with Data::Dumper and eval(). Not sure why, but - # copying to a new hash seems to solve it. - my %info = %$info; - require Module::Build; # XXX should get rid of this - while (my ($type, $prereqs) = each %info) { + foreach my $type (sort keys %$info) { + my $prereqs = $info->{$type}; next if $type eq 'description' || $type eq 'recommends'; - my %p = %$prereqs; # Ditto here. - while (my ($modname, $spec) = each %p) { - my $status = Module::Build->check_installed_status($modname, $spec); + foreach my $modname (sort keys %$prereqs) { + my $status = Module::Build->check_installed_status($modname, $prereqs->{$modname}); if ((!$status->{ok}) xor ($type =~ /conflicts$/)) { return 0; } if ( ! eval "require $modname; 1" ) { return 0; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/PPMMaker.pm new/Module-Build-0.4220/lib/Module/Build/PPMMaker.pm --- old/Module-Build-0.4218/lib/Module/Build/PPMMaker.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/PPMMaker.pm 2016-08-16 22:49:30.000000000 +0200 @@ -4,7 +4,7 @@ use warnings; use Config; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; # This code is mostly borrowed from ExtUtils::MM_Unix 6.10_03, with a @@ -56,11 +56,11 @@ foreach my $type (qw(requires)) { my $prereq = $build->$type(); - while (my ($modname, $spec) = each %$prereq) { + foreach my $modname (sort keys %$prereq) { next if $modname eq 'perl'; my $min_version = '0.0'; - foreach my $c ($build->_parse_conditions($spec)) { + foreach my $c ($build->_parse_conditions($prereq->{$modname})) { my ($op, $version) = $c =~ /^\s* (<=?|>=?|==|!=) \s* ([\w.]+) \s*$/x; # This is a nasty hack because it fails if there is no >= op diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/Default.pm new/Module-Build-0.4220/lib/Module/Build/Platform/Default.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/Default.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/Default.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Base; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/MacOS.pm new/Module-Build-0.4220/lib/Module/Build/Platform/MacOS.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/MacOS.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/MacOS.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Base; our @ISA = qw(Module::Build::Base); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/Unix.pm new/Module-Build-0.4220/lib/Module/Build/Platform/Unix.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/Unix.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/Unix.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Base; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/VMS.pm new/Module-Build-0.4220/lib/Module/Build/Platform/VMS.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/VMS.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/VMS.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Base; use Config; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/VOS.pm new/Module-Build-0.4220/lib/Module/Build/Platform/VOS.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/VOS.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/VOS.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Base; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/Windows.pm new/Module-Build-0.4220/lib/Module/Build/Platform/Windows.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/Windows.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/Windows.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Config; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/aix.pm new/Module-Build-0.4220/lib/Module/Build/Platform/aix.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/aix.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/aix.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Platform::Unix; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/cygwin.pm new/Module-Build-0.4220/lib/Module/Build/Platform/cygwin.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/cygwin.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/cygwin.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Platform::Unix; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/darwin.pm new/Module-Build-0.4220/lib/Module/Build/Platform/darwin.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/darwin.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/darwin.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Platform::Unix; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/Platform/os2.pm new/Module-Build-0.4220/lib/Module/Build/Platform/os2.pm --- old/Module-Build-0.4218/lib/Module/Build/Platform/os2.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/Platform/os2.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; use Module::Build::Platform::Unix; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build/PodParser.pm new/Module-Build-0.4220/lib/Module/Build/PodParser.pm --- old/Module-Build-0.4218/lib/Module/Build/PodParser.pm 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build/PodParser.pm 2016-08-16 22:49:30.000000000 +0200 @@ -2,7 +2,7 @@ use strict; use warnings; -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; sub new { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/lib/Module/Build.pm new/Module-Build-0.4220/lib/Module/Build.pm --- old/Module-Build-0.4218/lib/Module/Build.pm 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/lib/Module/Build.pm 2016-08-16 22:49:30.000000000 +0200 @@ -19,7 +19,7 @@ use Module::Build::Base; our @ISA = qw(Module::Build::Base); -our $VERSION = '0.4218'; +our $VERSION = '0.4220'; $VERSION = eval $VERSION; # Inserts the given module into the @ISA hierarchy between diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/t/compat.t new/Module-Build-0.4220/t/compat.t --- old/Module-Build-0.4218/t/compat.t 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/t/compat.t 2016-08-16 22:49:30.000000000 +0200 @@ -486,7 +486,7 @@ my $expected = shift; SKIP: { - skip 1, 'Makefile.PL not found' unless -e 'Makefile.PL'; + skip 'Makefile.PL not found', 1 unless -e 'Makefile.PL'; my $args = extract_writemakefile_args() || {}; is_deeply $args->{PL_FILES}, $expected, "Makefile.PL has correct PL_FILES line"; @@ -496,7 +496,7 @@ sub test_makefile_pl_requires_perl { my $perl_version = shift || q{}; SKIP: { - skip 1, 'Makefile.PL not found' unless -e 'Makefile.PL'; + skip 'Makefile.PL not found', 1 unless -e 'Makefile.PL'; my $file_contents = slurp 'Makefile.PL'; my $found_requires = $file_contents =~ m{^require $perl_version;}ms; if (length $perl_version) { @@ -537,7 +537,7 @@ sub extract_writemakefile_args { SKIP: { - skip 1, 'Makefile.PL not found' unless -e 'Makefile.PL'; + skip 'Makefile.PL not found', 1 unless -e 'Makefile.PL'; my $file_contents = slurp 'Makefile.PL'; my ($args) = $file_contents =~ m{^WriteMakefile\n\((.*)\).*;}ms; ok $args, "Found WriteMakefile arguments" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/t/manifypods_with_utf8.t new/Module-Build-0.4220/t/manifypods_with_utf8.t --- old/Module-Build-0.4218/t/manifypods_with_utf8.t 2016-04-24 20:22:50.000000000 +0200 +++ new/Module-Build-0.4220/t/manifypods_with_utf8.t 2016-08-16 22:49:30.000000000 +0200 @@ -8,7 +8,7 @@ blib_load('Module::Build::ConfigData'); use MBTest; -plan($] > 5.008 ? (tests => 2) : skip_all => 'UTF-8 manpages require perl 5.8.1'); +plan ($] > 5.008 ? (tests => 2) : (skip_all => 'UTF-8 manpages require perl 5.8.1')); use File::Spec::Functions qw( catdir ); use Cwd (); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Module-Build-0.4218/t/ppm.t new/Module-Build-0.4220/t/ppm.t --- old/Module-Build-0.4218/t/ppm.t 2016-04-24 20:22:51.000000000 +0200 +++ new/Module-Build-0.4220/t/ppm.t 2016-08-16 22:49:30.000000000 +0200 @@ -17,6 +17,8 @@ my ($have_c_compiler, $tmp_exec) = check_compiler(); if ( ! $have_c_compiler ) { plan skip_all => 'No compiler found'; + } elsif ( ! $tmp_exec ) { + plan skip_all => 'Dysfunctional compiler detected'; } elsif ( ! $PPM_support ) { plan skip_all => 'PPM support modules not installed'; } elsif ( !$Config{usedl} ) {
