| Summary: | Review Request: vcftools - VCF file manipulation tools | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Adam Huffman <bloch> | ||||||
| Component: | Package Review | Assignee: | Mario Blättermann <mario.blaettermann> | ||||||
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | medium | Docs Contact: | |||||||
| Priority: | medium | ||||||||
| Version: | rawhide | CC: | alex, fedora, fedora-package-review, ihok, mario.blaettermann, notting, ron | ||||||
| Target Milestone: | --- | Flags: | mario.blaettermann:
fedora-review+
gwync: fedora-cvs+ |
||||||
| Target Release: | --- | ||||||||
| Hardware: | All | ||||||||
| OS: | Linux | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2012-09-01 21:11:20 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Attachments: |
|
||||||||
|
Description
Adam Huffman
2011-03-21 16:28:05 UTC
There are two errors found by rpmlint:
vcftools.src:35: E: hardcoded-library-path in %{buildroot}/usr/lib/FaSlice.pm
A library path is hardcoded to one of the following paths: /lib, /usr/lib. It
should be replaced by something like /%{_lib} or %{_libdir}.
vcftools.src:36: E: hardcoded-library-path in %{buildroot}/usr/lib/Vcf.pm
A library path is hardcoded to one of the following paths: /lib, /usr/lib. It
should be replaced by something like /%{_lib} or %{_libdir}.
This is because some of the installation paths are hardcoded in the Makefiles, so I had to move files in the .spec. If it's preferable to patch the Makefile, let me know.
FYI, the spec works for the new vcftools 0.1.5 with the following changes. First, the tarball is not _v0.1.5.tar.gz, just _0.1.5.tar.gz. Second, compare-vcf, query-vcf and and merge-vcf have been renamed to vcf-compare, vcf-query, and vcf-merge. Actually, no, it doesn't work.
Error: Package: vcftools-0.1.5-1.el6.x86_64 (/vcftools-0.1.5-1.el6.x86_64)
Requires: perl(VcfStats)
The spec file probably needs to be patched to include VcfStats.pm under the perl mv step and under %files. Also, it looks like vcftools_0.1.5/perl/Makefile needs to be patched to include to VcfStats.pm in the MOD target. [I haven't tried this, just taking notes.]
Created attachment 496148 [details]
Patch to vcftools.spec
Created attachment 496149 [details]
Patch to perl/Makefile
vcftools 0.1.15 builds and installs with the enclosed patches. I've applied your patches with some changes and other fixes. Results are at: http://verdurin.fedorapeople.org/reviews/vcftools/vcftools.spec http://verdurin.fedorapeople.org/reviews/vcftools/vcftools-0.1.5-2.fc16.src.rpm Thanks for the assistance. Updated to 0.1.6: http://verdurin.fedorapeople.org/reviews/vcftools/vcftools.spec http://verdurin.fedorapeople.org/reviews/vcftools/vcftools-0.1.6-1.fc17.src.rpm Updated to 0.1.7: http://verdurin.fedorapeople.org/reviews/vcftools/vcftools.spec http://verdurin.fedorapeople.org/reviews/vcftools/vcftools-0.1.7-1.fc17.src.rpm koji scratch build worked fine: http://koji.fedoraproject.org/koji/taskinfo?taskID=3623169 I'll try to have a look at this in more detail soon. Scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4339151 $ rpmlint -i -v * vcftools.i686: I: checking vcftools.i686: I: checking-url http://vcftools.sourceforge.net/ (timeout 10 seconds) vcftools.i686: W: no-manual-page-for-binary vcftools Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-stats Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary fill-aa Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-annotate Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-subset Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-concat Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-to-tab Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-compare Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-isec Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-query Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary fill-an-ac Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-validator Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-sort Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-merge Each executable in standard binary directories should have a man page. vcftools.i686: W: no-manual-page-for-binary vcf-convert Each executable in standard binary directories should have a man page. vcftools.src: I: checking vcftools.src: I: checking-url http://vcftools.sourceforge.net/ (timeout 10 seconds) vcftools.src: I: checking-url http://downloads.sourceforge.net/vcftools/vcftools_0.1.7.tar.gz (timeout 10 seconds) vcftools.x86_64: I: checking vcftools.x86_64: I: checking-url http://vcftools.sourceforge.net/ (timeout 10 seconds) vcftools.x86_64: W: no-manual-page-for-binary vcftools Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-stats Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary fill-aa Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-annotate Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-subset Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-concat Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-to-tab Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-compare Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-isec Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-query Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary fill-an-ac Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-validator Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-sort Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-merge Each executable in standard binary directories should have a man page. vcftools.x86_64: W: no-manual-page-for-binary vcf-convert Each executable in standard binary directories should have a man page. vcftools-debuginfo.i686: I: checking vcftools-debuginfo.i686: I: checking-url http://vcftools.sourceforge.net/ (timeout 10 seconds) vcftools-debuginfo.x86_64: I: checking vcftools-debuginfo.x86_64: I: checking-url http://vcftools.sourceforge.net/ (timeout 10 seconds) 5 packages and 0 specfiles checked; 0 errors, 30 warnings. A lot of because of missing man pages, nothing of interest so far. Formal review will follow. ---------------------------------
key:
[+] OK
[.] OK, not applicable
[X] needs work
---------------------------------
[+] MUST: The package must be named according to the Package Naming Guidelines.
[+] MUST: The spec file name must match the base package %{name}.
[+] MUST: The package must meet the Packaging Guidelines.
[+] MUST: The package must be licensed with a Fedora approved license.
GPLv3
[+] MUST: The License field in the package spec file must match the actual
license.
[.] MUST: The file containing the text of the license(s) for the package must
be included in %doc.
The upstream developers doesn't ship a license file, only a license
declaration within README.
[+] MUST: The spec file must be written in American English.
[+] MUST: The spec file for the package MUST be legible.
[+] MUST: The sources used to build the package must match the upstream source.
$ md5sum *
d3e68027a7fe40d3f8cb28c3006c7248 vcftools_0.1.7.tar.gz
d3e68027a7fe40d3f8cb28c3006c7248 vcftools_0.1.7.tar.gz.orig
[+] MUST: The package MUST successfully compile and build into binary rpms on
at least one primary architecture.
- See Koji build above.
[.] MUST: If the package does not successfully compile, build or work on an
architecture, ...
[+] MUST: All build dependencies must be listed in BuildRequires.
[.] MUST: The spec file MUST handle locales properly.
[.] MUST: If a package installs files below %{_datadir}/icons, the icon cache
must be updated.
[.] MUST: Packages storing shared library files (not just symlinks) must call
ldconfig in %post and %postun.
[.] MUST: Packages must NOT bundle copies of system libraries.
[.] MUST: If the package is designed to be relocatable, ...
[+] MUST: A package must own all directories that it creates.
[+] MUST: A Fedora package must not list a file more than once in %files.
[+] MUST: Permissions on files must be set properly.
[+] MUST: Packages must not provide RPM dependency information when that
information is not global in nature, or are otherwise handled.
[.] MUST: When filtering automatically generated RPM dependency information,
the filtering system implemented by Fedora must be used.
[+] MUST: Each package must consistently use macros.
[+] MUST: The package must contain code, or permissable content.
[.] MUST: Large documentation files must go in a -doc subpackage.
[+] MUST: Files in %doc must not affect the runtime of the application.
[.] MUST: Header files must be in a -devel package.
[.] MUST: Static libraries must be in a -static package.
[.] MUST: If a package contains library files with a suffix (e.g.
libfoo.so.1.1), ...
[.] MUST: devel packages must require the base package using a fully versioned
dependency.
[.] MUST: Packages must NOT contain any .la libtool archives.
[.] MUST: Packages containing GUI applications must include a %{name}.desktop
file
[+] MUST: .desktop files must be properly installed with desktop-file-install
in the %install section.
[+] MUST: Packages must not own files or directories already owned by other
packages.
[+] MUST: All filenames in rpm packages must be valid UTF-8.
[.] SHOULD: If the source package does not include license text(s) as a
separate file from upstream, the packager SHOULD query upstream...
[+] SHOULD: Timestamps of files should be preserved.
[+] SHOULD: The reviewer should test that the package builds in mock.
See Koji build above (which uses mock anyway)
[.] SHOULD: The reviewer should test that the package functions as described.
Not tested. Due to the age of the package I assume it has been tested
by the packager.
[+] SHOULD: If scriptlets are used, those scriptlets must be sane.
[.] SHOULD: Usually, subpackages other than devel should require the base
package using a fully versioned dependency.
[.] SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg.
[.] SHOULD: If the package has file dependencies outside of /etc, /bin, /sbin,
/usr/bin, or /usr/sbin ...
[.] SHOULD: Your package should contain man pages for binaries/scripts.
Currently no man pages available.
--------------------------------------
PACKAGE APPROVED
--------------------------------------
Adam, if you don't want to provide your package for EPEL <6, then please remove "BuildRoot:", the %clean section and %defattr.
BTW, there is a new version 0.1.9 available from SourceForge.
Thanks for the review. I do intend to maintain it for EPEL5, so I'll keep those otherwise obsolete parts. New Package SCM Request ======================= Package Name: vcftools Short Description: VCF file manipulation tools Owners: verdurin Branches: f16 f17 el5 el6 InitialCC: Git done (by process-git-requests). @Adam, there were no builds yet for the targeting branches. Would be nice to be able to close this review request soon. (In reply to comment #16) > @Adam, there were no builds yet for the targeting branches. Would be nice to > be able to close this review request soon. Oops, yes, I forgot. Built them all this morning. All packages except the EPEL ones are now in the updates repo. I close this bug. |