1{ lib
2, buildPythonPackage
3, fetchPypi
4, pythonOlder
5, pythonRelaxDepsHook
6, h5py
7, nibabel
8, numpy
9, scipy
10, setuptools-scm
11, toml
12}:
13
14buildPythonPackage rec {
15 pname = "nitransforms";
16 version = "23.0.1";
17 disabled = pythonOlder "3.7";
18
19 src = fetchPypi {
20 inherit pname version;
21 hash = "sha256-Lty4aPzSlwRJSqCXeIVICF+gudYqto1OS4cVZyrB2nY=";
22 };
23
24 nativeBuildInputs = [ pythonRelaxDepsHook ];
25 buildInputs = [ setuptools-scm toml ];
26 propagatedBuildInputs = [ h5py nibabel numpy scipy ];
27
28 pythonRelaxDeps = [ "scipy" ];
29
30 doCheck = false;
31 # relies on data repo (https://github.com/nipreps-data/nitransforms-tests);
32 # probably too heavy
33 pythonImportsCheck = [
34 "nitransforms"
35 "nitransforms.base"
36 "nitransforms.io"
37 "nitransforms.io.base"
38 "nitransforms.linear"
39 "nitransforms.manip"
40 "nitransforms.nonlinear"
41 "nitransforms.patched"
42 ];
43
44 meta = with lib; {
45 homepage = "https://nitransforms.readthedocs.io";
46 description = "Geometric transformations for images and surfaces";
47 changelog = "https://github.com/nipy/nitransforms/releases/tag/${version}";
48 license = licenses.mit;
49 maintainers = with maintainers; [ bcdarwin ];
50 };
51}