cdlib icon indicating copy to clipboard operation
cdlib copied to clipboard

Conda Packaging

Open GiulioRossetti opened this issue 3 years ago • 3 comments

To prepare a conda package for cdlib a few dependencies without a dedicated conda distribution need to be packaged as well.

Here's the list of satisfied/not satisfied dependencies so far (channels: conda-forge, giuliorossetti):

  • [x] numpy
  • [x] future
  • [x] matplotlib
  • [x] scikit-learn
  • [x] tqdm
  • [x] networkx
  • [x] demon
  • [x] python-louvain
  • [x] nf1
  • [x] scipy
  • [x] pulp
  • [x] seaborn
  • [x] pandas
  • [x] eva_lcd
  • [x] karateclub
  • [x] bimlpa
  • [x] markov_clustering
  • [x] python-igraph
  • [x] leidenalg
  • [x] angel_cd
  • [x] pooch
  • [x] dynetx
  • [x] thresholdclustering
  • [x] pyclustering
  • [x] cython
  • [x] python-Levenshtein
  • [x] graph-tool
  • [x] gmpy2
  • [x] chinese_whispers
  • [x] networkit
  • [x] infomap
  • [x] wurlitzer

Optional dependencies:

  • [ ] GraphRicciCurvature
  • [ ] shuffle_graph
  • [ ] similarity-index-of-label-graph
  • [ ] ASLPAw
  • [ ] pycombo

GiulioRossetti avatar Jun 25 '21 09:06 GiulioRossetti

Starting from v0.2.3 CDlib the official conda package is available and installable with:

conda config --add channels giuliorossetti
conda config --add channels conda-forge
conda install cdlib

Optional dependencies still need to be installed separately using pip.

GiulioRossetti avatar Jun 28 '21 09:06 GiulioRossetti

Considering your motivation for having these CD algorithms available to the widest possible research audience, having a working conda install is a great idea.
However, I tried this, and it failed with the following (uninformative to me) messages:

UnsatisfiableError: The following specifications were found to be incompatible with each other:
Output in format: Requested package -> Available versions

Any idea why this failed and how to correct it?

At the moment, I'm only planning on running the fuzzy communities algorithm, so I haven't installed any of the optional dependencies. Do I need to?

bramson avatar Feb 15 '22 08:02 bramson

Ah, well, I just read in the docs, that your implementation of both fuzzy CD algorithms don't support weighted networks (although the Fuzzy-Rough Community Detection method does), so I can't use your package for my current needs anyway. But I still want to install it for future use, and perhaps I'll use a non-fuzzy method that does support weighted networks...of which I could find none in your documentation (even in cases where the algorithm does support edge weights). Do none of your implementations support weighted networks, or is this a problem with the docs?

bramson avatar Feb 15 '22 08:02 bramson