Bug 567542

Summary: Review Request: perl-App-cpanminus - Get, unpack, build and install modules from CPAN
Product: [Fedora] Fedora Reporter: Marcela Mašláňová <mmaslano>
Component: Package ReviewAssignee: Emmanuel Seyman <emmanuel>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: cweyl, emmanuel, fedora-package-review, notting, reidrac
Target Milestone: ---Flags: emmanuel: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-03-18 07:44:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Marcela Mašláňová 2010-02-23 08:24:12 UTC
Spec URL: http://mmaslano.fedorapeople.org/review/perl-App-cpanminus.spec
SRPM URL: http://mmaslano.fedorapeople.org/review/perl-App-cpanminus-0.09-1.fc12.src.rpm
Description: cpanminus is a script to get, unpack, build and install modules from CPAN. Its catch? Deps-free, zero-conf, standalone ~350 LOC script (i.e. hackable) and requires 8MB of RAM. See below for its cons.

Comment 1 Juan J. Martínez 2010-03-01 23:27:37 UTC
Informal review (non-sponsor):

MUST:

* "rpmlint must be run on every package. The output should be posted in the review" - Actually it complains about some spelling in the description.
* "The spec file for the package MUST be legible." - Review the description (because previous point and "See below for its cons" -- below what?).

Everything else looks OK for me.

Comment 2 Marcela Mašláňová 2010-03-02 07:12:09 UTC
Also new version was released.
http://mmaslano.fedorapeople.org/review/perl-App-cpanminus-0.9911-1.fc12.src.rpm

Comment 3 Emmanuel Seyman 2010-03-14 13:36:42 UTC
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format
%{name}.spec.
 [x] Package meets the Packaging Guidelines including the Perl specific items
 [x] Package successfully compiles and builds into binary rpms on at least one
supported architecture.
     Tested on: dist-f14
http://koji.fedoraproject.org/koji/taskinfo?taskID=2051864

 [x] Rpmlint output:
perl-App-cpanminus.src: W: spelling-error %description -l en_US Deps -> Reps, Depp, Peps
perl-App-cpanminus.src: W: spelling-error %description -l en_US conf -> con, cone, cons
perl-App-cpanminus.src: W: spelling-error %description -l en_US hackable -> hack able, hack-able, hackle
perl-App-cpanminus.noarch: W: spelling-error %description -l en_US Deps -> Reps, Depp, Peps
perl-App-cpanminus.noarch: W: spelling-error %description -l en_US conf -> con, cone, cons
perl-App-cpanminus.noarch: W: spelling-error %description -l en_US hackable -> hack able, hack-able, hackle
2 packages and 1 specfiles checked; 0 errors, 6 warnings.

 [x] Package is not relocatable.
 [x] Buildroot is correct
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

 [x] Package is licensed with an open-source compatible license and meets other
legal requirements as defined in the legal section of Packaging Guidelines.
 [x] License field in the package spec file matches the actual license.
     License type: GPL+ or Artistic
 [-] If (and only if) the source package includes the text of the license(s) in
its own file, then that file, containing the text of the license(s) for the
package is included in %doc.
 [x] Spec file is legible and written in American English.
 [x] Sources used to build the package matches the upstream source, as provided
in the spec URL.
c9b0f10846d2ecf5a2d85f60e540ff71  App-cpanminus-0.9911.tar.gz
 [x] Package is not known to require ExcludeArch
 [x] All build dependencies are listed in BuildRequires, except for any that
are listed in the exceptions section of Packaging Guidelines.
 [-] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package must own all directories that it creates.
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package has a %clean section, which contains rm -fR $RPM_BUILD_ROOT.
 [x] Package consistently uses macros.
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [-] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [-] Package requires pkgconfig, if .pc files are present.
 [-] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [-] Package does not contain any libtool archives (.la).
 [-] Package contains a properly installed %{name}.desktop file if it is a GUI
application.
 [x] Package does not own files or directories owned by other packages.

=== SUGGESTED ITEMS ===
 [!] Latest version is packaged.
Then again, given the number of releases upstream has done this month alone,
this seems impossible to do.

 [x] Package does not include license text files separate from upstream.
 [-] Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on: rawhide.x86_64
 [x] Package should compile and build into binary rpms on all supported
architectures.
     Tested on: rawhide.x86_64
 [-] Package functions as described.
 [-] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files is correct.
 [-] File based requires are sane.
 [x] %check is present and the tests pass
No tests defined for App::cpanminus extension.

APPROVED.

Comment 4 Chris Weyl 2010-03-15 04:12:34 UTC
One thing I was going to suggest, is that it might make sense to break /usr/bin/cpanm out into its own wholly-owned subpackage "cpanm", much like perl-App-Asciio has asciio, perl-App-Nopaste has nopaste, etc.  This would allow users to easily differentiate between something that looks like "just another library", as well as to have a sensible entry in comps for it.

Comment 5 Marcela Mašláňová 2010-03-15 07:23:31 UTC
(In reply to comment #4)
> One thing I was going to suggest, is that it might make sense to break
> /usr/bin/cpanm out into its own wholly-owned subpackage "cpanm", much like
> perl-App-Asciio has asciio, perl-App-Nopaste has nopaste, etc.  This would
> allow users to easily differentiate between something that looks like "just
> another library", as well as to have a sensible entry in comps for it.    

I solved it by 'Provides: cpanminus'. Some reviewers won't accept "useles" sub-package. I'm personally not sure about this split either.

Comment 6 Marcela Mašláňová 2010-03-15 07:24:46 UTC
New Package CVS Request
=======================
Package Name: perl-App-cpanminus
Short Description: Get, unpack, build and install modules from CPAN
Owners: mmaslano
Branches: F-13
InitialCC: perl-sig

Comment 7 Chris Weyl 2010-03-15 16:49:47 UTC
(In reply to comment #5)
> I solved it by 'Provides: cpanminus'. Some reviewers won't accept "useles"
> sub-package. I'm personally not sure about this split either.    

And that should work fine when installing at a yum commandline, but can you place a bit of rpm metadata in comps?  My thinking is that it's not "useless" for a couple reasons: comps, recognition, and a pattern of history where this has been done (everything from perltidy which packages Perl::Tidy but is named "perltidy" to the more recent main/sub splits).

If you were packaging a binary program called, say, baz, you wouldn't call it libbaz, would you?

Anyways.  This is probably better discussed outside of bugzilla :)

Comment 8 Chris Weyl 2010-03-15 16:55:05 UTC
...and on a more relevant note, any chance we can have this in F-11, F-12 too?

Comment 9 Tom "spot" Callaway 2010-03-15 21:43:31 UTC
CVS done (by process-cvs-requests.py).

Comment 10 Marcela Mašláňová 2010-03-16 08:10:49 UTC
(In reply to comment #8)
> ...and on a more relevant note, any chance we can have this in F-11, F-12 too?    

Ok, if you need it...

Package Change Request
======================
Package Name: perl-App-cpanminus
New Branches: F-11 F-12
Owners: mmaslano

Comment 11 Kevin Fenzi 2010-03-17 18:19:49 UTC
cvs done.