{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, # build time hatchling, hatch-vcs, # runtime packaging, toml, tomli, # docs sphinxHook, furo, sphinx-autodoc-typehints, # tests pytest-mock, pytestCheckHook, setuptools, virtualenv, wheel, }: buildPythonPackage rec { pname = "pyproject-api"; version = "1.6.1"; format = "pyproject"; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "tox-dev"; repo = "pyproject-api"; rev = "refs/tags/${version}"; hash = "sha256-XQD+36NP2zKUp/QRlgKhwzfMYBh6GVlCYXURXs2qeO8="; }; outputs = [ "out" "doc" ]; nativeBuildInputs = [ hatchling hatch-vcs # docs sphinxHook furo sphinx-autodoc-typehints ]; propagatedBuildInputs = [ packaging ] ++ lib.optionals (pythonOlder "3.11") [ tomli ]; nativeCheckInputs = [ pytest-mock pytestCheckHook setuptools virtualenv wheel ]; disabledTests = [ # requires eol python2 interpreter "test_can_build_on_python_2" ]; pythonImportsCheck = [ "pyproject_api" ]; meta = with lib; { changelog = "https://github.com/tox-dev/pyproject-api/releases/tag/${version}"; description = "API to interact with the python pyproject.toml based projects"; homepage = "https://github.com/tox-dev/pyproject-api"; license = licenses.mit; maintainers = with maintainers; [ ]; }; }