depot/third_party/nixpkgs/pkgs/development/python-modules/jsonargparse/default.nix
Default email 555cd8a8f9 Project import generated by Copybara.
GitOrigin-RevId: 5633bcff0c6162b9e4b5f1264264611e950c8ec7
2024-10-09 18:51:18 +02:00

87 lines
1.7 KiB
Nix

{
lib,
argcomplete,
buildPythonPackage,
docstring-parser,
fetchFromGitHub,
fsspec,
jsonnet,
jsonschema,
omegaconf,
pytest-subtests,
pytestCheckHook,
pythonOlder,
pyyaml,
reconplogger,
requests,
ruyaml,
setuptools,
types-pyyaml,
types-requests,
typeshed-client,
}:
buildPythonPackage rec {
pname = "jsonargparse";
version = "4.33.2";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "omni-us";
repo = "jsonargparse";
rev = "refs/tags/v${version}";
hash = "sha256-yY/j4UwAoe/qQjBQXgFSrv2BX7DB5EyGCdVYoioyKr8=";
};
build-system = [ setuptools ];
dependencies = [ pyyaml ];
optional-dependencies = {
all = [
argcomplete
fsspec
jsonnet
jsonschema
omegaconf
ruyaml
docstring-parser
typeshed-client
requests
];
argcomplete = [ argcomplete ];
fsspec = [ fsspec ];
jsonnet = [
jsonnet
# jsonnet-binary
];
jsonschema = [ jsonschema ];
omegaconf = [ omegaconf ];
reconplogger = [ reconplogger ];
ruyaml = [ ruyaml ];
signatures = [
docstring-parser
typeshed-client
];
urls = [ requests ];
};
nativeCheckInputs = [
pytest-subtests
pytestCheckHook
types-pyyaml
types-requests
];
pythonImportsCheck = [ "jsonargparse" ];
meta = with lib; {
description = "Module to mplement minimal boilerplate CLIs derived from various sources";
homepage = "https://github.com/omni-us/jsonargparse";
changelog = "https://github.com/omni-us/jsonargparse/blob/${version}/CHANGELOG.rst";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
}