1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 setuptools,
6 replaceVars,
7 graphviz,
8 pytestCheckHook,
9 chardet,
10 parameterized,
11 pythonOlder,
12 pyparsing,
13}:
14
15buildPythonPackage rec {
16 pname = "pydot";
17 version = "4.0.1";
18 pyproject = true;
19
20 disabled = pythonOlder "3.8";
21
22 src = fetchPypi {
23 inherit pname version;
24 hash = "sha256-whSPaBxKM+CL8OJqnl+OQJmoLg4qBoCY8yzoZXc2StU=";
25 };
26
27 build-system = [
28 setuptools
29 ];
30
31 dependencies = [ pyparsing ];
32
33 nativeCheckInputs = [
34 chardet
35 parameterized
36 pytestCheckHook
37 ];
38
39 patches = [
40 (replaceVars ./hardcode-graphviz-path.patch {
41 inherit graphviz;
42 })
43 ];
44
45 enabledTestPaths = [ "test/test_pydot.py" ];
46
47 pythonImportsCheck = [ "pydot" ];
48
49 meta = {
50 description = "Allows to create both directed and non directed graphs from Python";
51 homepage = "https://github.com/erocarrera/pydot";
52 changelog = "https://github.com/pydot/pydot/blob/v${version}/ChangeLog";
53 license = lib.licenses.mit;
54 maintainers = [ ];
55 };
56}