1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 pythonOlder, 6 setuptools, 7 setuptools-scm, 8 typing-extensions, 9 toml, 10 zipp, 11 12 # Reverse dependency 13 sage, 14}: 15 16buildPythonPackage rec { 17 pname = "importlib-metadata"; 18 version = "8.7.0"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.7"; 22 23 src = fetchPypi { 24 pname = "importlib_metadata"; 25 inherit version; 26 hash = "sha256-0TuBrSI7iQqhbFRx8qwwVs92xfEPgtb5KS8LQV84kAA="; 27 }; 28 29 build-system = [ 30 setuptools # otherwise cross build fails 31 setuptools-scm 32 ]; 33 34 dependencies = [ 35 toml 36 zipp 37 ] 38 ++ lib.optionals (pythonOlder "3.8") [ typing-extensions ]; 39 40 # Cyclic dependencies due to pyflakefs 41 doCheck = false; 42 43 pythonImportsCheck = [ "importlib_metadata" ]; 44 45 passthru.tests = { 46 inherit sage; 47 }; 48 49 meta = with lib; { 50 description = "Read metadata from Python packages"; 51 homepage = "https://importlib-metadata.readthedocs.io/"; 52 license = licenses.asl20; 53 maintainers = with maintainers; [ 54 fab 55 ]; 56 }; 57}