python3Packages.pyinfra: 3.4.1 -> 3.6 (#479736)

This commit is contained in:
dotlambda
2026-01-15 17:59:13 +00:00
committed by GitHub
3 changed files with 80 additions and 11 deletions
@@ -0,0 +1,43 @@
{
lib,
buildPythonPackage,
fetchPypi,
uv-build,
pyyaml,
}:
buildPythonPackage rec {
pname = "pyinfra-testgen";
version = "0.1.1";
pyproject = true;
# no tags on GitHub
src = fetchPypi {
pname = "pyinfra_testgen";
inherit version;
hash = "sha256-c5pZ0SfRXC50vJZfnnf0HQgImf7hi2oQ5/XKMVNzlpc=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "uv_build>=0.8.14,<0.9.0" uv_build
'';
build-system = [ uv-build ];
dependencies = [
pyyaml
];
pythonImportsCheck = [ "testgen" ];
# upstream has no tests
doCheck = false;
meta = {
description = "Generate Python unit tests from JSON and YAML files";
homepage = "https://github.com/pyinfra-dev/testgen";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.dotlambda ];
};
}
@@ -4,33 +4,54 @@
click,
distro,
fetchFromGitHub,
fetchpatch,
freezegun,
gevent,
importlib-metadata,
hatchling,
jinja2,
packaging,
paramiko,
pydantic,
pyinfra-testgen,
pytest-testinfra,
pytestCheckHook,
python-dateutil,
pythonOlder,
pywinrm,
setuptools,
typeguard,
typing-extensions,
uv-dynamic-versioning,
}:
buildPythonPackage rec {
pname = "pyinfra";
version = "3.4.1";
version = "3.6";
pyproject = true;
src = fetchFromGitHub {
owner = "Fizzadar";
repo = "pyinfra";
tag = "v${version}";
hash = "sha256-7bNkDm5SyIgVkrGQ95/q7AiY/JnxtWx+jkDO/rJQ2WQ=";
hash = "sha256-CTeGn9aN5voyCUL5LuTErLgTgC1Z/qTS7SB9TNfq7mc=";
};
build-system = [ setuptools ];
patches = [
# paramiko v4 compat
# https://github.com/pyinfra-dev/pyinfra/pull/1525
(fetchpatch {
name = "remove-DSSKey.patch";
url = "https://github.com/pyinfra-dev/pyinfra/commit/a655bdf425884055145cfd0011c3b444c9a3ada2.patch";
hash = "sha256-puHcA4+KigltCL2tUYRMc9OT3kxvTeW77bbFbxgkcTs=";
})
];
build-system = [
hatchling
uv-dynamic-versioning
];
pythonRelaxDeps = [
"paramiko"
];
dependencies = [
click
@@ -39,15 +60,18 @@ buildPythonPackage rec {
jinja2
packaging
paramiko
pydantic
python-dateutil
pywinrm
setuptools
typeguard
]
++ lib.optionals (pythonOlder "3.11") [ typing-extensions ]
++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ];
++ lib.optionals (pythonOlder "3.11") [ typing-extensions ];
nativeCheckInputs = [ pytestCheckHook ];
nativeCheckInputs = [
freezegun
pyinfra-testgen
pytest-testinfra
pytestCheckHook
];
pythonImportsCheck = [ "pyinfra" ];
+2
View File
@@ -13645,6 +13645,8 @@ self: super: with self; {
pyinfra = callPackage ../development/python-modules/pyinfra { };
pyinfra-testgen = callPackage ../development/python-modules/pyinfra-testgen { };
pyinotify = callPackage ../development/python-modules/pyinotify { };
pyinputevent = callPackage ../development/python-modules/pyinputevent { };