1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 importlib-metadata, 6 joblib, 7 llvmlite, 8 numba, 9 scikit-learn, 10 scipy, 11 setuptools, 12 pytestCheckHook, 13 pythonOlder, 14}: 15 16buildPythonPackage rec { 17 pname = "pynndescent"; 18 version = "0.5.12"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.6"; 22 23 src = fetchPypi { 24 inherit pname version; 25 hash = "sha256-BzYpH8u+39Xgo6KA9xpj+Osvi9lnDUwLUawbTQga33A="; 26 }; 27 28 nativeBuildInputs = [ setuptools ]; 29 30 propagatedBuildInputs = [ 31 joblib 32 llvmlite 33 numba 34 scikit-learn 35 scipy 36 ] ++ lib.optionals (pythonOlder "3.8") [ importlib-metadata ]; 37 38 nativeCheckInputs = [ pytestCheckHook ]; 39 40 pythonImportsCheck = [ "pynndescent" ]; 41 42 meta = with lib; { 43 description = "Nearest Neighbor Descent"; 44 homepage = "https://github.com/lmcinnes/pynndescent"; 45 license = licenses.bsd2; 46 maintainers = with maintainers; [ mic92 ]; 47 }; 48}