depot/third_party/nixpkgs/pkgs/development/python-modules/niworkflows/default.nix
Default email 60f07311b9 Project import generated by Copybara.
GitOrigin-RevId: f8e2ebd66d097614d51a56a755450d4ae1632df1
2024-02-06 17:22:34 -08:00

101 lines
1.9 KiB
Nix

{ lib
, buildPythonPackage
, fetchFromGitHub
, hatch-vcs
, hatchling
, pytestCheckHook
, attrs
, importlib-resources
, jinja2
, looseversion
, matplotlib
, nibabel
, nilearn
, nipype
, nitransforms
, numpy
, packaging
, pandas
, pybids
, pyyaml
, scikit-image
, scipy
, seaborn
, svgutils
, templateflow
, traits
, transforms3d
}:
buildPythonPackage rec {
pname = "niworkflows";
version = "1.10.0";
pyproject = true;
src = fetchFromGitHub {
owner = "nipreps";
repo = "niworkflows";
rev = "refs/tags/${version}";
hash = "sha256-wQPk9imDvomg+NTWk+VeW1TE2QlvMyi1YYVVaznhktU=";
};
postPatch = ''
substituteInPlace pyproject.toml --replace '"traits < 6.4"' '"traits"'
'';
nativeBuildInputs = [
hatch-vcs
hatchling
];
propagatedBuildInputs = [
attrs
importlib-resources
jinja2
looseversion
matplotlib
nibabel
nilearn
nipype
nitransforms
numpy
packaging
pandas
pybids
pyyaml
scikit-image
scipy
seaborn
svgutils
templateflow
traits
transforms3d
];
env.SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeCheckInputs = [ pytestCheckHook ];
preCheck = ''export HOME=$(mktemp -d)'';
pytestFlagsArray = [ "niworkflows" ];
# try to download data:
disabledTests = [
"test_GenerateCifti"
"ROIsPlot"
"ROIsPlot2"
"test_SimpleShowMaskRPT"
"test_cifti_surfaces_plot"
"niworkflows.utils.misc.get_template_specs"
"niworkflows.interfaces.cifti._prepare_cifti"
];
disabledTestPaths = [ "niworkflows/tests/test_registration.py" ];
pythonImportsCheck = [ "niworkflows" ];
meta = with lib; {
description = "Common workflows for MRI (anatomical, functional, diffusion, etc.)";
homepage = "https://github.com/nipreps/niworkflows";
changelog = "https://github.com/nipreps/niworkflows/blob/${src.rev}/CHANGES.rst";
license = licenses.asl20;
maintainers = with maintainers; [ bcdarwin ];
};
}