Bug 1187232 - Review Request: perl-inc-latest - Use modules bundled in inc/ if they are newer than installed ones
Summary: Review Request: perl-inc-latest - Use modules bundled in inc/ if they are new...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Petr Pisar
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1184830
TreeView+ depends on / blocked
 
Reported: 2015-01-29 15:28 UTC by Jitka Plesnikova
Modified: 2015-02-03 14:38 UTC (History)
2 users (show)

Fixed In Version: perl-inc-latest-0.500-1.fc22
Clone Of:
Environment:
Last Closed: 2015-02-03 14:38:44 UTC
Type: ---
Embargoed:
ppisar: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Jitka Plesnikova 2015-01-29 15:28:07 UTC
Spec URL: https://jplesnik.fedorapeople.org/perl-inc-latest/perl-inc-latest.spec
SRPM URL: https://jplesnik.fedorapeople.org/perl-inc-latest/perl-inc-latest-0.500-1.fc22.src.rpm
Description:
The inc::latest module helps bootstrap configure-time dependencies for CPAN distributions. These dependencies get bundled into the inc directory within a distribution and are used by Makefile.PL or Build.PL.

Fedora Account System Username: jplesnik

Comment 1 Petr Pisar 2015-01-30 09:34:41 UTC
URL and Source0 addresses are usable. Ok.
Source archive is original (SHA-256: daa905f363c6a748deb7c408473870563fcac79b9e3e95b26e130a4a8dc3c611). Ok.
License verified from README, LICENSE, lib/inc/latest.pm, lib/inc/latest/private.pm. Ok.
Summary verified from README. Ok.
Description verified from README. Ok.
No XS code. noarch BuildArch is Ok.

FIX: Package LICENSE file using %license macro.

vars (lib/inc/latest.pm:56) not used when when running tests. Ok.

FIX: Do not build-require run-requires because there the only tests which exists does not compile nor run the code.

CPAN::Meta::Prereqs nor CPAN::Meta are not needed for tests. Ok.

All tests pass. Ok.

$ rpmlint perl-inc-latest.spec ../SRPMS/perl-inc-latest-0.500-1.fc22.src.rpm ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm 
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.

$ rpm -q -lv -p ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm 
drwxr-xr-x    2 root    root                        0 Jan 30 10:15 /usr/share/doc/perl-inc-latest
-rw-r--r--    1 root    root                      151 Dec  6 05:43 /usr/share/doc/perl-inc-latest/Changes
-rw-r--r--    1 root    root                    11500 Dec  6 05:43 /usr/share/doc/perl-inc-latest/LICENSE
-rw-r--r--    1 root    root                     6272 Dec  6 05:43 /usr/share/doc/perl-inc-latest/README
-rw-r--r--    1 root    root                     3760 Jan 30 10:15 /usr/share/man/man3/inc::latest.3pm.gz
-rw-r--r--    1 root    root                     1388 Jan 30 10:15 /usr/share/man/man3/inc::latest::private.3pm.gz
drwxr-xr-x    2 root    root                        0 Jan 30 10:15 /usr/share/perl5/vendor_perl/inc
drwxr-xr-x    2 root    root                        0 Jan 30 10:15 /usr/share/perl5/vendor_perl/inc/latest
-rw-r--r--    1 root    root                     9698 Dec  6 05:43 /usr/share/perl5/vendor_perl/inc/latest.pm
-rw-r--r--    1 root    root                     3086 Dec  6 05:43 /usr/share/perl5/vendor_perl/inc/latest/private.pm
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl(:MODULE_COMPAT_5.20.1)
      1 perl(Carp)
      1 perl(File::Basename)
      1 perl(File::Copy)
      1 perl(File::Path)
      1 perl(File::Spec)
      1 perl(inc::latest::private)
      1 perl(IO::File)
      1 perl(strict)
      1 perl(vars)
      1 perl(warnings)
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
FIX: Run-requires `perl(ExtUtils::Installed)' (lib/inc/latest.pm:88).

$ rpm -q --provides -p ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl(inc::latest) = 0.500
      1 perl(inc::latest::private) = 0.500
      1 perl-inc-latest = 0.500-1.fc22
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm
Binary dependencies resolvable. Ok.

# LANG=en_US.UTF-8 yum install ~test/rpmbuild/RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm
[...]
Transaction check error:
  file /usr/share/man/man3/inc::latest.3pm.gz from install of perl-inc-latest-0.500-1.fc22.noarch conflicts with file from package perl-Module-Build-2:0.42.10-3.fc22.noarch
  file /usr/share/perl5/vendor_perl/inc/latest.pm from install of perl-inc-latest-0.500-1.fc22.noarch conflicts with file from package perl-Module-Build-2:0.42.10-3.fc22.noarch
  file /usr/share/perl5/vendor_perl/inc/latest/private.pm from install of perl-inc-latest-0.500-1.fc22.noarch conflicts with file from package 
perl-Module-Build-2:0.42.10-3.fc22.noarch

FIX: Conflict with perl-Module-Build-2:0.42.10-3.fc22 and older because both packages installs files into the same location.

Package builds in F22 (http://koji.fedoraproject.org/koji/taskinfo?taskID=8780808). Ok.

Otherwise the package is in line with Fedora and Perl packaging guidelines.

Please correct all `FIX' items and provide new SPEC file.
Resolution: Package NOT approved.

Comment 2 Petr Pisar 2015-01-30 09:44:09 UTC
I think the two modules should be sub-packaged from perl-Module-Build first (also in perl.spec).

Comment 3 Jitka Plesnikova 2015-01-30 12:42:54 UTC
Updated. Links are same.

Comment 4 Petr Pisar 2015-01-30 13:14:16 UTC
Changes in the SPEC file:

--- perl-inc-latest.spec.old    2015-01-29 16:27:35.000000000 +0100
+++ perl-inc-latest.spec        2015-01-30 13:41:48.000000000 +0100
@@ -11,17 +11,11 @@
 BuildRequires:  perl(ExtUtils::MakeMaker) >= 6.17
 BuildRequires:  perl(strict)
 BuildRequires:  perl(warnings)
-# Run-time
-BuildRequires:  perl(Carp)
-BuildRequires:  perl(ExtUtils::Installed)
-BuildRequires:  perl(File::Basename)
-BuildRequires:  perl(File::Copy)
-BuildRequires:  perl(File::Path)
-BuildRequires:  perl(File::Spec)
-BuildRequires:  perl(IO::File)
 # Tests
 BuildRequires:  perl(Test::More)
 Requires:       perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
+Requires:       perl(ExtUtils::Installed)
+Conflicts:      perl-Module-Build < 2:0.42.10-4
 
 %description
 The inc::latest module helps bootstrap configure-time dependencies for CPAN
@@ -44,7 +38,8 @@
 make test
 
 %files
-%doc Changes LICENSE README
+%license LICENSE
+%doc Changes README
 %{perl_vendorlib}/*
 %{_mandir}/man3/*
 

All tests pass. Ok.

$ rpmlint  perl-inc-latest.spec ../SRPMS/perl-inc-latest-0.500-1.fc22.src.rpm ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm 
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.

> FIX: Package LICENSE file using %license macro.
-%doc Changes LICENSE README
+%license LICENSE
+%doc Changes README
Ok.

> FIX: Do not build-require run-requires because there the only tests which
> exists does not compile nor run the code.
-# Run-time
-BuildRequires:  perl(Carp)
-BuildRequires:  perl(ExtUtils::Installed)
-BuildRequires:  perl(File::Basename)
-BuildRequires:  perl(File::Copy)
-BuildRequires:  perl(File::Path)
-BuildRequires:  perl(File::Spec)
-BuildRequires:  perl(IO::File)

FIX: Build-require perl(File::Spec) used by tests (t/00-report-prereqs.t:11).

> FIX: Run-requires `perl(ExtUtils::Installed)' (lib/inc/latest.pm:88).
$ rpm -q --requires -p ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl(:MODULE_COMPAT_5.20.1)
      1 perl(Carp)
      1 perl(ExtUtils::Installed)
      1 perl(File::Basename)
      1 perl(File::Copy)
      1 perl(File::Path)
      1 perl(File::Spec)
      1 perl(inc::latest::private)
      1 perl(IO::File)
      1 perl(strict)
      1 perl(vars)
      1 perl(warnings)
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsXz) <= 5.2-1
Ok.

> FIX: Conflict with perl-Module-Build-2:0.42.10-3.fc22 and older because both
> packages installs files into the same location.
$ rpm -q --conflicts -p ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl-Module-Build < 2:0.42.10-4
Ok.

Package build in F22 (http://koji.fedoraproject.org/koji/taskinfo?taskID=8782458). Ok.

# LANG=en_US.UTF-8 yum --enablerepo=f22-build install ~test/rpmbuild/RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm 
Loaded plugins: auto-update-debuginfo
Examining /home/test/rpmbuild/RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm: perl-inc-latest-0.500-1.fc22.noarch
/home/test/rpmbuild/RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm: does not update installed package.
Error: Nothing to do

TODO: I recommend to increase release number, otherwise it will clash with current perl-Module-Build.spec's sub-package.

Please correct all `FIX' items, consider fixing `TODO' items, and provide new spec file.
Resolution: Package NOT approved.

Comment 5 Petr Pisar 2015-01-30 14:13:26 UTC
Updated SPEC file is on due inaccessibility of fedorapeople.org.

Spec URL: sftp://2620:52:0:2204:223:7dff:fe4c:9df0:/home/jplesnik/perl-inc-latest/perl-inc-latest.spec

Comment 6 Petr Pisar 2015-01-30 14:18:08 UTC
SPEC file changes:

--- perl-inc-latest.spec.old    2015-01-30 13:41:48.000000000 +0100
+++ perl-inc-latest.spec        2015-01-30 15:09:54.433000000 +0100
@@ -1,4 +1,5 @@
 Name:           perl-inc-latest
+Epoch:          2
 Version:        0.500
 Release:        1%{?dist}
 Summary:        Use modules bundled in inc/ if they are newer than installed ones
@@ -12,6 +13,7 @@
 BuildRequires:  perl(strict)
 BuildRequires:  perl(warnings)
 # Tests
+BuildRequires:  perl(File::Spec)
 BuildRequires:  perl(Test::More)
 Requires:       perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
 Requires:       perl(ExtUtils::Installed)
@@ -44,5 +46,8 @@
 %{_mandir}/man3/*

 %changelog
-* Thu Jan 29 2015 Jitka Plesnikova <jplesnik> 0.500-1
+* Fri Jan 30 2015 Jitka Plesnikova <jplesnik> - 2:0.500-1
+- Set epoch to compete with perl-Module-Build sub-package
+
+* Thu Jan 29 2015 Jitka Plesnikova <jplesnik> - 0.500-1
 - Specfile autogenerated by cpanspec 1.78.


> FIX: Build-require perl(File::Spec) used by tests (t/00-report-prereqs.t:11).
+BuildRequires:  perl(File::Spec)
Ok.

> TODO: I recommend to increase release number, otherwise it will clash with
> current perl-Module-Build.spec's sub-package.
+Epoch:          2
Ok.

$ rpmlint perl-inc-latest.spec ../SRPMS/perl-inc-latest-0.500-1.fc22.src.rpm ../RPMS/noarch/perl-inc-latest-0.500-1.fc22.noarch.rpm 
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.

Package build in F22 (http://koji.fedoraproject.org/koji/taskinfo?taskID=8783293). Ok.

Resolution: Package APPROVED.

Comment 7 Jitka Plesnikova 2015-02-02 07:55:34 UTC
New Package SCM Request
=======================
Package Name: perl-inc-latest
Short Description: Use modules bundled in inc/ if they are newer than installed ones
Upstream URL: http://search.cpan.org/dist/inc-latest/
Owners: jplesnik ppisar psabata
Branches:
InitialCC: perl-sig

Comment 8 Gwyn Ciesla 2015-02-03 13:31:46 UTC
Git done (by process-git-requests).

Comment 9 Jitka Plesnikova 2015-02-03 14:38:44 UTC
Thank you for the review and the repository.


Note You need to log in before you can comment on or make changes to this bug.