commit:     c7327de7692d4c6995ccb614ac09b3572c0219bc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  9 12:19:25 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov  9 13:30:19 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7327de7

dev-python/pip: Bump to 24.3.1

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/pip/Manifest                         |   2 +
 dev-python/pip/files/pip-23.1-no-coverage.patch |   6 +-
 dev-python/pip/pip-24.3.1.ebuild                | 172 ++++++++++++++++++++++++
 3 files changed, 175 insertions(+), 5 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 610338e1e90d..b0de69ef23e1 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,5 +1,7 @@
+DIST coverage-9999-py3-none-any.whl 1024 BLAKE2B 
6d655b46e51d1edda42cf68a0adc3c05ca4e6e4dddf75f33f92183eeb18b3d194e4da414c4e01ee246e99eb313c52f672a0cd28883fb947b34646971fe294aa7
 SHA512 
47e5814ec35da4fc64a8800ed5e2887b93504a58cefafd4bce58dad656ada834658caeb8fbfc931ce49c5f01c3cb5295860ab43befa853caf3f11d0038ea987d
 DIST pip-24.0.gh.tar.gz 9398156 BLAKE2B 
17a7ed9e15e9b8efa0d3e3c5586dc446958b62cf9ba52155a0d1ad97a3e212ee7a08a0e88a592718fc3d542eb8f434155a75cb98d90c008904bd8f59bd2b40b6
 SHA512 
0c2ecb2ecde4f155c83468d35bc4f52f37efffc16821ae7c706d035e1e8cc3709b41cb10f8140ff09205e8bbdba2c76128ad76d1cbd18401328b619228e834df
 DIST pip-24.1.1.gh.tar.gz 9190972 BLAKE2B 
1ce876d2767c1c36bac3237c17a3aced9dd5a335a7b522c70cee1e155bc0b47256db74c6835aab5f58133ebcde0daeb8e6eb217b06f76418c355034cbe736cf6
 SHA512 
523e7273134b68252693ba7a032e7992c72075aebd2bcd895fbd90ad28d76f98b13ea1a7df0b6da1802650782ae977868177f740dc6f0a2eaccb95915c27b318
 DIST pip-24.1.2.gh.tar.gz 9192691 BLAKE2B 
9b5a07e9f10b5787d668766423d8b3a9dfcc62564673155b80c7bc95ffe79daafa8788d8141f67c76d4098c21922e62fcb2164f72bf580bbeec136786c48d512
 SHA512 
222a957030e9c51defa6f741f8e176f2a19bd54f0ef664d2e218d3d2c2b5a335c9b7ce4bd1c804133d6116b3fbf37648453cd85f7a2bcf86a5aeb43e22db4b0f
 DIST pip-24.1.gh.tar.gz 9188658 BLAKE2B 
4a43ff0199d811dd30461e376f655a447f3f706a48dd97fe1d0ccf630f558e72209ccd06d98949a1541cd6b2942a816db23ce8aaa7fbbf9aef429502fb91ab92
 SHA512 
c60ab329fe91202ff64b5f0f90209085fbf8db0f0a05f0703f952ad69e39e2e3edb5dadc006a3f317cdd4ba4fb5abe56dfbd22792249a2d139702eec272186d1
 DIST pip-24.2.gh.tar.gz 9189637 BLAKE2B 
6bc7bf69cd3e1edc1898a4476d36b749c037ac10a1614ef3a6bacc0c7debd38de94e0cf6d8a2931b1a7afb2f6f853922fcd62b65d17ac805f22741b7ff6423c6
 SHA512 
2c44881f62f7b89cedeb0b739409ad67c6144bfdffc347efeb7bcf85aed77bcd7ddd10868d24577fbba0ef84dd752473d6b6dff329b42841939fae2ff2f63d28
+DIST pip-24.3.1.gh.tar.gz 9198711 BLAKE2B 
c70524bfedf46776d5ab8da24754e8177caac6d87cc90aa86b144c0fe9718860fe3d08823f655495c059dbece6e0ecbb2ac8e655cff3124693f64a35deac512e
 SHA512 
9cf5f18eefd559cf27bc026e5206b0028ea77fd904a61fea9a6682b519305c962dd19170b841581bd05ff72192a9c458ec0eba173fa66db0438b046111ff5856

diff --git a/dev-python/pip/files/pip-23.1-no-coverage.patch 
b/dev-python/pip/files/pip-23.1-no-coverage.patch
index 943cc281cdfb..963bd4e7d43b 100644
--- a/dev-python/pip/files/pip-23.1-no-coverage.patch
+++ b/dev-python/pip/files/pip-23.1-no-coverage.patch
@@ -25,14 +25,10 @@ index 57dd7e68a..af2af9ffa 100644
  def install_pth_link(
      venv: VirtualEnvironment, project_name: str, lib_dir: Path
  ) -> None:
-@@ -430,7 +423,6 @@ def virtualenv_template(
-     pip_src: Path,
+@@ -431,3 +424,2 @@ def virtualenv_template(
      setuptools_install: Path,
      wheel_install: Path,
 -    coverage_install: Path,
- ) -> Iterator[VirtualEnvironment]:
-     venv_type: VirtualEnvironmentType
-     if request.config.getoption("--use-venv"):
 @@ -457,13 +449,6 @@ def virtualenv_template(
          [os.fspath(venv.bin / "python"), "setup.py", "-q", "develop"], 
cwd=pip_editable
      )

diff --git a/dev-python/pip/pip-24.3.1.ebuild b/dev-python/pip/pip-24.3.1.ebuild
new file mode 100644
index 000000000000..472164bfd648
--- /dev/null
+++ b/dev-python/pip/pip-24.3.1.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# please bump dev-python/ensurepip-pip along with this package!
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{10..13} )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1
+
+DESCRIPTION="The PyPA recommended tool for installing Python packages"
+HOMEPAGE="
+       https://pip.pypa.io/en/stable/
+       https://pypi.org/project/pip/
+       https://github.com/pypa/pip/
+"
+SRC_URI="
+       https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+# bundled deps
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 
~sparc ~x86"
+IUSE="test-rust"
+
+# see src/pip/_vendor/vendor.txt
+RDEPEND="
+       >=dev-python/cachecontrol-0.14.0[${PYTHON_USEDEP}]
+       >=dev-python/distlib-0.3.9[${PYTHON_USEDEP}]
+       >=dev-python/distro-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/msgpack-1.0.8[${PYTHON_USEDEP}]
+       >=dev-python/packaging-24.1[${PYTHON_USEDEP}]
+       >=dev-python/platformdirs-4.2.1[${PYTHON_USEDEP}]
+       >=dev-python/pyproject-hooks-1.0.0[${PYTHON_USEDEP}]
+       >=dev-python/requests-2.32.0[${PYTHON_USEDEP}]
+       >=dev-python/rich-13.7.1[${PYTHON_USEDEP}]
+       >=dev-python/resolvelib-1.0.1[${PYTHON_USEDEP}]
+       >=dev-python/setuptools-69.5.1[${PYTHON_USEDEP}]
+       $(python_gen_cond_dep '
+               >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
+       ' 3.10)
+       >=dev-python/truststore-0.10.0[${PYTHON_USEDEP}]
+       >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+       ${RDEPEND}
+       test? (
+               $(python_gen_cond_dep '
+                       dev-python/ensurepip-setuptools
+                       dev-python/ensurepip-wheel
+                       dev-python/freezegun[${PYTHON_USEDEP}]
+                       dev-python/pretend[${PYTHON_USEDEP}]
+                       dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+                       dev-python/pytest-xdist[${PYTHON_USEDEP}]
+                       <dev-python/rich-13.8[${PYTHON_USEDEP}]
+                       dev-python/scripttest[${PYTHON_USEDEP}]
+                       dev-python/tomli-w[${PYTHON_USEDEP}]
+                       dev-python/virtualenv[${PYTHON_USEDEP}]
+                       dev-python/werkzeug[${PYTHON_USEDEP}]
+                       dev-python/wheel[${PYTHON_USEDEP}]
+                       test-rust? (
+                               dev-python/cryptography[${PYTHON_USEDEP}]
+                       )
+                       dev-vcs/git
+               ' "${PYTHON_TESTED[@]}")
+       )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+       local PATCHES=(
+               "${FILESDIR}/pip-23.1-no-coverage.patch"
+               # prepare to unbundle dependencies
+               "${FILESDIR}/pip-24.1-unbundle.patch"
+       )
+
+       distutils-r1_python_prepare_all
+
+       # unbundle dependencies
+       rm -r src/pip/_vendor || die
+       find -name '*.py' -exec sed -i \
+               -e 's:from pip\._vendor import:import:g' \
+               -e 's:from pip\._vendor\.:from :g' \
+               {} + || die
+
+       if use test; then
+               local wheels=(
+                       
"${BROOT}"/usr/lib/python/ensurepip/{setuptools,wheel}-*.whl
+               )
+               mkdir tests/data/common_wheels/ || die
+               cp "${wheels[@]}" tests/data/common_wheels/ || die
+       fi
+}
+
+python_compile_all() {
+       # 'pip completion' command embeds full $0 into completion script, which 
confuses
+       # 'complete' and causes QA warning when running as "${PYTHON} -m pip".
+       # This trick sets correct $0 while still calling just installed pip.
+       local pipcmd='import sys; sys.argv[0] = "pip"; __file__ = ""; from 
pip._internal.cli.main import main; sys.exit(main())'
+       "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die
+       "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die
+}
+
+python_test() {
+       if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+               einfo "Skipping tests on ${EPYTHON}"
+               return 0
+       fi
+
+       local EPYTEST_DESELECT=(
+               tests/functional/test_inspect.py::test_inspect_basic
+               # Internet
+               
tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist
+               tests/functional/test_install.py::test_double_install_fail
+               tests/functional/test_install.py::test_install_sdist_links
+               
tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+               # broken by system site-packages use
+               tests/functional/test_check.py::test_basic_check_clean
+               tests/functional/test_check.py::test_check_skip_work_dir_pkg
+               
tests/functional/test_check.py::test_check_complicated_name_clean
+               
tests/functional/test_check.py::test_check_development_versions_are_also_considered
+               tests/functional/test_freeze.py::test_freeze_with_setuptools
+               
tests/functional/test_pip_runner_script.py::test_runner_work_in_environments_with_no_pip
+               
tests/functional/test_uninstall.py::test_basic_uninstall_distutils
+               
tests/unit/test_base_command.py::test_base_command_global_tempdir_cleanup
+               
tests/unit/test_base_command.py::test_base_command_local_tempdir_cleanup
+               
tests/unit/test_base_command.py::test_base_command_provides_tempdir_helpers
+               # broken by unbundling
+               "tests/functional/test_debug.py::test_debug[vendored library 
versions:]"
+               tests/functional/test_debug.py::test_debug__library_versions
+               tests/functional/test_python_option.py::test_python_interpreter
+               
tests/functional/test_uninstall.py::test_uninstall_non_local_distutils
+       )
+       local EPYTEST_IGNORE=(
+               # requires proxy.py
+               tests/functional/test_proxy.py
+       )
+
+       if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then
+               EPYTEST_DESELECT+=(
+                       
tests/functional/test_install.py::test_install_sends_client_cert
+                       
tests/functional/test_install_config.py::test_do_not_prompt_for_authentication
+                       
tests/functional/test_install_config.py::test_prompt_for_authentication
+                       
tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+               )
+       fi
+
+       local -x PIP_DISABLE_PIP_VERSION_CHECK=1
+       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+       local EPYTEST_XDIST=1
+       # rerunfailures because test suite breaks if packages are installed
+       # in parallel
+       epytest -m "not network" -o tmp_path_retention_policy=all \
+               -p rerunfailures --reruns=5
+}
+
+python_install_all() {
+       local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+       distutils-r1_python_install_all
+
+       newbashcomp completion.bash pip
+
+       insinto /usr/share/zsh/site-functions
+       newins completion.zsh _pip
+}

Reply via email to