Fedora Merge Review: jakarta-commons-codec http://cvs.fedora.redhat.com/viewcvs/devel/jakarta-commons-codec/ Initial Owner: mwringe
Updated files: https://mwringe.108.redhat.com/files/documents/175/338/jakarta-commons-codec.spec https://mwringe.108.redhat.com/files/documents/175/337/jakarta-commons-codec-1.3-8jpp.1.src.rpm
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) - md5sum do not match with upstream tar ball * 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-codec 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 - Are these still needed: Requires(post): /bin/rm /bin/ln, Requires(postun): /bin/rm? * 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 X summary should be a short and concise description of the package Summary is just the name 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 will do this after the spec file is fixed * run rpmlint on the binary RPMs rpmlint /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-*rpm W: jakarta-commons-codec non-standard-group Development/Libraries/Java W: jakarta-commons-codec non-standard-group Development/Libraries/Java W: jakarta-commons-codec-javadoc non-standard-group Development/Documentation 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 verify source and patches (md5sum matches upstream, know what the patches do) > - md5sum do not match with upstream tar ball OK, this should be fixed now > ... > * if possible, replace PreReq with Requires(pre) and/or Requires(post) > X specfile is legible > - Are these still needed: Requires(post): /bin/rm /bin/ln, Requires(postun): > /bin/rm? Removed >... > X summary should be a short and concise description of the package > Summary is just the name of the package Fixed New srpm here: https://mwringe.108.redhat.com/files/documents/175/337/jakarta-commons-codec-1.3-8jpp.1.src.rpm
(In reply to comment #3) > (In reply to comment #2) > >... > > X verify source and patches (md5sum matches upstream, know what the patches do) > > - md5sum do not match with upstream tar ball > OK, this should be fixed now With the svn export, the source from the svn checkout and the tar ball is different: Only in ../CODEC_1_3/: build.properties.sample Only in ../CODEC_1_3/: build.xml Only in ../CODEC_1_3/: checkstyle.xml Only in src/: conf Only in ../CODEC_1_3/: .cvsignore Only in ../CODEC_1_3/: default.properties Only in src/: java Only in ../CODEC_1_3/: LICENSE-header.txt Only in ../CODEC_1_3/: LICENSE.txt Only in ../CODEC_1_3/: maven.xml Only in src/: media Only in ../CODEC_1_3/: NOTICE.txt Only in ../CODEC_1_3/: project.properties Only in ../CODEC_1_3/: project.xml Only in ../CODEC_1_3/: PROPOSAL.html Only in ../CODEC_1_3/: RELEASE-NOTES-1.0-dev.txt Only in ../CODEC_1_3/: RELEASE-NOTES-1.1.txt Only in ../CODEC_1_3/: RELEASE-NOTES-1.2.txt Only in ../CODEC_1_3/: RELEASE-NOTES.txt Only in ../CODEC_1_3/: RELEASE-PLAN Only in ../CODEC_1_3/: src Only in src/: test Only in ../CODEC_1_3/: TODO Only in ../CODEC_1_3/: xdocs Do you need a tag when doing the svn export? (seems like it's currently checking out from the head?) > > > ... > > * if possible, replace PreReq with Requires(pre) and/or Requires(post) > > X specfile is legible > > - Are these still needed: Requires(post): /bin/rm /bin/ln, Requires(postun): > > /bin/rm? > Removed > Great! > >... > > X summary should be a short and concise description of the package > > Summary is just the name of the package > Fixed Thanks. > > New srpm here: > https://mwringe.108.redhat.com/files/documents/175/337/jakarta-commons-codec-1.3-8jpp.1.src.rpm >
(In reply to comment #4) > (In reply to comment #3) > > (In reply to comment #2) > > >... > > > X verify source and patches (md5sum matches upstream, know what the patches do) > > > - md5sum do not match with upstream tar ball > > OK, this should be fixed now > With the svn export, the source from the svn checkout and the tar ball is different: > Only in ../CODEC_1_3/: build.properties.sample > Only in ../CODEC_1_3/: build.xml > Only in ../CODEC_1_3/: checkstyle.xml > Only in src/: conf > Only in ../CODEC_1_3/: .cvsignore > Only in ../CODEC_1_3/: default.properties > Only in src/: java > Only in ../CODEC_1_3/: LICENSE-header.txt > Only in ../CODEC_1_3/: LICENSE.txt > Only in ../CODEC_1_3/: maven.xml > Only in src/: media > Only in ../CODEC_1_3/: NOTICE.txt > Only in ../CODEC_1_3/: project.properties > Only in ../CODEC_1_3/: project.xml > Only in ../CODEC_1_3/: PROPOSAL.html > Only in ../CODEC_1_3/: RELEASE-NOTES-1.0-dev.txt > Only in ../CODEC_1_3/: RELEASE-NOTES-1.1.txt > Only in ../CODEC_1_3/: RELEASE-NOTES-1.2.txt > Only in ../CODEC_1_3/: RELEASE-NOTES.txt > Only in ../CODEC_1_3/: RELEASE-PLAN > Only in ../CODEC_1_3/: src > Only in src/: test > Only in ../CODEC_1_3/: TODO > Only in ../CODEC_1_3/: xdocs > > Do you need a tag when doing the svn export? (seems like it's currently checking > out from the head?) Can you please explain to me what you are doing? I can see those files in the tar contained in the srpm. > > > > > > ... > > > * if possible, replace PreReq with Requires(pre) and/or Requires(post) > > > X specfile is legible > > > - Are these still needed: Requires(post): /bin/rm /bin/ln, Requires(postun): > > > /bin/rm? > > Removed > > > Great! > > >... > > > X summary should be a short and concise description of the package > > > Summary is just the name of the package > > Fixed > Thanks. > > > > New srpm here: > > > https://mwringe.108.redhat.com/files/documents/175/337/jakarta-commons-codec-1.3-8jpp.1.src.rpm > > > >
(In reply to comment #5) ... > Can you please explain to me what you are doing? I can see those files in the > tar contained in the srpm. > Sorry... I must have diff'd against the wrong dir, the src tar ball looks fine. * 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-codec-1.3-8jpp.1.fc7.x86_64.rpm commons-codec = 0:1.3-8jpp.1.fc7 jakarta-commons-codec-1.3.jar.so()(64bit) jakarta-commons-codec = 0:1.3-8jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-1.3-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) 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-codec-debuginfo-1.3-8jpp.1.fc7.x86_64.rpm jakarta-commons-codec-1.3.jar.so.debug()(64bit) jakarta-commons-codec-debuginfo = 0:1.3-8jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-debuginfo-1.3-8jpp.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-codec-javadoc-1.3-8jpp.1.fc7.x86_64.rpm jakarta-commons-codec-javadoc = 0:1.3-8jpp.1.fc7 [pcheung@to-fcjpp1 review]$ rpm -qp --requires /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-javadoc-1.3-8jpp.1.fc7.x86_64.rpm java-javadoc 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-commons-codec-1.3-8jpp.1.fc7.x86_64.rpm W: jakarta-commons-codec non-standard-group Development/Libraries/Java [pcheung@to-fcjpp1 review]$ rpmlint /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-debuginfo-1.3-8jpp.1.fc7.x86_64.rpm [pcheung@to-fcjpp1 review]$ rpmlint /var/lib/mock/fedora-development-x86_64-core-pcheung/result/jakarta-commons-codec-javadoc-1.3-8jpp.1.fc7.x86_64.rpm W: jakarta-commons-codec-javadoc non-standard-group Development/Documentation These are OK. Everything looks good. APPROVED.
Built into Brew
Closing bug report