1{
2 lib,
3 stdenv,
4 buildPythonPackage,
5 fetchPypi,
6
7 # Runtime dependencies
8 networkx,
9 matplotlib,
10 numpy,
11 tqdm,
12 scipy,
13
14 # Build, dev and test dependencies
15 setuptools-scm,
16 pytestCheckHook,
17 pytest-check,
18 pytest-mock,
19}:
20
21buildPythonPackage rec {
22 pname = "hebg";
23 version = "0.2.4";
24 pyproject = true;
25
26 src = fetchPypi {
27 inherit pname version;
28 hash = "sha256-11bz+FbnaEVLiXT1eujMw8lvABlzVOeROOsdVgsyfjQ=";
29 };
30
31 build-system = [ setuptools-scm ];
32
33 dependencies = [
34 networkx
35 matplotlib
36 numpy
37 tqdm
38 scipy
39 ];
40
41 nativeCheckInputs = [
42 pytestCheckHook
43 pytest-check
44 pytest-mock
45 ];
46 env = lib.optionalAttrs stdenv.hostPlatform.isDarwin { MPLBACKEND = "Agg"; };
47 pythonImportsCheck = [ "hebg" ];
48
49 meta = {
50 description = "Hierachical Explainable Behaviors using Graphs";
51 homepage = "https://github.com/IRLL/HEB_graphs";
52 changelog = "https://github.com/IRLL/HEB_graphs/releases/tag/${version}";
53 license = lib.licenses.gpl3Only;
54 maintainers = with lib.maintainers; [ automathis ];
55 };
56}