From 3c7466715aa2ed6be4cc17519ab065bb659f28b5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 10 Mar 2022 12:46:22 +0100 Subject: [PATCH 1/6] python3Packages.cachecontrol: enable filecache --- pkgs/development/python-modules/cachecontrol/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/cachecontrol/default.nix b/pkgs/development/python-modules/cachecontrol/default.nix index d074183e79d7..bee126fbf167 100644 --- a/pkgs/development/python-modules/cachecontrol/default.nix +++ b/pkgs/development/python-modules/cachecontrol/default.nix @@ -21,10 +21,11 @@ buildPythonPackage rec { owner = "ionrock"; repo = pname; rev = "v${version}"; - sha256 = "sha256-mgvL0q10UbPHY1H3tJprke5p8qNl3HNYoeLAERZTcTs="; + hash = "sha256-mgvL0q10UbPHY1H3tJprke5p8qNl3HNYoeLAERZTcTs="; }; propagatedBuildInputs = [ + lockfile msgpack requests ]; @@ -32,7 +33,6 @@ buildPythonPackage rec { checkInputs = [ cherrypy mock - lockfile pytestCheckHook ]; From de6f14d3d855d331c8516d12b7288aa0ddcb27f3 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 10 Mar 2022 12:51:30 +0100 Subject: [PATCH 2/6] python3Packages.pretend: enable tests --- .../python-modules/pretend/default.nix | 29 +++++++++++++++---- 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/pkgs/development/python-modules/pretend/default.nix b/pkgs/development/python-modules/pretend/default.nix index 87e0e6613b1d..0134b0dc36a4 100644 --- a/pkgs/development/python-modules/pretend/default.nix +++ b/pkgs/development/python-modules/pretend/default.nix @@ -1,19 +1,36 @@ -{ lib, buildPythonPackage, fetchPypi }: +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, pythonOlder +}: buildPythonPackage rec { pname = "pretend"; version = "1.0.9"; + format = "setuptools"; - src = fetchPypi { - inherit pname version; - sha256 = "c90eb810cde8ebb06dafcb8796f9a95228ce796531bc806e794c2f4649aa1b10"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "alex"; + repo = pname; + rev = "v${version}"; + hash = "sha256-OqMfeIMFNBBLq6ejR3uOCIHZ9aA4zew7iefVlAsy1JQ="; }; - # No tests in archive - doCheck = false; + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "pretend" + ]; meta = with lib; { + description = "Module for stubbing"; homepage = "https://github.com/alex/pretend"; license = licenses.bsd3; + maintainers = with maintainers; [ ]; }; } From b897629a2c60dd602eaff6b02640d6aeec52e8e4 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 28 Mar 2022 13:31:50 +0200 Subject: [PATCH 3/6] python3Packages.pip-api: init at 0.0.28 --- .../python-modules/pip-api/default.nix | 52 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/python-modules/pip-api/default.nix diff --git a/pkgs/development/python-modules/pip-api/default.nix b/pkgs/development/python-modules/pip-api/default.nix new file mode 100644 index 000000000000..daf808e44988 --- /dev/null +++ b/pkgs/development/python-modules/pip-api/default.nix @@ -0,0 +1,52 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pip +, pretend +, pytestCheckHook +, pythonOlder +, virtualenv +}: + +buildPythonPackage rec { + pname = "pip-api"; + version = "0.0.28"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-yqu2l/QKLPpnJkBae5DI/ReU7DnqOD+lMTs/8O6I8AE="; + }; + + propagatedBuildInputs = [ + pip + ]; + + checkInputs = [ + pretend + pytestCheckHook + virtualenv + ]; + + pythonImportsCheck = [ + "pip_api" + ]; + + disabledTests = [ + "test_hash" + "test_hash_default_algorithm_is_256" + "test_installed_distributions" + "test_invoke_install" + "test_invoke_uninstall" + "test_isolation" + ]; + + meta = with lib; { + description = "Importable pip API"; + homepage = "https://github.com/di/pip-api"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 3a9f5f4faa14..ab79d7f4b713 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6313,6 +6313,8 @@ in { pipenv-poetry-migrate = callPackage ../development/python-modules/pipenv-poetry-migrate { }; + pip-api = callPackage ../development/python-modules/pip-api { }; + pip-tools = callPackage ../development/python-modules/pip-tools { }; pipx = callPackage ../development/python-modules/pipx { }; From 86e49c7114f4832cc74c59d61eedfa7a9c008a5f Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 28 Mar 2022 13:32:04 +0200 Subject: [PATCH 4/6] pip-audit: init at 2.0.0 --- pkgs/development/tools/pip-audit/default.nix | 75 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 77 insertions(+) create mode 100644 pkgs/development/tools/pip-audit/default.nix diff --git a/pkgs/development/tools/pip-audit/default.nix b/pkgs/development/tools/pip-audit/default.nix new file mode 100644 index 000000000000..f8dd0d94806d --- /dev/null +++ b/pkgs/development/tools/pip-audit/default.nix @@ -0,0 +1,75 @@ +{ lib +, fetchFromGitHub +, fetchpatch +, python3 +}: + +let + py = python3.override { + packageOverrides = self: super: { + + # ansible doesn't support resolvelib > 0.6.0 and can't have an override + resolvelib = super.resolvelib.overridePythonAttrs (oldAttrs: rec { + version = "0.8.1"; + src = fetchFromGitHub { + owner = "sarugaku"; + repo = "resolvelib"; + rev = version; + sha256 = "1qpd0gg9yl0kbamlgjs9pkxd39kx511kbc92civ77v0ka5sw8ca0"; + }; + }); + }; + }; +in +with py.pkgs; + +buildPythonApplication rec { + pname = "pip-audit"; + version = "2.0.0"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "trailofbits"; + repo = pname; + rev = "v${version}"; + hash = "sha256-JHRUYugptbsbqyXy5IxBVQq1NNbTR1xdt791ZQ2jP7s="; + }; + + propagatedBuildInputs = [ + cachecontrol + cyclonedx-python-lib + html5lib + packaging + pip-api + progress + resolvelib + ]; + + checkInputs = [ + pretend + pytestCheckHook + ]; + + pythonImportsCheck = [ + "pip_audit" + ]; + + disabledTestPaths = [ + "test/dependency_source/test_requirement.py" + "test/dependency_source/test_resolvelib.py" + "test/service/test_pypi.py" + "test/service/test_osv.py" + ]; + + disabledTests = [ + "test_get_pip_cache" + "test_virtual_env" + ]; + + meta = with lib; { + description = "Tool for scanning Python environments for known vulnerabilities"; + homepage = "https://github.com/trailofbits/pip-audit"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1b754a6a5905..f3976591ef6f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14433,6 +14433,8 @@ with pkgs; poetry2conda = python3Packages.callPackage ../development/python-modules/poetry2conda { }; + pip-audit = callPackage ../development/tools/pip-audit {}; + pipenv = callPackage ../development/tools/pipenv {}; pipewire = callPackage ../development/libraries/pipewire { From d759e894b2949ca7b8cdf0bb666e6f36d95a4f8f Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Mon, 2 May 2022 09:22:50 +0200 Subject: [PATCH 5/6] python310Packages.pip-api: 0.0.28 -> 0.0.29 --- pkgs/development/python-modules/pip-api/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pip-api/default.nix b/pkgs/development/python-modules/pip-api/default.nix index daf808e44988..5e4412dcf857 100644 --- a/pkgs/development/python-modules/pip-api/default.nix +++ b/pkgs/development/python-modules/pip-api/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "pip-api"; - version = "0.0.28"; + version = "0.0.29"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-yqu2l/QKLPpnJkBae5DI/ReU7DnqOD+lMTs/8O6I8AE="; + hash = "sha256-9wFYTrHD4BAhyEb4nWKauTc7ZiTwYmdXd0rVT8TClXE="; }; propagatedBuildInputs = [ From 1d17d14cb72c8a3d122827c53f6d30bd9e490314 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 3 May 2022 08:04:50 +0200 Subject: [PATCH 6/6] pip-audit: 2.0.0 -> 2.2.1 --- pkgs/development/tools/pip-audit/default.nix | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/pip-audit/default.nix b/pkgs/development/tools/pip-audit/default.nix index f8dd0d94806d..8f700761d163 100644 --- a/pkgs/development/tools/pip-audit/default.nix +++ b/pkgs/development/tools/pip-audit/default.nix @@ -25,14 +25,14 @@ with py.pkgs; buildPythonApplication rec { pname = "pip-audit"; - version = "2.0.0"; + version = "2.2.1"; format = "setuptools"; src = fetchFromGitHub { owner = "trailofbits"; repo = pname; rev = "v${version}"; - hash = "sha256-JHRUYugptbsbqyXy5IxBVQq1NNbTR1xdt791ZQ2jP7s="; + hash = "sha256-ji61783imVlvoBaDMTxQwbf1L1G4lJbOFZ1FjcNOT/8="; }; propagatedBuildInputs = [ @@ -54,7 +54,12 @@ buildPythonApplication rec { "pip_audit" ]; + preCheck = '' + export HOME=$(mktemp -d); + ''; + disabledTestPaths = [ + # Tests require network access "test/dependency_source/test_requirement.py" "test/dependency_source/test_resolvelib.py" "test/service/test_pypi.py" @@ -62,8 +67,11 @@ buildPythonApplication rec { ]; disabledTests = [ + # Tests requrire network access "test_get_pip_cache" "test_virtual_env" + "test_pyproject_source" + "test_pyproject_source_duplicate_deps" ]; meta = with lib; {