Bug 523601

Summary: Review Request: swish-e - Simple Web Indexing System for Humans - Enhanced
Product: [Fedora] Fedora Reporter: Rakesh Pandit <rpandit>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: fedora-package-review, kchamart, mapleoin, notting, panemade
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-11-03 12:44:38 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 201449    

Description Rakesh Pandit 2009-09-16 01:39:42 EDT
SPEC: http://rakesh.fedorapeople.org/spec/swish-e.spec
SRPM: http://rakesh.fedorapeople.org/srpm/swish-e-2.4.7-1.fc12.src.rpm

Description of problem:
Swish-e can quickly and easily index directories of files or remote
web sites and search the generated indexes.
  Swish-e is extremely fast in both indexing and searching, highly
configurable, and can be seamlessly integrated with existing web sites
to maintain a consistent design. Swish-e can index web pages, but can
just as easily index text files, mailing list archives, or data stored
in a relational database.
Comment 1 Ionuț Arțăriși 2009-09-21 18:06:49 EDT
Hello,

I am not in the packager group and will not be able to approve this package. I'm just reviewing. I hope you find this helpful.

Here are a few issues I've discovered so far:

* As per https://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions , tar shouldn't be listed as a BuildRequirement.


* Is this an upstream issue? Maybe a link should be provided to clear things up.
# Not included till it gets fixed.
#%{__tar} -xzf example/SWISH-Stemmer-0.05.tar.gz


* The perl module should include the versioned MODULE_COMPAT Requires, as per https://fedoraproject.org/wiki/Packaging/Perl#Versioned_MODULE_COMPAT__Requires

I suggest to also use that naming scheme for perl Requires: https://fedoraproject.org/wiki/Packaging/Perl#Perl_Requires_and_Provides


* The devel package should Requires: pkgconfig as per https://fedoraproject.org/wiki/Packaging:ReviewGuidelines#cite_note-pkgconfig-21


* I've also found the following issues with rpmlint:

$ rpmlint /var/lib/mock/fedora-11-i386/result/*rpm
perl-SWISH.i586: W: no-documentation
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/PhraseHighlight.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/DateRanges.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/DefaultHighlight.pm
...etcetera...

swish-e.i586: W: shared-lib-calls-exit /usr/lib/libswish-e.so.2.0.0 exit@GLIBC_2.0
swish-e.i586: W: file-not-utf8 /usr/share/man/man1/SWISH-CONFIG.1.gz
swish-e.i586: W: file-not-utf8 /usr/share/man/man1/SWISH-FAQ.1.gz
swish-e.src:92: E: hardcoded-library-path in %{_prefix}/lib/swish-e/perl/*
swish-e.src:95: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*cgi
swish-e.src:97: E: hardcoded-library-path in %{_prefix}/lib/swish-e/swishspider
swish-e.src:98: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*pl
swish-e-debuginfo.i586: W: spurious-executable-perm /usr/src/debug/swish-e-2.4.7/src/expat/xmlparse/xmlparse.h
swish-e-doc.i586: W: file-not-utf8 /usr/share/doc/swish-e-doc-2.4.7/pod/SWISH-FAQ.pod
swish-e-doc.i586: W: file-not-utf8 /usr/share/doc/swish-e-doc-2.4.7/pod/CHANGES.pod
swish-e-doc.i586: W: file-not-utf8 /usr/share/doc/swish-e-doc-2.4.7/pod/SWISH-CONFIG.pod
swish-e-perl.i586: W: no-documentation
7 packages and 0 specfiles checked; 24 errors, 9 warnings.


I'll be happy to continue this review after these issues are resolved. Time to sleep now ;).
Comment 2 Rakesh Pandit 2009-09-30 12:46:45 EDT
[rakesh@dhcp1-96 SPECS]$ rpmlint swish-e.spec
swish-e.spec:92: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*cgi
swish-e.spec:94: E: hardcoded-library-path in %{_prefix}/lib/swish-e/swishspider
swish-e.spec:95: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*pl
0 packages and 1 specfiles checked; 3 errors, 0 warnings.

Ignore all of them .. I cannot find any macro which specially expands to /usr/lib/ on 64bit and not to /usr/lib64/

swish-e.x86_64: W: shared-lib-calls-exit /usr/lib64/libswish-e.so.2.0.0 exit@GLIBC_2.2.5

I will report this to upstream, but this should not be a blocker.

swish-e-perl.x86_64: W: no-documentation

yeah it does not have any, so please ignore.

file-not-utf8 please ignore this one as some names are in not utf-8 and changing them would make sense either.

Other changes are done.

Thanks for remarks.

SPEC: http://rakesh.fedorapeople.org/spec/swish-e.spec
SRPM: http://rakesh.fedorapeople.org/srpm/swish-e-2.4.7-2.fc12.src.rpm
Comment 3 Ionuț Arțăriși 2009-10-07 11:55:19 EDT
> [rakesh@dhcp1-96 SPECS]$ rpmlint swish-e.spec
> swish-e.spec:92: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*cgi
> swish-e.spec:94: E: hardcoded-library-path in
> %{_prefix}/lib/swish-e/swishspider
> swish-e.spec:95: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*pl
> 0 packages and 1 specfiles checked; 3 errors, 0 warnings.
> Ignore all of them .. I cannot find any macro which specially expands to
> /usr/lib/ on 64bit and not to /usr/lib64/

Strangely, it seems that the configure sets a hardcoded library path of /lib 
and your hardcoding actually counters that, so it's ok.


> file-not-utf8 please ignore this one as some names are in not utf-8 and
> changing them would make sense either.

I skimmed the text in those files and failed to find any non-utf-8
characters. The problem with those files is that they're in the old iso-8859-1
charset (as `file -i` reveals). Converting them to UTF-8 is painless:
https://fedoraproject.org/wiki/Packaging_tricks#Convert_encoding_to_UTF-8


Please don't mix macros styles: https://fedoraproject.org/wiki/Packaging/Guidelines#Using_.25.7Bbuildroot.7D_and_.25.7Boptflags.7D_vs_.24RPM_BUILD_ROOT_and_.24RPM_OPT_FLAGS


These errors also require changed permissions https://fedoraproject.org/wiki/Common_Rpmlint_issues#script-without-shebang

perl-SWISH.x86_64: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filter.pm
perl-SWISH.x86_64: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateFrame.pm
Comment 5 Rakesh Pandit 2009-10-08 05:32:08 EDT
(In reply to comment #4)
> > 
> > Please don't mix macros styles:
> > https://fedoraproject.org/wiki/Packaging/Guidelines#Using_.25.7Bbuildroot.7D_and_.25.7Boptflags.7D_vs_.24RPM_BUILD_ROOT_and_.24RPM_OPT_FLAGS
> > 
> > 
> 
> I am not fixing them.
> 

I meaning mixing. I am not using RPM_BUILD_ROOT or %{buildroot} in same spec neither for other one.

> SPEC: http://rakesh.fedorapeople.org/spec/swish-e.spec
> SRPM: http://rakesh.fedorapeople.org/srpm/swish-e-2.4.7-3.fc12.src.rpm
Comment 6 Ionuț Arțăriși 2009-10-09 07:21:55 EDT
Yup, my bad on the macro mixing.

You missed some files that needed changed permissions:

$ rpmlint perl-SWISH-2.4.7-3.fc11.i586.rpm 
perl-SWISH.i586: W: no-documentation
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/PhraseHighlight.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/DateRanges.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/DefaultHighlight.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateDefault.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateHTMLTemplate.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/pdf2xml.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateDumper.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/XLtoHTML.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/Doc2txt.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/ID3toHTML.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/doc2txt.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/pdf2html.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/SimpleHighlight.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/pp2html.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/Doc2html.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filters/Pdf2HTML.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/ParseQuery.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateToolkit.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/Filter.pm
perl-SWISH.i586: E: script-without-shebang /usr/lib/perl5/vendor_perl/5.10.0/SWISH/TemplateFrame.pm
1 packages and 0 specfiles checked; 20 errors, 1 warnings.
Comment 8 Kashyap Chamarthy 2010-01-16 11:18:45 EST
Please upload correct url to the SRPM file. (Release tag of SRPM does not match with the one in SPEC file)
Comment 11 Parag AN(पराग) 2010-01-27 06:07:44 EST
koji Build =>http://koji.fedoraproject.org/koji/taskinfo?taskID=1947429
Suggestions:-
1) rpmlint is NOT silent for SRPM and for RPM.
perl-SWISH.i686: W: no-documentation
==> You should add README and Changes files too this package.

swish-e.i686: W: shared-lib-calls-exit /usr/lib/libswish-e.so.2.0.0 exit@GLIBC_2.0
==> This should be notified to upstream that avoid using exit() in library code.

swish-e.src:97: E: hardcoded-library-path in %{_prefix}/lib/swish-e/perl/*
swish-e.src:100: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*cgi
swish-e.src:102: E: hardcoded-library-path in %{_prefix}/lib/swish-e/swishspider
swish-e.src:103: E: hardcoded-library-path in %{_prefix}/lib/swish-e/*pl
==>  no issues for this.

swish-e-perl.i686: W: no-documentation
==> Here I can see README in prog-bin. Add it.


2) We don't add perl packages as Requires: as rpm/yum supposed to auto detect dependencies and install them. So add them only if yum fails to auto-detect it.

3) you can move following 
Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 to
 perl-SWISH package.

For more information on perl packaging, you can look at perl specfile template.
Comment 12 Parag AN(पराग) 2010-03-22 00:16:30 EDT
ping?
Comment 13 Parag AN(पराग) 2010-04-26 00:29:14 EDT
I have no interest now to review this. Therefore returning this back to NEW queue.
Comment 14 Jason Tibbitts 2010-11-03 12:44:38 EDT
The submitter seems to have gone away, and failed to respond to pings so I'm just going to close this.  However, I'll note that the package builds on rawhide but fails to install due to missing dependencies on perl(Template::Toolkit) and perl(SWISH::API).
Comment 15 Rakesh Pandit 2010-11-03 12:56:23 EDT
Past couple of months have been busy for me, in day job. Will open it in coming three weeks once I have an update.