472aeafc57
GitOrigin-RevId: c31898adf5a8ed202ce5bea9f347b1c6871f32d1
86 lines
1.8 KiB
Nix
86 lines
1.8 KiB
Nix
{
|
|
lib,
|
|
stdenv,
|
|
buildPythonPackage,
|
|
fetchpatch,
|
|
fetchPypi,
|
|
setuptools,
|
|
setuptools-scm,
|
|
cython,
|
|
numpy,
|
|
msgpack,
|
|
py-cpuinfo,
|
|
pytestCheckHook,
|
|
python,
|
|
pythonOlder,
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "numcodecs";
|
|
version = "0.12.1";
|
|
pyproject = true;
|
|
|
|
disabled = pythonOlder "3.8";
|
|
|
|
src = fetchPypi {
|
|
inherit pname version;
|
|
hash = "sha256-BdkaQzcz5+7yaNfoDsImoCMtokQolhSo84JpAa7BCY4=";
|
|
};
|
|
|
|
patches = [
|
|
# https://github.com/zarr-developers/numcodecs/pull/487
|
|
(fetchpatch {
|
|
name = "fix-tests.patch";
|
|
url = "https://github.com/zarr-developers/numcodecs/commit/4896680087d3ff1f959401c51cf5aea0fd56554e.patch";
|
|
hash = "sha256-+lMWK5IsNzJ7H2SmLckgxbSSRIIcC7FtGYSBKQtuo+Y=";
|
|
})
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
setuptools
|
|
setuptools-scm
|
|
cython
|
|
py-cpuinfo
|
|
];
|
|
|
|
propagatedBuildInputs = [ numpy ];
|
|
|
|
optional-dependencies = {
|
|
msgpack = [ msgpack ];
|
|
# zfpy = [ zfpy ];
|
|
};
|
|
|
|
preBuild =
|
|
if (stdenv.hostPlatform.isx86 && !stdenv.hostPlatform.avx2Support) then
|
|
''
|
|
export DISABLE_NUMCODECS_AVX2=
|
|
''
|
|
else
|
|
null;
|
|
|
|
nativeCheckInputs = [
|
|
pytestCheckHook
|
|
msgpack
|
|
];
|
|
|
|
pytestFlagsArray = [ "$out/${python.sitePackages}/numcodecs" ];
|
|
|
|
disabledTests = [
|
|
"test_backwards_compatibility"
|
|
|
|
"test_encode_decode"
|
|
"test_legacy_codec_broken"
|
|
"test_bytes"
|
|
|
|
# ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (3,) + inhomogeneous part.
|
|
# with numpy 1.24
|
|
"test_non_numpy_inputs"
|
|
];
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/zarr-developers/numcodecs";
|
|
license = licenses.mit;
|
|
description = "Buffer compression and transformation codecs for use in data storage and communication applications";
|
|
maintainers = [ ];
|
|
};
|
|
}
|