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