pnnl / HyperNetX

Python package for hypergraph analysis and visualization.
https://hypernetx.readthedocs.io
Other
561 stars 92 forks source link

[joss] More clarity on (optional) dependencies #142

Closed szhorvat closed 9 months ago

szhorvat commented 10 months ago

I followed the installation instructions in https://hypernetx.readthedocs.io/en/latest/install.html and installed into a new virtual environment from PyPI using pip install hypernetx. When I load the package, the following message is shown:

>>> import hypernetx
 No module named 'igraph'. If you need to use hypernetx.algorithms.hypergraph_modularity, please install additional packages by running the following command: pip install .['all']

This is not an ideal user experience, and is likely confusing to some new users. They may be wondering: "Did I install correctly? Will some essential functionality not be working?"

I suggest:

Ref: https://github.com/openjournals/joss-reviews/issues/6016

bonicim commented 9 months ago

Resolved in release 2.14

szhorvat commented 9 months ago

Is pip install hypenetx['all'] something that should be suggested?

bonicim commented 9 months ago

pip install hypenetx['all'] installs Jupyter, allowing the user to open one of the tutorials in the repo; it also installs the dependencies needed for the contagion and modularity sub-modules. The documentation recommends this.

szhorvat commented 9 months ago

Could you please clarify where the documentation mentions this command? I can only see pip install -e .['all'] in the section about installing from source.

My impression was that the target audience of this library is not just developers, but mainly researchers. I expect most of them won't want to install from source and won't necessarily notice that pip install hypenetx['all'] is also a valid command.

bonicim commented 9 months ago

I see your point about the target audience being researchers. I will update the installing from PyPi instructions to include a snippet about pip install hypernetx['all']

bonicim commented 9 months ago

Have just updated installation steps on the docs: https://hypernetx.readthedocs.io/en/latest/install.html#id1