Bug 1088856
| Summary: | Review Request: perl-MouseX-Getopt - Mouse role for processing command line options | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Paul Howarth <paul> |
| Component: | Package Review | Assignee: | Petr Pisar <ppisar> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | package-review, ppisar |
| Target Milestone: | --- | Flags: | ppisar:
fedora-review+
gwync: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | perl-MouseX-Getopt-0.35-2.fc20 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-04-26 09:18:49 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: | |||
| Bug Depends On: | |||
| Bug Blocks: | 1088741, 1088931 | ||
|
Description
Paul Howarth
2014-04-17 10:25:45 UTC
Paul, there is a new upstream distribution mousex-getopt-0.35 <http://search.cpan.org/dist/mousex-getopt/>. Please use this one. The same author, newer release. (In reply to Petr Pisar from comment #1) > Paul, there is a new upstream distribution mousex-getopt-0.35 > <http://search.cpan.org/dist/mousex-getopt/>. Please use this one. The same > author, newer release. And I'd like to see the package name to match the case: perl-mousex-getopt. This release was done by a different maintainer, using different tooling, and they even switched from ExtUtils::MakeMaker to Module::Build (and got the LICENSE text wrong in the process, as you noticed). Looking at https://rt.cpan.org/Public/Bug/Display.html?id=93593 I believe that this is a hotfix release for that issue and I expect the case/tooling etc. to return to the original maintainer's style for the next release. Given that I'd expect people to look for this module in a package called perl-MouseX-Getopt rather than perl-mousex-getopt, I'd rather stick with the original name. SRPM: http://www.city-fan.org/~paul/extras/perl-MouseX-Getopt/perl-MouseX-Getopt-0.35-1.fc21.src.rpm Spec: http://subversion.city-fan.org/repos/cfo-repo/perl-MouseX-Getopt/branches/fedora/perl-MouseX-Getopt.spec The URL and Source0 is usable. Ok
Notice: The URL points to the original CPAN package.
Source archive is original (SHA-256: 5abe243a1ab05d64562358604de1d31d36994414c5c5eaeac688897129d2f9ae). Ok.
Summary is Ok.
Description verified from README. Ok.
License verified from lib/MouseX/Getopt.pm, README.md.
TODO: The LICENSE file content is wrong. I recommend either to add a comment with a link to the upstream bug, or not to package the file.
No XS code, noarch BuildArch is Ok.
Module::Build >= 0.38 is provided by all Fedoras (META.json:33). Unversioned `perl(Module::Build)' build-time dependency is Ok.
FIX: Require `perl(Mouse::Meta::Attribute)' (lib/MouseX/Getopt/Meta/Attribute.pm:7).
FIX: Build-require `perl(Scalar::Util)' (t/003_inferred_option_type.t:17).
All tests pass. Ok.
$ rpmlint perl-MouseX-Getopt.spec ../SRPMS/perl-MouseX-Getopt-0.35-1.fc21.src.rpm ../RPMS/noarch/perl-MouseX-Getopt-0.35-1.fc21.noarch.rpm
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.
$ rpm -q -lv -p ../RPMS/noarch/perl-MouseX-Getopt-0.35-1.fc21.noarch.rpm
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/doc/perl-MouseX-Getopt
-rw-r--r-- 1 root root 8957 Mar 10 08:02 /usr/share/doc/perl-MouseX-Getopt/Changes
-rw-r--r-- 1 root root 36 Mar 10 08:02 /usr/share/doc/perl-MouseX-Getopt/LICENSE
-rw-r--r-- 1 root root 8761 Mar 10 08:02 /usr/share/doc/perl-MouseX-Getopt/README.md
-r--r--r-- 1 root root 4970 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt.3pm.gz
-r--r--r-- 1 root root 2167 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Basic.3pm.gz
-r--r--r-- 1 root root 2197 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Dashes.3pm.gz
-r--r--r-- 1 root root 2029 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::GLD.3pm.gz
-r--r--r-- 1 root root 2488 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Meta::Attribute.3pm.gz
-r--r--r-- 1 root root 2083 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Meta::Attribute::NoGetopt.3pm.gz
-r--r--r-- 1 root root 2322 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Meta::Attribute::Trait.3pm.gz
-r--r--r-- 1 root root 2105 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Meta::Attribute::Trait::NoGetopt.3pm.gz
-r--r--r-- 1 root root 1973 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::OptionTypeMap.3pm.gz
-r--r--r-- 1 root root 1916 Apr 17 14:50 /usr/share/man/man3/MouseX::Getopt::Strict.3pm.gz
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt
-r--r--r-- 1 root root 8012 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt.pm
-r--r--r-- 1 root root 7572 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Basic.pm
-r--r--r-- 1 root root 1395 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Dashes.pm
-r--r--r-- 1 root root 2377 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/GLD.pm
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute
-r--r--r-- 1 root root 2063 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute.pm
-r--r--r-- 1 root root 1015 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute/NoGetopt.pm
drwxr-xr-x 2 root root 0 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute/Trait
-r--r--r-- 1 root root 2117 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute/Trait.pm
-r--r--r-- 1 root root 942 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Meta/Attribute/Trait/NoGetopt.pm
-r--r--r-- 1 root root 2263 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/OptionTypeMap.pm
-r--r--r-- 1 root root 578 Apr 17 14:50 /usr/share/perl5/vendor_perl/MouseX/Getopt/Strict.pm
File layout and permissions are Ok.
$ rpm -q --requires -p ../RPMS/noarch/perl-MouseX-Getopt-0.35-1.fc21.noarch.rpm | sort | uniq -c
1 perl(Carp)
1 perl(Getopt::Long) >= 2.37
1 perl(Getopt::Long::Descriptive) >= 0.081
1 perl(:MODULE_COMPAT_5.18.2)
1 perl(Mouse)
1 perl(Mouse::Role)
1 perl(Mouse::Util::TypeConstraints)
1 perl(MouseX::Getopt::Meta::Attribute)
1 perl(MouseX::Getopt::Meta::Attribute::NoGetopt)
1 perl(MouseX::Getopt::OptionTypeMap)
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
TODO: Run-require versioned `perl(Mouse) >= 0.64'.
FIX: Run-require `perl(Mouse::Meta::Attribute)' (lib/MouseX/Getopt/Meta/Attribute.pm:7).
$ rpm -q --provides -p ../RPMS/noarch/perl-MouseX-Getopt-0.35-1.fc21.noarch.rpm | sort | uniq -c
1 perl(MouseX::Getopt)
1 perl-MouseX-Getopt = 0.35-1.fc21
1 perl(MouseX::Getopt::Basic)
1 perl(MouseX::Getopt::Dashes)
1 perl(MouseX::Getopt::GLD)
1 perl(MouseX::Getopt::Meta::Attribute)
1 perl(MouseX::Getopt::Meta::Attribute::NoGetopt)
1 perl(MouseX::Getopt::Meta::Attribute::Trait)
1 perl(MouseX::Getopt::Meta::Attribute::Trait::NoGetopt)
1 perl(MouseX::Getopt::OptionTypeMap)
1 perl(MouseX::Getopt::Strict)
Binary provides are Ok.
$ resolvedeps rawhide ../RPMS/noarch/perl-MouseX-Getopt-0.35-1.fc21.noarch.rpm
Binary dependencies resolvable. Ok.
Package builds in F21 (http://koji.fedoraproject.org/koji/taskinfo?taskID=6749437). Ok.
Otherwise the package is in line with Fedora and Perl packaging guidelines.
Please correct all `FIX' issues, consider fixing `TODO' items, and provide new spec file.
Resolution: Package NOT approved.
Review issued addressed in -2: SRPM: http://www.city-fan.org/~paul/extras/perl-MouseX-Getopt/perl-MouseX-Getopt-0.35-2.fc21.src.rpm Spec: http://subversion.city-fan.org/repos/cfo-repo/perl-MouseX-Getopt/branches/fedora/perl-MouseX-Getopt.spec Spec file changes:
--- perl-MouseX-Getopt.spec.old 2014-04-17 13:54:14.000000000 +0200
+++ perl-MouseX-Getopt.spec 2014-04-17 15:56:03.000000000 +0200
@@ -1,9 +1,11 @@
Name: perl-MouseX-Getopt
Summary: Mouse role for processing command line options
Version: 0.35
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPL+ or Artistic
-URL: http://search.cpan.org/dist/MouseX-Getopt/
+# Hotfix release with different case, expected to revert to normal in subsequent releases
+#URL: http://search.cpan.org/dist/MouseX-Getopt/
+URL: http://search.cpan.org/dist/mousex-getopt/
Source0: http://search.cpan.org/CPAN/authors/id/T/TO/TOKUHIROM/mousex-getopt-%{version}.tar.gz
BuildArch: noarch
# Module Build
@@ -12,7 +14,7 @@
BuildRequires: perl(CPAN::Meta::Prereqs)
BuildRequires: perl(File::Basename)
BuildRequires: perl(File::Spec)
-BuildRequires: perl(Module::Build)
+BuildRequires: perl(Module::Build) >= 0.38
BuildRequires: perl(strict)
BuildRequires: perl(utf8)
BuildRequires: perl(warnings)
@@ -21,10 +23,12 @@
BuildRequires: perl(Getopt::Long) >= 2.37
BuildRequires: perl(Getopt::Long::Descriptive) >= 0.081
BuildRequires: perl(Mouse) >= 0.64
+BuildRequires: perl(Mouse::Meta::Attribute)
BuildRequires: perl(Mouse::Role)
BuildRequires: perl(Mouse::Util::TypeConstraints)
# Test Suite
BuildRequires: perl(Mouse::Meta::Class)
+BuildRequires: perl(Scalar::Util)
BuildRequires: perl(Test::Exception) >= 0.21
BuildRequires: perl(Test::More) >= 0.88
BuildRequires: perl(Test::Mouse)
@@ -37,6 +41,11 @@
%endif
# Runtime
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
+Requires: perl(Mouse) >= 0.64
+Requires: perl(Mouse::Meta::Attribute)
+
+# Filter under-specified dependency
+%global __requires_exclude ^perl\\(Mouse\\)$
%description
This is a Mouse role that provides an alternate constructor for creating
@@ -56,7 +65,9 @@
./Build test
%files
-%doc Changes LICENSE README.md
+# Note: malformed LICENSE file in 0.35 not shipped
+# https://github.com/gfx/mousex-getopt/issues/2
+%doc Changes README.md
%{perl_vendorlib}/MouseX/
%{_mandir}/man3/MouseX::Getopt.3*
%{_mandir}/man3/MouseX::Getopt::Basic.3*
@@ -70,6 +81,16 @@
%{_mandir}/man3/MouseX::Getopt::Strict.3*
%changelog
+* Thu Apr 17 2014 Paul Howarth <paul> - 0.35-2
+- Incorporate feedback from package review (#1088856)
+ - Don't ship bogus LICENSE file
+ (https://github.com/gfx/mousex-getopt/issues/2)
+ - Make upstream URL refer to current release
+ - Upstream wants Module::Build ≥ 0.38
+ - BR:/R: perl(Mouse::Meta::Attribute)
+ - BR: perl(Scalar::Util) for test suite
+ - R: perl(Mouse) ≥ 0.64
+
* Thu Apr 17 2014 Paul Howarth <paul> - 0.35-1
- Update to 0.35
- GLD 0.097 no longer defaults to no_ignore_case (CPAN RT#93593)
> TODO: The LICENSE file content is wrong. I recommend either to add a comment
> with a link to the upstream bug, or not to package the file.
-%doc Changes LICENSE README.md
+# Note: malformed LICENSE file in 0.35 not shipped
+# https://github.com/gfx/mousex-getopt/issues/2
+%doc Changes README.md
Ok.
> FIX: Require `perl(Mouse::Meta::Attribute)' (lib/MouseX/Getopt/Meta/Attribute.pm:7).
> FIX: Build-require `perl(Scalar::Util)' (t/003_inferred_option_type.t:17).
+BuildRequires: perl(Mouse::Meta::Attribute)
Ok.
> TODO: Run-require versioned `perl(Mouse) >= 0.64'.
> FIX: Run-require `perl(Mouse::Meta::Attribute)' (lib/MouseX/Getopt/Meta/Attribute.pm:7).
$ rpm -q --requires -p ../RPMS/noarch/perl-MouseX-Getopt-0.35-2.fc21.noarch.rpm | sort | uniq -c
1 perl(Carp)
1 perl(Getopt::Long) >= 2.37
1 perl(Getopt::Long::Descriptive) >= 0.081
1 perl(:MODULE_COMPAT_5.18.2)
1 perl(Mouse) >= 0.64
1 perl(Mouse::Meta::Attribute)
1 perl(Mouse::Role)
1 perl(Mouse::Util::TypeConstraints)
1 perl(MouseX::Getopt::Meta::Attribute)
1 perl(MouseX::Getopt::Meta::Attribute::NoGetopt)
1 perl(MouseX::Getopt::OptionTypeMap)
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.
$ rpmlint perl-MouseX-Getopt.spec ../SRPMS/perl-MouseX-Getopt-0.35-2.fc21.src.rpm ../RPMS/noarch/perl-MouseX-Getopt-0.35-2.fc21.noarch.rpm
2 packages and 1 specfiles checked; 0 errors, 0 warnings.
rpmlint is Ok.
Package builds in F21 (http://koji.fedoraproject.org/koji/taskinfo?taskID=6749940). Ok.
Resolution: Package APPROVED.
New Package SCM Request ======================= Package Name: perl-MouseX-Getopt Short Description: Mouse role for processing command line options Owners: pghmcfc Branches: f19 f20 epel7 InitialCC: perl-sig Thanks for the review Petr. Git done (by process-git-requests). perl-MouseX-Getopt-0.35-2.fc19 has been submitted as an update for Fedora 19. https://admin.fedoraproject.org/updates/perl-MouseX-Getopt-0.35-2.fc19 perl-MouseX-Getopt-0.35-2.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/perl-MouseX-Getopt-0.35-2.fc20 perl-MouseX-Getopt-0.35-2.fc20 has been pushed to the Fedora 20 testing repository. perl-MouseX-Getopt-0.35-2.fc19 has been pushed to the Fedora 19 stable repository. perl-MouseX-Getopt-0.35-2.fc20 has been pushed to the Fedora 20 stable repository. |