Bug 225924 - Merge Review: jakarta-commons-daemon
Summary: Merge Review: jakarta-commons-daemon
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Matt Wringe
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-31 19:08 UTC by Nobody's working on this, feel free to take it
Modified: 2007-11-30 22:11 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-04-05 18:45:04 UTC
Type: ---
Embargoed:
mwringe: fedora-review+


Attachments (Terms of Use)

Description Nobody's working on this, feel free to take it 2007-01-31 19:08:54 UTC
Fedora Merge Review: jakarta-commons-daemon

http://cvs.fedora.redhat.com/viewcvs/devel/jakarta-commons-daemon/
Initial Owner: pcheung

Comment 2 Matt Wringe 2007-03-16 15:13:44 UTC
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
OK
* 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
OK

* license field matches the actual license.
OK

* license is open source-compatible.
 - use acronyms for licences where common
OK, license field should probably remove the 2.0 due to rpmlint errors

* specfile name matches %{name}
OK

* 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
OK, md5sums match
* skim the summary and description for typos, etc.
X summary should be more than just the package name

* correct buildroot
 - should be:
   %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
OK
* if %{?dist} is used, it should be in that form (note the ? and %
locations)
OK

* license text included in package and marked with %doc
OK

* keep old changelog entries; use judgement when removing (too old?
useless?)
OK

* packages meets FHS (http://www.pathname.com/fhs/)
OK, jars and javadoc are being installed to the proper locations

* rpmlint on <this package>.srpm gives no output
 - justify warnings if you think they shouldn't be there
rpmlint jakarta-commons-daemon-1.0.1-6jpp.2.src.rpm
W: jakarta-commons-daemon non-standard-group System/Boot
W: jakarta-commons-daemon invalid-license Apache Software License 2.0

the 2.0 in the license can probably be removed to get rid of the warning

* changelog should be in proper format
OK

* Packager, Vendor and Distribution tag should not be used
OK
* use License and not Copyright 
OK
* Summary tag should not end in a period
OK
* if possible, replace PreReq with Requires(pre) and/or Requires(post)
OK
* specfile is legible
Ok, looks ok to me
* package successfully compiles and builds on at least x86
Ok
* BuildRequires are proper
 - builds in mock will flush out problems here
OK, builds in mock fine
 - 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
X summary is just package name

* description expands upon summary (don't include installation
instructions)
OK

* make sure description lines are <= 80 characters
OK

* specfile written in American English
OK
* make a -doc sub-package if necessary
OK, has a javadoc sub-package

* 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
* 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
OK
* split Requires(pre,post) into two separate lines
OK
* package should probably not be relocatable
OK
* package contains code
 - see http://fedoraproject.org/wiki/Packaging/Guidelines#CodeVsContent
 - in general, there should be no offensive content
OK
* package should own all directories and files
OK
* there should be no %files duplicates
OK
* file permissions should be okay; %defattrs should be present
OK
* %clean should be present
OK
* %doc files should not affect runtime
OK
* if it is a web apps, it should be in /usr/share/%{name} and *not* /var/www
OK
* verify the final provides and requires of the binary RPMs

rpm -qp --provides jakarta-commons-daemon-1.0.1-6jpp.2.fc7.x86_64.rpm
commons-daemon = 1:1.0.1-6jpp.2.fc7
jakarta-commons-daemon-1.0.1.jar.so()(64bit)
jakarta-commons-daemon = 1:1.0.1-6jpp.2.fc7

rpm -qp --requires jakarta-commons-daemon-1.0.1-6jpp.2.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)
libpthread.so.0()(64bit)
librt.so.1()(64bit)
libz.so.1()(64bit)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(VersionedDependencies) <= 3.0.3-1
rtld(GNU_HASH)


rpm -qp --provides jakarta-commons-daemon-javadoc-1.0.1-6jpp.2.fc7.x86_64.rpm
jakarta-commons-daemon-javadoc = 1:1.0.1-6jpp.2.fc7

 rpm -qp --requires jakarta-commons-daemon-javadoc-1.0.1-6jpp.2.fc7.x86_64.rpm
/bin/ln
/bin/rm
/bin/rm
/bin/sh
/bin/sh
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1

* run rpmlint on the binary RPMs

rpmlint jakarta-commons-daemon-1.0.1-6jpp.2.fc7.x86_64.rpm
W: jakarta-commons-daemon non-standard-group System/Boot
W: jakarta-commons-daemon invalid-license Apache Software License 2.0
X the 2.0 can probably be removed from the License field

rpmlint
/var/lib/mock/fedora-development-x86_64-core-mwringe/result/jakarta-commons-daemon-javadoc-1.0.1-6jpp.2.fc7.x86_64.rpm
W: jakarta-commons-daemon-javadoc non-standard-group Development/Documentation
W: jakarta-commons-daemon-javadoc invalid-license Apache Software License 2.0
W: jakarta-commons-daemon-javadoc dangerous-command-in-%post rm
W: jakarta-commons-daemon-javadoc dangerous-command-in-%postun rm
X don't have rm in the javadoc post and postun


SHOULD:
* package should include license text in the package and mark it with %doc
OK
* package should build on i386
OK
* package should build in mock
OK


Comment 3 Permaine Cheung 2007-03-16 17:26:16 UTC
(In reply to comment #2)
...
> * license is open source-compatible.
>  - use acronyms for licences where common
> OK, license field should probably remove the 2.0 due to rpmlint errors
Done

> X summary should be more than just the package name

Fixed

> * rpmlint on <this package>.srpm gives no output
>  - justify warnings if you think they shouldn't be there
> rpmlint jakarta-commons-daemon-1.0.1-6jpp.2.src.rpm
> W: jakarta-commons-daemon non-standard-group System/Boot
> W: jakarta-commons-daemon invalid-license Apache Software License 2.0
> 
> the 2.0 in the license can probably be removed to get rid of the warning
Done
> * summary should be a short and concise description of the package
> X summary is just package name
Fixed
> rpmlint jakarta-commons-daemon-1.0.1-6jpp.2.fc7.x86_64.rpm
> W: jakarta-commons-daemon non-standard-group System/Boot
> W: jakarta-commons-daemon invalid-license Apache Software License 2.0
> X the 2.0 can probably be removed from the License field

Done
> 
> rpmlint
>
/var/lib/mock/fedora-development-x86_64-core-mwringe/result/jakarta-commons-daemon-javadoc-1.0.1-6jpp.2.fc7.x86_64.rpm
> W: jakarta-commons-daemon-javadoc non-standard-group Development/Documentation
> W: jakarta-commons-daemon-javadoc invalid-license Apache Software License 2.0
> W: jakarta-commons-daemon-javadoc dangerous-command-in-%post rm
> W: jakarta-commons-daemon-javadoc dangerous-command-in-%postun rm
> X don't have rm in the javadoc post and postun
Done

New spec file checked into cvs.

Comment 4 Matt Wringe 2007-03-16 20:06:51 UTC
looks good, Approved

Comment 5 Permaine Cheung 2007-03-16 21:08:07 UTC
Package built in brew.


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