commit perl-Devel-FindPerl for openSUSE:Factory

Hello community, here is the log from the commit of package perl-Devel-FindPerl for openSUSE:Factory checked in at 2013-11-30 14:21:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-Devel-FindPerl (Old) and /work/SRC/openSUSE:Factory/.perl-Devel-FindPerl.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "perl-Devel-FindPerl" Changes: -------- --- /work/SRC/openSUSE:Factory/perl-Devel-FindPerl/perl-Devel-FindPerl.changes 2013-08-01 15:56:56.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.perl-Devel-FindPerl.new/perl-Devel-FindPerl.changes 2013-11-30 14:21:52.000000000 +0100 @@ -1,0 +2,16 @@ +Mon Nov 25 07:38:03 UTC 2013 - coolo@suse.com + +- updated to 0.012 + Minor fixes in tests + Fix other environmental variables in tainted mode. + Add a non-empty PATH, to make *bsd happy + Compare configuration case-insensitively, to make Windows happy + find_perl_interpreter now return an array + Always empty $ENV{PATH} before open2 + Append executable extension to expected tainted path + Soften dependency on ExtUtils::Config + Rewrite tests not to depend on Capture::Tiny + Export perl_is_same + Handle tainting better + +------------------------------------------------------------------- Old: ---- Devel-FindPerl-0.006.tar.gz New: ---- Devel-FindPerl-0.012.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-Devel-FindPerl.spec ++++++ --- /var/tmp/diff_new_pack.9O4elA/_old 2013-11-30 14:21:53.000000000 +0100 +++ /var/tmp/diff_new_pack.9O4elA/_new 2013-11-30 14:21:53.000000000 +0100 @@ -17,7 +17,7 @@ Name: perl-Devel-FindPerl -Version: 0.006 +Version: 0.012 Release: 0 %define cpan_name Devel-FindPerl Summary: Find the path to your perl @@ -29,14 +29,13 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: perl BuildRequires: perl-macros -BuildRequires: perl(Capture::Tiny) -BuildRequires: perl(ExtUtils::Config) >= 0.007 #BuildRequires: perl(Devel::FindPerl) -Requires: perl(ExtUtils::Config) >= 0.007 +Recommends: perl(ExtUtils::Config) >= 0.007 %{perl_requires} %description -This module tries to find the path to the currently running perl. +This module tries to find the path to the currently running perl. It +(optionally) exports the following functions: %prep %setup -q -n %{cpan_name}-%{version} ++++++ Devel-FindPerl-0.006.tar.gz -> Devel-FindPerl-0.012.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/Changes new/Devel-FindPerl-0.012/Changes --- old/Devel-FindPerl-0.006/Changes 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/Changes 2013-11-20 14:57:21.000000000 +0100 @@ -1,5 +1,28 @@ Revision history for Devel-FindPerl +0.012 2013-11-20 14:57:15 Europe/Amsterdam + Minor fixes in tests + +0.011 2013-11-19 14:50:51 Europe/Amsterdam + Fix other environmental variables in tainted mode. + +0.010 2013-11-13 23:13:15 Europe/Amsterdam + Add a non-empty PATH, to make *bsd happy + Compare configuration case-insensitively, to make Windows happy + +0.009 2013-11-07 23:00:55 Europe/Amsterdam + find_perl_interpreter now return an array + +0.008 2013-11-01 17:48:53 Europe/Amsterdam + Always empty $ENV{PATH} before open2 + Append executable extension to expected tainted path + +0.007 2013-10-24 14:32:54 Europe/Amsterdam + Soften dependency on ExtUtils::Config + Rewrite tests not to depend on Capture::Tiny + Export perl_is_same + Handle tainting better + 0.006 2012-10-21 15:32:06 Europe/Amsterdam Cache the results of find_perl_interpreter Don't try absolute path twice diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/MANIFEST new/Devel-FindPerl-0.012/MANIFEST --- old/Devel-FindPerl-0.006/MANIFEST 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/MANIFEST 2013-11-20 14:57:21.000000000 +0100 @@ -10,6 +10,6 @@ lib/Devel/FindPerl.pm t/00-compile.t t/10-basics.t -t/release-kwalitee.t +t/11-tainted.t t/release-pod-coverage.t t/release-pod-syntax.t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/META.json new/Devel-FindPerl-0.012/META.json --- old/Devel-FindPerl-0.006/META.json 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/META.json 2013-11-20 14:57:21.000000000 +0100 @@ -4,7 +4,7 @@ "Leon Timmermans <leont@cpan.org>, Randy Sims <randys@thepierianspring.org>" ], "dynamic_config" : 0, - "generated_by" : "Dist::Zilla version 4.300021, CPAN::Meta::Converter version 2.120921", + "generated_by" : "Dist::Zilla version 5.005, CPAN::Meta::Converter version 2.132830", "license" : [ "perl_5" ], @@ -19,15 +19,25 @@ "ExtUtils::MakeMaker" : "6.30" } }, + "develop" : { + "requires" : { + "Pod::Coverage::TrustPod" : "0", + "Test::Pod" : "1.41", + "Test::Pod::Coverage" : "1.08" + } + }, "runtime" : { + "recommends" : { + "ExtUtils::Config" : "0.007" + }, "requires" : { "Carp" : "0", "Cwd" : "0", "Exporter" : "5.57", - "ExtUtils::Config" : "0.007", "File::Basename" : "0", "File::Spec::Functions" : "0", "IPC::Open2" : "0", + "Scalar::Util" : "0", "perl" : "5.006", "strict" : "0", "warnings" : "0" @@ -35,14 +45,19 @@ }, "test" : { "requires" : { - "Capture::Tiny" : "0", - "Config" : "0", - "File::Find" : "0", - "File::Temp" : "0", + "File::Spec" : "0", + "IO::Handle" : "0", + "IPC::Open3" : "0", "Test::More" : "0" } } }, + "provides" : { + "Devel::FindPerl" : { + "file" : "lib/Devel/FindPerl.pm", + "version" : "0.012" + } + }, "release_status" : "stable", "resources" : { "bugtracker" : { @@ -52,9 +67,9 @@ "repository" : { "type" : "git", "url" : "git://github.com/Leont/devel-findperl.git", - "web" : "http://github.com/Leont/devel-findperl" + "web" : "https://github.com/Leont/devel-findperl" } }, - "version" : "0.006" + "version" : "0.012" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/META.yml new/Devel-FindPerl-0.012/META.yml --- old/Devel-FindPerl-0.006/META.yml 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/META.yml 2013-11-20 14:57:21.000000000 +0100 @@ -3,32 +3,37 @@ author: - 'Leon Timmermans <leont@cpan.org>, Randy Sims <randys@thepierianspring.org>' build_requires: - Capture::Tiny: 0 - Config: 0 - File::Find: 0 - File::Temp: 0 + File::Spec: 0 + IO::Handle: 0 + IPC::Open3: 0 Test::More: 0 configure_requires: ExtUtils::MakeMaker: 6.30 dynamic_config: 0 -generated_by: 'Dist::Zilla version 4.300021, CPAN::Meta::Converter version 2.120921' +generated_by: 'Dist::Zilla version 5.005, CPAN::Meta::Converter version 2.132830' license: perl meta-spec: url: http://module-build.sourceforge.net/META-spec-v1.4.html version: 1.4 name: Devel-FindPerl +provides: + Devel::FindPerl: + file: lib/Devel/FindPerl.pm + version: 0.012 +recommends: + ExtUtils::Config: 0.007 requires: Carp: 0 Cwd: 0 Exporter: 5.57 - ExtUtils::Config: 0.007 File::Basename: 0 File::Spec::Functions: 0 IPC::Open2: 0 + Scalar::Util: 0 perl: 5.006 strict: 0 warnings: 0 resources: bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=Devel-FindPerl repository: git://github.com/Leont/devel-findperl.git -version: 0.006 +version: 0.012 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/Makefile.PL new/Devel-FindPerl-0.012/Makefile.PL --- old/Devel-FindPerl-0.006/Makefile.PL 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/Makefile.PL 2013-11-20 14:57:21.000000000 +0100 @@ -11,13 +11,7 @@ my %WriteMakefileArgs = ( "ABSTRACT" => "Find the path to your perl", "AUTHOR" => "Leon Timmermans <leont\@cpan.org>, Randy Sims <randys\@thepierianspring.org>", - "BUILD_REQUIRES" => { - "Capture::Tiny" => 0, - "Config" => 0, - "File::Find" => 0, - "File::Temp" => 0, - "Test::More" => 0 - }, + "BUILD_REQUIRES" => {}, "CONFIGURE_REQUIRES" => { "ExtUtils::MakeMaker" => "6.30" }, @@ -29,31 +23,47 @@ "Carp" => 0, "Cwd" => 0, "Exporter" => "5.57", - "ExtUtils::Config" => "0.007", "File::Basename" => 0, "File::Spec::Functions" => 0, "IPC::Open2" => 0, + "Scalar::Util" => 0, "strict" => 0, "warnings" => 0 }, - "VERSION" => "0.006", + "TEST_REQUIRES" => { + "File::Spec" => 0, + "IO::Handle" => 0, + "IPC::Open3" => 0, + "Test::More" => 0 + }, + "VERSION" => "0.012", "test" => { "TESTS" => "t/*.t" } ); -unless ( eval { ExtUtils::MakeMaker->VERSION(6.56) } ) { - my $br = delete $WriteMakefileArgs{BUILD_REQUIRES}; - my $pp = $WriteMakefileArgs{PREREQ_PM}; - for my $mod ( keys %$br ) { - if ( exists $pp->{$mod} ) { - $pp->{$mod} = $br->{$mod} if $br->{$mod} > $pp->{$mod}; - } - else { - $pp->{$mod} = $br->{$mod}; - } - } +my %FallbackPrereqs = ( + "Carp" => 0, + "Cwd" => 0, + "Exporter" => "5.57", + "File::Basename" => 0, + "File::Spec" => 0, + "File::Spec::Functions" => 0, + "IO::Handle" => 0, + "IPC::Open2" => 0, + "IPC::Open3" => 0, + "Scalar::Util" => 0, + "Test::More" => 0, + "strict" => 0, + "warnings" => 0 +); + + +unless ( eval { ExtUtils::MakeMaker->VERSION(6.63_03) } ) { + delete $WriteMakefileArgs{TEST_REQUIRES}; + delete $WriteMakefileArgs{BUILD_REQUIRES}; + $WriteMakefileArgs{PREREQ_PM} = \%FallbackPrereqs; } delete $WriteMakefileArgs{CONFIGURE_REQUIRES} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/README new/Devel-FindPerl-0.012/README --- old/Devel-FindPerl-0.006/README 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/README 2013-11-20 14:57:21.000000000 +0100 @@ -1,7 +1,7 @@ This archive contains the distribution Devel-FindPerl, -version 0.006: +version 0.012: Find the path to your perl diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/dist.ini new/Devel-FindPerl-0.012/dist.ini --- old/Devel-FindPerl-0.006/dist.ini 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/dist.ini 2013-11-20 14:57:21.000000000 +0100 @@ -4,4 +4,7 @@ copyright_holder = Randy Sims, Leon Timmermans copyright_year = 2012 -[@LEONT::PP] +[@LEONT] +install_tool = eumm +[Prereqs / RuntimeRecommends] +ExtUtils::Config = 0.007 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/lib/Devel/FindPerl.pm new/Devel-FindPerl-0.012/lib/Devel/FindPerl.pm --- old/Devel-FindPerl-0.006/lib/Devel/FindPerl.pm 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/lib/Devel/FindPerl.pm 2013-11-20 14:57:21.000000000 +0100 @@ -1,38 +1,40 @@ package Devel::FindPerl; { - $Devel::FindPerl::VERSION = '0.006'; + $Devel::FindPerl::VERSION = '0.012'; } use strict; use warnings; use Exporter 5.57 'import'; -our @EXPORT_OK = qw/find_perl_interpreter/; +our @EXPORT_OK = qw/find_perl_interpreter perl_is_same/; +our %EXPORT_TAGS = (all => \@EXPORT_OK); use Carp q/carp/; +use Config; use Cwd q/realpath/; -use ExtUtils::Config 0.007; use File::Basename qw/basename dirname/; use File::Spec::Functions qw/catfile catdir rel2abs file_name_is_absolute updir curdir path/; +use Scalar::Util 'tainted'; use IPC::Open2 qw/open2/; my %perl_for; sub find_perl_interpreter { - my $config = shift || ExtUtils::Config->new; - my $key = $config->serialize; - return $perl_for{$key} ||= _discover_perl_interpreter($config); + my $config = shift || 'Devel::FindPerl::Config'; + my $key = $config->can('serialize') ? $config->serialize : ''; + $perl_for{$key} ||= _discover_perl_interpreter($config); + return wantarray ? @{ $perl_for{$key} } : $perl_for{$key}[0]; } sub _discover_perl_interpreter { my $config = shift; - my $perl = $^X; - return VMS::Filespec::vmsify($perl) if $^O eq 'VMS'; - my $perl_basename = basename($perl); + return VMS::Filespec::vmsify($^X) if $^O eq 'VMS'; + my $perl_basename = basename($^X); my @potential_perls; # Try 1, Check $^X for absolute path - push @potential_perls, file_name_is_absolute($perl) ? $perl : rel2abs($perl); + push @potential_perls, [ file_name_is_absolute($^X) ? $^X : rel2abs($^X) ] unless tainted($^X); # Try 2, Last ditch effort: These two option use hackery to try to locate # a suitable perl. The hack varies depending on whether we are running @@ -45,17 +47,22 @@ my $perl_src = realpath(_perl_src()); if (defined($perl_src) && length($perl_src)) { my $uninstperl = rel2abs(catfile($perl_src, $perl_basename)); - push @potential_perls, $uninstperl; + # When run from the perl core, @INC will include the directories + # where perl is yet to be installed. We need to reference the + # absolute path within the source distribution where it can find + # it's Config.pm This also prevents us from picking up a Config.pm + # from a different configuration that happens to be already + # installed in @INC. + push @potential_perls, [ $uninstperl, '-I' . catdir(dirname($^X), 'lib') ]; } - } else { # Try 2.B, First look in $Config{perlpath}, then search the user's # PATH. We do not want to do either if we are running from an # uninstalled perl in a perl source tree. - push @potential_perls, $config->get('perlpath'); - push @potential_perls, map { catfile($_, $perl_basename) } path(); + push @potential_perls, [ $config->get('perlpath') ]; + push @potential_perls, map { [ catfile($_, $perl_basename) ] } grep { !tainted($_) } path(); } # Now that we've enumerated the potential perls, it's time to test @@ -63,13 +70,13 @@ # absolute path of the first successful match. my $exe = $config->get('exe_ext'); foreach my $thisperl (@potential_perls) { - $thisperl .= $exe if length $exe and $thisperl !~ m/$exe$/i; - return $thisperl if -f $thisperl && _perl_is_same($thisperl); + $thisperl->[0] .= $exe if length $exe and $thisperl->[0] !~ m/$exe$/i; + return $thisperl if -f $thisperl->[0] && perl_is_same(@{$thisperl}); } # We've tried all alternatives, and didn't find a perl that matches # our configuration. Throw an exception, and list alternatives we tried. - my @paths = map { dirname($_) } @potential_perls; + my @paths = map { dirname($_->[0]) } @potential_perls; die "Can't locate the perl binary used to run this script in (@paths)\n"; } @@ -102,52 +109,84 @@ return; # return empty string if $ENV{PERL_CORE} but can't find dir ??? } -sub _perl_is_same { - my $perl = shift; - - my @cmd = $perl; +sub perl_is_same { + my @cmd = @_; - # When run from the perl core, @INC will include the directories - # where perl is yet to be installed. We need to reference the - # absolute path within the source distribution where it can find - # it's Config.pm This also prevents us from picking up a Config.pm - # from a different configuration that happens to be already - # installed in @INC. - push @cmd, '-I' . catdir(dirname($perl), 'lib') if $ENV{PERL_CORE}; push @cmd, qw(-MConfig=myconfig -e print -e myconfig); + local @ENV{qw/PATH IFS CDPATH ENV BASH_ENV/} = ('') x 5; my $pid = open2(my($in, $out), @cmd); binmode $in, ':crlf' if $^O eq 'MSWin32'; my $ret = do { local $/; <$in> }; waitpid $pid, 0; - return $ret eq Config->myconfig; + return lc $ret eq lc Config->myconfig; +} + +sub Devel::FindPerl::Config::get { + my ($self, $key) = @_; + return $Config{$key}; } 1; #ABSTRACT: Find the path to your perl - __END__ + =pod +=encoding UTF-8 + =head1 NAME Devel::FindPerl - Find the path to your perl =head1 VERSION -version 0.006 +version 0.012 + +=head1 SYNOPSIS + + use Devel::FindPerl 'find_perl_interpreter'; + system find_perl_interpreter, '-e', '...'; =head1 DESCRIPTION -This module tries to find the path to the currently running perl. +This module tries to find the path to the currently running perl. It (optionally) exports the following functions: =head1 FUNCTIONS =head2 find_perl_interpreter($config = ExtUtils::Config->new) -This function will try really really hard to find the path to the perl running your program. I should be able to find it in most circumstances. Note that the result of this function will be cached for any serialized value of C<$config>. +This function will try really really hard to find the path to the perl running your program. I should be able to find it in most circumstances. Note that the result of this function will be cached for any serialized value of C<$config>. It will return a list that usually but not necessarily is containing one element; additional elements are arguments that must be passed to that perl for correct functioning. + +=head2 perl_is_same($path, @arguments) + +Tests if the perl in C<$path> is the same perl as the currently running one. + +=head1 SECURITY + +This module by default does things that are not particularly secure (run programs based on external input). In tainted mode, it will try to avoid any insecure action, but that may affect its ability to find the perl executable. + +=head1 SEE ALSO + +=over 4 + +=item * Probe::Perl + +This module has much the same purpose as Probe::Perl, in fact the algorithm is mostly the same as both are extracted from L<Module::Build> at different points in time. If I had known about it when I extracted it myself, I probably wouldn't have bothered, but now that I do have it there are a number of reasons for me to prefer Devel::FindPerl over Probe::Perl + +=over 4 + +=item * Separation of concerns. P::P does 4 completely different things (finding perl, managing configuration, categorizing platorms and formatting a perl version. Devel::FindPerl is instead complemented by modules such as L<ExtUtils::Config> and L<Perl::OSType>. + +=item * It handles tainting better. In particular, C<find_perl_interpreter> never returns a tainted value, even in tainted mode. + +=item * It was written with inclusion in core in mind, though the removal of Module::Build from core after perl 5.20 may make this point moot. + +=back + +=back =head1 AUTHOR @@ -161,4 +200,3 @@ the same terms as the Perl 5 programming language system itself. =cut - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/t/00-compile.t new/Devel-FindPerl-0.012/t/00-compile.t --- old/Devel-FindPerl-0.006/t/00-compile.t 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/t/00-compile.t 2013-11-20 14:57:21.000000000 +0100 @@ -1,73 +1,48 @@ -#!perl - use strict; use warnings; -use Test::More; +# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.036 +use Test::More tests => 1 + ($ENV{AUTHOR_TESTING} ? 1 : 0); -use File::Find; -use File::Temp qw{ tempdir }; -my @modules; -find( - sub { - return if $File::Find::name !~ /\.pm\z/; - my $found = $File::Find::name; - $found =~ s{^lib/}{}; - $found =~ s{[/\\]}{::}g; - $found =~ s/\.pm$//; - # nothing to skip - push @modules, $found; - }, - 'lib', +my @module_files = ( + 'Devel/FindPerl.pm' ); -sub _find_scripts { - my $dir = shift @_; - my @found_scripts = (); - find( - sub { - return unless -f; - my $found = $File::Find::name; - # nothing to skip - open my $FH, '<', $_ or do { - note( "Unable to open $found in ( $! ), skipping" ); - return; - }; - my $shebang = <$FH>; - return unless $shebang =~ /^#!.*?\bperl\b\s*$/; - push @found_scripts, $found; - }, - $dir, - ); - return @found_scripts; -} +# no fake home requested -my @scripts; -do { push @scripts, _find_scripts($_) if -d $_ } - for qw{ bin script scripts }; +my $inc_switch = q[-Mblib]; -my $plan = scalar(@modules) + scalar(@scripts); -$plan ? (plan tests => $plan) : (plan skip_all => "no tests to run"); +use File::Spec; +use IPC::Open3; +use IO::Handle; +my @warnings; +for my $lib (@module_files) { - # fake home for cpan-testers - # no fake requested ## local $ENV{HOME} = tempdir( CLEANUP => 1 ); - - like( qx{ $^X -Ilib -e "require $_; print '$_ ok'" }, qr/^\s*$_ ok/s, "$_ loaded ok" ) - for sort @modules; - - SKIP: { - eval "use Test::Script 1.05; 1;"; - skip "Test::Script needed to test script compilation", scalar(@scripts) if $@; - foreach my $file ( @scripts ) { - my $script = $file; - $script =~ s!.*/!!; - script_compiles( $file, "$script script compiles" ); - } + # see L<perlfaq8/How can I capture STDERR from an external command?> + open my $stdin, '<', File::Spec->devnull or die "can't open devnull: $!"; + my $stderr = IO::Handle->new; + + my $pid = open3($stdin, '>&STDERR', $stderr, $^X, $inc_switch, '-e', "require q[$lib]"); + binmode $stderr, ':crlf' if $^O eq 'MSWin32'; + my @_warnings = <$stderr>; + waitpid($pid, 0); + is($?, 0, "$lib loaded ok"); + + if (@_warnings) + { + warn @_warnings; + push @warnings, @_warnings; } } + + + +is(scalar(@warnings), 0, 'no warnings found') if $ENV{AUTHOR_TESTING}; + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/t/10-basics.t new/Devel-FindPerl-0.012/t/10-basics.t --- old/Devel-FindPerl-0.006/t/10-basics.t 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/t/10-basics.t 2013-11-20 14:57:21.000000000 +0100 @@ -5,12 +5,18 @@ use Test::More; -use Capture::Tiny 'capture'; use Config; +use IPC::Open2 'open2'; use Devel::FindPerl 'find_perl_interpreter'; my $perl = find_perl_interpreter; -is(capture { system $perl, qw(-MConfig=myconfig -e print -e myconfig) }, Config->myconfig, 'Config of found perl equals current perl'); +diag("$perl is not $Config{perlpath}, this may or may not be problematic") if lc $perl ne lc $Config{perlpath} and not $ENV{PERL_CORE}; + +my $pid = open2(my($in, $out), $perl, qw/-MConfig=myconfig -e print -e myconfig/) or die "Could not start perl at $perl"; +binmode $in, ':crlf' if $^O eq 'MSWin32'; +my $ret = do { local $/; <$in> }; +waitpid $pid, 0; +is(lc $ret, lc Config->myconfig, 'Config of found perl equals current perl'); done_testing; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/t/11-tainted.t new/Devel-FindPerl-0.012/t/11-tainted.t --- old/Devel-FindPerl-0.006/t/11-tainted.t 1970-01-01 01:00:00.000000000 +0100 +++ new/Devel-FindPerl-0.012/t/11-tainted.t 2013-11-20 14:57:21.000000000 +0100 @@ -0,0 +1,23 @@ +#! perl -T + +use strict; +use warnings; + +use Test::More; + +use Config; +use Devel::FindPerl qw/find_perl_interpreter perl_is_same/; + +my $perlpath = $Config{perlpath}; +plan(skip_all => 'Taint test can\'t be run from uninstalled perl') if $ENV{PERL_CORE}; +plan(skip_all => 'Taint test can\'t be run for relocatable perl') if $Config{userelocatableinc}; +plan(skip_all => "Perl not in perlpath '$perlpath'") unless -x $perlpath and perl_is_same($perlpath); +plan(skip_all => 'Testrun without taint mode') if not $^T; + +my $interpreter = do { + local $SIG{__WARN__} = sub { fail("Got a warning during find_perl_interpreter") }; + find_perl_interpreter(); +}; +like($interpreter, qr/\Q$perlpath/, 'Always find $Config{perlpath} under tainting'); + +done_testing; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-FindPerl-0.006/t/release-kwalitee.t new/Devel-FindPerl-0.012/t/release-kwalitee.t --- old/Devel-FindPerl-0.006/t/release-kwalitee.t 2012-10-21 15:32:12.000000000 +0200 +++ new/Devel-FindPerl-0.012/t/release-kwalitee.t 1970-01-01 01:00:00.000000000 +0100 @@ -1,17 +0,0 @@ -#!perl - -BEGIN { - unless ($ENV{RELEASE_TESTING}) { - require Test::More; - Test::More::plan(skip_all => 'these tests are for release candidate testing'); - } -} - - -# This test is generated by Dist::Zilla::Plugin::Test::Kwalitee -use strict; -use warnings; -use Test::More; # needed to provide plan. -eval "use Test::Kwalitee"; - -plan skip_all => "Test::Kwalitee required for testing kwalitee" if $@; -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de