Bug 1120297

Summary: Review Request: perl-Inline-Filters - Common source code filters for Inline modules
Product: [Fedora] Fedora Reporter: Petr Šabata <psabata>
Component: Package ReviewAssignee: Petr Pisar <ppisar>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: ddick, package-review, ppisar, tcallawa
Target Milestone: ---Flags: ppisar: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Fixed In Version: perl-Inline-Filters-0.14-1.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-12 09:05:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 1120293    
Bug Blocks:    

Description Petr Šabata 2014-07-16 16:34:09 UTC
Spec URL: http://psabata.fedorapeople.org/pkgs/perl-Inline-Filters/perl-Inline-Filters.spec
SRPM URL: http://psabata.fedorapeople.org/pkgs/perl-Inline-Filters/perl-Inline-Filters-0.14-1.fc20.src.rpm
Inline::Filters provide common source code filters to Inline language
Fedora Account System Username: psabata

Comment 1 David Dick 2014-07-23 21:29:11 UTC
I'll take this one.  Petr, can you build perl-Inline-C? It'll make the review easier.

Comment 2 David Dick 2014-07-23 21:43:47 UTC
Disregard my last.

Comment 3 David Dick 2014-08-01 23:35:15 UTC
I'm going to jump out of this review for the time being.

Comment 4 Petr Pisar 2014-08-04 14:28:43 UTC
URL and Source0 are usable. Ok.
Source archive is original (SHA-256: cb7af9300a851afaf3c8e1d871248d53eb02106b0d9d838350e43ce14b4e7b09). Ok.

FATAL: The license statements contradict. LICENSE states (Artistic or GPL+), Filters.pod stated "as Perl" but links to (Artistic) only, and README states "All Rights Reserved.". While I believe upstream wants (Artistic or GPL+), this is highly confusing and you have to clarify it with upstream anr/or Fedora legal departement.

Hint: Upstream has released 0.15 version where the changelog promises improvements in the legal texts.

Comment 5 Tom "spot" Callaway 2014-08-04 18:09:41 UTC
All Rights Reserved is a legal no-op. It means nothing, just ignore it.

Despite being a bit confusing, this is clearly meant to be under the same terms as Perl itself, which is "Artistic or GPL+" and is fine for Fedora.

Lifting FE-Legal.

Comment 6 Petr Pisar 2014-08-05 08:23:29 UTC
Thanks for clarification. I reported the link botch as <https://rt.cpan.org/Public/Bug/Display.html?id=97755> to the upstream.

Comment 7 Petr Pisar 2014-08-05 08:45:20 UTC
License verified from LICENSE and Filters.pod. Ok.
Summary verified from Filters.pod. Ok.
Description verified from Filters.pod. Ok.
No XS code, noarch BuildArch is Ok.
All BuildRequires are specified. Ok.

FIX: Tests do not pass because Inline::C optionally requires Parse::RecDescent:

PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/Preprocess.t .............. This innvocation of Inline requires the Parse::RecDescent module.
Can't locate Parse/RecDescent.pm in @INC (you may need to install the Parse::RecDescent module) (@INC contains: /home/test/rpmbuild/BUILD/Inline-Filters-0.14/_Inline/lib /home/test/rpmbuild/BUILD/Inline-Filters-0.14/blib/lib /home/test/rpmbuild/BUILD/Inline-Filters-0.14/blib/arch /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /usr/share/perl5/vendor_perl/Inline/C/ParseRecDescent.pm line 16.

 at /usr/share/perl5/vendor_perl/Inline/C.pm line 389.
BEGIN failed--compilation aborted at t/Preprocess.t line 2.
t/Preprocess.t .............. Dubious, test returned 2 (wstat 512, 0x200)
Failed 1/1 subtests

Comment 8 Petr Šabata 2014-08-05 12:45:23 UTC
Added the dependency with a comment.  Links updated.

Comment 9 Petr Pisar 2014-08-05 14:32:02 UTC
Spec file changes:

--- perl-Inline-Filters.spec.old        2014-07-17 16:26:37.000000000 +0200
+++ perl-Inline-Filters.spec    2014-08-05 14:44:17.000000000 +0200
@@ -14,10 +14,13 @@
 BuildRequires:  perl(File::Spec)
 BuildRequires:  perl(Inline)
 BuildRequires:  perl(Inline::C)
+# Required indirectly, optional Inline dependency
+BuildRequires:  perl(Parse::RecDescent)
 BuildRequires:  perl(strict)
 BuildRequires:  perl(Test::More)
 BuildRequires:  perl(warnings)
 Requires:       perl(:MODULE_COMPAT_%(eval "$(perl -V:version)"; echo $version))
+Requires:       perl(Parse::RecDescent)
 Inline::Filters provide common source code filters to Inline language

> FIX: Tests do not pass because Inline::C optionally requires Parse::RecDescent
+# Required indirectly, optional Inline dependency
+BuildRequires:  perl(Parse::RecDescent)

All tests pass. Ok.

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

$ rpm -q -lv -p ../RPMS/noarch/perl-Inline-Filters-0.14-1.fc22.noarch.rpm 
drwxr-xr-x    2 root    root                        0 Aug  5 16:24 /usr/share/doc/perl-Inline-Filters
-rw-r--r--    1 root    root                      749 Apr  1 23:20 /usr/share/doc/perl-Inline-Filters/Changes
-rw-r--r--    1 root    root                    18236 Jan  6  2014 /usr/share/doc/perl-Inline-Filters/LICENSE
-rw-r--r--    1 root    root                     1752 Jan  6  2014 /usr/share/doc/perl-Inline-Filters/README
-rw-r--r--    1 root    root                     4131 Aug  5 16:24 /usr/share/man/man3/Inline::Filters.3pm.gz
drwxr-xr-x    2 root    root                        0 Aug  5 16:24 /usr/share/perl5/vendor_perl/Inline
-rw-r--r--    1 root    root                     4261 Apr  1 23:15 /usr/share/perl5/vendor_perl/Inline/Filters.pm
-rw-r--r--    1 root    root                     5063 Mar 28 16:29 /usr/share/perl5/vendor_perl/Inline/Filters.pod
File layout and permissions are Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-Inline-Filters-0.14-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl(:MODULE_COMPAT_5.18.2)
      1 perl(Config)
      1 perl(File::Spec)
      1 perl(Parse::RecDescent)
      1 perl(strict)
      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
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/noarch/perl-Inline-Filters-0.14-1.fc22.noarch.rpm | sort -f | uniq -c
      1 perl(Inline::Filters) = 0.14
      1 perl-Inline-Filters = 0.14-1.fc22
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-Inline-Filters-0.14-1.fc22.noarch.rpm 
Binary dependencies resolvable. Ok.

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

Package is in line with Fedora and Perl packaging guidelines.

Resolution: Package APPROVED.

Comment 10 Petr Šabata 2014-08-11 14:33:40 UTC
New Package SCM Request
Package Name: perl-Inline-Filters
Short Description: Common source code filters for Inline modules
Upstream URL: http://search.cpan.org/dist/Inline-Filters/
Owners: psabata jplesnik ppisar
Branches: f21
InitialCC: perl-sig

Comment 11 Gwyn Ciesla 2014-08-11 15:43:10 UTC
Git done (by process-git-requests).

Comment 12 Petr Šabata 2014-08-12 09:05:33 UTC
Thank you both.

Comment 13 Petr Pisar 2014-08-12 10:26:50 UTC
Package Change Request
Package Name: perl-Inline-Filters
Branches: f21 master
InitialCC: perl-sig

The package database is missing the InialCC records again. Please add them and fix your tool.

Comment 14 Gwyn Ciesla 2014-08-12 12:09:18 UTC