depot/third_party/nixpkgs/pkgs/development/python-modules/pyproject-api/default.nix
Default email 5ca88bfbb9 Project import generated by Copybara.
GitOrigin-RevId: 9f918d616c5321ad374ae6cb5ea89c9e04bf3e58
2024-07-31 10:19:44 +00:00

81 lines
1.4 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
# build time
hatchling,
hatch-vcs,
# runtime
packaging,
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 = [ ];
};
}