Bug 1647987 - EPEL7 - cjdns-graph won't install on RHEL 7.6
Summary: EPEL7 - cjdns-graph won't install on RHEL 7.6
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: cjdns
Version: epel7
Hardware: Unspecified
OS: Unspecified
Target Milestone: ---
Assignee: Stuart D Gathman
QA Contact: Fedora Extras Quality Assurance
Depends On:
Blocks: EPEL7FailsToInstall
TreeView+ depends on / blocked
Reported: 2018-11-08 16:56 UTC by Troy Dawson
Modified: 2018-11-29 00:44 UTC (History)
1 user (show)

Fixed In Version: cjdns-20.2-5.el7
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2018-11-29 00:44:06 UTC
Type: Bug

Attachments (Terms of Use)

Description Troy Dawson 2018-11-08 16:56:13 UTC
Current cjdns-graph for EPEL7 (cjdns-graph-20.2-4.el7) requires
EPEL7 only has

Please fix this package so that it can be installed in RHEL 7.6.
If you have not responded in a week, we will have a proven packager fix it.
If you know you will not be able to get to it and would like it fixed sooner, please let us know in this bug.
If you feel this package should no longer be in EPEL7, please let us know in this bug.

Comment 1 Stuart D Gathman 2018-11-08 18:54:19 UTC
(01:45:26 PM) SDGathman: Should python-foo packages in EPEL Provide python2-foo ?
(01:46:09 PM) SDGathman: Otherwise, Fedora packages need extra %if logic to Require python-foo on EPEL, but python2-foo on Fedora.
(01:47:31 PM) tibbs: sdgathman: Of course they should.
(01:48:12 PM) tibbs: But then they are supposed to actually be called python2-foo and they can provide python-foo on EPEL via the already existing macros to do tha5t.
(01:50:45 PM) tibbs: Sadly there are 619 python-* packages in EPEL7 that I can see.  They should all be fixed.
(01:51:19 PM) SDGathman: Can I quote on https://bugzilla.redhat.com/show_bug.cgi?id=1647987 ?
(01:51:48 PM) SDGathman: Should I fix cjdns, or should python-networkx get fixed?  Or both?
(01:52:23 PM) tibbs: python-networkx was last updated in EPEL 4.5 years ago....
(01:52:59 PM) SDGathman: If I add the %if logic to require python-networkx, then it will have to get changed again when python-networkx is fixed.
(01:53:20 PM) SDGathman: Or should python2-networkx Provide python-networkx ?
(01:53:36 PM) tibbs: Yes, it should, via the existing mechanism for doing that.
(01:53:49 PM) SDGathman: Ok, then I will add the %if logic to cjdns.

Comment 2 Stuart D Gathman 2018-11-08 19:17:25 UTC
While I'm at it, I think the python cjdns-admin API should be put in %{python_sitelib}.

Comment 3 Stuart D Gathman 2018-11-09 03:48:59 UTC
Testing the new release on el7, python2-cjdns installs and works.  cjdns-graph installs, and begins to work, but gets a traceback:

$ graphStats
==================Graph Stats==================
Number of Nodes:  54
Number of Edges:  91
Maximum Shortest Path Length:  7
Average Shortest Path Length:  3.185 Traceback (most recent call last):
  File "/bin/graphStats", line 37, in <module>
    print 'Average Shortest Path Length: ',str(mean_h)[0:5], u'\u00B1',str(std_h)[0:5]
UnicodeEncodeError: 'ascii' codec can't encode character u'\xb1' in position 0: ordinal not in range(128)

I am testing on Fedora 28 now.

Comment 4 Stuart D Gathman 2018-11-09 04:03:14 UTC
It does work on F28:

$ graphStats
==================Graph Stats==================
Number of Nodes:  18
Number of Edges:  31
Maximum Shortest Path Length:  6
Average Shortest Path Length:  3.388 ± 1.495
Maximum Number of Connections:  7
Average Number of Connections:  3.444 ± 1.535

So the problem is, cjdns-graph now installs on EL7, but doesn't run.  Should I just exclude the subpackage for el7?

Comment 5 Stuart D Gathman 2018-11-09 04:10:35 UTC
That crash is probably fixable, as the default encoding is ascii on el7, but something bigger on Fedora.

Comment 6 Stuart D Gathman 2018-11-09 04:43:08 UTC
So, graphStats is fixed, dumpgraph works, and drawgraph gets much farther on el7 after installing python2-matplotlib.  It now fails with:

Traceback (most recent call last):
  File "/usr/bin/drawgraph", line 19, in <module>
AttributeError: 'module' object has no attribute 'spring_layout'

It seems that the version of python-networkx on el7 is too old (1.8.1) to have spring_layout.

Comment 7 Stuart D Gathman 2018-11-09 22:35:23 UTC
I'm thinking that drawgraph is pretty useful, and graphStats works - so I should include the package on el7, with some release notes that drawgraph is broken until python-networkx on el7 is updated.

Comment 8 Fedora Update System 2018-11-12 01:42:45 UTC
cjdns-20.2-5.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2018-c726fec101

Comment 9 Fedora Update System 2018-11-13 03:35:33 UTC
cjdns-20.2-5.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2018-c726fec101

Comment 10 Troy Dawson 2018-11-28 18:32:50 UTC
This updated package is installable on RHEL 7.6, and is past it's 14 days in testing.  Unless there is a reason you know about, this can be marked as stable and pushed to epel7.

Comment 11 Stuart D Gathman 2018-11-28 18:35:07 UTC
It is pushed to "Batched".

Comment 12 Fedora Update System 2018-11-29 00:44:06 UTC
cjdns-20.2-5.el7 has been pushed to the Fedora EPEL 7 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.