Bug 1668197 - request to improve packaging
Summary: request to improve packaging
Alias: None
Product: Fedora
Classification: Fedora
Component: python-networkx
Version: rawhide
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Jerry James
QA Contact: Fedora Extras Quality Assurance
Depends On:
TreeView+ depends on / blocked
Reported: 2019-01-22 08:01 UTC by dac.override
Modified: 2019-05-08 01:11 UTC (History)
1 user (show)

Fixed In Version: python-networkx-2.3-1.fc30
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2019-05-08 01:11:58 UTC

Attachments (Terms of Use)

Description dac.override 2019-01-22 08:01:15 UTC
Description of problem:

SETools depends on python3-networkx with only its default depdencies. There is currently no way to install python3-networkx with only its default dependencies.

Looking at the github repository seems to suggest that there should be three  or four packages:

python3-networkx (default)

here are the lists of dependencies for the above packages respectively:

(default) https://github.com/networkx/networkx/blob/master/requirements/default.txt
python3-networkx-extras https://github.com/networkx/networkx/blob/master/requirements/extras.txt
python3-networkx-doc https://github.com/networkx/networkx/blob/master/requirements/doc.txt
python3-networkx-test https://github.com/networkx/networkx/blob/master/requirements/test.txt

I would love to be able to install setools with as little dependencies as possible

Comment 1 Jerry James 2019-04-26 21:05:29 UTC
Sorry to take so very long to get to this.  I have been swamped for months with packages that had fatal build or runtime errors.

I would like to address this issue and update to version 2.3.  We have already split the docs into its own subpackage, and it certainly makes sense to move the tests into their own subpackage as well.  I'm not so sure that it makes sense to move everything with a dependency in python3-networkx-extras into a subpackage, though.  That is a list of optional dependencies, not a list of networkx files that can be excluded.  The code mostly already checks whether an optional dependency is available and throws an exception describing the problem if it is not.  I'm loath to replace that mechanism with errors caused by files being missing altogether, if the appropriate subpackage is not installed.

Would it serve your purposes if all of the current Requires, except for the one on decorator, were changed to Recommends or Suggests instead?  I prefer Recommends, because then end users get them by default, but power users can avoid them.

Comment 2 dac.override 2019-04-27 06:29:50 UTC
Yes "Recommends" is better than nothing, You might in addition to that also be able to use conditional reqquires for some of the dependencies. For example "only require foo if bar is installed".

Comment 3 Fedora Update System 2019-04-27 23:59:46 UTC
python-networkx-2.3-1.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-9deefc8093

Comment 4 Fedora Update System 2019-04-29 17:40:25 UTC
python-networkx-2.3-1.fc30 has been pushed to the Fedora 30 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-9deefc8093

Comment 5 Fedora Update System 2019-05-08 01:11:58 UTC
python-networkx-2.3-1.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

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