diff --git a/pkgs/development/python-modules/pyerfa/default.nix b/pkgs/development/python-modules/pyerfa/default.nix index c993969d65fe..fda4be537d92 100644 --- a/pkgs/development/python-modules/pyerfa/default.nix +++ b/pkgs/development/python-modules/pyerfa/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, fetchpatch , jinja2 , oldest-supported-numpy , setuptools-scm @@ -8,6 +9,8 @@ , liberfa , packaging , numpy +, pytestCheckHook +, pytest-doctestplus }: buildPythonPackage rec { @@ -15,13 +18,19 @@ buildPythonPackage rec { format = "pyproject"; version = "2.0.0.3"; - doCheck = false; - src = fetchPypi { inherit pname version; hash = "sha256-13+7+lg1DBlMy5nl2TqgXTwrFNWq2LZi2Txq2f/0Hzk="; }; + patches = [ + # Sort of helps maybe for https://github.com/liberfa/pyerfa/issues/112 + (fetchpatch { + url = "https://github.com/liberfa/pyerfa/commit/4866342b94c5e7344711146f1186a4c3e7534da8.patch"; + hash = "sha256-uPFFdLYfRweQdeEApBAw6Ulqh31NTQwwmnaU+x/M+C0="; + }) + ]; + nativeBuildInputs = [ jinja2 oldest-supported-numpy @@ -31,14 +40,32 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - liberfa numpy ]; + buildInputs = [ + liberfa + ]; preBuild = '' export PYERFA_USE_SYSTEM_LIBERFA=1 ''; + # See https://github.com/liberfa/pyerfa/issues/112#issuecomment-1721197483 + NIX_CFLAGS_COMPILE = "-O2"; + nativeCheckInputs = [ + pytestCheckHook + pytest-doctestplus + ]; + # Getting circular import errors without this, not clear yet why. This was mentioned to + # upstream at: https://github.com/liberfa/pyerfa/issues/112 and downstream at + # https://github.com/NixOS/nixpkgs/issues/255262 + preCheck = '' + cd $out + ''; + pythonImportsCheck = [ + "erfa" + ]; + meta = with lib; { description = "Python bindings for ERFA routines"; longDescription = ''