Spec URL: http://tnorth.fedorapeople.org/python-tables.spec SRPM URL: http://tnorth.fedorapeople.org/python-tables-2.3.1-1.fc15.src.rpm Description: PyTables is a package for managing hierarchical datasets and designed to efficiently and easily cope with extremely large amounts of data. A few licenses for each components of that package can be found in LICENSES/. IMHO, they are just AFL and BSD with various restrictions. But this might need a check.
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:
https://admin.fedoraproject.org/updates/python-tables-3.2.0-1.el7,blosc-1.6.1-1.el7,python-blosc-1.2.7-3.el7,python-numexpr-2.3-4.el7