Hello community, here is the log from the commit of package perl-File-ShareDir for openSUSE:Factory checked in at 2019-10-30 14:40:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/perl-File-ShareDir (Old) and /work/SRC/openSUSE:Factory/.perl-File-ShareDir.new.2990 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-File-ShareDir" Wed Oct 30 14:40:59 2019 rev:14 rq:743349 version:1.116 Changes: -------- --- /work/SRC/openSUSE:Factory/perl-File-ShareDir/perl-File-ShareDir.changes 2018-07-04 23:48:22.760339755 +0200 +++ /work/SRC/openSUSE:Factory/.perl-File-ShareDir.new.2990/perl-File-ShareDir.changes 2019-10-30 14:41:00.721747876 +0100 @@ -1,0 +2,28 @@ +Tue Oct 22 16:28:24 UTC 2019 - Tina Mueller <[email protected]> + +- Add manual dependency File::ShareDir::Install + * The module delivers a version of this in inc/, but doesn't use this + in the tests. cpanspec won't detect this as a dependency + +------------------------------------------------------------------- +Wed Apr 3 06:58:00 UTC 2019 - Stephan Kulow <[email protected]> + +- updated to 1.116 + see /usr/share/doc/packages/perl-File-ShareDir/Changes + + 1.116 2018-06-24 + - fix fail-test which incorrectly read without permission + ==> introduce new CI test proving this (Thanks to Ville + Skyttä <[email protected]>) + - spelling fixes (Thanks to Ville Skyttä <[email protected]>) + - fix author tests when run without recommended dependencies + (reported by Mohammed Anwar & Wesley Schwengle) + - add a test proving and reporting dependencies + + 1.114 2018-06-21 + - be more expressive regarding to prerequisites + - improve detection for situations where no permission test + can be done + - fix edge case for 5.8 + +------------------------------------------------------------------- Old: ---- File-ShareDir-1.112.tar.gz New: ---- File-ShareDir-1.116.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ perl-File-ShareDir.spec ++++++ --- /var/tmp/diff_new_pack.Ki7Y2W/_old 2019-10-30 14:41:01.221748408 +0100 +++ /var/tmp/diff_new_pack.Ki7Y2W/_new 2019-10-30 14:41:01.221748408 +0100 @@ -1,7 +1,7 @@ # # spec file for package perl-File-ShareDir # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,18 +12,18 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: perl-File-ShareDir -Version: 1.112 +Version: 1.116 Release: 0 %define cpan_name File-ShareDir Summary: Locate per-dist and per-module shared files License: Artistic-1.0 OR GPL-1.0-or-later Group: Development/Libraries/Perl -Url: http://search.cpan.org/dist/File-ShareDir/ +Url: https://metacpan.org/release/%{cpan_name} Source0: https://cpan.metacpan.org/authors/id/R/RE/REHSACK/%{cpan_name}-%{version}.tar.gz Source1: cpanspec.yml BuildArch: noarch @@ -31,11 +31,17 @@ BuildRequires: perl BuildRequires: perl-macros BuildRequires: perl(Class::Inspector) >= 1.12 -BuildRequires: perl(Test::More) >= 0.9 +BuildRequires: perl(File::Path) >= 2.080000 +BuildRequires: perl(Test::More) >= 0.90 Requires: perl(Class::Inspector) >= 1.12 Recommends: perl(List::MoreUtils) >= 0.428 Recommends: perl(Params::Util) >= 1.07 %{perl_requires} +# MANUAL BEGIN +# because File::ShareDir::Install is in inc/ it won't be seen as a +# dependency by cpanspec +BuildRequires: perl(File::ShareDir::Install) +# MANUAL END %description The intent of File::ShareDir is to provide a companion to Class::Inspector @@ -80,14 +86,14 @@ %prep %setup -q -n %{cpan_name}-%{version} -find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644 +find . -type f ! -path "*/t/*" ! -name "*.pl" ! -name "*.sh" -print0 | xargs -0 chmod 644 %build -%{__perl} Makefile.PL INSTALLDIRS=vendor -%{__make} %{?_smp_mflags} +perl Makefile.PL INSTALLDIRS=vendor +make %{?_smp_mflags} %check -%{__make} test +make test %install %perl_make_install ++++++ File-ShareDir-1.112.tar.gz -> File-ShareDir-1.116.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/Changes new/File-ShareDir-1.116/Changes --- old/File-ShareDir-1.112/Changes 2018-06-18 22:34:28.000000000 +0200 +++ new/File-ShareDir-1.116/Changes 2018-06-24 17:29:25.000000000 +0200 @@ -1,5 +1,20 @@ Revision history for Perl extension File-ShareDir +1.116 2018-06-24 + - fix fail-test which incorrectly read without permission + ==> introduce new CI test proving this (Thanks to Ville + Skyttä <[email protected]>) + - spelling fixes (Thanks to Ville Skyttä <[email protected]>) + - fix author tests when run without recommended dependencies + (reported by Mohammed Anwar & Wesley Schwengle) + - add a test proving and reporting dependencies + +1.114 2018-06-21 + - be more expressive regarding to prerequisites + - improve detection for situations where no permission test + can be done + - fix edge case for 5.8 + 1.112 2018-06-18 - Fix tests that fail when running as root (RT#125602, thanks Wesley Schwengle <[email protected]>) @@ -50,7 +65,7 @@ 1.102 2014-05-12 - Fix RT#95572 "necessary test files not copied into blib" Thanks to Graham Knop for fixing and Zefram for reporting - - Explicitely require warnings as runtime prerequisite + - Explicitly require warnings as runtime prerequisite Thanks to Graham Knop for reporting 1.101 2014-05-10 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/MANIFEST new/File-ShareDir-1.116/MANIFEST --- old/File-ShareDir-1.112/MANIFEST 2018-06-18 22:36:42.000000000 +0200 +++ new/File-ShareDir-1.116/MANIFEST 2018-06-24 17:31:03.000000000 +0200 @@ -11,6 +11,7 @@ README.md share/sample.txt share/subdir/sample.txt +t/00_prereqs.t t/01_compile.t t/02_main.t t/03_extensions.t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/META.json new/File-ShareDir-1.116/META.json --- old/File-ShareDir-1.112/META.json 2018-06-18 22:36:41.000000000 +0200 +++ new/File-ShareDir-1.116/META.json 2018-06-24 17:31:03.000000000 +0200 @@ -23,7 +23,7 @@ "build" : { "requires" : { "ExtUtils::MakeMaker" : "0", - "File::ShareDir::Install" : "0.03" + "File::ShareDir::Install" : "0.13" } }, "configure" : { @@ -33,7 +33,7 @@ }, "requires" : { "ExtUtils::MakeMaker" : "0", - "File::ShareDir::Install" : "0.03" + "File::ShareDir::Install" : "0.13" } }, "develop" : { @@ -65,8 +65,12 @@ } }, "test" : { + "recommends" : { + "CPAN::Meta" : "2.11044" + }, "requires" : { - "Test::More" : "0.9" + "File::Path" : "2.08", + "Test::More" : "0.90" } } }, @@ -82,6 +86,6 @@ "web" : "https://github.com/perl5-utils/File-ShareDir" } }, - "version" : "1.112", + "version" : "1.116", "x_serialization_backend" : "JSON::PP version 2.97001" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/META.yml new/File-ShareDir-1.116/META.yml --- old/File-ShareDir-1.112/META.yml 2018-06-18 22:36:41.000000000 +0200 +++ new/File-ShareDir-1.116/META.yml 2018-06-24 17:31:03.000000000 +0200 @@ -4,11 +4,12 @@ - 'Adam Kennedy <[email protected]>' build_requires: ExtUtils::MakeMaker: '0' - File::ShareDir::Install: '0.03' - Test::More: '0.9' + File::Path: '2.08' + File::ShareDir::Install: '0.13' + Test::More: '0.90' configure_requires: ExtUtils::MakeMaker: '0' - File::ShareDir::Install: '0.03' + File::ShareDir::Install: '0.13' dynamic_config: 1 generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.150010' license: perl @@ -32,5 +33,5 @@ bugtracker: http://rt.cpan.org/Public/Dist/Display.html?Name=File-ShareDir homepage: https://metacpan.org/release/File-ShareDir repository: https://github.com/perl5-utils/File-ShareDir -version: '1.112' +version: '1.116' x_serialization_backend: 'CPAN::Meta::YAML version 0.018' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/Makefile.PL new/File-ShareDir-1.116/Makefile.PL --- old/File-ShareDir-1.112/Makefile.PL 2018-06-15 18:50:46.000000000 +0200 +++ new/File-ShareDir-1.116/Makefile.PL 2018-06-24 16:03:31.000000000 +0200 @@ -1,6 +1,10 @@ +#!perl + use strict; use warnings; +use 5.008_001; + use ExtUtils::MakeMaker; BEGIN @@ -36,14 +40,15 @@ ); my %BUILD_DEPS = ( 'ExtUtils::MakeMaker' => 0, - 'File::ShareDir::Install' => '0.03' + 'File::ShareDir::Install' => '0.13' ); my %BUNDLE_CONFIGURE_DEPS = ( 'inc::latest' => '0.500', 'File::ShareDir::Install' => '0.08', ); my %TEST_DEPS = ( - 'Test::More' => 0.90, + 'Test::More' => '0.90', + 'File::Path' => '2.08', ); WriteMakefile1( @@ -82,8 +87,11 @@ requires => {%BUILD_DEPS}, recommends => {%BUNDLE_CONFIGURE_DEPS} }, - build => {requires => {%BUILD_DEPS}}, - test => {requires => {%TEST_DEPS}}, + build => {requires => {%BUILD_DEPS}}, + test => { + requires => {%TEST_DEPS}, + recommends => {'CPAN::Meta' => 2.110440} + }, runtime => { requires => {%RUN_DEPS}, recommends => { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/lib/File/ShareDir.pm new/File-ShareDir-1.116/lib/File/ShareDir.pm --- old/File-ShareDir-1.112/lib/File/ShareDir.pm 2018-06-18 22:34:55.000000000 +0200 +++ new/File-ShareDir-1.116/lib/File/ShareDir.pm 2018-06-24 17:22:04.000000000 +0200 @@ -145,7 +145,7 @@ our %EXPORT_TAGS = ( ALL => [@EXPORT_OK], ); -our $VERSION = '1.112'; +our $VERSION = '1.116'; ##################################################################### # Interface Functions @@ -189,7 +189,7 @@ # Create the subpath my $path = File::Spec->catdir('auto', 'share', 'dist', $dist); - # Find the full dir withing @INC + # Find the full dir within @INC return _search_inc_path($path); } @@ -240,7 +240,7 @@ # Create the subpath my $path = File::Spec->catdir('auto', 'share', 'module', _module_subdir($module),); - # Find the full dir withing @INC + # Find the full dir within @INC return _search_inc_path($path); } @@ -460,7 +460,7 @@ sub { my $d; $d = File::Spec->catdir($_, $path) if defined _STRING($_); - defined $d and -d $d and return $d; + defined $d and -d $d ? $d : 0; }, @INC ) or return; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/t/00_prereqs.t new/File-ShareDir-1.116/t/00_prereqs.t --- old/File-ShareDir-1.112/t/00_prereqs.t 1970-01-01 01:00:00.000000000 +0100 +++ new/File-ShareDir-1.116/t/00_prereqs.t 2018-06-24 16:03:31.000000000 +0200 @@ -0,0 +1,95 @@ +#!perl + +use strict; +use warnings; + +use Test::More; + +# Prereqs-testing for File::ShareDir + +TODO: +{ + local $TODO = "Just diagnostics ..."; + use_ok("CPAN::Meta") or plan skip_all => "Need CPAN::Meta for this test"; +} + +my $meta = CPAN::Meta->load_file(-d "xt" ? "MYMETA.json" : "META.json"); + +my $prereqs = $meta->effective_prereqs; +my %dups; +my %report; +my %len = ( + module => length("module"), + want => length("wanted"), + have => length("missing") +); + +foreach my $phase (qw/configure build runtime test/, (-d "xt" ? "develop" : ())) +{ + foreach my $severity (qw/requires recommends suggests/) + { + my $reqs = $prereqs->requirements_for($phase, $severity); + my @modules = sort $reqs->required_modules; + @modules or next; + + $len{module} < length(" $phase / $severity ") and $len{module} = length(" $phase / $severity "); + + for my $module (@modules) + { + my $want = $reqs->{requirements}->{$module}->{minimum}->{original}; + defined $dups{$module} and $dups{$module} >= $want and next; + + $len{module} < length($module) and $len{module} = length($module); + + $dups{$module} = $want; + $len{want} < length($want) and $len{want} = length($want); + + local $TODO = $severity eq "requires" ? undef : $severity; + + if (eval { require_ok($module) unless $module eq 'perl'; 1 }) + { + my $version = $module eq 'perl' ? $] : $module->VERSION; + $len{have} < length($version) and $len{have} = length($version); + my $ok = ok($reqs->accepts_module($module, $version), "$module matches required $version"); + my $status = $ok ? "ok" : "not ok"; + $report{$phase}{$severity}{$module} = { + want => $want, + have => $version, + status => $status + }; + } + else + { + $report{$phase}{$severity}{$module} = { + want => $want, + have => "undef", + status => "missing" + }; + } + } + } +} + +diag sprintf("Requirements for %s version %s", $meta->name, $meta->version); + +my $fmt_str = " %$len{module}s | %$len{have}s | %$len{want}s | %s"; +my $sep_str = "-%$len{module}s-+-%$len{have}s-+-%$len{want}s-+---------"; +diag(sprintf($fmt_str, qw(module version wanted status))); +foreach my $phase (qw/configure build runtime test/, (-d "xt" ? "develop" : ())) +{ + foreach my $severity (qw/requires recommends suggests/) + { + scalar keys %{$report{$phase}{$severity}} or next; + my $cap = " $phase / $severity "; + $cap .= "-" x ($len{module} - length($cap)); + diag(sprintf($sep_str, $cap, "-" x $len{have}, "-" x $len{want})); + foreach my $module (sort keys %{$report{$phase}{$severity}}) + { + my ($have, $want, $status) = @{$report{$phase}{$severity}{$module}}{qw(have want status)}; + diag(sprintf($fmt_str, $module, $have, $want, $status)); + } + } +} +diag(sprintf($sep_str, "-" x $len{module}, "-" x $len{have}, "-" x $len{want})); + +done_testing; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/File-ShareDir-1.112/t/04_fail.t new/File-ShareDir-1.116/t/04_fail.t --- old/File-ShareDir-1.112/t/04_fail.t 2018-06-18 21:38:30.000000000 +0200 +++ new/File-ShareDir-1.116/t/04_fail.t 2018-06-24 11:38:18.000000000 +0200 @@ -10,10 +10,9 @@ use POSIX; use Test::More; -use constant NO_PERMISSION_CHECK => ($^O eq 'MSWin32' or $< == 0); - sub dies { + local $Test::Builder::Level = $Test::Builder::Level + 1; my $code = shift; my $pattern = shift; my $message = shift || 'Code dies as expected'; @@ -29,9 +28,19 @@ use_ok("ShareDir::TestClass"); +my $fh; my $testautolib = File::Spec->catdir($testlib, "auto"); my $testsharedirold = File::Spec->catdir($testautolib, qw(ShareDir TestClass)); +END { remove_tree($testautolib); } + +remove_tree($testautolib); +make_path($testautolib, {mode => 0700}); +sysopen($fh, File::Spec->catfile($testautolib, qw(noread.txt)), O_RDWR | O_CREAT, 0100) or diag("$!"); +close($fh); + +my $NO_PERMISSION_CHECK = -r File::Spec->catfile($testautolib, qw(noread.txt)); + dies(sub { File::ShareDir::_DIST("ShareDir::TestClass") }, qr/Not a valid distribution name/, "Not a valid distribution name"); dies( sub { @@ -41,20 +50,18 @@ "Cannot use absolute file name" ); -END { remove_tree($testautolib); } - dies(sub { module_dir() }, qr/Not a valid module name/, 'No params to module_dir dies'); dies(sub { module_dir('') }, qr/Not a valid module name/, 'Null param to module_dir dies'); dies( sub { module_dir('File::ShareDir::Bad') }, qr/Module 'File::ShareDir::Bad' is not loaded/, - 'Getting module dir for known non-existant module dies', + 'Getting module dir for known non-existent module dies', ); # test from RT#125582 dies( sub { dist_file('File-ShareDir', 'file/name.txt'); }, qr,Failed to find shared file 'file/name.txt' for dist 'File-ShareDir',, - "Getting non-existant file dies" + "Getting non-existent file dies" ); remove_tree($testautolib); @@ -67,7 +74,7 @@ SKIP: { - skip("Root always has read permissions", 1) if NO_PERMISSION_CHECK; + skip("Root always has read permissions", 1) if $NO_PERMISSION_CHECK; dies( sub { my $module_dir = module_dir('ShareDir::TestClass'); }, qr/No read permission/, @@ -81,7 +88,7 @@ SKIP: { - skip("Root always has read permissions", 1) if NO_PERMISSION_CHECK; + skip("Root always has read permissions", 1) if $NO_PERMISSION_CHECK; dies( sub { my $dist_dir = dist_dir('ShareDir-TestClass'); }, qr/but no read permissions/, @@ -90,7 +97,7 @@ } remove_tree($testautolib); -open(my $fh, ">", $testsharedirold); +open($fh, ">", $testsharedirold); close($fh); dies(sub { my $module_dir = module_dir('ShareDir::TestClass'); }, qr/No such directory/, "Old module directory but file"); @@ -111,7 +118,7 @@ SKIP: { - skip("Root always has read permissions", 3) if NO_PERMISSION_CHECK; + skip("Root always has read permissions", 3) if $NO_PERMISSION_CHECK; dies(sub { my $dist_file = dist_file('ShareDir-TestClass', 'noread.txt'); }, qr/No read permission/, "Unreadable dist_file"); dies( sub { my $module_file = module_file('ShareDir::TestClass', 'noread.txt'); }, ++++++ cpanspec.yml ++++++ --- /var/tmp/diff_new_pack.Ki7Y2W/_old 2019-10-30 14:41:01.305748498 +0100 +++ /var/tmp/diff_new_pack.Ki7Y2W/_new 2019-10-30 14:41:01.305748498 +0100 @@ -10,8 +10,10 @@ #patches: # foo.patch: -p1 # bar.patch: -#preamble: |- -# BuildRequires: gcc-c++ +preamble: |- + # because File::ShareDir::Install is in inc/ it won't be seen as a + # dependency by cpanspec + BuildRequires: perl(File::ShareDir::Install) #post_prep: |- # hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'` # sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
