1{
2 lib,
3 buildPythonPackage,
4 ddt,
5 fetchFromGitHub,
6 igraph,
7 igraph-c,
8 libleidenalg,
9 pythonOlder,
10 setuptools-scm,
11 unittestCheckHook,
12}:
13
14buildPythonPackage rec {
15 pname = "leidenalg";
16 version = "0.10.2";
17 pyproject = true;
18
19 disabled = pythonOlder "3.7";
20
21 src = fetchFromGitHub {
22 owner = "vtraag";
23 repo = "leidenalg";
24 tag = version;
25 hash = "sha256-oaTV+BIB/YQBWKrVXuiIEMH/1MxPxeHhjUzbmxt6hlw=";
26 };
27
28 nativeBuildInputs = [ setuptools-scm ];
29
30 buildInputs = [
31 igraph-c
32 libleidenalg
33 ];
34
35 propagatedBuildInputs = [ igraph ];
36
37 checkInputs = [
38 ddt
39 unittestCheckHook
40 ];
41
42 pythonImportsCheck = [ "leidenalg" ];
43
44 meta = with lib; {
45 changelog = "https://github.com/vtraag/leidenalg/blob/${version}/CHANGELOG";
46 description = "Implementation of the Leiden algorithm for various quality functions to be used with igraph in Python";
47 homepage = "https://github.com/vtraag/leidenalg";
48 license = licenses.gpl3Only;
49 maintainers = with maintainers; [ jboy ];
50 };
51}