depot/third_party/nixpkgs/pkgs/development/python-modules/pyregion/default.nix

66 lines
1.4 KiB
Nix
Raw Normal View History

{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, pyparsing
, numpy
, cython
, astropy
, astropy-helpers
, pytestCheckHook
, pytest-astropy
}:
buildPythonPackage rec {
pname = "pyregion";
version = "2.0";
# pypi src contains cython-produced .c files which don't compile
# with python3.9
src = fetchFromGitHub {
owner = "astropy";
repo = pname;
rev = version;
sha256 = "1izar7z606czcyws9s8bjbpb1xhqshpv5009rlpc92hciw7jv4kg";
};
propagatedBuildInputs = [
pyparsing
numpy
astropy
];
# Upstream patch needed for the test to pass
patches = [
(fetchpatch {
name = "conftest-astropy-3-fix.patch";
url = "https://github.com/astropy/pyregion/pull/136.patch";
sha256 = "13yxjxiqnhjy9gh24hvv6pnwx7qic2mcx3ccr1igjrc3f881d59m";
})
];
nativeBuildInputs = [ astropy-helpers cython ];
checkInputs = [ pytestCheckHook pytest-astropy ];
# Disable automatic update of the astropy-helper module
postPatch = ''
substituteInPlace setup.cfg --replace "auto_use = True" "auto_use = False"
'';
# Tests must be run in the build directory
preCheck = ''
pushd build/lib.*
'';
postCheck = ''
popd
'';
meta = with lib; {
description = "Python parser for ds9 region files";
homepage = "https://github.com/astropy/pyregion";
license = licenses.mit;
maintainers = [ maintainers.smaret ];
};
}