Bug 628280 - Review Request: apache-commons-collections - rename of jakarta-commons-collections
Summary: Review Request: apache-commons-collections - rename of jakarta-commons-collec...
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Alexander Kurtakov
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: JakartaCommonsRename
TreeView+ depends on / blocked
Reported: 2010-08-29 06:08 UTC by carl
Modified: 2010-11-03 17:42 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2010-11-03 17:42:17 UTC
akurtako: fedora-review+
kevin: fedora-cvs+

Attachments (Terms of Use)

Description carl 2010-08-29 06:08:21 UTC
!!! NOTE: This is a re-review because the package has been renamed from

Spec URL: http://carlwithak.info/apache-commons-collections.spec
SRPM URL: http://carlwithak.info/apache-commons-collections-3.2.1-4.fc13.src.rpm
Description: Commons-Collections seek to build upon the JDK classes by providing new interfaces, implementations and utilities.

Comment 1 Alexander Kurtakov 2010-08-29 11:43:58 UTC
I'll do this one.

Comment 2 Alexander Kurtakov 2010-08-29 12:06:59 UTC
First impressions:
* You don't need Source1 ... Source5 and %patch1. These are not needed nowadays anymore we have a proper maven environment.
* You can also remove the following from the %build section:
export DEPCAT=$(pwd)/commons-collections-3.2-depcat.new.xml
echo '<?xml version="1.0" standalone="yes"?>' > $DEPCAT
echo '<depset>' >> $DEPCAT
for p in $(find . -name project.xml); do
    pushd $(dirname $p)
    /usr/bin/saxon project.xml %{SOURCE1} >> $DEPCAT
echo >> $DEPCAT
echo '</depset>' >> $DEPCAT
/usr/bin/saxon $DEPCAT %{SOURCE2} > commons-collections-3.2-depmap.new.xml

for p in $(find . -name project.xml); do
    pushd $(dirname $p)
    cp project.xml project.xml.orig
    /usr/bin/saxon -o project.xml project.xml.orig %{SOURCE3} map=%{SOURCE4}

It was needed for maven1 build which is something we don't do in Fedora
* rpmlint gives:
- apache-commons-collections-testframework-javadoc.noarch: W: non-standard-group Development/Documentation
Should be Documentation
- apache-commons-collections-testframework.noarch: W: non-standard-group Development/Testing
Maybe Development/Tools
- apache-commons-collections-testframework.noarch: W: no-documentation
Not a real problem.
- apache-commons-collections-testframework.noarch: W: empty-%post
- apache-commons-collections-testframework.noarch: W: empty-%postun
When you don't have what to put in these sections just remove them.
- apache-commons-collections.noarch: W: non-standard-group Development/Libraries/Java
Should be Development/Libraries
- apache-commons-collections.noarch: W: non-conffile-in-etc /etc/maven/fragments/apache-commons-collections
Not a problem
- apache-commons-collections-javadoc.noarch: W: non-standard-group Development/Documentation
Should be Documentation
- apache-commons-collections-tomcat5.noarch: W: non-standard-group Development/Libraries/Java
should be Development/Libraries
- apache-commons-collections-tomcat5.noarch: W: empty-%post
- apache-commons-collections-tomcat5.noarch: W: empty-%postun
Remove empty sections like this.

* file permissions is %defattr(0644,root,root,0755) but the preferred way is 
%defattr(-,root,root,-) so when/if defaults changes they will be picked up just by a rebuild

Once these issues are fixed I'll do the official review.

Comment 3 carl 2010-08-30 11:19:37 UTC
Spec URL: http://carlwithak.info/apache-commons-collections.spec

* Remove source and patches no longer needed for Maven
* Fix non-standard groups and remove empty sections
* Fix file permissions

Comment 4 Alexander Kurtakov 2010-08-31 05:41:57 UTC
OK: rpmlint must be run on every package. Output:
apache-commons-collections-testframework.noarch: W: no-documentation
apache-commons-collections.noarch: W: non-conffile-in-etc /etc/maven/fragments/apache-commons-collections
Not a problem
OK: The package must be named according to the Package Naming Guidelines .
OK: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption. 
OK: The package must meet the Packaging Guidelines .
OK: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines .
OK: The License field in the package spec file must match the actual license.
OK: 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 must be included in %doc.
OK: The spec file must be written in American English.
OK: The spec file for the package MUST be legible.
OK: The sources used to build the package must match the upstream source, as provided in the spec URL. 
OK: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
OK: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines ; inclusion of those as BuildRequires is optional.
OK: Packages must NOT bundle copies of system libraries.
OK: A package must own all directories that it creates. 
OK: A Fedora package must not list a file more than once in the spec file's %files listings. 
OK: Permissions on files must be set properly. Executables should be set with executable permissions, for example. 
OK: Each package must consistently use macros.
OK: The package must contain code, or permissable content.
OK: Large documentation files must go in a -doc subpackage.
OK: If a package includes something as %doc, it must not affect the runtime of the application.
FIXIT: Packages must not own files or directories already owned by other packages. 
You are using 
%{_mavendepmapfragdir} which are owned by jpackage-utils, you should use them like
%{_mavendepmapfragdir}/* to list only the files not the directories
Or even better:

OK: All filenames in rpm packages must be valid UTF-8. [24]

Not a problem but it would be nice if you use the new maven plugins names, e.g.
maven2-plugin-antrun is now called maven-antrun-plugin

Other than the small directory owning problem everything else is good.

Comment 5 carl 2010-08-31 12:15:14 UTC
Spec URL: http://carlwithak.info/apache-commons-collections.spec

* Fixed package to own files, not parent directory

Comment 6 Alexander Kurtakov 2010-08-31 12:58:45 UTC
This package is APPROVED.

Comment 7 Alexander Kurtakov 2010-08-31 13:09:59 UTC
Lifting FE-NEEDSPONSOR. I've sponsored carl.

Comment 8 carl 2010-09-02 11:48:06 UTC
New Package SCM Request
Package Name: apache-commons-collections
Short Description: Commons-Collections seek to build upon the JDK classes by
providing new interfaces, implementations and utilities.
Owners: carl
Branches: f14

Comment 9 Kevin Fenzi 2010-09-02 21:33:36 UTC
Git done (by process-git-requests).

Comment 10 Mat Booth 2010-09-22 21:54:51 UTC
Hi guys,

When you import this into source control, it should probably be built for F15 (current rawhide) only. It's fairly late to be obsoleting F14 packages like this one now.

Don't forget to raise a rel-eng ticket to get the old jakarta-commons-collections package blocked in F15+ collections: https://fedorahosted.org/rel-eng/wiki


Comment 11 Alexander Kurtakov 2010-11-03 17:42:17 UTC
Imported, built and rel-eng ticket filled https://fedorahosted.org/rel-eng/ticket/4244

Note You need to log in before you can comment on or make changes to this bug.