wimglenn / johnnydep

Display dependency tree of Python distribution
MIT License
496 stars 27 forks source link

scanpy-scripts crashes johnnydep #57

Open mathog opened 3 years ago

mathog commented 3 years ago

"scanpy-scripts" is currently having dependency problems. This:

johnnydep --output-format pinned scanpy-scripts

fails in a manner which might not be what you intended. In any case, it did not detect a version conflict, it is more like it crashed because of one. Perhaps you might want to have a look before the scanpy-scripts people finally fix whatever is currently wrong there?

The installation of scanpy-scripts in a venv fails because it tries to install louvain 0.6.1. ( Note: louvain 0.7.0 has installed successfully before on this system.) Before louvain installed igraph 0.8.2 had been installed. Then louvain wanted something from it, could not find it, and tried to build igraph 0.7.1 on its own, which is probably why everything blew up in the scanpy-scripts pip3 install. That seems to be pretty much what happened in the johnnydep command above too.

mathog commented 3 years ago

Note, the reason it all goes wrong, it turns out, is that on the test system libigraph.so was not installed and the process being used did not have sufficient privileges to build and install it. It took me a while to figure this out because the failed build/install generated so many warnings and errors that I missed the somewhat subtle warning

Cannot find the C core of igraph on this system using pkg-config

which resulted from the missing library. Here is a similar error log from a failed install of just python-igraph

https://github.com/igraph/igraph/issues/598

although that compilation may have failed for other reasons. Like in this log, there was no

WARNING: we were not able to detect where igraph is installed on your machine (if it is installed at all).

which apparently sometimes appears after the "Core" message.