python3.pkgs.astropy: enable and fix tests.
Add some informatory comments, add doronbehar as maintainers, use `rec` instead of `let ... in`, add `pythonImportsCheck` and `pytestCheckHook`, use `cd $out` to handle issue https://github.com/NixOS/nixpkgs/issues/255262
This commit is contained in:
parent
18490c2caf
commit
221fbf1231
@ -1,5 +1,6 @@
|
|||||||
{ lib
|
{ lib
|
||||||
, fetchPypi
|
, fetchPypi
|
||||||
|
, fetchpatch
|
||||||
, buildPythonPackage
|
, buildPythonPackage
|
||||||
, pythonOlder
|
, pythonOlder
|
||||||
|
|
||||||
@ -10,6 +11,11 @@
|
|||||||
, oldest-supported-numpy
|
, oldest-supported-numpy
|
||||||
, setuptools-scm
|
, setuptools-scm
|
||||||
, wheel
|
, wheel
|
||||||
|
# testing
|
||||||
|
, pytestCheckHook
|
||||||
|
, pytest-xdist
|
||||||
|
, pytest-astropy
|
||||||
|
, python
|
||||||
|
|
||||||
# runtime
|
# runtime
|
||||||
, numpy
|
, numpy
|
||||||
@ -18,12 +24,9 @@
|
|||||||
, pyyaml
|
, pyyaml
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
buildPythonPackage rec {
|
||||||
pname = "astropy";
|
pname = "astropy";
|
||||||
version = "5.3.3";
|
version = "5.3.3";
|
||||||
in
|
|
||||||
buildPythonPackage {
|
|
||||||
inherit pname version;
|
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.8"; # according to setup.cfg
|
disabled = pythonOlder "3.8"; # according to setup.cfg
|
||||||
@ -32,7 +35,19 @@ buildPythonPackage {
|
|||||||
inherit pname version;
|
inherit pname version;
|
||||||
hash = "sha256-AzDfn116IlQ2fpuM9EJVuhBwsGEjGIxqcu3BgEk/k7s=";
|
hash = "sha256-AzDfn116IlQ2fpuM9EJVuhBwsGEjGIxqcu3BgEk/k7s=";
|
||||||
};
|
};
|
||||||
|
patches = [
|
||||||
|
# Fixes running tests in parallel issue
|
||||||
|
# https://github.com/astropy/astropy/issues/15316. Fix from
|
||||||
|
# https://github.com/astropy/astropy/pull/15327
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/astropy/astropy/commit/1042c0fb06a992f683bdc1eea2beda0b846ed356.patch";
|
||||||
|
hash = "sha256-bApAcGBRrJ94thhByoYvdqw2e6v77+FmTfgmGcE6MMk=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
|
# Relax cython dependency to allow this to build, upstream only doesn't
|
||||||
|
# support cython 3 as of writing. See:
|
||||||
|
# https://github.com/astropy/astropy/issues/15315
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace pyproject.toml \
|
substituteInPlace pyproject.toml \
|
||||||
--replace 'cython==' 'cython>='
|
--replace 'cython==' 'cython>='
|
||||||
@ -54,14 +69,28 @@ buildPythonPackage {
|
|||||||
pyyaml
|
pyyaml
|
||||||
];
|
];
|
||||||
|
|
||||||
# infinite recursion with pytest-astropy (pytest-astropy-header depends on astropy itself)
|
nativeCheckInputs = [
|
||||||
doCheck = false;
|
pytestCheckHook
|
||||||
|
pytest-xdist
|
||||||
|
pytest-astropy
|
||||||
|
];
|
||||||
|
|
||||||
meta = with lib; {
|
# Not running it inside the build directory. See:
|
||||||
|
# https://github.com/astropy/astropy/issues/15316#issuecomment-1722190547
|
||||||
|
preCheck = ''
|
||||||
|
cd "$out"
|
||||||
|
export HOME="$(mktemp -d)"
|
||||||
|
export OMP_NUM_THREADS=$(( $NIX_BUILD_CORES / 4 ))
|
||||||
|
'';
|
||||||
|
pythonImportsCheck = [
|
||||||
|
"astropy"
|
||||||
|
];
|
||||||
|
|
||||||
|
meta = {
|
||||||
description = "Astronomy/Astrophysics library for Python";
|
description = "Astronomy/Astrophysics library for Python";
|
||||||
homepage = "https://www.astropy.org";
|
homepage = "https://www.astropy.org";
|
||||||
license = licenses.bsd3;
|
license = lib.licenses.bsd3;
|
||||||
platforms = platforms.all;
|
platforms = lib.platforms.all;
|
||||||
maintainers = [ maintainers.kentjames ];
|
maintainers = with lib.maintainers; [ kentjames doronbehar ];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user