From 26ab531a0abac615aaedf17622ee2aa5e19c5114 Mon Sep 17 00:00:00 2001
From: Marcel Telka <marcel@telka.sk>
Date: Fri, 05 Apr 2024 12:30:27 +0200
Subject: [PATCH] python/pipdeptree: update to 2.17.0

---
 components/python/pipdeptree/patches/05-test_custom_interpreter.patch |   10 +++++
 components/python/pipdeptree/python-integrate-project.conf            |    1 
 components/python/pipdeptree/test/results-all.master                  |   72 ++++++++----------------------------
 components/python/pipdeptree/Makefile                                 |    5 +-
 components/python/pipdeptree/patches/02-test-pipdeptree-path.patch    |    4 +-
 components/python/pipdeptree/manifests/sample-manifest.p5m            |    2 +
 components/python/pipdeptree/patches/01-tox-no-diff-cover.patch       |   10 ++--
 components/python/pipdeptree/pkg5                                     |    1 
 components/python/pipdeptree/pipdeptree-PYVER.p5m                     |    2 +
 components/python/pipdeptree/patches/03-tox-current-env-PATH.patch    |    4 +-
 components/python/pipdeptree/patches/04-tox-cov-proto.patch           |    4 +-
 11 files changed, 46 insertions(+), 69 deletions(-)

diff --git a/components/python/pipdeptree/Makefile b/components/python/pipdeptree/Makefile
index 93f0b3c..0a693d6 100644
--- a/components/python/pipdeptree/Makefile
+++ b/components/python/pipdeptree/Makefile
@@ -19,11 +19,11 @@
 include ../../../make-rules/shared-macros.mk
 
 COMPONENT_NAME =		pipdeptree
-HUMAN_VERSION =			2.16.2
+HUMAN_VERSION =			2.17.0
 COMPONENT_SUMMARY =		pipdeptree - Command line utility to show dependency tree of packages.
 COMPONENT_PROJECT_URL =		https://github.com/tox-dev/pipdeptree
 COMPONENT_ARCHIVE_HASH =	\
-	sha256:96ecde8e6f40c95998491a385e4af56d387f94ff7d3b8f209aa34982a721bc43
+	sha256:f2c19758c023bca0c08fa085ced2660cff066a108a792b1a72af5b5344c47ae0
 COMPONENT_LICENSE =		MIT
 COMPONENT_LICENSE_FILE =	LICENSE
 
@@ -32,6 +32,7 @@
 # Auto-generated dependencies
 PYTHON_REQUIRED_PACKAGES += library/python/hatch-vcs
 PYTHON_REQUIRED_PACKAGES += library/python/hatchling
+PYTHON_REQUIRED_PACKAGES += library/python/packaging
 PYTHON_REQUIRED_PACKAGES += library/python/pip
 PYTHON_REQUIRED_PACKAGES += runtime/python
 TEST_REQUIRED_PACKAGES.python += library/python/covdefaults
diff --git a/components/python/pipdeptree/manifests/sample-manifest.p5m b/components/python/pipdeptree/manifests/sample-manifest.p5m
index d964f7a..90e0c12 100644
--- a/components/python/pipdeptree/manifests/sample-manifest.p5m
+++ b/components/python/pipdeptree/manifests/sample-manifest.p5m
@@ -30,6 +30,7 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree-$(HUMAN_VERSION).dist-info/licenses/LICENSE
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/__main__.py
+file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_adapter.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_cli.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_discovery.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_models/__init__.py
@@ -51,4 +52,5 @@
     pkg.debug.depend.path=usr/bin
 
 # Automatically generated dependencies based on distribution metadata
+depend type=require fmri=pkg:/library/python/packaging-$(PYV)
 depend type=require fmri=pkg:/library/python/pip-$(PYV)
diff --git a/components/python/pipdeptree/patches/01-tox-no-diff-cover.patch b/components/python/pipdeptree/patches/01-tox-no-diff-cover.patch
index d00d56f..63602f9 100644
--- a/components/python/pipdeptree/patches/01-tox-no-diff-cover.patch
+++ b/components/python/pipdeptree/patches/01-tox-no-diff-cover.patch
@@ -1,7 +1,7 @@
 We cannot compare against origin/main branch because we build from sdist, not git.
 
---- pipdeptree-2.16.2/tox.ini.orig
-+++ pipdeptree-2.16.2/tox.ini
+--- pipdeptree-2.17.0/tox.ini.orig
++++ pipdeptree-2.17.0/tox.ini
 @@ -30,7 +30,6 @@
        --cov-report html:{envtmpdir}{/}htmlcov --cov-report xml:{toxworkdir}{/}coverage.{envname}.xml \
        --junitxml {toxworkdir}{/}junit.{envname}.xml \
@@ -10,9 +10,9 @@
  
  [testenv:fix]
  description = format the code base to adhere to our styles, and complain about what we cannot do automatically
---- pipdeptree-2.16.2/pyproject.toml.orig
-+++ pipdeptree-2.16.2/pyproject.toml
-@@ -47,7 +47,6 @@
+--- pipdeptree-2.17.0/pyproject.toml.orig
++++ pipdeptree-2.17.0/pyproject.toml
+@@ -48,7 +48,6 @@
  ]
  optional-dependencies.test = [
    "covdefaults>=2.3",
diff --git a/components/python/pipdeptree/patches/02-test-pipdeptree-path.patch b/components/python/pipdeptree/patches/02-test-pipdeptree-path.patch
index e7ba5c6..74068ef 100644
--- a/components/python/pipdeptree/patches/02-test-pipdeptree-path.patch
+++ b/components/python/pipdeptree/patches/02-test-pipdeptree-path.patch
@@ -1,5 +1,5 @@
---- pipdeptree-2.16.2/tests/test_pipdeptree.py.orig
-+++ pipdeptree-2.16.2/tests/test_pipdeptree.py
+--- pipdeptree-2.17.0/tests/test_pipdeptree.py.orig
++++ pipdeptree-2.17.0/tests/test_pipdeptree.py
 @@ -10,4 +10,4 @@
  
  
diff --git a/components/python/pipdeptree/patches/03-tox-current-env-PATH.patch b/components/python/pipdeptree/patches/03-tox-current-env-PATH.patch
index 427244a..a207257 100644
--- a/components/python/pipdeptree/patches/03-tox-current-env-PATH.patch
+++ b/components/python/pipdeptree/patches/03-tox-current-env-PATH.patch
@@ -1,5 +1,5 @@
---- pipdeptree-2.16.2/tests/test_pipdeptree.py.orig
-+++ pipdeptree-2.16.2/tests/test_pipdeptree.py
+--- pipdeptree-2.17.0/tests/test_pipdeptree.py.orig
++++ pipdeptree-2.17.0/tests/test_pipdeptree.py
 @@ -4,10 +4,13 @@
  from pathlib import Path
  from subprocess import check_call  # noqa: S404
diff --git a/components/python/pipdeptree/patches/04-tox-cov-proto.patch b/components/python/pipdeptree/patches/04-tox-cov-proto.patch
index 17c93e3..60e11c4 100644
--- a/components/python/pipdeptree/patches/04-tox-cov-proto.patch
+++ b/components/python/pipdeptree/patches/04-tox-cov-proto.patch
@@ -1,7 +1,7 @@
 We test in proto area not in site-packages.
 
---- pipdeptree-2.16.2/tox.ini.orig
-+++ pipdeptree-2.16.2/tox.ini
+--- pipdeptree-2.17.0/tox.ini.orig
++++ pipdeptree-2.17.0/tox.ini
 @@ -25,7 +25,7 @@
      _COVERAGE_SRC = {envsitepackagesdir}/sphinx_argparse_cli
  commands =
diff --git a/components/python/pipdeptree/patches/05-test_custom_interpreter.patch b/components/python/pipdeptree/patches/05-test_custom_interpreter.patch
new file mode 100644
index 0000000..3e9b7ab
--- /dev/null
+++ b/components/python/pipdeptree/patches/05-test_custom_interpreter.patch
@@ -0,0 +1,10 @@
+--- pipdeptree-2.17.0/tests/test_non_host.py.orig
++++ pipdeptree-2.17.0/tests/test_non_host.py
+@@ -14,6 +14,7 @@
+ 
+ 
+ @pytest.mark.parametrize("args_joined", [True, False])
++@pytest.mark.skip(reason="always fails: https://github.com/tox-dev/pipdeptree/issues/343")
+ def test_custom_interpreter(
+     tmp_path: Path,
+     monkeypatch: pytest.MonkeyPatch,
diff --git a/components/python/pipdeptree/pipdeptree-PYVER.p5m b/components/python/pipdeptree/pipdeptree-PYVER.p5m
index 13af600..e1fa3b2 100644
--- a/components/python/pipdeptree/pipdeptree-PYVER.p5m
+++ b/components/python/pipdeptree/pipdeptree-PYVER.p5m
@@ -30,6 +30,7 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree-$(HUMAN_VERSION).dist-info/licenses/LICENSE
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/__main__.py
+file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_adapter.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_cli.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_discovery.py
 file path=usr/lib/python$(PYVER)/vendor-packages/pipdeptree/_models/__init__.py
@@ -51,4 +52,5 @@
     pkg.debug.depend.path=usr/bin
 
 # Automatically generated dependencies based on distribution metadata
+depend type=require fmri=pkg:/library/python/packaging-$(PYV)
 depend type=require fmri=pkg:/library/python/pip-$(PYV)
diff --git a/components/python/pipdeptree/pkg5 b/components/python/pipdeptree/pkg5
index 3e800d6..ad692ed 100644
--- a/components/python/pipdeptree/pkg5
+++ b/components/python/pipdeptree/pkg5
@@ -2,6 +2,7 @@
     "dependencies": [
         "library/python/hatch-vcs-39",
         "library/python/hatchling-39",
+        "library/python/packaging-39",
         "library/python/pip-39",
         "runtime/python-39"
     ],
diff --git a/components/python/pipdeptree/python-integrate-project.conf b/components/python/pipdeptree/python-integrate-project.conf
index 286ef81..3f8f9a9 100644
--- a/components/python/pipdeptree/python-integrate-project.conf
+++ b/components/python/pipdeptree/python-integrate-project.conf
@@ -17,3 +17,4 @@
 %patch% 02-test-pipdeptree-path.patch
 %patch% 03-tox-current-env-PATH.patch
 %patch% 04-tox-cov-proto.patch
+%patch% 05-test_custom_interpreter.patch
diff --git a/components/python/pipdeptree/test/results-all.master b/components/python/pipdeptree/test/results-all.master
index 5fa9f76..8d58eca 100644
--- a/components/python/pipdeptree/test/results-all.master
+++ b/components/python/pipdeptree/test/results-all.master
@@ -3,7 +3,7 @@
 Error processing line 1 of $(PYTHON_DIR)/vendor-packages/coverage_enable_subprocess.pth:
 
   Traceback (most recent call last):
-    File "$(PYTHON_DIR)/site.py", line 169, in addpackage
+    File "$(PYTHON_DIR)/site.py", line 177, in addpackage
       exec(line)
     File "<string>", line 1, in <module>
     File "<string>", line 7, in <module>
@@ -21,7 +21,7 @@
 cachedir: .tox/py$(PYV)/.pytest_cache
 rootdir: $(@D)
 configfile: pyproject.toml
-collecting ... collected 88 items
+collecting ... collected 96 items
 
 tests/_models/test_dag.py::test_package_dag_filter_fnmatch_exclude_a PASSED
 tests/_models/test_dag.py::test_package_dag_filter_fnmatch_exclude_c PASSED
@@ -29,6 +29,7 @@
 tests/_models/test_dag.py::test_package_dag_filter_fnmatch_include_b PASSED
 tests/_models/test_dag.py::test_package_dag_filter_include_exclude_both_used PASSED
 tests/_models/test_dag.py::test_package_dag_filter_nonexistent_packages PASSED
+tests/_models/test_dag.py::test_package_dag_filter_packages_uses_pep503normalize PASSED
 tests/_models/test_dag.py::test_package_dag_from_pkgs PASSED
 tests/_models/test_dag.py::test_package_dag_from_pkgs_uses_pep503normalize PASSED
 tests/_models/test_dag.py::test_package_dag_get_node_as_parent PASSED
@@ -40,15 +41,19 @@
 tests/_models/test_package.py::test_dist_package_licenses[no-license] PASSED
 tests/_models/test_package.py::test_dist_package_licenses[one-license-with-one-non-license] PASSED
 tests/_models/test_package.py::test_dist_package_licenses_importlib_cant_find_package PASSED
-tests/_models/test_package.py::test_dist_package_project_name_recovered PASSED
 tests/_models/test_package.py::test_dist_package_render_as_branch PASSED
 tests/_models/test_package.py::test_dist_package_render_as_root PASSED
+tests/_models/test_package.py::test_dist_package_render_as_root_with_frozen PASSED
+tests/_models/test_package.py::test_dist_package_requires PASSED
+tests/_models/test_package.py::test_dist_package_requires_with_environment_markers_that_eval_to_false PASSED
 tests/_models/test_package.py::test_guess_version_setuptools PASSED
+tests/_models/test_package.py::test_package_as_frozen_repr PASSED
 tests/_models/test_package.py::test_req_package_as_dict PASSED
 tests/_models/test_package.py::test_req_package_as_dict_with_no_version_spec PASSED
 tests/_models/test_package.py::test_req_package_key_pep503_normalized PASSED
 tests/_models/test_package.py::test_req_package_render_as_branch PASSED
 tests/_models/test_package.py::test_req_package_render_as_root PASSED
+tests/_models/test_package.py::test_req_package_render_as_root_with_frozen PASSED
 tests/render/test_graphviz.py::test_render_dot PASSED
 tests/render/test_graphviz.py::test_render_pdf PASSED
 tests/render/test_graphviz.py::test_render_svg PASSED
@@ -98,8 +103,11 @@
 tests/test_cli.py::test_parser_mermaid PASSED
 tests/test_cli.py::test_parser_pdf PASSED
 tests/test_cli.py::test_parser_svg PASSED
-tests/test_non_host.py::test_custom_interpreter[False] PASSED
-tests/test_non_host.py::test_custom_interpreter[True] PASSED
+tests/test_discovery.py::test_duplicate_metadata PASSED
+tests/test_discovery.py::test_local_only PASSED
+tests/test_discovery.py::test_user_only PASSED
+tests/test_non_host.py::test_custom_interpreter[False] SKIPPED (alwa...)
+tests/test_non_host.py::test_custom_interpreter[True] SKIPPED (alway...)
 tests/test_pipdeptree.py::test_console SKIPPED (always fails: https:...)
 tests/test_pipdeptree.py::test_main PASSED
 tests/test_validate.py::test_conflicting_deps[mpkgs0-expected_keys0-expected_output0] PASSED
@@ -112,61 +120,13 @@
 tests/test_validate.py::test_cyclic_deps[no-cycle] PASSED
 tests/test_validate.py::test_cyclic_deps[no-dependencies] PASSED
 
-=============================== warnings summary ===============================
-../prototype/i386$(PYTHON_DIR)/vendor-packages/pipdeptree/_models/package.py:10
-  $(PROTO_DIR)$(PYTHON_DIR)/vendor-packages/pipdeptree/_models/package.py:10: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
-    from pip._vendor.pkg_resources import Requirement  # noqa: PLC2701
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('paste')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('flufl')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('repoze')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('repoze.sphinx')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2350
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2350: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('repoze')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(parent)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('sphinxcontrib')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('zc')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
-../../../../../../../..$(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: 15 warnings
-  $(PYTHON_DIR)/vendor-packages/pip/_vendor/pkg_resources/__init__.py:2871: DeprecationWarning: Deprecated call to `pkg_resources.declare_namespace('zope')`.
-  Implementing implicit namespace packages (as specified in PEP 420) is preferred to `pkg_resources.declare_namespace`. See https://setuptools.pypa.io/en/latest/references/keywords.html#keyword-namespace-packages
-    declare_namespace(pkg)
-
--- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
 - generated xml file: $(@D)/.tox/junit.py$(PYV).xml -
 
-16 files skipped due to complete coverage.
+18 files skipped due to complete coverage.
 Coverage HTML written to dir $(@D)/.tox/py$(PYV)/tmp/htmlcov
 Coverage XML written to file $(@D)/.tox/coverage.py$(PYV).xml
 
-Required test coverage of 88.0% reached. Total coverage: 93.20%
-======== 87 passed, 1 skipped, 25 warnings ========
+Required test coverage of 88.0% reached. Total coverage: 91.87%
+======== 93 passed, 3 skipped ========
   py$(PYV): OK
   congratulations :)

--
Gitblit v1.9.3