1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 setuptools, 8 9 # dependencies 10 joblib, 11 llvmlite, 12 numba, 13 scikit-learn, 14 scipy, 15 16 # tests 17 pytestCheckHook, 18}: 19 20buildPythonPackage rec { 21 pname = "pynndescent"; 22 version = "0.5.13"; 23 pyproject = true; 24 25 src = fetchFromGitHub { 26 owner = "lmcinnes"; 27 repo = "pynndescent"; 28 tag = "release-${version}"; 29 hash = "sha256-oE/oy5doHduESHlRPuPHruiw1yUZmuUTe6PrgQlT6O8="; 30 }; 31 32 build-system = [ setuptools ]; 33 34 dependencies = [ 35 joblib 36 llvmlite 37 numba 38 scikit-learn 39 scipy 40 ]; 41 42 nativeCheckInputs = [ pytestCheckHook ]; 43 44 pythonImportsCheck = [ "pynndescent" ]; 45 46 meta = { 47 description = "Nearest Neighbor Descent"; 48 homepage = "https://github.com/lmcinnes/pynndescent"; 49 changelog = "https://github.com/lmcinnes/pynndescent/releases/tag/release-${version}"; 50 license = lib.licenses.bsd2; 51 maintainers = with lib.maintainers; [ mic92 ]; 52 badPlatforms = [ 53 # The majority of tests are crashing: 54 # Fatal Python error: Segmentation fault 55 "aarch64-linux" 56 ]; 57 }; 58}