1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, isPy27
5, packaging
6, pytest
7, cython
8, numpy
9, scipy
10, h5py
11, nibabel
12}:
13
14buildPythonPackage rec {
15 pname = "dipy";
16 version = "1.1.1";
17
18 disabled = isPy27;
19
20 src = fetchFromGitHub {
21 owner = "dipy";
22 repo = pname;
23 rev = version;
24 sha256 = "08abx0f4li6ya62ilc59miw4mk6wndizahyylxhgcrpacb6ydw28";
25 };
26
27 nativeBuildInputs = [ cython packaging ];
28 propagatedBuildInputs = [
29 numpy
30 scipy
31 h5py
32 nibabel
33 ];
34
35 checkInputs = [ pytest ];
36
37 # disable tests for now due to:
38 # - some tests require data download (see dipy/dipy/issues/2092);
39 # - running the tests manually causes a multiprocessing hang;
40 # - import weirdness when running the tests
41 doCheck = false;
42
43 pythonImportsCheck = [
44 "dipy"
45 "dipy.core"
46 "dipy.direction"
47 "dipy.tracking"
48 "dipy.reconst"
49 "dipy.io"
50 "dipy.viz"
51 "dipy.boots"
52 "dipy.data"
53 "dipy.utils"
54 "dipy.segment"
55 "dipy.sims"
56 "dipy.stats"
57 "dipy.denoise"
58 "dipy.workflows"
59 "dipy.nn"
60 ];
61
62 meta = with lib; {
63 homepage = "https://dipy.org/";
64 description = "Diffusion imaging toolkit for Python";
65 license = licenses.bsd3;
66 maintainers = with maintainers; [ bcdarwin ];
67 };
68}