Bug 664826 - Review Request: lucene3 - High-performance, full-featured text search engine
Summary: Review Request: lucene3 - High-performance, full-featured text search engine
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Stanislav Ochotnicky
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2010-12-21 19:12 UTC by Hicham HAOUARI
Modified: 2011-05-18 14:04 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2011-05-14 10:53:00 UTC
Type: ---
sochotni: fedora-review?

Attachments (Terms of Use)

Description Hicham HAOUARI 2010-12-21 19:12:26 UTC
Spec URL: http://hicham.fedorapeople.org/lucene3/lucene3.spec
SRPM URL: http://hicham.fedorapeople.org/lucene3/lucene3-3.0.3-1.fc14.src.rpm

Jakarta Lucene is a high-performance, full-featured text search engine
written entirely in Java. It is a technology suitable for nearly any
application that requires full-text search, especially cross-platform.

Comment 1 Stanislav Ochotnicky 2011-01-31 13:55:42 UTC
I'll do the review.

Comment 2 Stanislav Ochotnicky 2011-01-31 15:54:27 UTC
Package Review

- = N/A
x = Check
! = Problem
? = Not evaluated

[!]  Rpmlint output:
lucene3.noarch: W: obsolete-not-provided lucene-devel
lucene3-javadoc.noarch: W: dangerous-command-in-%post rm
lucene3-javadoc.noarch: W: dangerous-command-in-%postun rm

We no longer provide javadocs/jars with versions. Please remove those scriptlets.

lucene3-demo.noarch: W: spelling-error Summary(en_US) Lucene -> Lucerne, Luce ne, Luce-ne
lucene3-demo.noarch: W: spelling-error %description -l en_US Lucene -> Lucerne, Luce ne, Luce-ne
lucene3-demo.noarch: W: no-documentation
lucene3-contrib.noarch: W: spelling-error Summary(en_US) Lucene -> Lucerne, Luce ne, Luce-ne
lucene3-contrib.noarch: W: spelling-error %description -l en_US Lucene -> Lucerne, Luce ne, Luce-ne
lucene3-contrib.noarch: W: no-documentation
lucene3-contrib.noarch: W: class-path-in-manifest /usr/share/java/lucene3-contrib/lucene3-lucli-3.0.3.jar
This can be fixed same way lucene-2.x manifest is fixed

4 packages and 0 specfiles checked; 0 errors, 10 warnings.

[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.
[!]  Buildroot definition is not present
Please get rid of it

[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: ASL 2.0
[!]  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.
Main package should also include NOTICE.txt

[!]  All independent sub-packages have license of their own
Javadoc subpackage doesn't include LICENSE.txt and NOTICE.txt
[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.
MD5SUM this package    : c8655fe90d2303ff69e3b570662db8bb
[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.
[!]  Permissions on files are set properly.
Please use default (-,root,root,-) unless you have good reason not to

[!]  Package does NOT have a %clean section which contains rm -rf %{buildroot} (or $RPM_BUILD_ROOT). (not needed anymore)
No clean section, no "rm -rf" at the beginning of %install

[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
[!]  Javadocs are placed in %{_javadocdir}/%{name} (no -%{version} symlinks)
Current packaging guidelines require versionless jars/javadocs
[!]  Packages have proper BuildRequires/Requires on jpackage-utils
You are missing Requires
[!]  Javadoc subpackages have Require: jpackage-utils
Javadoc subpackage doesn't have jpackage-utils in Requires
[-]  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)
No versions in jar filenames
[-]  If package contains pom.xml files install it (including depmaps) even when building with ant
[-]  pom files has correct add_to_maven_depmap call which resolves to the pom file (use "JPP." and "JPP-" correctly)

=== 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.
[x]  Reviewer should test that the package builds in mock.
Tested on: rawhide-i386

=== Issues ===
1. Besides things already mentioned, your %prep includes few seds that should be commented.
2. Tests are not executed (copied comment from lucene 2.x?)
3. There are more contrib modules that you don't install. Any reason?
4. Requires is completely empty

[1] https://fedoraproject.org/wiki/Packaging:NamingGuidelines
[2] https://fedoraproject.org/wiki/Packaging:Guidelines
[3] https://fedoraproject.org/wiki/Packaging:LicensingGuidelines
[4] https://fedoraproject.org/wiki/Licensing:Main
[5] https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
[6] https://fedoraproject.org/wiki/Packaging:Java#Filenames

Comment 3 Hicham HAOUARI 2011-01-31 18:45:56 UTC
Thanks Stanislav for doing the review. Indeed, the spec is a copy/paste of lucene2 spec, I will try to fix the issues you mentioned ASAP.

Comment 4 Stanislav Ochotnicky 2011-02-01 08:05:38 UTC
Oh, while you're at it...I forgot to mention that description should be fixed too (just copy-paste from lucene web would be OK, they don't mention Jakarta anymore)

Comment 5 Stanislav Ochotnicky 2011-02-23 17:57:18 UTC
Still working on this? Just making sure this is not becoming stale review :-)

Comment 6 Hicham HAOUARI 2011-02-23 23:08:29 UTC
Yes, I am still working on it, will try to get at it ASAP

Comment 7 Hicham HAOUARI 2011-05-14 10:53:00 UTC
Sorry, I am giving up since I don't have much time/bandwidth.

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