Fedora Merge Review: jakarta-commons-pool http://cvs.fedora.redhat.com/viewcvs/devel/jakarta-commons-pool/ Initial Owner: dbhole
Updated files: https://mwringe.108.redhat.com/files/documents/175/326/jakarta-commons-pool.spec https://mwringe.108.redhat.com/files/documents/175/327/jakarta-commons-pool-1.3-9jpp.1.src.rpm
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} * 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 * skim the summary and description for typos, etc. * correct buildroot - should be: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) * 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-commons-pool non-standard-group Development/Libraries/Java - this is OK * changelog is OK * 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 - should the NOTICE.txt and RELEASE-NOTES.txt be marked as %doc? - why did epoch get back to 0? * 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 * 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 -qp --provides /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-1.3-9jpp.1.fc7.x86_64.rpm commons-pool = 0:1.3-9jpp.1.fc7 jakarta-commons-pool-1.3.jar.so()(64bit) jakarta-commons-pool = 0:1.3-9jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-1.3-9jpp.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) 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) [pcheung@to-fcjpp1 review]$ rpm -qp --provides /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-debuginfo-1.3-9jpp.1.fc7.x86_64.rpm jakarta-commons-pool-1.3.jar.so.debug()(64bit) jakarta-commons-pool-tomcat5-1.3.jar.so.debug()(64bit) jakarta-commons-pool-debuginfo = 0:1.3-9jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-debuginfo-1.3-9jpp.1.fc7.x86_64.rpm rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 [pcheung@to-fcjpp1 review]$ rpm -qp --provides /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-javadoc-1.3-9jpp.1.fc7.x86_64.rpm jakarta-commons-pool-javadoc = 0:1.3-9jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-javadoc-1.3-9jpp.1.fc7.x86_64.rpm /bin/ln /bin/rm /bin/rm java-javadoc rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 [pcheung@to-fcjpp1 review]$ rpm -qp --provides /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-tomcat5-1.3-9jpp.1.fc7.x86_64.rpm jakarta-commons-pool-tomcat5-1.3.jar.so()(64bit) jakarta-commons-pool-tomcat5 = 0:1.3-9jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-tomcat5-1.3-9jpp.1.fc7.x86_64.rpm /bin/sh /bin/sh 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 rtld(GNU_HASH) * run rpmlint on the binary RPMs [pcheung@to-fcjpp1 review]$ rpmlint /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-pool-*rpm W: jakarta-commons-pool non-standard-group Development/Libraries/Java W: jakarta-commons-pool non-standard-group Development/Libraries/Java W: jakarta-commons-pool-javadoc non-standard-group Development/Documentation W: jakarta-commons-pool-tomcat5 non-standard-group Development/Libraries/Java W: jakarta-commons-pool-tomcat5 no-documentation These 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
(In reply to comment #2) > ... > X specfile is legible > - should the NOTICE.txt and RELEASE-NOTES.txt be marked as %doc? > - why did epoch get back to 0? > * package successfully compiles and builds on at least x86 Added the NOTICE.txt and RELEASE-NOTES.txt as %doc As for the epoch question, I do not believe the epoch was actually bumped, I believe it was added by mistake in the changelog and nobody has noticed it. Updated srpm here: https://mwringe.108.redhat.com/files/documents/175/327/jakarta-commons-pool-1.3-9jpp.1.src.rpm
Changes look good, just 2 more questions: Are the Requrires(post[un]): /bin/rm,/bin/ln still needed? Is there any doc for the tomcat5 subpackage?
(In reply to comment #4) > Changes look good, just 2 more questions: > Are the Requrires(post[un]): /bin/rm,/bin/ln still needed? They shouldn't be in there, I have removed it > Is there any doc for the tomcat5 subpackage? No, the -tomcat5 package is specifically created for tomcat5, there is no documentation for it, and nothing should be using this rpm except for tomcat5 itself. Tomcat5 used to create a jar from pool, collections and dbcp, requiring each of these project's sources to be included in the tomcat5 srpm. This has been changed so that each of the projects now create the bits for tomcat5 on their own. Updated srpm: https://mwringe.108.redhat.com/files/documents/175/327/jakarta-commons-pool-1.3-9jpp.1.src.rpm
Everything looks good. APPROVED.
Build into rawhide