Hide Forgot
Spec URL: http://mo.morsi.org/files/jruby/jnr-ffi.spec SRPM URL: http://mo.morsi.org/files/jruby/jnr-ffi-0.5.10-1.fc15.src.rpm Description: Java Abstracted Foreign Function Layer Obsoletes jaffl. Required by JRuby. http://koji.fedoraproject.org/koji/taskinfo?taskID=3246435
I would do this one.
Few initial problems: * License is wrong - ASL 2.0 in the source but LGPLv3 in the spec * rm -rf $RPM_BUILD_ROOT as first line of install section is no longer needed * clean section is no longer needed * versioned jars are installed, please install only unversioned one http://fedoraproject.org/wiki/Packaging:Java#Filenames * %defattr(-,root,root,-) are no longer needed * do not install versioned javadoc folder http://fedoraproject.org/wiki/Packaging:Java#Javadoc_installation * post/postun %update_maven_depmap are no longer needed * %add_to_maven_depmap is used but it's deprecated now please use %add_maven_depmap JPP-%{name}.pom %{name}.jar quite simple and validates you're doing the right thing * Do not BuildRequires: ant-nodeps it has been merged into main ant package Question: * Do we need the changelog from jaffl at all? For me it only makes the spec bigger but it's up to you Once the listed problems are fixed I'll do the formal review
Oh and I forgot to say please make the Obsoletes/Provides versioned
Updated spec URL: http://mo.morsi.org/files/jruby/jnr-ffi.spec Updated SRPM URL: http://mo.morsi.org/files/jruby/jnr-ffi-0.5.10-2.fc14.src.rpm Koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3264801 (In reply to comment #2) > Few initial problems: > * License is wrong - ASL 2.0 in the source but LGPLv3 in the spec Project is dual licensed under the ASL and LGPLv3+, license field has been updated to reflect this > * rm -rf $RPM_BUILD_ROOT as first line of install section is no longer needed > * clean section is no longer needed Both are done > * versioned jars are installed, please install only unversioned one > http://fedoraproject.org/wiki/Packaging:Java#Filenames > * %defattr(-,root,root,-) are no longer needed > * do not install versioned javadoc folder > http://fedoraproject.org/wiki/Packaging:Java#Javadoc_installation As are these three. > * post/postun %update_maven_depmap are no longer needed Done > * %add_to_maven_depmap is used but it's deprecated now please use > %add_maven_depmap JPP-%{name}.pom %{name}.jar quite simple and validates you're > doing the right thing When I change this I get the following error: + %add_maven_depmap JPP-jnr-ffi.pom jnr-ffi.jar /var/tmp/rpm-tmp.Vqrru5: line 38: fg: no job control error: Bad exit status from /var/tmp/rpm-tmp.Vqrru5 (%install) Thoughts? > * Do not BuildRequires: ant-nodeps it has been merged into main ant package > Done > Question: > * Do we need the changelog from jaffl at all? For me it only makes the spec > bigger but it's up to you > Truncated these extra bits (In reply to comment #3) > Oh and I forgot to say please make the Obsoletes/Provides versioned Done (believe I did this correctly though would like verification). Thanks for the review.
Package Review ============== Key: - = N/A x = Check ! = Problem ? = Not evaluated === REQUIRED ITEMS === [x] Rpmlint output: W: spelling-error Summary(en_US) Javadocs -> Java docs, Java-docs, Avocados [x] Package is named according to the Package Naming Guidelines[1]. [x] Spec file name must match the base package name, in the format %{name}.spec. [x] Package meets the Packaging Guidelines[2]. [x] Package successfully compiles and builds into binary rpms. [x] Buildroot definition is not present [x] Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines[3,4]. [x] License field in the package spec file matches the actual license. License type: ASLv2 and LGPLv3+ [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] All independent sub-packages have license of their own [x] Spec file is legible and written in American English. [x] Sources used to build the package matches the upstream source, as provided in the spec URL. [x] All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines[5]. [x] Package must own all directories that it creates. [x] Package requires other packages for directories it uses. [x] Package does not contain duplicates in %files. [x] File sections do not contain %defattr(-,root,root,-) unless changed with good reason [x] Permissions on files are set properly. [x] Package does NOT have a %clean section which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). (not needed anymore) [x] Package consistently uses macros (no %{buildroot} and $RPM_BUILD_ROOT mixing) [x] Package contains code, or permissable content. [x] Fully versioned dependency in subpackages, if present. [-] Package contains a properly installed %{name}.desktop file if it is a GUI application. [x] Package does not own files or directories owned by other packages. [x] Javadoc documentation files are generated and included in -javadoc subpackage [x] Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlinks) [x] Packages have proper BuildRequires/Requires on jpackage-utils [x] Javadoc subpackages have Require: jpackage-utils [x] Package uses %global not %define [-] If package uses tarball from VCS include comment how to re-create that tarball (svn export URL, git clone URL, ...) [x] If source tarball includes bundled jar/class files these need to be removed prior to building [x] All filenames in rpm packages must be valid UTF-8. [!] Jar files are installed to %{_javadir}/%{name}.jar (see [6] for details) Is the jaffl-0.5.jar really needed? [x] If package contains pom.xml files install it (including depmaps) even when building with ant [!] pom files has correct add_maven_depmap === Maven === [x] Use %{_mavenpomdir} macro for placing pom files instead of %{_datadir}/maven2/poms [-] If package uses "-Dmaven.test.skip=true" explain why it was needed in a comment [-] If package uses custom depmap "-Dmaven.local.depmap.file=*" explain why it's needed in a comment [x] Package DOES NOT use %update_maven_depmap in %post/%postun [x] Packages DOES NOT have Requires(post) and Requires(postun) on jpackage-utils for %update_maven_depmap macro === Other suggestions === [x] If possible use upstream build method (maven/ant/javac) [x] Avoid having BuildRequires on exact NVR unless necessary [x] Package has BuildArch: noarch (if possible) [x] Latest version is packaged. === Issues === 1. Is the jaffl-0.5.jar really needed? I would prefer if we kill versioned jars entirely but it's up to you. 2. add_maven_depmap looks for the pom file and reads it so it has to be installed before calling the macro 3. Please put the release in provides/obsoletes too
Updated spec URL: http://mo.morsi.org/files/jruby/jnr-ffi.spec Updated SRPM URL: http://mo.morsi.org/files/jruby/jnr-ffi-0.5.10-3.fc14.src.rpm > === Issues === > 1. Is the jaffl-0.5.jar really needed? I would prefer if we kill versioned jars > entirely but it's up to you. Removed > 2. add_maven_depmap looks for the pom file and reads it so it has to be > installed before calling the macro I understand your point, but once again when I add the suggested invocation of the %add_maven_depmap macro, I get + %add_maven_depmap JPP-jnr-ffi.pom /var/tmp/rpm-tmp.eT91Tn: line 48: fg: no job control Even if the macro is called after the pom is installed (see commented location in spec file). Please advise on correct way to proceed w/out error. > 3. Please put the release in provides/obsoletes too Done
Thanks, I would not block on the add_maven_depmap usage. I didn't thought about that but what version of jpackage-utils do you have? Is it failing in mock on rawhide? Most probably you have too old jpackage-utils that doesn't have it. Anyway, This package is APPROVED.
Thanks for the review, the version of jpackage-utils that I have locally is jpackage-utils-1.7.5-3.11.fc14.noarch according to rpm (yum update jpackage-utils turns up nothing as well). New Package SCM Request ======================= Package Name: jnr-ffi Short Description: Java Abstracted Foreign Function Layer Owners: mmorsi Branches: f15 f16 InitialCC:
Git done (by process-git-requests).
jnr-ffi-0.5.10-3.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/jnr-ffi-0.5.10-3.fc15
jnr-ffi-0.5.10-3.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/jnr-ffi-0.5.10-3.fc16
jnr-ffi-0.5.10-3.fc16 has been pushed to the Fedora 16 testing repository.
jnr-ffi-0.5.10-3.fc15 has been pushed to the Fedora 15 stable repository.
jnr-ffi-0.5.10-3.fc16 has been pushed to the Fedora 16 stable repository.