Bug 1382926

Summary: Review Request: perl-HTTP-MultiPartParser - HTTP MultiPart Parser
Product: [Fedora] Fedora Reporter: Ralf Corsepius <rc040203>
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: ---Keywords: Reopened
Target Release: ---Flags: ppisar: fedora-review+
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-07 23:24:41 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 1382928    

Description Ralf Corsepius 2016-10-08 11:47:24 UTC
Spec URL: https://corsepiu.fedorapeople.org/packages/perl-HTTP-MultiPartParser.spec
SRPM URL: https://corsepiu.fedorapeople.org/packages/perl-HTTP-MultiPartParser-0.01-1.fc26.src.rpm
Description:
This class provides a low-level API for processing MultiPart MIME data
streams conforming to MultiPart types as defined in RFC 2616.

Fedora Account System Username:corsepiu

Comment 1 Petr Pisar 2016-10-26 13:23:24 UTC
URL and Source0 addresses are usable. Ok.
Source archive (SHA-256: f834cf093b16d4ba813ccd8e72c44b759e50a23726bb50004da2b7a3cca5a0aa) is original. Ok.
Summary verified from lib/HTTP/MultiPartParser.pod. Ok.
Description verified from lib/HTTP/MultiPartParser.pod. Ok.
License verified from README, lib/HTTP/MultiPartParser.pod. Ok.
inc/Module/Install/Can.pm contains XS code but is not used, noarch BuildArch is Ok.

FIX: Build-requires `make' (perl-HTTP-MultiPartParser.spec:32).

FIX: Build-require `perl(Cwd)' (t/030_basic.t:11).
FIX: Build-require `perl(Data::Dumper)' (t/lib/PAML.pm:8).
FIX: Build-require `perl(Exporter)' (t/lib/PAML.pm:17).
FIX: Build-require `perl(FindBin)' (t/030_basic.t:6).
FIX: Build-require `perl(IO::File)' (t/lib/PAML.pm:9).
FIX: Build-require `perl(lib)' (t/030_basic.t:7).
FIX: Build-require `perl(vars)' (t/035_headers.t:28).

FIX: Either unbundle the ./inc files and build-require the Module::Install* modules whose functions are called from Makefile.PL or build-require dependencies of the bundled code (`perl(File::Find)' in inc/Module/Install.pm:23, `perl(File::Path)' im inc/Module/Install.pm:24 etc.).

TODO: Package eg/example.pl as a documentation.

All tests pass. Ok.

$ rpmlint perl-HTTP-MultiPartParser.spec ../SRPMS/perl-HTTP-MultiPartParser-0.01-1.fc26.src.rpm ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-1.fc26.noarch.rpm 
2 packages and 1 specfiles checked; 0 errors, 0 warnings.

$ rpm -q -lv -p ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-1.fc26.noarch.rpm 
drwxr-xr-x    2 root    root                        0 Oct 26 15:08 /usr/share/doc/perl-HTTP-MultiPartParser
-rw-r--r--    1 root    root                       42 Oct 23  2013 /usr/share/doc/perl-HTTP-MultiPartParser/Changes
-rw-r--r--    1 root    root                     4260 Oct 23  2013 /usr/share/doc/perl-HTTP-MultiPartParser/README
-rw-r--r--    1 root    root                     2937 Oct 26 15:08 /usr/share/man/man3/HTTP::MultiPartParser.3pm.gz
drwxr-xr-x    2 root    root                        0 Oct 26 15:08 /usr/share/perl5/vendor_perl/HTTP
-rw-r--r--    1 root    root                     8285 Oct 22  2013 /usr/share/perl5/vendor_perl/HTTP/MultiPartParser.pm
-rw-r--r--    1 root    root                     4064 Oct 23  2013 /usr/share/perl5/vendor_perl/HTTP/MultiPartParser.pod
File permissions and layout is Ok.

$ rpm -q --requires -p ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-1.fc26.noarch.rpm | sort -f | uniq -c
      1 perl(:MODULE_COMPAT_5.24.0)
      1 perl(Carp)
      1 perl(Scalar::Util)
      1 perl(strict)
      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
Binary requires are Ok.

$ rpm -q --provides -p ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-1.fc26.noarch.rpm | sort -f | uniq -c
      1 perl(HTTP::MultiPartParser) = 0.01
      1 perl-HTTP-MultiPartParser = 0.01-1.fc26
Binary provides are Ok.

$ resolvedeps rawhide ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-1.fc26.noarch.rpm 
Binary dependencies resolvable. Ok.

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

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

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

Comment 3 Petr Pisar 2016-10-27 06:43:56 UTC
Spec file changes:

--- perl-HTTP-MultiPartParser.spec.old  2016-10-08 13:44:41.000000000 +0200
+++ perl-HTTP-MultiPartParser.spec      2016-10-26 19:25:39.000000000 +0200
@@ -1,6 +1,6 @@
 Name:           perl-HTTP-MultiPartParser
 Version:        0.01
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        HTTP MultiPart Parser
 License:        GPL+ or Artistic
 Group:          Development/Libraries
@@ -10,14 +10,28 @@
 BuildArch:      noarch
 BuildRequires:  perl-generators
 BuildRequires:  perl >= 1:5.8.1
+
 BuildRequires:  perl(Carp)
+BuildRequires:  perl(Cwd)
+BuildRequires:  perl(Data::Dumper)
+BuildRequires:  perl(Exporter)
 BuildRequires:  perl(ExtUtils::MakeMaker)
+BuildRequires:  perl(FindBin)
+BuildRequires:  perl(IO::File)
 BuildRequires:  perl(Scalar::Util)
-BuildRequires:  perl(Test::Deep)
 BuildRequires:  perl(Test::More) >= 0.88
+BuildRequires:  perl(Test::Deep)
+
+BuildRequires:  perl(lib)
 BuildRequires:  perl(strict)
+BuildRequires:  perl(vars)
 BuildRequires:  perl(warnings)
 
+BuildRequires:  perl(inc::Module::Install)
+BuildRequires:  perl(Module::Install::ReadmeFromPod)
+
+BuildRequires:  %{__make}
+
 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 
 %description
@@ -26,24 +40,28 @@
 
 %prep
 %setup -q -n HTTP-MultiPartParser-%{version}
+%{__rm} -rf inc
 
 %build
 %{__perl} Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1
-make %{?_smp_mflags}
+%{__make} %{?_smp_mflags}
 
 %install
-make pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
+%{__make} pure_install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
 
 %{_fixperms} $RPM_BUILD_ROOT/*
 
 %check
-make test
+%{__make} test
 
 %files
-%doc Changes README
+%doc Changes README eg/
 %{perl_vendorlib}/*
 %{_mandir}/man3/*
 
 %changelog
+* Wed Oct 26 2016 Ralf Corsépius <corsepiu> - 0.01-2
+- Reflect feedback from review.
+
 * Sat Oct 08 2016 Ralf Corsépius <corsepiu> - 0.01-1
 - Initial Fedora package.


> FIX: Build-requires `make' (perl-HTTP-MultiPartParser.spec:32).
-make %{?_smp_mflags}
+%{__make} %{?_smp_mflags}

Now when you call macro instead of the command, I think is a problem of the rpm now.

> FIX: Build-require `perl(Cwd)' (t/030_basic.t:11).
+BuildRequires:  perl(Cwd)
Ok.

> FIX: Build-require `perl(Data::Dumper)' (t/lib/PAML.pm:8).
+BuildRequires:  perl(Data::Dumper)
Ok.

> FIX: Build-require `perl(Exporter)' (t/lib/PAML.pm:17).
+BuildRequires:  perl(Exporter)
Ok.

> FIX: Build-require `perl(FindBin)' (t/030_basic.t:6).
+BuildRequires:  perl(FindBin)
Ok.

> FIX: Build-require `perl(IO::File)' (t/lib/PAML.pm:9).
+BuildRequires:  perl(IO::File)
Ok.

> FIX: Build-require `perl(lib)' (t/030_basic.t:7).
+BuildRequires:  perl(lib)
Ok.

> FIX: Build-require `perl(vars)' (t/035_headers.t:28).
+BuildRequires:  perl(vars)
Ok.

> FIX: Either unbundle the ./inc files and build-require the Module::Install*
> modules whose functions are called from Makefile.PL or build-require
> dependencies of the bundled code (`perl(File::Find)' in
> inc/Module/Install.pm:23, `perl(File::Path)' im inc/Module/Install.pm:24
> etc.).
+BuildRequires:  perl(inc::Module::Install)
+BuildRequires:  perl(Module::Install::ReadmeFromPod)
[...]
+%{__rm} -rf inc

TODO: I recommend to build-require these modules in addition:

perl(Module::Install::Metadata) (Makefile.PL:5)
perl(Module::Install::WriteAll) (Makefile.PL:17)

> TODO: Package eg/example.pl as a documentation.
-%doc Changes README
+%doc Changes README eg/
Ok.

$ rpmlint perl-HTTP-MultiPartParser.spec ../SRPMS/perl-HTTP-MultiPartParser-0.01-2.fc26.src.rpm ../RPMS/noarch/perl-HTTP-MultiPartParser-0.01-2.fc26.noarch.rpm 
2 packages and 1 specfiles checked; 0 errors, 0 warnings.

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

Please consider fixing the `TODO' items before building this package.
Resolution: Package APPROVED.

Comment 4 Gwyn Ciesla 2016-10-28 16:50:05 UTC
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/perl-HTTP-MultiPartParser

Comment 5 Fedora Update System 2016-10-30 19:23:53 UTC
perl-HTTP-MultiPartParser-0.01-2.fc23 has been pushed to the Fedora 23 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-01961f016b

Comment 6 Fedora Update System 2016-10-30 20:21:23 UTC
perl-HTTP-MultiPartParser-0.01-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-0ae514da86

Comment 7 Fedora Update System 2016-10-31 10:21:43 UTC
perl-HTTP-MultiPartParser-0.01-2.fc25 has been pushed to the Fedora 25 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-b4804bea13

Comment 8 Fedora Update System 2016-11-03 18:22:24 UTC
perl-HTTP-MultiPartParser-0.01-2.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 9 Fedora Update System 2016-11-07 23:24:41 UTC
perl-HTTP-MultiPartParser-0.01-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2016-11-08 22:53:06 UTC
perl-HTTP-MultiPartParser-0.01-2.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2016-11-19 21:03:51 UTC
perl-HTTP-MultiPartParser-0.01-2.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.