Bug 804048

Summary: Review Request: springframework - Spring Java Application Framework
Product: [Fedora] Fedora Reporter: Juan Hernández <juan.hernandez>
Component: Package ReviewAssignee: Andy Grimm <agrimm>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: agrimm, iheim, jgoulding, notting, package-review
Target Milestone: ---Flags: agrimm: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: springframework-3.1.1-2.fc17 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-03-16 15:21:23 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: 804055    

Description Juan Hernández 2012-03-16 11:58:34 UTC
Spec URL:

http://jhernand.fedorapeople.org/rpms/springframework/3.1.1-2/springframework.spec

SRPM URL:

http://jhernand.fedorapeople.org/rpms/springframework/3.1.1-2/springframework-3.1.1-2.fc18.src.rpm

Description:

Spring is a layered Java/J2EE application framework, based on code published in
Expert One-on-One J2EE Design and Development by Rod Johnson (Wrox, 2002).

Koji build:

http://koji.fedoraproject.org/koji/taskinfo?taskID=3900532

Comment 1 Andy Grimm 2012-03-16 14:21:45 UTC
=== REQUIRED ITEMS ===
[!]  Rpmlint output:
springframework.src: W: invalid-url Source0: springframework-3.1.1.tar.gz
springframework-aop.noarch: E: explicit-lib-dependency cglib
springframework-aop.noarch: W: no-documentation
springframework-beans.noarch: E: explicit-lib-dependency cglib
springframework-beans.noarch: W: no-documentation
springframework-context.noarch: E: explicit-lib-dependency cglib
springframework-context.noarch: W: spelling-error %description -l en_US superset -> super set, super-set, supersede
springframework-context.noarch: W: spelling-error %description -l en_US centric -> eccentric, centrist, concentric
springframework-context.noarch: W: no-documentation
springframework-expression.noarch: W: spelling-error %description -l en_US runtime -> run time, run-time, rudiment
springframework-expression.noarch: W: no-documentation
springframework-instrument.noarch: W: spelling-error %description -l en_US runtime -> run time, run-time, rudiment
springframework-instrument.noarch: E: description-line-too-long C The Spring Instrumentation Framework exposes performance and resource utilization
springframework-instrument.noarch: W: no-documentation
springframework-javadoc.noarch: W: spelling-error Summary(en_US) Javadocs -> Java docs, Java-docs, Avocados
springframework-jdbc.noarch: W: no-documentation
springframework-tx.noarch: W: no-documentation
10 packages and 0 specfiles checked; 4 errors, 13 warnings.

* spelling errors and cglib deps are okay. 
* "no-documentation" is okay for modules because they all depend on the base package, which contains the license file.

[x]  Package is named according to the Package Naming Guidelines[1].
[x]  Spec file name must match the base package name, in the format %{name}.spec.
[x]  Package meets the Packaging Guidelines[2].
[x]  Package successfully compiles and builds into binary rpms.
[x]  Buildroot definition is not present
[x]  Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines[3,4].
[x]  License field in the package spec file matches the actual license.
License type: ASL 2.0
[x]  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]  All independent sub-packages have license of their own
[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.
Git tarball, unpacked sources match
[x]  All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines[5].
[x]  Package must own all directories that it creates or must require other packages for directories it uses.
[x]  Package does not contain duplicates in %files.
[x]  File sections do not contain %defattr(-,root,root,-) unless changed with good reason
[x]  Permissions on files are set properly.
[x]  Package does NOT have a %clean section which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). (not needed anymore)
[x]  Package consistently uses macros (no %{buildroot} and $RPM_BUILD_ROOT mixing)
[x]  Package contains code, or permissable content.
[x]  Fully versioned dependency in subpackages, if present.
[-]  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.
[x]  Javadoc documentation files are generated and included in -javadoc subpackage
[x]  Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlinks)
[x]  Packages have proper BuildRequires/Requires on jpackage-utils
[x]  Javadoc subpackages have Require: jpackage-utils
[x]  Package uses %global not %define
[x]  If package uses tarball from VCS include comment how to re-create that tarball (svn export URL, git clone URL, ...)
[x]  If source tarball includes bundled jar/class files these need to be removed prior to building
[x]  All filenames in rpm packages must be valid UTF-8.
[x]  Jar files are installed to %{_javadir}/%{name}.jar (see [6] for details)
[x]  If package contains pom.xml files install it (including depmaps) even when building with ant
[x]  pom files has correct add_maven_depmap

=== Maven ===
[x]  Use %{_mavenpomdir} macro for placing pom files instead of %{_datadir}/maven2/poms
[x]  If package uses "-Dmaven.test.skip=true" explain why it was needed in a comment
[-]  If package uses custom depmap "-Dmaven.local.depmap.file=*" explain why it's needed in a comment
[x]  Package DOES NOT use %update_maven_depmap in %post/%postun
[x]  Packages DOES NOT have Requires(post) and Requires(postun) on jpackage-utils for %update_maven_depmap macro

=== Other suggestions ===
[x]  If possible use upstream build method (maven/ant/javac)
[x]  Avoid having BuildRequires on exact NVR unless necessary
[x]  Package has BuildArch: noarch (if possible)
[x]  Latest version is packaged.
[x]  Reviewer should test that the package builds in mock.
Tested on: F17 x86_64

=== Final Notes ===
1.  The comment on the groovy artifactId could be made more clear.  The real issue appear to be that our groovy package does not have a mapping for the "groovy-all" artifactId.  ( I'm not sure what distinguishes "groovy.jar" from "groovy-all.jar", though, so it may be that the groovy package build needs to change to produce groovy-all.jar as well. )

I see no blockers here.  And by the way, I really like how you cleaned up the %install section; your shell scripting is better than mine.  :-)

================
*** APPROVED ***
================

Comment 2 Juan Hernández 2012-03-16 14:33:02 UTC
New Package SCM Request
=======================
Package Name: springframework
Short Description: Spring Java Application Framework
Owners: jhernand
Branches: f17
InitialCC: arg

Comment 3 Gwyn Ciesla 2012-03-16 14:46:58 UTC
Git done (by process-git-requests).

Comment 4 Fedora Update System 2012-03-26 16:16:13 UTC
springframework-3.1.1-2.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/springframework-3.1.1-2.fc17

Comment 5 Fedora Update System 2012-04-12 03:18:11 UTC
springframework-3.1.1-2.fc17 has been pushed to the Fedora 17 stable repository.