Bug 1775445

Summary: Review Request: python-jupymake - Python wrapper for the polymake shell
Product: [Fedora] Fedora Reporter: Jerry James <loganjerry>
Component: Package ReviewAssignee: Zbigniew Jędrzejewski-Szmek <zbyszek>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, zbyszek
Target Milestone: ---Flags: zbyszek: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-12-16 01:19:10 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1775446    

Description Jerry James 2019-11-22 01:26:08 UTC
Spec URL: https://jjames.fedorapeople.org/python-JuPyMake/python-JuPyMake.spec
SRPM URL: https://jjames.fedorapeople.org/python-JuPyMake/python-JuPyMake-0.9-1.20190509.031cc3a.fc32.src.rpm
RPMLINTRC URL: https://jjames.fedorapeople.org/python-JuPyMake/python-JuPyMake.rpmlintrc
Fedora Account System Username: jjames
Description: This package provides a basic interface to call polymake from python.  It is meant to be used in the Jupyter interface for polymake.

This package is currently built as part of the polymake SRPM.  I am extracting it because it has a different version number and a different upstream from polymake.

The cocoalib-devel and libnormaliz-devel BRs are only needed due to a bug in the packaging of polymake, and will be removed soon when the polymake package is fixed.  Similarly, the shared object winds up with an rpath (= %{_libdir}).  That will also be fixed when polymake is updated.

Comment 1 Zbigniew Jędrzejewski-Szmek 2019-11-22 16:10:11 UTC
python-jupymake please [https://docs.fedoraproject.org/en-US/packaging-guidelines/Naming/#_general_naming].

Comment 2 Zbigniew Jędrzejewski-Szmek 2019-11-22 16:32:16 UTC
Please change name to lowercase.

Issues:
=======
- Package contains BR: python2-devel or python3-devel
https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_dependencies
says
> Packages building for Python 3 will need BuildRequires: python3-devel.

- Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
  Note: Package contains %{pythonX_site(lib|arch)}/* in %files
  See: https://pagure.io/packaging-committee/issue/782
Yep, please switch to a more specific pattern.

Comment 3 Jerry James 2019-11-25 04:59:28 UTC
(In reply to Zbigniew Jędrzejewski-Szmek from comment #2)
> Please change name to lowercase.

Done.

> Issues:
> =======
> - Package contains BR: python2-devel or python3-devel
> https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/
> #_dependencies
> says
> > Packages building for Python 3 will need BuildRequires: python3-devel.

Ha, that's funny.  We have dueling packaging guidelines.  The spec file contains:

BuildRequires: pkgconfig(python3)

because of the packaging guideline that says you have to use the pkgconfig(foo) variant when it is available ... which it is with python3-devel.  So I think the python guidelines will have to be updated to say that you must BR pkgconfig(python2) or pkgconfig(python3).

> - Python packages must not contain %{pythonX_site(lib|arch)}/* in %files
>   Note: Package contains %{pythonX_site(lib|arch)}/* in %files
>   See: https://pagure.io/packaging-committee/issue/782
> Yep, please switch to a more specific pattern.

Oops, that was an oversight.  I generated the spec file with rpmdev-newspec, which put that glob there.  I saw it and intended to make it more specific, but forgot.  New URLs:

Spec URL: https://jjames.fedorapeople.org/python-jupymake/python-jupymake.spec
SRPM URL: https://jjames.fedorapeople.org/python-jupymake/python-jupymake-0.9-1.20190509.031cc3a.fc32.src.rpm
RPMLINTRC URL: https://jjames.fedorapeople.org/python-jupymake/python-jupymake.rpmlintrc

Comment 4 Zbigniew Jędrzejewski-Szmek 2019-11-25 07:44:57 UTC
I always interpreted this that the pkgonfig guidelines don't apply in this case, because
https://docs.fedoraproject.org/en-US/packaging-guidelines/PkgConfigBuildRequires/
says
> Fedora packages which use pkg-config to build against a library
and here neither pkg-config is used, nor are just building against a library.
For example, the python3-devel package might provide the python3_foo or py_project
macros and other stuff required even for non-compiled python projects.
Also, language-specific rules would trump general guidelines.

> Spec URL: https://jjames.fedorapeople.org/python-jupymake/python-jupymake.spec
404 :(

Comment 5 Jerry James 2019-11-26 04:08:49 UTC
Good grief.  This might almost be comical if it wasn't so embarrassing.  The URLs should be valid now.  I forgot to rename the enclosing directory from python-JuPyMake to python-jupymake.  And the spec file contains BR: python3-devel.

Comment 6 Zbigniew Jędrzejewski-Szmek 2019-11-26 13:58:43 UTC
+ package name is OK
+ license is acceptable (GPLv2+)
+ license is specified correctly
+ builds and installs OK
+ Provides/BR/R look OK

rpmlint has nothing useful.

Package is APPROVED.

Comment 7 Jerry James 2019-11-26 20:13:58 UTC
Thank you for your patience.  I appreciate the review.

Comment 8 Gwyn Ciesla 2019-11-26 21:02:30 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/python-jupymake

Comment 9 Fedora Update System 2019-11-29 18:11:37 UTC
FEDORA-2019-b9d4340b95 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 10 Fedora Update System 2019-11-30 01:20:02 UTC
cocoalib-0.99650-1.fc31, giac-1.5.0.63-4.fc31, normaliz-3.8.3-1.fc31, polymake-3.6-1.fc31, python-jupymake-0.9-1.20190509.031cc3a.fc31, python-jupyter-polymake-0.16-11.20180129.7049940.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 11 Fedora Update System 2019-12-02 18:32:46 UTC
FEDORA-2019-b9d4340b95 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 12 Fedora Update System 2019-12-03 00:53:40 UTC
Singular-4.1.1p3-10.fc31, cocoalib-0.99650-1.fc31, giac-1.5.0.63-4.fc31, normaliz-3.8.3-1.fc31, polymake-3.6-1.fc31, python-jupymake-0.9-1.20190509.031cc3a.fc31, python-jupyter-polymake-0.16-11.20180129.7049940.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 13 Fedora Update System 2019-12-07 17:10:50 UTC
FEDORA-2019-b9d4340b95 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 14 Fedora Update System 2019-12-08 01:46:40 UTC
Singular-4.1.1p3-10.fc31, cocoalib-0.99650-1.fc31, giac-1.5.0.75-2.fc31, normaliz-3.8.3-1.fc31, polymake-3.6-1.fc31, python-jupymake-0.9-1.20190509.031cc3a.fc31, python-jupyter-polymake-0.16-11.20180129.7049940.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-b9d4340b95

Comment 15 Fedora Update System 2019-12-16 01:19:10 UTC
Singular-4.1.1p3-10.fc31, cocoalib-0.99650-1.fc31, giac-1.5.0.75-2.fc31, normaliz-3.8.3-1.fc31, polymake-3.6-1.fc31, python-jupymake-0.9-1.20190509.031cc3a.fc31, python-jupyter-polymake-0.16-11.20180129.7049940.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.