1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 setuptools,
6 pythonOlder,
7 numpy,
8 jsonschema,
9 svgwrite,
10}:
11
12buildPythonPackage rec {
13 pname = "tskit";
14 version = "0.6.4";
15 pyproject = true;
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchPypi {
20 inherit pname version;
21 hash = "sha256-vawbt+OuPR9WLsGRtdhAFW4ILdKtxq98QbFwxPsb55I=";
22 };
23
24 postPatch = ''
25 # build-time constriant, used to ensure forward and backward compat
26 substituteInPlace pyproject.toml \
27 --replace-fail "numpy>=2.0" "numpy"
28 '';
29
30 build-system = [ setuptools ];
31
32 dependencies = [
33 jsonschema
34 numpy
35 svgwrite
36 ];
37
38 # Pypi does not include test folder and too complex to compile from GitHub source
39 # will ask upstream to include tests in pypi
40 doCheck = false;
41
42 pythonImportsCheck = [ "tskit" ];
43
44 meta = {
45 description = "Tree sequence toolkit";
46 mainProgram = "tskit";
47 homepage = "https://github.com/tskit-dev/tskit";
48 license = lib.licenses.mit;
49 maintainers = with lib.maintainers; [ ];
50 };
51}