{ lib , buildPythonPackage , fetchPypi , flit-core , pythonOlder , tomli # for passthru.tests # , pyproject-hooks # , pytestCheckHook # , setuptools # , testpath }: buildPythonPackage rec { pname = "pyproject-hooks"; version = "1.0.0"; format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi rec { pname = "pyproject_hooks"; inherit version; hash = "sha256-8nGymLl/WVXVP7ErcsH7GUjCLBprcLMVxUztrKAmTvU="; }; nativeBuildInputs = [ flit-core ]; propagatedBuildInputs = lib.optionals (pythonOlder "3.11") [ tomli ]; # We need to disable tests because this package is part of the bootstrap chain # and its test dependencies cannot be built yet when this is being built. doCheck = false; # passthru.tests = { # pytest = buildPythonPackage { # pname = "${pname}-pytest"; # inherit version; # format = "other"; # dontBuild = true; # dontInstall = true; # nativeCheckInputs = [ # pyproject-hooks # pytestCheckHook # setuptools # testpath # ]; # disabledTests = [ # # fail to import setuptools # "test_setup_py" # "test_issue_104" # ]; # }; # }; pythonImportsCheck = [ "pyproject_hooks" ]; meta = with lib; { description = "Low-level library for calling build-backends in `pyproject.toml`-based project "; homepage = "https://github.com/pypa/pyproject-hooks"; changelog = "https://github.com/pypa/pyproject-hooks/blob/v${version}/docs/changelog.rst"; license = licenses.mit; maintainers = teams.python.members; }; }