FS#69732 - [python-igraph] igraph should not be a dependency

Attached to Project: Community Packages
Opened by Fabio Zanini (iosonofabio) - Sunday, 21 February 2021, 21:29 GMT
Last edited by Antonio Rojas (arojas) - Monday, 22 February 2021, 13:01 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Antonio Rojas (arojas)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No



Hi guys,

Thank you for maintaining the igraph and python-igraph packages in arch. I've been using them for ages for my work and am really grateful!

I'm also one of igraph's (igraph.org) and python-igraph's developers and an arch linux user for 12 years or so.

The community/python-igraph package in arch has a dependency on community/igraph. Although these two packages are linked conceptually, in practice modern versions of python-igraph ship a statically linked igraph version for stability purposes. Indeed, I removed community/igraph from my system and python-igraph works anyway:

# pacman -Rdd igraph
$ python
>>> import igraph as ig
>>> g = ig.Graph.Full(3)

I would like to request to remove community/igraph from the list of dependencies of python-igraph, since it's not really needed.

Thank you!

Steps to reproduce:

- well, all works already, it' just an *unecessary* but not particularly dangerous dependency
This task depends upon

Closed by  Antonio Rojas (arojas)
Monday, 22 February 2021, 13:01 GMT
Reason for closing:  Fixed
Additional comments about closing:  python-igraph 0.8.3
Comment by Antonio Rojas (arojas) - Sunday, 21 February 2021, 22:52 GMT
ugh, and it's even bundling glpk, lapack and arpack. Not good.
Comment by Fabio Zanini (iosonofabio) - Sunday, 21 February 2021, 22:57 GMT
yes BUT please do not start unbundling it quite yet!

The main distribution of python-igraph relies on statically linking those things. I am advocating with the other devs to at least stay compatible with folks who want to use dynamically linked libraries as much as possible, but making sure that all works with arch's versions of things is not trivial.

Therefore my suggestion is to proceed in two steps:

1. remove the igraph dep since it's confusing for users. That takes a minute and python-igraph will "just work"

2. check the feasibility of full dynamic linkage for the package. That is expected to take longer.

Above all, let's try to not break python-igraph in arch, because I need it for work!