Bug 1407000

Summary: Review Request: python-PuLP - LP modeler written in python
Product: [Fedora] Fedora Reporter: Dan Radez <dradez>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: lobo, package-review
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1418855 (view as bug list) Environment:
Last Closed: 2021-02-15 00:56:01 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:

Description Dan Radez 2016-12-22 04:09:27 UTC
SPRM: https://radez.fedorapeople.org/python-PuLP-1.6.1-2.fc25.src.rpm
Spec: https://radez.fedorapeople.org/python-pulp.spec
Description: LP modeler written in python. More info https://pypi.python.org/pypi/PuLP
Fedora Account System Username: radez

Comment 1 Dan Radez 2016-12-22 04:11:45 UTC
Koji Build here: https://koji.fedoraproject.org/koji/taskinfo?taskID=17021666

Comment 2 Dan Radez 2016-12-22 04:12:18 UTC
*** Bug 1373821 has been marked as a duplicate of this bug. ***

Comment 3 Alan Pevec (Fedora) 2017-01-05 22:31:38 UTC
fedora-review complains about spec/SRPM name diff:
- Spec file name must match the spec package %{name}, in the format
  %{name}.spec.
  Note: python-pulp.spec should be python-PuLP.spec
  See:
  http://fedoraproject.org/wiki/Packaging/NamingGuidelines#Spec_file_name

I'd recommend to use the lowercase.

Comment 4 Dan Radez 2017-01-06 00:51:37 UTC
I agree with you that I would prefer the lower case. The upstream appears to use lowercase.

Though, there is already a project called pulp in fedora, dnf search pulp shows a couple dozen hits.

While there is not an actual package called python-pulp is seems that it would be confusing to the end user.

What do you think? Should I just make it python-pulp or should I make the differentiation with python-PuLP?

I'm not sure I have a strong opinion either way, which is probably why it mismatches in the spec name and package name now.

For now I'll go with you're recommendation on the lower case and if you think otherwise I'll switch it back.

Comment 6 Alan Pevec 2017-01-06 21:10:18 UTC
https://fedoraproject.org/wiki/Packaging:Naming?rd=Packaging:NamingGuidelines#Python_modules suggests
"take into account the name of the module used when importing it in Python scripts"
In this case, it's "import pulp" so python-pulp it is.

Comment 8 Alan Pevec (Fedora) 2017-01-10 22:12:03 UTC
> License:        ASL 2.0

is not correct, fedora-review detected the license as MIT/X11 (BSD like)
Here is the full licensecheck.txt:


MIT/X11 (BSD like)
------------------
PuLP-1.6.1/LICENSE
PuLP-1.6.1/PKG-INFO
PuLP-1.6.1/src/pulp/__init__.py
PuLP-1.6.1/src/pulp/amply.py
PuLP-1.6.1/src/pulp/constants.py
PuLP-1.6.1/src/pulp/pulp.py
PuLP-1.6.1/src/pulp/solvers.py
PuLP-1.6.1/src/pulp/sparse.py

Unknown or generated
--------------------
PuLP-1.6.1/AUTHORS
PuLP-1.6.1/HISTORY
PuLP-1.6.1/INSTALL
PuLP-1.6.1/MANIFEST.in
PuLP-1.6.1/README.md
PuLP-1.6.1/docs.cfg
PuLP-1.6.1/examples/AmericanSteelProblem.py
PuLP-1.6.1/examples/BeerDistributionProblem.py
PuLP-1.6.1/examples/BeerDistributionProblem_resolve.py
PuLP-1.6.1/examples/CG.py
PuLP-1.6.1/examples/CGcolumnwise.py
PuLP-1.6.1/examples/ComputerPlantProblem.py
PuLP-1.6.1/examples/SpongeRollProblem1.py
PuLP-1.6.1/examples/SpongeRollProblem2.py
PuLP-1.6.1/examples/SpongeRollProblem3.py
PuLP-1.6.1/examples/SpongeRollProblem4.py
PuLP-1.6.1/examples/SpongeRollProblem5.py
PuLP-1.6.1/examples/SpongeRollProblem6.py
PuLP-1.6.1/examples/Sudoku1.py
PuLP-1.6.1/examples/Sudoku2.py
PuLP-1.6.1/examples/WhiskasModel1.py
PuLP-1.6.1/examples/WhiskasModel2.py
PuLP-1.6.1/examples/furniture.py
PuLP-1.6.1/examples/test1.py
PuLP-1.6.1/examples/test2.py
PuLP-1.6.1/examples/test3.py
PuLP-1.6.1/examples/test4.py
PuLP-1.6.1/examples/test5.py
PuLP-1.6.1/examples/test6.py
PuLP-1.6.1/examples/test7.py
PuLP-1.6.1/examples/wedding.py
PuLP-1.6.1/ez_setup.py
PuLP-1.6.1/setup.cfg
PuLP-1.6.1/setup.py
PuLP-1.6.1/src/pulp/pulp.cfg.buildout
PuLP-1.6.1/src/pulp/pulp.cfg.linux
PuLP-1.6.1/src/pulp/pulp.cfg.osx
PuLP-1.6.1/src/pulp/pulp.cfg.win
PuLP-1.6.1/src/pulp/tests.py

Comment 9 Dan Radez 2017-01-11 01:36:37 UTC
Updated these links:
https://radez.fedorapeople.org/python-pulp.spec
https://radez.fedorapeople.org/python-pulp-1.6.1-2.fc25.src.rpm

license is now set to MIT/X11 (BSD like)

Comment 10 Alan Pevec (Fedora) 2017-01-12 01:13:49 UTC
ok, fedora-review is not that smart "MIT/X11 (BSD like)" is not listed at https://fedoraproject.org/wiki/Licensing:Main#Software_License_List
It should be simply License: MIT
LICENSE text matches https://fedoraproject.org/wiki/Licensing:MIT?rd=Licensing/MIT#Modern_Style_with_sublicense

Comment 11 Dan Radez 2017-01-12 18:24:45 UTC
Updated these links:
https://radez.fedorapeople.org/python-pulp.spec
https://radez.fedorapeople.org/python-pulp-1.6.1-2.fc25.src.rpm

license is now set to just MIT

Comment 12 Alan Pevec (Fedora) 2017-01-12 23:16:57 UTC
One more thing, sorry for more ping-pong, naming of py2/3 version of binaries is not following https://fedoraproject.org/wiki/Packaging:Python#Naming
If shipping both, they need to be named -X and -X.Y

I'm not sure what is the use-case for pulptest/pulpdoctest except for developers, so we could either drop them all OR even easier, just keep py3 binaries only as in the example spec in Packaging:Python:
%install
%py2_install
%py3_install

Comment 13 Alan Pevec (Fedora) 2017-01-12 23:29:10 UTC
Oops, one more :(
We also have a file conflict with python2-pulp-common subpackage of pulp mega RPM https://koji.fedoraproject.org/koji/packageinfo?packageID=21756
from project https://github.com/pulp/pulp

[!]: Package does not own files or directories owned by other packages.
     Note: Dirs in package are owned also by: /usr/lib/python2.7/site-
     packages/pulp(python2-pulp-common)


I guess they are to blame for taking over the namespace which they did not reserve on PyPI, https://pypi.python.org/pypi/pulp redirects to https://pypi.python.org/pypi/PuLP

Not sure what we can do now, any ideas Haikel?

Comment 14 Haïkel Guémar 2017-01-13 09:29:11 UTC
Well, among criteria used to untie, we look at upstream activity but both are reasonably maintained and PuLP has reserved name on PyPI.

Technical solutions are:
1. rename either of the modules, and fix all software using it. Not very practical as both projects are used.
2. have python-pulp conflict python2-pulp-common (+ comment explaining why) and I'd rename the package to python-PuLP to avoid more confusion. 

I'd recommend option 2.

Comment 15 Dan Radez 2017-01-13 15:13:32 UTC
I've updated these files according to Haikel's recommendation:
https://radez.fedorapeople.org/python-PuLP.spec
https://radez.fedorapeople.org/python-PuLP-1.6.1-2.fc25.src.rpm

Comment 16 Alan Pevec (Fedora) 2017-01-17 14:22:33 UTC
This matches 2nd case, name conflict of not compatible libs : https://fedoraproject.org/wiki/Packaging:Conflicts#Library_Name_Conflicts

Guideline requires to ask one of the upstreams to rename itself, which is unlikely, so we need FPC ticket, I've opened: https://fedorahosted.org/fpc/ticket/671 and FYI bug 1414000 for current pulp RPM maintainers.

Comment 17 Dominik 'Rathann' Mierzejewski 2017-01-17 14:55:37 UTC
(In reply to Alan Pevec from comment #16)
> This matches 2nd case, name conflict of not compatible libs :
> https://fedoraproject.org/wiki/Packaging:Conflicts#Library_Name_Conflicts
> 
> Guideline requires to ask one of the upstreams to rename itself, which is
> unlikely,

Even if you think it's unlikely, you should still try asking nicely. You never know if they're amenable or not unless there have been previous failed attempts.

Comment 18 Alan Pevec (Fedora) 2017-01-18 22:53:42 UTC
Asked nicely in https://pulp.plan.io/issues/2531
got nice reply in https://fedorahosted.org/fpc/ticket/671#comment:4
so we are proceeding with Conflicts: solution in this review, while waiting for FPC approval.

Comment 19 Javier Peña 2017-10-17 11:04:10 UTC
My understanding from https://pagure.io/packaging-committee/issue/671#comment-436821 is that we can go ahead with the package, declaring an explicit Conflicts: (as it is done in the package currently on RDO).

Could we move ahead with the package review? This one is blocking openstack-congress in RDO for Fedora Rawhide.

Comment 20 Dan Radez 2017-10-17 12:14:54 UTC
Sure thing, I'll take some time today to get the conflict put in to get it moved forward.

Comment 21 Package Review 2021-02-14 00:45:25 UTC
This is an automatic check from review-stats script.

This review request ticket hasn't been updated for some time, but it seems
that the review is still being working out by you. If this is right, please
respond to this comment clearing the NEEDINFO flag and try to reach out the
submitter to proceed with the review.

If you're not interested in reviewing this ticket anymore, please clear the
fedora-review flag and reset the assignee, so that a new reviewer can take
this ticket.

Without any reply, this request will shortly be resetted.

Comment 22 Alan Pevec (Fedora) 2021-02-14 10:45:51 UTC
Dan, are you still interested to add this package to Fedora?
Links to proposed spec at radez.fedorapeople.org are now 404.
Honestly, I forgot what was this dependency for :)

Comment 23 Alan Pevec (Fedora) 2021-02-14 10:55:12 UTC
FWIW pulpproject.org is since their 3.0.0 release publishing into non-conflicting namespaces in pypi: https://pypi.org/user/pulp/
It was also retired in Fedora https://src.fedoraproject.org/rpms/pulp/c/740d2a375360c4858ad601155f45584c8ce71fb3

Comment 24 Dan Radez 2021-02-15 00:56:01 UTC
I don't think we need this anymore. I don't remember what it was for either :)