mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
dev-python/pipdeptree: Bump to 2.21.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,2 +1,3 @@
|
||||
DIST pipdeptree-2.16.2.tar.gz 32151 BLAKE2B 18715b0c7835e19bd5b6846922990e321a7e06315642204e7d79375a50b692f87e2ba1ec5884c4f69ff6e8d75e863c8cf372152aca7561ab94ef265d3c1df9fb SHA512 06d72f94a9165fe52cc15b9f539e3adb6da99e4a63cae78928bf68be3499b2828a5d471f270455b94a960ba2fe2f6319f5319c20ed270029a38a81173a7cd403
|
||||
DIST pipdeptree-2.17.0.tar.gz 34677 BLAKE2B 3f92c4361978d2a6b1ae46d3a7e21aca231d504abf3a3cc8388d64a70fc3853a33edeac091a0b60cd3043d86162f6816292f973e9c8691420f906e946a5c9dac SHA512 1e7a4bc7f2f872e9d3115b413acc791eeb912a6f428fca772e30a3c8164ecfa44bba7e5246f9b65cbc4d34ffcd8050ff795ced3e3f9ad918f134ce052a8e8992
|
||||
DIST pipdeptree-2.21.0.tar.gz 39119 BLAKE2B 15f37f997b89477a9e1815a2bf120ce5251e9cf2e4df9195dc76bd7414c0cf7f58c4b8e787649492c9826bda5d3f8df60577b5242af7354ad0e1583eabbf0589 SHA512 3d416683c70861de7b768a69fe59a31173e712ecb752c7948329f787c8e13bc54be544fa4a7d3bfdbf6b164202fa8b07898c6e993a53fe244a5f3d9fa9a00573
|
||||
|
||||
134
dev-python/pipdeptree/files/pipdeptree-2.21.0-pypy.patch
Normal file
134
dev-python/pipdeptree/files/pipdeptree-2.21.0-pypy.patch
Normal file
@@ -0,0 +1,134 @@
|
||||
diff --git a/tests/test_non_host.py b/tests/test_non_host.py
|
||||
index 7049b0c..54ba7fb 100644
|
||||
--- a/tests/test_non_host.py
|
||||
+++ b/tests/test_non_host.py
|
||||
@@ -16,6 +16,21 @@
|
||||
from pytest_mock import MockerFixture
|
||||
|
||||
|
||||
+@pytest.fixture(scope="session")
|
||||
+def expected_venv_pkgs() -> frozenset[str]:
|
||||
+ implementation = python_implementation()
|
||||
+ if implementation == "CPython": # pragma: cpython cover
|
||||
+ expected = {"pip", "setuptools", "wheel"}
|
||||
+ elif implementation == "PyPy": # pragma: pypy cover
|
||||
+ expected = {"cffi", "greenlet", "pip", "readline", "hpy", "setuptools", "wheel"}
|
||||
+ else: # pragma: no cover
|
||||
+ raise ValueError(implementation)
|
||||
+ if sys.version_info >= (3, 12): # pragma: >=3.12 cover
|
||||
+ expected -= {"setuptools", "wheel"}
|
||||
+
|
||||
+ return frozenset(expected)
|
||||
+
|
||||
+
|
||||
@pytest.mark.parametrize("args_joined", [True, False])
|
||||
def test_custom_interpreter(
|
||||
tmp_path: Path,
|
||||
@@ -23,6 +38,7 @@ def test_custom_interpreter(
|
||||
monkeypatch: pytest.MonkeyPatch,
|
||||
capfd: pytest.CaptureFixture[str],
|
||||
args_joined: bool,
|
||||
+ expected_venv_pkgs: frozenset[str],
|
||||
) -> None:
|
||||
# Delete $PYTHONPATH so that it cannot be passed to the custom interpreter process (since we don't know what
|
||||
# distribution metadata to expect when it's used).
|
||||
@@ -32,20 +48,13 @@ def test_custom_interpreter(
|
||||
result = virtualenv.cli_run([str(tmp_path / "venv"), "--activators", ""])
|
||||
py = str(result.creator.exe.relative_to(tmp_path))
|
||||
cmd = ["", f"--python={result.creator.exe}"] if args_joined else ["", "--python", py]
|
||||
+ cmd += ["--all", "--depth", "0"]
|
||||
mocker.patch("pipdeptree._discovery.sys.argv", cmd)
|
||||
main()
|
||||
out, _ = capfd.readouterr()
|
||||
found = {i.split("==")[0] for i in out.splitlines()}
|
||||
- implementation = python_implementation()
|
||||
- if implementation == "CPython":
|
||||
- expected = {"pip", "setuptools", "wheel"}
|
||||
- elif implementation == "PyPy":
|
||||
- expected = {"cffi", "greenlet", "pip", "readline", "setuptools", "wheel"} # pragma: no cover
|
||||
- else:
|
||||
- raise ValueError(implementation)
|
||||
- if sys.version_info >= (3, 12):
|
||||
- expected -= {"setuptools", "wheel"}
|
||||
- assert found == expected, out
|
||||
+
|
||||
+ assert expected_venv_pkgs == found, out
|
||||
|
||||
|
||||
def test_custom_interpreter_with_local_only(
|
||||
@@ -54,7 +63,6 @@ def test_custom_interpreter_with_local_only(
|
||||
capfd: pytest.CaptureFixture[str],
|
||||
) -> None:
|
||||
venv_path = str(tmp_path / "venv")
|
||||
-
|
||||
result = virtualenv.cli_run([venv_path, "--system-site-packages", "--activators", ""])
|
||||
|
||||
cmd = ["", f"--python={result.creator.exe}", "--local-only"]
|
||||
@@ -63,16 +71,10 @@ def test_custom_interpreter_with_local_only(
|
||||
main()
|
||||
out, _ = capfd.readouterr()
|
||||
found = {i.split("==")[0] for i in out.splitlines()}
|
||||
- implementation = python_implementation()
|
||||
- if implementation == "CPython":
|
||||
- expected = {"pip", "setuptools", "wheel"}
|
||||
- elif implementation == "PyPy": # pragma: no cover
|
||||
- expected = {"cffi", "greenlet", "pip", "readline", "setuptools", "wheel"} # pragma: no cover
|
||||
- else:
|
||||
- raise ValueError(implementation) # pragma: no cover
|
||||
- if sys.version_info >= (3, 12):
|
||||
- expected -= {"setuptools", "wheel"} # pragma: no cover
|
||||
- assert found == expected, out
|
||||
+ expected = {"pip", "setuptools", "wheel"}
|
||||
+ if sys.version_info >= (3, 12): # pragma: >=3.12 cover
|
||||
+ expected -= {"setuptools", "wheel"}
|
||||
+ assert expected == found, out
|
||||
|
||||
|
||||
def test_custom_interpreter_with_user_only(
|
||||
@@ -81,7 +83,6 @@ def test_custom_interpreter_with_user_only(
|
||||
# ensures there is no output when --user-only and --python are passed
|
||||
|
||||
venv_path = str(tmp_path / "venv")
|
||||
-
|
||||
result = virtualenv.cli_run([venv_path, "--activators", ""])
|
||||
|
||||
cmd = ["", f"--python={result.creator.exe}", "--user-only"]
|
||||
@@ -127,7 +128,7 @@ def test_custom_interpreter_with_user_only_and_system_site_pkgs_enabled(
|
||||
found = {i.split("==")[0] for i in out.splitlines()}
|
||||
expected = {"bar"}
|
||||
|
||||
- assert found == expected
|
||||
+ assert expected == found
|
||||
|
||||
|
||||
def test_custom_interpreter_ensure_pythonpath_envar_is_honored(
|
||||
@@ -135,6 +136,7 @@ def test_custom_interpreter_ensure_pythonpath_envar_is_honored(
|
||||
mocker: MockerFixture,
|
||||
monkeypatch: pytest.MonkeyPatch,
|
||||
capfd: pytest.CaptureFixture[str],
|
||||
+ expected_venv_pkgs: frozenset[str],
|
||||
) -> None:
|
||||
# ensures that we honor $PYTHONPATH when passing it to the custom interpreter process
|
||||
venv_path = str(tmp_path / "venv")
|
||||
@@ -146,19 +148,10 @@ def test_custom_interpreter_ensure_pythonpath_envar_is_honored(
|
||||
fake_metadata = fake_dist / "METADATA"
|
||||
with fake_metadata.open("w") as f:
|
||||
f.write("Metadata-Version: 2.3\n" "Name: foo\n" "Version: 1.2.3\n")
|
||||
- cmd = ["", f"--python={result.creator.exe}"]
|
||||
+ cmd = ["", f"--python={result.creator.exe}", "--all", "--depth", "0"]
|
||||
mocker.patch("pipdeptree._discovery.sys.argv", cmd)
|
||||
monkeypatch.setenv("PYTHONPATH", str(another_path))
|
||||
main()
|
||||
out, _ = capfd.readouterr()
|
||||
found = {i.split("==")[0] for i in out.splitlines()}
|
||||
- implementation = python_implementation()
|
||||
- if implementation == "CPython":
|
||||
- expected = {"foo", "pip", "setuptools", "wheel"}
|
||||
- elif implementation == "PyPy": # pragma: cpython no cover
|
||||
- expected = {"foo", "cffi", "greenlet", "pip", "readline", "setuptools", "wheel"}
|
||||
- else: # pragma: no cover
|
||||
- raise ValueError(implementation)
|
||||
- if sys.version_info >= (3, 12): # pragma: >=3.12 cover
|
||||
- expected -= {"setuptools", "wheel"}
|
||||
- assert found == expected, out
|
||||
+ assert {*expected_venv_pkgs, "foo"} == found, out
|
||||
51
dev-python/pipdeptree/pipdeptree-2.21.0.ebuild
Normal file
51
dev-python/pipdeptree/pipdeptree-2.21.0.ebuild
Normal file
@@ -0,0 +1,51 @@
|
||||
# Copyright 2022-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=hatchling
|
||||
PYTHON_COMPAT=( pypy3 python3_{10..12} )
|
||||
|
||||
inherit distutils-r1 pypi optfeature
|
||||
|
||||
DESCRIPTION="Utility for displaying installed packages in a dependency tree"
|
||||
HOMEPAGE="
|
||||
https://github.com/tox-dev/pipdeptree/
|
||||
https://pypi.org/project/pipdeptree/
|
||||
"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-python/packaging-23.1[${PYTHON_USEDEP}]
|
||||
>=dev-python/pip-23.1.2[${PYTHON_USEDEP}]
|
||||
"
|
||||
BDEPEND="
|
||||
dev-python/hatch-vcs[${PYTHON_USEDEP}]
|
||||
test? (
|
||||
dev-python/graphviz[${PYTHON_USEDEP}]
|
||||
>=dev-python/pytest-console-scripts-1.4.1[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
||||
dev-python/virtualenv[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# https://github.com/tox-dev/pipdeptree/pull/369
|
||||
"${FILESDIR}/${P}-pypy.patch"
|
||||
)
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
python_test() {
|
||||
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
|
||||
epytest -p pytest_mock -p console-scripts
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature \
|
||||
"visualising the dependency graph with --graph-output" \
|
||||
dev-python/graphviz
|
||||
}
|
||||
Reference in New Issue
Block a user