Bug 907909

Summary: Review Request: glassfish-el-api - a package of javax.el-api
Product: [Fedora] Fedora Reporter: David Xie <davidx>
Component: Package ReviewAssignee: Stanislav Ochotnicky <sochotni>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: rawhideCC: akurtako, davidx, mizdebsk, notting, package-review, sochotni
Target Milestone: ---Flags: sochotni: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-03-01 15:23:45 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: 916687    

Description David Xie 2013-02-05 14:10:22 UTC
Spec URL: https://docs.google.com/file/d/0B8pqdRnN8a7-SkEzTGwzYkZPVWM/edit?usp=sharing
SRPM URL: https://docs.google.com/file/d/0B8pqdRnN8a7-N2YySlM5MGZqQjQ/edit?usp=sharing
Description: This project provides an implementation of the Expression Language (EL). The main goals are:
 * Improves current implementation: bug fixes and performance improvements
 * Provides API for use by other tools, such as Netbeans
Fedora Account System Username: davidx
Hi this is my first package and I need a sponsor. I have successfully made a few patches before.

Here's the koji task of this package: http://koji.fedoraproject.org/koji/taskinfo?taskID=4929990

Comment 1 Alexander Kurtakov 2013-02-05 14:47:36 UTC
glassfish-el-api is the right name according to the guidelines http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Separators . This will also make it follow the same naming scheme as the other glassfish packages.
 As a minimum Source0 should be a full url or instructions/script to recreate the tarball should be given, otherwise noone knows where this comes from nor can verify its content.

Comment 2 Stanislav Ochotnicky 2013-02-05 14:51:48 UTC
I am going to review this (and sponsor you in the process). First things first...the file links you use should be available publicly without any additional accounts (google or otherwise). Also, the spec file should be readable directly in the browser (as in I click and see the raw file of spec without having to download it). It greatly simplifies initial review process because tools like fedora-review do not work (and can not work) with things like google drive. 


However I understand that getting some space on a server might not be that easy if you are not a Fedora contributor already with access to fedorapeople.org. With that said I'll continue the review as is :-)

Comment 4 Stanislav Ochotnicky 2013-02-27 14:31:28 UTC
Package Review
==============

Key:
[x] = Pass
[!] = Fail
[-] = Not applicable
[?] = Not evaluated
[ ] = Manual review needed



===== MUST items =====

Generic:
[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]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Fully versioned dependency in subpackages, if present.
[x]: Package complies to the Packaging Guidelines
[x]: License field in the package spec file matches the actual license.

See http://lists.fedoraproject.org/pipermail/legal/2013-February/002079.html for
details about decistion

[x]: License file installed when any subpackage combination is installed.
[x]: Package consistently uses macro is (instead of hard-coded directory
     names).
[x]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[-]: Large documentation must go in a -doc subpackage.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[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]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).

Java:
[x]: Packages have proper BuildRequires/Requires on jpackage-utils
[x]: Fully versioned dependency in subpackages, if present.
[x]: Javadoc documentation files are generated and included in -javadoc
     subpackage
[x]: Javadoc subpackages have Requires: jpackage-utils
[x]: Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlink)
[x]: Bundled jar/class files should be removed before build

Maven:
[x]: Pom files have correct add_maven_depmap call
[x]: If package contains pom.xml files install it (including depmaps) even
     when building with ant
[x]: Old add_to_maven_depmap macro is not being used
[x]: Packages DOES NOT have Requires(post) and Requires(postun) on jpackage-
     utils for %update_maven_depmap macro
[x]: Package DOES NOT use %update_maven_depmap in %post/%postun
[x]: Packages use %{_mavenpomdir} instead of %{_datadir}/maven2/poms

===== SHOULD items =====

Generic:
[?]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: SourceX tarball generation or download is documented.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[!]: %check is present and all tests pass.

Could be nice but with new guidelines approaching a waste of time to change the
spec :-)

[x]: Packages should try to preserve timestamps of original installed files.
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define.

Java:
[x]: Package has BuildArch: noarch (if possible)
[x]: Package uses upstream build method (ant/maven/etc.)

===== EXTRA items =====

Generic:
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).


Rpmlint
-------
Checking: glassfish-el-api-2.2.4-1.fc19.noarch.rpm
          glassfish-el-api-javadoc-2.2.4-1.fc19.noarch.rpm
glassfish-el-api.noarch: W: invalid-url URL: http://uel.java.net timed out
glassfish-el-api-javadoc.noarch: W: invalid-url URL: http://uel.java.net timed out
2 packages and 0 specfiles checked; 0 errors, 2 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint glassfish-el-api-javadoc glassfish-el-api
glassfish-el-api-javadoc.noarch: W: invalid-url URL: http://uel.java.net timed out
glassfish-el-api.noarch: W: invalid-url URL: http://uel.java.net timed out
2 packages and 0 specfiles checked; 0 errors, 2 warnings.
# echo 'rpmlint-done:'



Requires
--------
glassfish-el-api-javadoc (rpmlib, GLIBC filtered):
    jpackage-utils

glassfish-el-api (rpmlib, GLIBC filtered):
    java
    jpackage-utils



Provides
--------
glassfish-el-api-javadoc:
    glassfish-el-api-javadoc

glassfish-el-api:
    glassfish-el-api
    mvn(javax.el:javax.el-api)
    osgi(javax.el-api)



MD5-sum check
-------------
http://www.apache.org/licenses/LICENSE-2.0.txt :
  CHECKSUM(SHA256) this package     : cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30
  CHECKSUM(SHA256) upstream package : cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30


Generated by fedora-review 0.4.0 (815de5f) last change: 2013-02-19
Buildroot used: fedora-raw-x86_64
Command line :/home/w0rm/work/projects/fedora-review/try-fedora-review -rn glassfish-el-api


Everything in order, David communicated nicely during the process and I wasn't the fastest reviewer here anyway...

Sponsored & APPROVED

Note that the sponsorship might take a while to propagate through all systems.

Comment 5 David Xie 2013-02-28 12:35:50 UTC
New Package SCM Request
=======================
Package Name: glassfish-el-api
Short Description: Expression Language API 2.2.4
Owners: davidx
Branches: f18
InitialCC: sochotni

Comment 6 David Xie 2013-02-28 12:57:26 UTC
New Package SCM Request
=======================
Package Name: glassfish-el-api
Short Description: J2EE Expression Language API
Owners: davidx
Branches: f18 f19
InitialCC: sochotni

Comment 7 Gwyn Ciesla 2013-02-28 14:21:22 UTC
Requested package name glassfish-el-api doesn't match bug summary
glassfish.el-api, please correct.

Comment 8 David Xie 2013-02-28 16:04:34 UTC
Hi Jon,

You are right, I have updated bug summary.
Name glassfish-el-api is the right name.

Comment 9 Mikolaj Izdebski 2013-02-28 16:06:31 UTC
David, you need to add a new SCM request and reset fedora-cvs flag back to "?"

Comment 10 David Xie 2013-02-28 16:22:27 UTC
New Package SCM Request
=======================
Package Name: glassfish-el-api
Short Description: J2EE Expression Language API
Owners: davidx
Branches: f18
InitialCC: sochotni

Comment 11 Gwyn Ciesla 2013-02-28 16:24:47 UTC
Git done (by process-git-requests).

Comment 12 David Xie 2013-02-28 16:26:06 UTC
(In reply to comment #11)
> Git done (by process-git-requests).

Thank you very much, Jon!

Comment 13 Gwyn Ciesla 2013-02-28 16:47:59 UTC
Unsetting flag.