Investigate if we can do without networkx
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.6k
- Forks
- 779
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 27
Description
AFAIK networkx and python-igraph do the same thing, only that python-igraph is faster.
We also need python-igraph anyway for louvain and so on, so maybe it would be good to get rid of networkx.
Downside: python-igraph and louvain-igraph is currently deliberately an optional dependency since it’s hard to install on windows. People need to build it themselves (A task that even I didn’t manage by now, and I got many things to compile!) or use Christoph Grohlke’s unofficial builds (here and here)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Audit Scanpy's NetworkX usage and compare it with the python-igraph and louvain-igraph requirements, then evaluate the Windows installation constraints; the work is done only if NetworkX can be removed without losing functionality and the dependency tradeoffs are resolved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100