| Summary: | Review Request: python-tables - Hierarchical datasets in Python | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Thibault North <thibault.north> |
| Component: | Package Review | Assignee: | Brendan Jones <brendan.jones.it> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | rawhide | CC: | brendan.jones.it, notting, orion, package-review, zbyszek |
| Target Milestone: | --- | Flags: | zbyszek:
fedora-review+
gwync: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | python-tables-2.3.1-3.fc15 | Doc Type: | Bug Fix |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-11-25 23:27:18 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Thibault North
2011-11-08 03:39:01 UTC
rpmlint -v output: python-tables.src: I: checking python-tables.src: W: spelling-error Summary(en_US) datasets -> data sets, data-sets, databases python-tables.src: W: spelling-error %description -l en_US datasets -> data sets, data-sets, databases python-tables.src: I: checking-url http://www.pytables.org (timeout 10 seconds) python-tables.src: I: checking-url http://sourceforge.net/projects/pytables/files/pytables/2.3.1/tables-2.3.1.tar.gz (timeout 10 seconds) python-tables.x86_64: I: checking python-tables.x86_64: W: spelling-error Summary(en_US) datasets -> data sets, data-sets, databases python-tables.x86_64: W: spelling-error %description -l en_US datasets -> data sets, data-sets, databases python-tables.x86_64: I: checking-url http://www.pytables.org (timeout 10 seconds) python-tables.x86_64: W: no-manual-page-for-binary ptrepack python-tables.x86_64: W: no-manual-page-for-binary nctoh5 python-tables.x86_64: W: no-manual-page-for-binary ptdump python-tables-debuginfo.x86_64: I: checking python-tables-debuginfo.x86_64: I: checking-url http://www.pytables.org (timeout 10 seconds) 3 packages and 0 specfiles checked; 0 errors, 7 warnings. I'll take this review
Hi Thibault,
pretty much there, I've just got a couple of questions. The %check seems to take an awfully long time, and there are a number of test directories installed.
I'm just wondering if they're really necessary.
You could consider a separate doc package also for the examples and documentation, but that's just a suggestion. Full review below, I'll wait for your reply before passing.
[-] N/A
[+] Good
[!] Attention
[?] Clarification
Required
========
[+] named according to the Package Naming Guidelines
[+] The spec file name must match the base package %{name}, in the format
%{name}.spec
[+] Meet the Packaging Guidelines
unless building for F12 and below or EPEL
[!] Be licensed with a Fedora approved license and meet the Licensing
Guidelines
*** You just need to specify the lrucache.py is licensed under AFL
[+] The License field in the package spec file must match the actual license
[+] License file must be included in %doc
[+] The spec file must be written in American English
[+] The spec file for the package MUST be legible
*** I would split the Requires on separate lines for legibility but thats just
personal preference
[+] The sources used to build the package must match the upstream source
shasum c8592ce71809120cf3e8ee8e7befcfaa54085b3c OK
[+] Successfully compile and build into binary rpms on at least one primary
architecture
[+] Proper use of ExcludeArch
[!] All build dependencies must be listed in BuildRequires
*** perhaps python2-devel rather than python-devel, although this is rather cosmetic
[+] The spec file MUST handle locales properly
[-] Shared library files (not just symlinks) in any of the dynamic linker's
default paths, must call ldconfig in %post and %postun
[+] Packages must NOT bundle copies of system libraries
[+] If the package is designed to be relocatable, the packager must state this
fact in the request for review, along with the rationalization for relocation
of that specific package
[+] A package must own all directories that it creates
directories under this
[+] A Fedora package must not list a file more than once in the spec file's
%files listings
[ ] Permissions on files must be set properly. %defattr(...) no longer required
[+] Each package must consistently use macros
[+] The package must contain code, or permissable content
[+] Large documentation files must go in a -doc subpackage
[-] If a package includes something as %doc, it must not affect the runtime of
the application
[-] Header files must be in a -devel package
[-] Static libraries must be in a -static package
[-] library files that end in .so (without suffix) must go in a -devel package
[-] devel packages must require the base package using a fully versioned
dependency
[-] Packages must NOT contain any .la libtool archives
[-] GUI apps must include a %{name}.desktop file, properly installed with
desktop-file-install in the %install section
[+] Packages must not own files or directories already owned by other packages
[+] All filenames in rpm packages must be valid UTF-8
[!] Has BuildRequires: python2-devel and/or python3-devel
https://fedoraproject.org/wiki/Packaging:Python#BuildRequires (As mentioned above)
[-] Defines and uses %{python_sitelib} or %{python_sitearch}:
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif
https://fedoraproject.org/wiki/Packaging:Python#Macros
[?] Has BuildRequires: python-setuptools-devel
I'm really not sure if this is still required?
[+] Python eggs must be built from source. They cannot simply drop an egg from upstream into the proper directory.
[+] Python eggs must not download any dependencies during the build process.
[+] If egg-info files are generated by the modules build scripts they must be included in the package.
[-] When building a compat package, it must install using easy_install -m so it won't conflict with the main package.
[-] When building multiple versions (for a compat package) one of the packages must contain a default version that is usable via "import MODULE" with no prior setup.
[+] A package which is used by another package via an egg interface should provide egg info.
[+] Requires OK
[+] Egg install:
%install
%{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT
Should Items
============
[-] the packager SHOULD query upstream for any missing license text files to
include it
[-] Non-English language support for description and summary sections in the
package spec if available
[+] The reviewer should test that the package builds in mock
[+] The package should compile and build into binary rpms on all supported
architectures
[+] The reviewer should test that the package functions as described
tests OK
[+] If scriptlets are used, those scriptlets must be sane
[-] Usually, subpackages other than devel should require the base package using
a fully versioned dependency
[-] The placement of pkgconfig(.pc) should usually be placed in a -devel pkg
[-] If the package has file dependencies outside of /etc, /bin, /sbin,
/usr/bin, or /usr/sbin consider requiring the package which provides the file
instead of the file itself
[+] Should contain man pages for binaries/scripts
None in source although adequate documentation
Hello Brendan, Thanks for your review. >The %check seems to >take an awfully long time, and there are a number of test directories >installed. >I'm just wondering if they're really necessary. I don't really know. For python-numexpr, I was suggested to add these kind of checks. I guess it will help the tracking of some bugs if tests fail at a rebuild. >You could consider a separate doc package also for the examples and >documentation, but that's just a suggestion. Full review below, I'll wait for >your reply before passing. Done. >[!] Be licensed with a Fedora approved license and meet the Licensing >Guidelines >*** You just need to specify the lrucache.py is licensed under AFL License is set to BSD and AFL: is that good enough? >[?] Has BuildRequires: python-setuptools-devel > >I'm really not sure if this is still required? I don't know. Other python- packages I have seen don't have it. >[!] All build dependencies must be listed in BuildRequires >*** perhaps python2-devel rather than python-devel, although this is rather >cosmetic Fixed. Thanks again, Thibault ...and new URLs of course: Spec URL: http://tnorth.fedorapeople.org/python-tables.spec SRPM URL: http://tnorth.fedorapeople.org/python-tables-2.3.1-2.fc15.src.rpm Thanks Thibault, you just need to be a little more specific as to why its multi-licensed: http://fedoraproject.org/wiki/Packaging:LicensingGuidelines#Multiple_Licensing_Scenarios On closer inspection it looks like pytables bundles lrucache which looks to be a separate package in its own right, although it has been modified slightly by the pytables developers: http://evan.prodromou.name/Software/Python/LRUCache I will try and get some confirmation on this. Hi Thibault, I've run your package by the packing mail list and Toshio has some clear advice on how to proceed: http://lists.fedoraproject.org/pipermail/packaging/2011-November/007985.html Hi Brendan, Thanks for that. I will contact upstream and see what can be done about that. Hi Brendan, According to upstream, Toshio's suggestion was good: remove lrucache.py and get rid of the AFL license. A patch was sent upstream. Here is an updated build. In the %prep section, that file is removed along with its license. Is that good enough for this version of PyTables? Or do we need to remove lrucache.py from the tarball ? Spec URL: http://tnorth.fedorapeople.org/python-tables.spec SRPM URL: http://tnorth.fedorapeople.org/python-tables-2.3.1-3.fc14.src.rpm All good Thibault. This package is APPROVED Thank you Brendan. New Package SCM Request ======================= Package Name: python-tables Short Description: Hierarchical datasets in Python Owners: tnorth Branches: f15 f16 InitialCC: Git done (by process-git-requests). python-tables-2.3.1-3.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/python-tables-2.3.1-3.fc15 python-tables-2.3.1-3.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/python-tables-2.3.1-3.fc16 python-tables-2.3.1-3.fc15 has been pushed to the Fedora 15 testing repository. python-tables-2.3.1-3.fc16 has been pushed to the Fedora 16 stable repository. python-tables-2.3.1-3.fc15 has been pushed to the Fedora 15 stable repository. Thibault/Zbigniew - either of you willing to maintain this in EPEL7? I don't think this should be any issue. I can't provide any special support for EPEL7, but I can build it along with the Fedora version and deal with any bugs which can be reproduced in Fedora. That would be great. I can help out too. Thanks. (In reply to Orion Poplawski from comment #21) > That would be great. I can help out too. Thanks. Great, thanks. Package Change Request ====================== Package Name: python-tables New Branches: epel7 Owners: tnorth zbyszek InitialCC: Git done (by process-git-requests). |