Bug 1407000 - Review Request: python-PuLP - LP modeler written in python
Summary: Review Request: python-PuLP - LP modeler written in python
Keywords:
Status: ASSIGNED
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Alan Pevec (Fedora)
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1373821 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-12-22 04:09 UTC by Dan Radez
Modified: 2020-02-14 14:25 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1418855 (view as bug list)
Environment:
Last Closed:
Type: ---
apevec+fedora: fedora-review?


Attachments (Terms of Use)

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.


Note You need to log in before you can comment on or make changes to this bug.