Bug 225938

Summary: Merge Review: jakarta-taglibs-standard
Product: [Fedora] Fedora Reporter: Nobody's working on this, feel free to take it <nobody>
Component: Package ReviewAssignee: Permaine Cheung <pcheung>
Status: CLOSED RAWHIDE QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mwringe
Target Milestone: ---Flags: pcheung: 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: 2007-07-09 15:32:43 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:

Description Nobody's working on this, feel free to take it 2007-01-31 19:10:45 UTC
Fedora Merge Review: jakarta-taglibs-standard

http://cvs.fedora.redhat.com/viewcvs/devel/jakarta-taglibs-standard/
Initial Owner: mwringe

Comment 2 Permaine Cheung 2007-04-16 21:17:37 UTC
Please fix items marked by X:
MUST:
* package is named appropriately
 - match upstream tarball or project name
 - try to match previous incarnations in other distributions/packagers for
consistency
 - specfile should be %{name}.spec
 - non-numeric characters should only be used in Release (ie. cvs or
   something)
 - for non-numerics (pre-release, CVS snapshots, etc.), see
   http://fedoraproject.org/wiki/Packaging/NamingGuidelines#PackageRelease
 - if case sensitivity is requested by upstream or you feel it should be
   not just lowercase, do so; otherwise, use all lower case for the name
* is it legal for Fedora to distribute this?
 - OSI-approved
 - not a kernel module
 - not shareware
 - is it covered by patents?
 - it *probably* shouldn't be an emulator
 - no binary firmware
* license field matches the actual license.
* license is open source-compatible.
 - use acronyms for licences where common
* specfile name matches %{name}
X verify source and patches (md5sum matches upstream, know what the patches do)
 - if upstream doesn't release source drops, put *clear* instructions on
   how to generate the the source drop; ie.
  # svn export blah/tag blah
  # tar cjf blah-version-src.tar.bz2 blah
I can only find 1.1.2 src tar ball on the mentioned site for Source0
* skim the summary and description for typos, etc.
 -  description says 'This directory contains releases for the 1.1.x ...',
    should it be 'This package .... for the 1.1.1 ...'?
X correct buildroot
 - should be:
   %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Please fix buildroot
* if %{?dist} is used, it should be in that form (note the ? and %
locations)
* license text included in package and marked with %doc
* keep old changelog entries; use judgement when removing (too old?
useless?)
* packages meets FHS (http://www.pathname.com/fhs/)
* rpmlint on <this package>.srpm gives no output
 W: jakarta-taglibs-standard non-standard-group Development/Libraries/Java
 This is OK
* changelog should be in one of these formats:
 
  * Fri Jun 23 2006 Jesse Keating <jkeating> - 0.6-4
  - And fix the link syntax.
 
  * Fri Jun 23 2006 Jesse Keating <jkeating> 0.6-4
  - And fix the link syntax.
 
  * Fri Jun 23 2006 Jesse Keating <jkeating>
  - 0.6-4
  - And fix the link syntax.
 
* Packager tag should not be used
* Vendor tag should not be used
* Distribution tag should not be used
* use License and not Copyright
* Summary tag should not end in a period
* if possible, replace PreReq with Requires(pre) and/or Requires(post)
X specfile is legible
 - what is the difference between jversion and version? (since both is 1.1.1, do
  we need both?)
* package successfully compiles and builds on at least x86
* BuildRequires are proper
 - builds in mock will flush out problems here
 - the following packages don't need to be listed in BuildRequires:
   bash
   bzip2
   coreutils
   cpio
   diffutils
   fedora-release (and/or redhat-release)
   gcc
   gcc-c++
   gzip
   make
   patch
   perl
   redhat-rpm-config
   rpm-build
   sed
   tar
   unzip
   which
* summary should be a short and concise description of the package
* description expands upon summary (don't include installation
instructions)
* make sure lines are <= 80 characters
* specfile written in American English
* make a -doc sub-package if necessary
 - see
  
http://fedoraproject.org/wiki/Packaging/Guidelines#head-9bbfa57478f0460c6160947a6bf795249488182b
* packages including libraries should exclude static libraries if possible
* don't use rpath
* config files should usually be marked with %config(noreplace)
* GUI apps should contain .desktop files
* should the package contain a -devel sub-package?
* use macros appropriately and consistently
 - ie. %{buildroot} and %{optflags} vs. $RPM_BUILD_ROOT and $RPM_OPT_FLAGS
* don't use %makeinstall
* install section must begin with rm -rf $RPM_BUILD_ROOT or %{buildroot}
* locale data handling correct (find_lang)
 - if translations included, add BR: gettext and use %find_lang %{name} at the
   end of %install
* consider using cp -p to preserve timestamps
* split Requires(pre,post) into two separate lines
* package should probably not be relocatable
* package contains code
 - see http://fedoraproject.org/wiki/Packaging/Guidelines#CodeVsContent
 - in general, there should be no offensive content
* package should own all directories and files
* there should be no %files duplicates
* file permissions should be okay; %defattrs should be present
* %clean should be present
* %doc files should not affect runtime
* if it is a web apps, it should be in /usr/share/%{name} and *not* /var/www
* verify the final provides and requires of the binary RPMs
[pcheung@to-fcjpp1 review]$ rpm -pq --provides
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-1.1.1-8jpp.1.fc7.x86_64.rpm
jakarta-taglibs-core-1.1.1.jar.so()(64bit)
jakarta-taglibs-standard-1.1.1.jar.so()(64bit)
jakarta-taglibs-standard = 0:1.1.1-8jpp.1.fc7
[pcheung@to-fcjpp1 review]$ rpm -pq --requires
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-1.1.1-8jpp.1.fc7.x86_64.rpm
/bin/sh
/bin/sh
java-gcj-compat
java-gcj-compat
libc.so.6()(64bit)
libc.so.6(GLIBC_2.2.5)(64bit)
libdl.so.2()(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libgcj_bc.so.1()(64bit)
libm.so.6()(64bit)
libm.so.6(GLIBC_2.2.5)(64bit)
libpthread.so.0()(64bit)
librt.so.1()(64bit)
libz.so.1()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
servletapi5 >= 0:5.0.16
tomcat5-jsp-2.0-api >= 0:5.0.16
xalan-j2 >= 2.6.0
[pcheung@to-fcjpp1 review]$ rpm -pq --provides
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-debuginfo-1.1.1-8jpp.1.fc7.x86_64.rpm
jakarta-taglibs-core-1.1.1.jar.so.debug()(64bit)
jakarta-taglibs-standard-1.1.1.jar.so.debug()(64bit)
jakarta-taglibs-standard-debuginfo = 0:1.1.1-8jpp.1.fc7
[pcheung@to-fcjpp1 review]$ rpm -pq --requires
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-debuginfo-1.1.1-8jpp.1.fc7.x86_64.rpm
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
[pcheung@to-fcjpp1 review]$ rpm -pq --provides
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-javadoc-1.1.1-8jpp.1.fc7.x86_64.rpm
jakarta-taglibs-standard-javadoc = 0:1.1.1-8jpp.1.fc7
[pcheung@to-fcjpp1 review]$ rpm -pq --requires
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-javadoc-1.1.1-8jpp.1.fc7.x86_64.rpm
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
* run rpmlint on the binary RPMs
[pcheung@to-fcjpp1 review]$ rpmlint 
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-1.1.1-8jpp.1.fc7.x86_64.rpm
W: jakarta-taglibs-standard non-standard-group Development/Libraries/Java
[pcheung@to-fcjpp1 review]$ rpmlint
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-debuginfo-1.1.1-8jpp.1.fc7.x86_64.rpm
[pcheung@to-fcjpp1 review]$ rpmlint
/var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-taglibs-standard-javadoc-1.1.1-8jpp.1.fc7.x86_64.rpm
W: jakarta-taglibs-standard-javadoc non-standard-group
Development/DocumentationThe group warnings are OK.
 
 
SHOULD:
* package should include license text in the package and mark it with %doc
* package should build on i386
* package should build in mock

Comment 3 Matt Wringe 2007-04-16 22:25:02 UTC
(In reply to comment #2)

> X verify source and patches (md5sum matches upstream, know what the patches do)
>  - if upstream doesn't release source drops, put *clear* instructions on
>    how to generate the the source drop; ie.
>   # svn export blah/tag blah
>   # tar cjf blah-version-src.tar.bz2 blah
> I can only find 1.1.2 src tar ball on the mentioned site for Source0
Fixed. This is due to apache having one location for the lastest packages and
another for older packages (archives). I have switched the link to point to the
archives section as this pacakges is no longer the most current.

> X correct buildroot
>  - should be:
>    %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
> Please fix buildroot
Fixed

> X specfile is legible
>  - what is the difference between jversion and version? (since both is 1.1.1, do
>   we need both?)
good point, I have no idea why jversion is in there. It has been removed.

Updated srpm can be found here:
https://mwringe.108.redhat.com/files/documents/175/344/jakarta-taglibs-standard-1.1.1-8jpp.1.src.rpm


Comment 4 Permaine Cheung 2007-04-17 03:47:43 UTC
(In reply to comment #3)
> (In reply to comment #2)
> 
> > X verify source and patches (md5sum matches upstream, know what the patches do)
> >  - if upstream doesn't release source drops, put *clear* instructions on
> >    how to generate the the source drop; ie.
> >   # svn export blah/tag blah
> >   # tar cjf blah-version-src.tar.bz2 blah
> > I can only find 1.1.2 src tar ball on the mentioned site for Source0
> Fixed. This is due to apache having one location for the lastest packages and
> another for older packages (archives). I have switched the link to point to the
> archives section as this pacakges is no longer the most current.
md5sum now matches.

> 
> > X correct buildroot
> >  - should be:
> >    %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
> > Please fix buildroot
> Fixed
Great!
> 
> > X specfile is legible
> >  - what is the difference between jversion and version? (since both is 1.1.1, do
> >   we need both?)
> good point, I have no idea why jversion is in there. It has been removed.
> 
Thanks.

Please get rid of the section tag.

Forgot to mark an X besides this:
* skim the summary and description for typos, etc.
 -  description says 'This directory contains releases for the 1.1.x ...',
    should it be 'This package .... for the 1.1.1 ...'?


Comment 5 Matt Wringe 2007-04-17 14:04:23 UTC
-got rid of section tag
-fixed up the description

Updated File:
https://mwringe.108.redhat.com/files/documents/175/344/jakarta-taglibs-standard-1.1.1-8jpp.1.src.rpm

Comment 6 Permaine Cheung 2007-04-17 14:21:22 UTC
APPROVED.

Comment 7 Matt Wringe 2007-04-26 01:03:33 UTC
Build into Brew