summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-cdlib.spec299
-rw-r--r--sources1
3 files changed, 301 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..a6ef774 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cdlib-0.2.6.tar.gz
diff --git a/python-cdlib.spec b/python-cdlib.spec
new file mode 100644
index 0000000..f3596c7
--- /dev/null
+++ b/python-cdlib.spec
@@ -0,0 +1,299 @@
+%global _empty_manifest_terminate_build 0
+Name: python-cdlib
+Version: 0.2.6
+Release: 1
+Summary: Community Discovery Library
+License: BSD-Clause-2
+URL: https://github.com/GiulioRossetti/cdlib
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/eb/6d/97167dce848b65023a272e2ffd04b2e462612efdb3538d16e2b8b2221a15/cdlib-0.2.6.tar.gz
+BuildArch: noarch
+
+Requires: python3-numpy
+Requires: python3-future
+Requires: python3-matplotlib
+Requires: python3-scikit-learn
+Requires: python3-tqdm
+Requires: python3-networkx
+Requires: python3-demon
+Requires: python3-louvain
+Requires: python3-nf1
+Requires: python3-scipy
+Requires: python3-pulp
+Requires: python3-seaborn
+Requires: python3-pandas
+Requires: python3-eva-lcd
+Requires: python3-bimlpa
+Requires: python3-markov-clustering
+Requires: python3-chinese-whispers
+Requires: python3-igraph
+Requires: python3-angel-cd
+Requires: python3-pooch
+Requires: python3-dynetx
+Requires: python3-thresholdclustering
+Requires: python3-pyclustering
+Requires: python3-cython
+Requires: python3-Levenshtein
+Requires: python3-infomap
+Requires: python3-wurlitzer
+Requires: python3-GraphRicciCurvature
+Requires: python3-networkit
+Requires: python3-pycombo
+Requires: python3-leidenalg
+Requires: python3-karateclub
+
+%description
+``CDlib`` is a meta-library for community discovery in complex networks: it implements algorithms, clustering fitness functions as well as visualization facilities.
+``CDlib`` is designed around the ``networkx`` python library: however, when needed, it takes care to automatically convert (from and to) ``igraph`` object so to provide an abstraction on specific algorithm implementations to the final user.
+``CDlib`` provides a standardized input/output facilities for several Community Discovery algorithms: whenever possible, to guarantee literature coherent results, implementations of CD algorithms are inherited from their original projects (acknowledged on the [documentation](https://cdlib.readthedocs.io)).
+If you use ``CDlib`` as support to your research consider citing:
+> G. Rossetti, L. Milli, R. Cazabet.
+> **CDlib: a Python Library to Extract, Compare and Evaluate Communities from Complex Networks.**
+> Applied Network Science Journal. 2019.
+> [DOI:10.1007/s41109-019-0165-9]()
+## Tutorial and Online Environments
+Check out the official [tutorial](https://colab.research.google.com/github/GiulioRossetti/cdlib/blob/master/docs/CDlib.ipynb) to get started!
+If you would like to test ``CDlib`` functionalities without installing anything on your machine consider using the preconfigured Jupyter Hub instances offered by [SoBigData++](https://sobigdata.d4science.org/group/sobigdata-gateway/explore?siteId=20371853).
+## Installation
+``CDlib`` *requires* python>=3.8.
+To install the latest version of our library just download (or clone) the current project, open a terminal and run the following commands:
+```bash
+pip install -r requirements.txt
+pip install -r requirements_optional.txt # (Optional) this might not work in Windows systems due to C-based dependencies.
+pip install .
+```
+Alternatively use pip
+```bash
+pip install cdlib
+```
+or conda
+```bash
+conda config --add channels giuliorossetti
+conda config --add channels conda-forge
+conda install cdlib
+```
+### Optional Dependencies (pip package)
+``CDlib`` relies on a few packages calling C code that can be cumbersome to install on Windows machines: to address such issue, the default installation does not try to install set up such requirements.
+Such a choice has been made to allow (even) non *unix user to install the library and get access to its core functionalities.
+To integrate the standard installation with you can either:
+- (Windows) manually install the optional packages (versions details are specified in ``requirements_optional.txt``) following the original projects guidelines, or
+- (Linux/OSX) run the command:
+```bash
+pip install cdlib[C]
+```
+Such caveat will install everything that can be easily automated under Linux/OSX.
+#### (Advanced)
+##### Graph-tool
+The only optional dependency that will remain unsatisfied following the previous procedures will be ``graph-tool`` (used to add SBM models).
+If you need it up and running, refer to the official [documentation](https://git.skewed.de/count0/graph-tool/wikis/installation-instructions) and install the conda-forge version of the package.
+##### ASLPAw
+Since its 2.1.0 release ``ASLPAw`` relies on ``gmpy2`` whose installation through pip is not easy to automatize due to some C dependencies.
+To address such issue test the following recipe:
+```bash
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case this does not solve the issue, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+### Optional Dependencies (Conda package)
+``CDlib`` relies on a few packages not available through conda: to install it please use pip:
+```bash
+pip install pycombo
+pip install GraphRicciCurvature
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case ASLPAw installation fails, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+## Collaborate with us!
+``CDlib`` is an active project, any contribution is welcome!
+If you like to include your model in CDlib feel free to fork the project, open an issue and contact us.
+### How to contribute to this project?
+Contributing is good, doing it correctly is better! Check out our [rules](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CONTRIBUTING.md), issue a proper [pull request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/PULL_REQUEST_TEMPLATE.md) /[bug report](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/bug_report.md) / [feature request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/feature_request.md).
+We are a welcoming community... just follow the [Code of Conduct](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CODE_OF_CONDUCT.md).
+
+%package -n python3-cdlib
+Summary: Community Discovery Library
+Provides: python-cdlib
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-cdlib
+``CDlib`` is a meta-library for community discovery in complex networks: it implements algorithms, clustering fitness functions as well as visualization facilities.
+``CDlib`` is designed around the ``networkx`` python library: however, when needed, it takes care to automatically convert (from and to) ``igraph`` object so to provide an abstraction on specific algorithm implementations to the final user.
+``CDlib`` provides a standardized input/output facilities for several Community Discovery algorithms: whenever possible, to guarantee literature coherent results, implementations of CD algorithms are inherited from their original projects (acknowledged on the [documentation](https://cdlib.readthedocs.io)).
+If you use ``CDlib`` as support to your research consider citing:
+> G. Rossetti, L. Milli, R. Cazabet.
+> **CDlib: a Python Library to Extract, Compare and Evaluate Communities from Complex Networks.**
+> Applied Network Science Journal. 2019.
+> [DOI:10.1007/s41109-019-0165-9]()
+## Tutorial and Online Environments
+Check out the official [tutorial](https://colab.research.google.com/github/GiulioRossetti/cdlib/blob/master/docs/CDlib.ipynb) to get started!
+If you would like to test ``CDlib`` functionalities without installing anything on your machine consider using the preconfigured Jupyter Hub instances offered by [SoBigData++](https://sobigdata.d4science.org/group/sobigdata-gateway/explore?siteId=20371853).
+## Installation
+``CDlib`` *requires* python>=3.8.
+To install the latest version of our library just download (or clone) the current project, open a terminal and run the following commands:
+```bash
+pip install -r requirements.txt
+pip install -r requirements_optional.txt # (Optional) this might not work in Windows systems due to C-based dependencies.
+pip install .
+```
+Alternatively use pip
+```bash
+pip install cdlib
+```
+or conda
+```bash
+conda config --add channels giuliorossetti
+conda config --add channels conda-forge
+conda install cdlib
+```
+### Optional Dependencies (pip package)
+``CDlib`` relies on a few packages calling C code that can be cumbersome to install on Windows machines: to address such issue, the default installation does not try to install set up such requirements.
+Such a choice has been made to allow (even) non *unix user to install the library and get access to its core functionalities.
+To integrate the standard installation with you can either:
+- (Windows) manually install the optional packages (versions details are specified in ``requirements_optional.txt``) following the original projects guidelines, or
+- (Linux/OSX) run the command:
+```bash
+pip install cdlib[C]
+```
+Such caveat will install everything that can be easily automated under Linux/OSX.
+#### (Advanced)
+##### Graph-tool
+The only optional dependency that will remain unsatisfied following the previous procedures will be ``graph-tool`` (used to add SBM models).
+If you need it up and running, refer to the official [documentation](https://git.skewed.de/count0/graph-tool/wikis/installation-instructions) and install the conda-forge version of the package.
+##### ASLPAw
+Since its 2.1.0 release ``ASLPAw`` relies on ``gmpy2`` whose installation through pip is not easy to automatize due to some C dependencies.
+To address such issue test the following recipe:
+```bash
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case this does not solve the issue, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+### Optional Dependencies (Conda package)
+``CDlib`` relies on a few packages not available through conda: to install it please use pip:
+```bash
+pip install pycombo
+pip install GraphRicciCurvature
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case ASLPAw installation fails, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+## Collaborate with us!
+``CDlib`` is an active project, any contribution is welcome!
+If you like to include your model in CDlib feel free to fork the project, open an issue and contact us.
+### How to contribute to this project?
+Contributing is good, doing it correctly is better! Check out our [rules](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CONTRIBUTING.md), issue a proper [pull request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/PULL_REQUEST_TEMPLATE.md) /[bug report](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/bug_report.md) / [feature request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/feature_request.md).
+We are a welcoming community... just follow the [Code of Conduct](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CODE_OF_CONDUCT.md).
+
+%package help
+Summary: Development documents and examples for cdlib
+Provides: python3-cdlib-doc
+%description help
+``CDlib`` is a meta-library for community discovery in complex networks: it implements algorithms, clustering fitness functions as well as visualization facilities.
+``CDlib`` is designed around the ``networkx`` python library: however, when needed, it takes care to automatically convert (from and to) ``igraph`` object so to provide an abstraction on specific algorithm implementations to the final user.
+``CDlib`` provides a standardized input/output facilities for several Community Discovery algorithms: whenever possible, to guarantee literature coherent results, implementations of CD algorithms are inherited from their original projects (acknowledged on the [documentation](https://cdlib.readthedocs.io)).
+If you use ``CDlib`` as support to your research consider citing:
+> G. Rossetti, L. Milli, R. Cazabet.
+> **CDlib: a Python Library to Extract, Compare and Evaluate Communities from Complex Networks.**
+> Applied Network Science Journal. 2019.
+> [DOI:10.1007/s41109-019-0165-9]()
+## Tutorial and Online Environments
+Check out the official [tutorial](https://colab.research.google.com/github/GiulioRossetti/cdlib/blob/master/docs/CDlib.ipynb) to get started!
+If you would like to test ``CDlib`` functionalities without installing anything on your machine consider using the preconfigured Jupyter Hub instances offered by [SoBigData++](https://sobigdata.d4science.org/group/sobigdata-gateway/explore?siteId=20371853).
+## Installation
+``CDlib`` *requires* python>=3.8.
+To install the latest version of our library just download (or clone) the current project, open a terminal and run the following commands:
+```bash
+pip install -r requirements.txt
+pip install -r requirements_optional.txt # (Optional) this might not work in Windows systems due to C-based dependencies.
+pip install .
+```
+Alternatively use pip
+```bash
+pip install cdlib
+```
+or conda
+```bash
+conda config --add channels giuliorossetti
+conda config --add channels conda-forge
+conda install cdlib
+```
+### Optional Dependencies (pip package)
+``CDlib`` relies on a few packages calling C code that can be cumbersome to install on Windows machines: to address such issue, the default installation does not try to install set up such requirements.
+Such a choice has been made to allow (even) non *unix user to install the library and get access to its core functionalities.
+To integrate the standard installation with you can either:
+- (Windows) manually install the optional packages (versions details are specified in ``requirements_optional.txt``) following the original projects guidelines, or
+- (Linux/OSX) run the command:
+```bash
+pip install cdlib[C]
+```
+Such caveat will install everything that can be easily automated under Linux/OSX.
+#### (Advanced)
+##### Graph-tool
+The only optional dependency that will remain unsatisfied following the previous procedures will be ``graph-tool`` (used to add SBM models).
+If you need it up and running, refer to the official [documentation](https://git.skewed.de/count0/graph-tool/wikis/installation-instructions) and install the conda-forge version of the package.
+##### ASLPAw
+Since its 2.1.0 release ``ASLPAw`` relies on ``gmpy2`` whose installation through pip is not easy to automatize due to some C dependencies.
+To address such issue test the following recipe:
+```bash
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case this does not solve the issue, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+### Optional Dependencies (Conda package)
+``CDlib`` relies on a few packages not available through conda: to install it please use pip:
+```bash
+pip install pycombo
+pip install GraphRicciCurvature
+conda install gmpy2
+pip install shuffle_graph>=2.1.0 similarity-index-of-label-graph>=2.0.1 ASLPAw>=2.1.0
+```
+In case ASLPAw installation fails, please refer to the official ``gmpy2`` [installation](https://gmpy2.readthedocs.io/en/latest/intro.html#installation) instructions.
+## Collaborate with us!
+``CDlib`` is an active project, any contribution is welcome!
+If you like to include your model in CDlib feel free to fork the project, open an issue and contact us.
+### How to contribute to this project?
+Contributing is good, doing it correctly is better! Check out our [rules](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CONTRIBUTING.md), issue a proper [pull request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/PULL_REQUEST_TEMPLATE.md) /[bug report](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/bug_report.md) / [feature request](https://github.com/GiulioRossetti/cdlib/blob/master/.github/ISSUE_TEMPLATE/feature_request.md).
+We are a welcoming community... just follow the [Code of Conduct](https://github.com/GiulioRossetti/cdlib/blob/master/.github/CODE_OF_CONDUCT.md).
+
+%prep
+%autosetup -n cdlib-0.2.6
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-cdlib -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.2.6-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..c1b5dea
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+037388b15cb6d2672fb06cc342a315a7 cdlib-0.2.6.tar.gz