Bug 1316664

Summary: Review Request: perl-List-SomeUtils-XS - XS implementation for List::SomeUtils
Product: [Fedora] Fedora Reporter: Jitka Plesnikova <jplesnik>
Component: Package ReviewAssignee: Petr Pisar <ppisar>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, ppisar
Target Milestone: ---Flags: ppisar: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: perl-List-SomeUtils-XS-0.51-2.fc25 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-04 17:25:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jitka Plesnikova 2016-03-10 17:22:42 UTC
Spec URL: https://jplesnik.fedorapeople.org/perl-List-SomeUtils-XS/perl-List-SomeUtils-XS.spec
SRPM URL: https://jplesnik.fedorapeople.org/perl-List-SomeUtils-XS/perl-List-SomeUtils-XS-0.51-1.fc25.src.rpm

Description:
There are no user-facing parts here. See List::SomeUtils for API details.

You shouldn't have to install this module directly. When you install
List::SomeUtils, it checks whether your system has a compiler. If it does,
then it adds a dependency on this module so that it gets installed and you
have the faster XS implementation.

Fedora Account System Username: jplesnik

Comment 1 Petr Pisar 2016-03-24 15:22:39 UTC
URL and Source0 addresses are usable. Ok.
Source archive is original (SHA-256: 64cdf8172568fe4fa689f01c83b54d2471ff7f293ec3d71ba83153204a90550e). Ok.
Summary verified from lib/List/SomeUtils/XS.pm. Ok.
Description verified from lib/List/SomeUtils/XS.pm.

TODO: I had bad feeling about the description. It describes internal representation that is not relevant to binary RPM package (perl-List-SomeUtils binary RPM does not check for a compiler etc.). I would rather see the description rewritten from point of view of packaged software. Or just a simple notice that the package delivers accelerated List::SomeUtils internals.

FIX: Artistic 2.0 license verified from README.md, lib/List/SomeUtils/XS.pm,
LICENSE. But there is the bundled ppport.h (GPL+ or Artistic) that is compiled into the binary file. I think correct license tag is "Artistic 2.0 and (GPL+ or Artistic)".

Architecture specific package because of XS code. Ok.

blib not used. Ok.
IO::Handle not used. Ok.
IPC::Open3 not used. Ok.
Pod::Coverage::TrustPod not used. Ok.
Pod::Wordlist not used. Ok.

Scalar::Util is optional. Ok.
Storable is optional. Ok.

Test::Code::TidyAll not used. Ok.
Test::CPAN::Changes not used. Ok.
Test::CPAN::Meta::JSON not used. Ok.
Test::EOL not used. Ok.

Test::LeakTrace is optional. Ok.

Test::Mojibake not used. Ok.
Test::NoTabs not used. Ok.
Test::Pod not used. Ok.
Test::Pod::Coverage not used. Ok.
Test::Spelling not used. Ok.
Test::Synopsis not used. Ok.
Test::Version not used. Ok.

All tests pass. Ok.

$ rpmlint perl-List-SomeUtils-XS.spec ../SRPMS/perl-List-SomeUtils-XS-0.51-1.fc25.src.rpm ../RPMS/x86_64/perl-List-SomeUtils-XS-*
3 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.

$ rpm -q -lv -p ../RPMS/x86_64/perl-List-SomeUtils-XS-0.51-1.fc25.x86_64.rpm 
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/List
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/List/SomeUtils
-rw-r--r--    1 root    root                     2138 Feb 27 17:45 /usr/lib64/perl5/vendor_perl/List/SomeUtils/XS.pm
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/auto/List
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/auto/List/SomeUtils
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/auto/List/SomeUtils/XS
-rwxr-xr-x    1 root    root                   135056 Mar 24 16:10 /usr/lib64/perl5/vendor_perl/auto/List/SomeUtils/XS/XS.so
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/share/doc/perl-List-SomeUtils-XS
-rw-r--r--    1 root    root                      146 Feb 27 17:45 /usr/share/doc/perl-List-SomeUtils-XS/Changes
-rw-r--r--    1 root    root                     1126 Feb 27 17:45 /usr/share/doc/perl-List-SomeUtils-XS/README.md
drwxr-xr-x    2 root    root                        0 Mar 24 16:10 /usr/share/licenses/perl-List-SomeUtils-XS
-rw-r--r--    1 root    root                     9040 Feb 27 17:45 /usr/share/licenses/perl-List-SomeUtils-XS/LICENSE
-rw-r--r--    1 root    root                     1657 Mar 24 16:10 /usr/share/man/man3/List::SomeUtils::XS.3pm.gz
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/x86_64/perl-List-SomeUtils-XS-0.51-1.fc25.x86_64.rpm | sort -f | uniq -c
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libperl.so.5.22()(64bit)
      1 perl(:MODULE_COMPAT_5.22.1)
      1 perl(:VERSION) >= 5.6.0
      1 perl(List::SomeUtils::PP)
      1 perl(strict)
      1 perl(warnings)
      1 perl(XSLoader)
      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
      1 rtld(GNU_HASH)
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/x86_64/perl-List-SomeUtils-XS-0.51-1.fc25.x86_64.rpm | sort -f | uniq -c
      1 perl(List::SomeUtils::XS) = 0.51
      1 perl-List-SomeUtils-XS = 0.51-1.fc25
      1 perl-List-SomeUtils-XS(x86-64) = 0.51-1.fc25
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/x86_64/perl-List-SomeUtils-XS-0.51-1.fc25.x86_64.rpm 
Binary dependencies resolvable. Ok.

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

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

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

Comment 3 Petr Pisar 2016-03-29 13:04:08 UTC
Spec file changes:

--- perl-List-SomeUtils-XS.spec.old     2016-03-10 18:21:03.000000000 +0100
+++ perl-List-SomeUtils-XS.spec 2016-03-29 12:10:59.000000000 +0200
@@ -1,8 +1,8 @@
 Name:           perl-List-SomeUtils-XS
 Version:        0.51
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        XS implementation for List::SomeUtils
-License:        Artistic 2.0
+License:        Artistic 2.0 and (GPL+ or Artistic)
 URL:            http://search.cpan.org/dist/List-SomeUtils-XS/
 Source0:        http://www.cpan.org/authors/id/D/DR/DROLSKY/List-SomeUtils-XS-%{version}.tar.gz
 BuildRequires:  findutils
@@ -37,12 +37,10 @@
 Requires:       perl(XSLoader)

 %description
-There are no user-facing parts here. See List::SomeUtils for API details.
+List::SomeUtils provides some trivial but commonly needed functionality on
+lists which is not going to go into List::Util.

-You shouldn't have to install this module directly. When you install
-List::SomeUtils, it checks whether your system has a compiler. If it does,
-then it adds a dependency on this module so that it gets installed and you
-have the faster XS implementation.
+XS implementation is faster than List::SomeUtils.

 %prep
 %setup -q -n List-SomeUtils-XS-%{version}
@@ -67,5 +65,8 @@
 %{_mandir}/man3/*

 %changelog
+* Tue Mar 29 2016 Jitka Plesnikova <jplesnik> - 0.51-2
+- Updated license and description
+
 * Thu Mar 10 2016 Jitka Plesnikova <jplesnik> - 0.51-1
 - Initial release

> TODO: I had bad feeling about the description. It describes internal
> representation that is not relevant to binary RPM package
> (perl-List-SomeUtils binary RPM does not check for a compiler etc.).
 %description
-There are no user-facing parts here. See List::SomeUtils for API details.
+List::SomeUtils provides some trivial but commonly needed functionality on
+lists which is not going to go into List::Util.

-You shouldn't have to install this module directly. When you install
-List::SomeUtils, it checks whether your system has a compiler. If it does,
-then it adds a dependency on this module so that it gets installed and you
-have the faster XS implementation.
+XS implementation is faster than List::SomeUtils.
Ok.

> FIX: Artistic 2.0 license verified from README.md, lib/List/SomeUtils/XS.pm,
> LICENSE. But there is the bundled ppport.h (GPL+ or Artistic) that is
> compiled into the binary file. I think correct license tag is "Artistic 2.0
> and (GPL+ or Artistic)".
-License:        Artistic 2.0
+License:        Artistic 2.0 and (GPL+ or Artistic)
Ok.

$ rpmlint perl-List-SomeUtils-XS.spec ../SRPMS/perl-List-SomeUtils-XS-0.51-2.fc25.src.rpm ../RPMS/x86_64/perl-List-SomeUtils-XS-*2.*
perl-List-SomeUtils-XS.src: W: spelling-error %description -l en_US Util -> Til, U til, Until
perl-List-SomeUtils-XS.x86_64: W: spelling-error %description -l en_US Util -> Til, U til, Until
3 packages and 1 specfiles checked; 0 errors, 2 warnings.
rpmlint is Ok.

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

Resolution: Package APPROVED.

Comment 4 Till Maas 2016-03-29 18:14:24 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/perl-List-SomeUtils-XS

Comment 5 Fedora Update System 2016-03-30 07:47:14 UTC
perl-List-SomeUtils-XS-0.51-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2016-a94872c3eb

Comment 6 Fedora Update System 2016-03-30 22:26:02 UTC
perl-List-SomeUtils-XS-0.51-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-a94872c3eb

Comment 7 Fedora Update System 2016-04-04 17:25:24 UTC
perl-List-SomeUtils-XS-0.51-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.