nixpkgs/pkgs/development/python-modules/diofant/default.nix
2025-01-27 10:55:09 +01:00

89 lines
1.8 KiB
Nix

{
lib,
buildPythonPackage,
cython,
fetchFromGitHub,
fetchpatch,
gmpy2,
hypothesis,
mpmath,
numpy,
pexpect,
pythonOlder,
pytest-cov-stub,
pytest-timeout,
pytest-xdist,
pytestCheckHook,
scipy,
setuptools-scm,
}:
buildPythonPackage rec {
pname = "diofant";
version = "0.14.0";
pyproject = true;
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "diofant";
repo = "diofant";
tag = "v${version}";
hash = "sha256-+VM5JBj4NRhNwyAVhnsACg5cVyyxJ3IcOKNL1osr67E=";
};
patches = [
(fetchpatch {
name = "remove-pip-from-build-dependencies.patch";
url = "https://github.com/diofant/diofant/commit/117e441808faa7c785ccb81bf211772d60ebdec3.patch";
hash = "sha256-MYk1Ku4F3hAv7+jJQLWhXd8qyKRX+QYuBzPfYWT0VbU=";
})
];
build-system = [ setuptools-scm ];
dependencies = [ mpmath ];
optional-dependencies = {
exports = [
cython
numpy
scipy
];
gmpy = [ gmpy2 ];
};
doCheck = false; # some tests get stuck easily
pytestFlagsArray = [
"-W"
"ignore::DeprecationWarning"
"-m 'not slow'"
];
nativeCheckInputs = [
hypothesis
pexpect
pytest-cov-stub
pytest-xdist
pytestCheckHook
];
disabledTests = [
# AssertionError: assert '9.9012134805...5147838841057' == '2.7182818284...2178525166427'
"test_evalf_fast_series"
# AssertionError: assert Float('0.0051000000000000004', dps=15) == Float('0.010050166663333571', dps=15)
"test_evalf_sum"
];
pythonImportsCheck = [ "diofant" ];
meta = with lib; {
changelog = "https://diofant.readthedocs.io/en/latest/release/notes-${version}.html";
description = "Python CAS library";
homepage = "https://github.com/diofant/diofant";
license = licenses.bsd3;
maintainers = with maintainers; [ suhr ];
};
}