v1.3.0
Add Leiden modularity optimization
- Replace Louvain modularity optimization (from the deprecated
louvain-igraph
) with Leiden (fromleidenalg
). - Update documentation and resolve deprecated uses of
scipy
,matplotlib
, andrandom.sample
. - Drop support for Python 3.7, matching much of the Python scientific community.
Overall, this should make the single-layer functions faster and multi-layer functions faster when the number of layers is small. As the number of layers grows, the inefficiencies of the leidenalg
implementation will eventually make the algorithm extremely slow. As such, we keep the legacy Louvain multi-layer functionality in modularitypruning.louvain_utilities
.
By dropping support for Python 3.7, the dependency lists are greatly simplified (many of our dependencies, including numpy and scipy, stopped supporting 3.7 last year).
Full Changelog: v1.2.3...v1.3.0