public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2016-11-20 19:00 Sebastian Pipping
  0 siblings, 0 replies; 18+ messages in thread
From: Sebastian Pipping @ 2016-11-20 19:00 UTC (permalink / raw
  To: gentoo-commits

commit:     80904f6d9d0109daf6f656cd450edfda4b8de402
Author:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 20 18:59:00 2016 +0000
Commit:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
CommitDate: Sun Nov 20 19:00:36 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80904f6d

dev-python/pip: 9.0.1 (bug #590828)

Package-Manager: portage-2.3.2

 dev-python/pip/Manifest                            |  1 +
 .../files/pip-9.0.1-disable-version-check.patch    | 32 +++++++++
 dev-python/pip/pip-9.0.1.ebuild                    | 80 ++++++++++++++++++++++
 3 files changed, 113 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index b583770..ea8fe00 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -3,3 +3,4 @@ DIST pip-8.0.2.tar.gz 1130183 SHA256 46f4bd0d8dfd51125a554568d646fe4200a3c2c6c36
 DIST pip-8.0.3.tar.gz 1131758 SHA256 30f98b66f3fe1069c529a491597d34a1c224a68640c82caf2ade5f88aa1405e8 SHA512 744111288dd86580e55a4eaeebcaab7b5fdd9e2ea47500e3febe2ce0a282b074f0c687d40a764b98bc54e0bf50748506eb8a5e220a095f2fe655f5cb42ba47c1 WHIRLPOOL 5bd7824ae4a311d98e47ccbf5fcc65b06579d30c0baa58357838935fd2646e87a610e76b22704b20d0c9379c321b878b409639e3604e725f2f08f83a8d7f1dda
 DIST pip-8.1.1.tar.gz 1139175 SHA256 3e78d3066aaeb633d185a57afdccf700aa2e660436b4af618bcb6ff0fa511798 SHA512 3b8f629ca19bff627317415ca681a5ea12171be57a04347e83dcee4a4d013ff9db47beddd56bded1856d4f0ae1a075d901140fe04f544df8018f066d812c0f28 WHIRLPOOL f5ae76d3e2b6807aee5c2af03a2c83a18ae12182a8a533bc50e16ca07eb5efa1f7181d90ffcab171a687ace6880ddd8149b95a003ba749d21ae00ce1b0601891
 DIST pip-8.1.2.tar.gz 1140573 SHA256 4d24b03ffa67638a3fa931c09fd9e0273ffa904e95ebebe7d4b1a54c93d7b732 SHA512 f35e70344bc7baa0739d7a8a38e51f401774b23672e915c32d54fab3e9cc465bfc47361823fa75d2a64fc8748f2020170bd7a4cfde10070d7febf56d1f9124f0 WHIRLPOOL b1b9d46d39b03f78cbceccfd27416dcc50189accefc2a5a6e7a002c9930d7299897d1d15726b95c400c2495ce23c4db414ad8aa29424f189b8be33470a96f12a
+DIST pip-9.0.1.tar.gz 1197370 SHA256 09f243e1a7b461f654c26a725fa373211bb7ff17a9300058b205c61658ca940d SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25 WHIRLPOOL c97a5e9d03943437873d3a49166c28bccf3e0d1f9efe8f500a730607bffcfc26184a6785f1ee55b6867bc4dbd0e77334da7dcf22bd6ba9ae26949c76b6a1c734

diff --git a/dev-python/pip/files/pip-9.0.1-disable-version-check.patch b/dev-python/pip/files/pip-9.0.1-disable-version-check.patch
new file mode 100644
index 00000000..7334380
--- /dev/null
+++ b/dev-python/pip/files/pip-9.0.1-disable-version-check.patch
@@ -0,0 +1,32 @@
+From 890a1c26018752f2c57c7800968e4b8d1e0987f9 Mon Sep 17 00:00:00 2001
+From: Sebastian Pipping <sebastian@pipping.org>
+Date: Sun, 20 Nov 2016 19:52:40 +0100
+Subject: [PATCH] Stop checking for new versions
+
+---
+ pip/basecommand.py | 9 ---------
+ 1 file changed, 9 deletions(-)
+
+diff --git a/pip/basecommand.py b/pip/basecommand.py
+index 54c6706..3cffe86 100644
+--- a/pip/basecommand.py
++++ b/pip/basecommand.py
+@@ -241,15 +241,6 @@ class Command(object):
+             logger.critical('Exception:', exc_info=True)
+ 
+             return UNKNOWN_ERROR
+-        finally:
+-            # Check if we're using the latest version of pip available
+-            if (not options.disable_pip_version_check and not
+-                    getattr(options, "no_index", False)):
+-                with self._build_session(
+-                        options,
+-                        retries=0,
+-                        timeout=min(5, options.timeout)) as session:
+-                    pip_version_check(session)
+ 
+         return SUCCESS
+ 
+-- 
+2.10.2
+

diff --git a/dev-python/pip/pip-9.0.1.ebuild b/dev-python/pip/pip-9.0.1.ebuild
new file mode 100644
index 00000000..8cd1b05
--- /dev/null
+++ b/dev-python/pip/pip-9.0.1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} pypy )
+PYTHON_REQ_USE="threads(+)"
+
+inherit eutils bash-completion-r1 distutils-r1
+
+DESCRIPTION="Installs python packages -- replacement for easy_install"
+HOMEPAGE="https://pip.pypa.io/ https://pypi.python.org/pypi/pip/ https://github.com/pypa/pip/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+
+# Check pip/_vendor/vendor.txt for this
+#VENDOR_DEPEND="
+#	>=dev-python/distlib-0.2.2[${PYTHON_USEDEP}]
+#	>=dev-python/html5lib-1.0b8[${PYTHON_USEDEP}]
+#	>=dev-python/six-1.10.0${PYTHON_USEDEP}]
+#	>=dev-python/colorama-0.3.6[${PYTHON_USEDEP}]
+#	>=dev-python/requests-2.9.1-r2[${PYTHON_USEDEP}]
+#	>=dev-python/CacheControl-0.11.6[${PYTHON_USEDEP}]
+#	>=dev-python/lockfile-0.12.2[${PYTHON_USEDEP}]
+#	>=dev-python/progress-1.2[${PYTHON_USEDEP}]
+#	>=dev-python/packaging-16.5[${PYTHON_USEDEP}]
+#	>=dev-python/retrying-1.3.3[${PYTHON_USEDEP}]
+#	>=dev-python/pyparsing-2.1.0[${PYTHON_USEDEP}]
+#	virtual/python-ipaddress[${PYTHON_USEDEP}]
+#"
+# https://github.com/pypa/pip/issues/3057
+#RDEPEND="${VENDOR_DEPEND}
+#	>=dev-python/setuptools-19.2[${PYTHON_USEDEP}]
+#	<dev-python/setuptools-19.4[${PYTHON_USEDEP}]
+#"
+#DEPEND="${RDEPEND}"
+
+# required test data isn't bundled with the tarball
+RESTRICT="test"
+
+#PATCHES=(
+#	"${FILESDIR}"/${PN}-6.0.2-disable-version-check.patch
+#	"${FILESDIR}"/${PN}-8.0.0-unbundle.patch
+#	)
+
+#python_prepare_all() {
+#	mv pip/_vendor/__init__.py "${T}" || die
+#	rm -r pip/_vendor/* || die
+#	mv "${T}"/__init__.py pip/_vendor/__init__.py || die
+#
+#	distutils-r1_python_prepare_all
+#}
+
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+	epatch "${FILESDIR}"/${PN}-9.0.1-disable-version-check.patch
+
+	distutils-r1_src_prepare
+	eapply_user
+}
+
+python_install_all() {
+	local DOCS=( AUTHORS.txt docs/*.rst )
+	distutils-r1_python_install_all
+
+	COMPLETION="${T}"/completion.tmp
+
+	"${PYTHON}" -m pip completion --bash > "${COMPLETION}" || die
+	newbashcomp "${COMPLETION}" ${PN}
+
+	"${PYTHON}" -m pip completion --zsh > "${COMPLETION}" || die
+	insinto /usr/share/zsh/site-functions
+	newins "${COMPLETION}" _pip
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2024-02-20  9:09 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2024-02-20  9:09 UTC (permalink / raw
  To: gentoo-commits

commit:     09e4204374adb30c3c315588ef318bc81ead9720
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 20 09:00:30 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Feb 20 09:09:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09e42043

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   1 -
 .../pip/files/pip-23.3.2-setuptools-69.0.3.patch   | 383 ---------------------
 dev-python/pip/pip-23.3.2-r1.ebuild                | 134 -------
 3 files changed, 518 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 9932b567968a..3116dbf3047d 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,2 +1 @@
-DIST pip-23.3.2.gh.tar.gz 9397451 BLAKE2B 65e656cf3e7c3ab48b5cfa48f105cae158068f3daee497edfb93e34887afa134b2cfea73574947ca22ec2664dd814034166301fb0f70322ca92852a68052be40 SHA512 976c6ab9959805f4d20d4bdedb4dabc95dd55f1ec78773f63f738599bbe44e766ad3a1394bee052a2c2386826d67686ad456726373345ba9e0d555fd251dff09
 DIST pip-24.0.gh.tar.gz 9398156 BLAKE2B 17a7ed9e15e9b8efa0d3e3c5586dc446958b62cf9ba52155a0d1ad97a3e212ee7a08a0e88a592718fc3d542eb8f434155a75cb98d90c008904bd8f59bd2b40b6 SHA512 0c2ecb2ecde4f155c83468d35bc4f52f37efffc16821ae7c706d035e1e8cc3709b41cb10f8140ff09205e8bbdba2c76128ad76d1cbd18401328b619228e834df

diff --git a/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch b/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch
deleted file mode 100644
index 26d358da9534..000000000000
--- a/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch
+++ /dev/null
@@ -1,383 +0,0 @@
-From a11f98c107cae60c82c480d3208c34656a22fa19 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= <stephane.bidoul@gmail.com>
-Date: Sun, 14 Jan 2024 12:54:21 +0100
-Subject: [PATCH 1/2] Change .egg-link search algorithm to support setuptools
- >= 69
-
----
- src/pip/_internal/utils/egg_link.py | 28 ++++++++++++++++++----------
- 1 file changed, 18 insertions(+), 10 deletions(-)
-
-diff --git a/src/pip/_internal/utils/egg_link.py b/src/pip/_internal/utils/egg_link.py
-index eb57ed151..4a384a636 100644
---- a/src/pip/_internal/utils/egg_link.py
-+++ b/src/pip/_internal/utils/egg_link.py
-@@ -15,24 +15,31 @@ __all__ = [
- ]
- 
- 
--def _egg_link_name(raw_name: str) -> str:
-+def _egg_link_names(raw_name: str) -> List[str]:
-     """
-     Convert a Name metadata value to a .egg-link name, by applying
-     the same substitution as pkg_resources's safe_name function.
-     Note: we cannot use canonicalize_name because it has a different logic.
-+
-+    We also look for the raw name (without normalization) as setuptools 69 changed
-+    the way it names .egg-link files (https://github.com/pypa/setuptools/issues/4167).
-     """
--    return re.sub("[^A-Za-z0-9.]+", "-", raw_name) + ".egg-link"
-+    return [
-+        re.sub("[^A-Za-z0-9.]+", "-", raw_name) + ".egg-link",
-+        f"{raw_name}.egg-link",
-+    ]
- 
- 
- def egg_link_path_from_sys_path(raw_name: str) -> Optional[str]:
-     """
-     Look for a .egg-link file for project name, by walking sys.path.
-     """
--    egg_link_name = _egg_link_name(raw_name)
-+    egg_link_names = _egg_link_names(raw_name)
-     for path_item in sys.path:
--        egg_link = os.path.join(path_item, egg_link_name)
--        if os.path.isfile(egg_link):
--            return egg_link
-+        for egg_link_name in egg_link_names:
-+            egg_link = os.path.join(path_item, egg_link_name)
-+            if os.path.isfile(egg_link):
-+                return egg_link
-     return None
- 
- 
-@@ -64,9 +71,10 @@ def egg_link_path_from_location(raw_name: str) -> Optional[str]:
-             sites.append(user_site)
-         sites.append(site_packages)
- 
--    egg_link_name = _egg_link_name(raw_name)
-+    egg_link_names = _egg_link_names(raw_name)
-     for site in sites:
--        egglink = os.path.join(site, egg_link_name)
--        if os.path.isfile(egglink):
--            return egglink
-+        for egg_link_name in egg_link_names:
-+            egglink = os.path.join(site, egg_link_name)
-+            if os.path.isfile(egglink):
-+                return egglink
-     return None
--- 
-2.43.0
-
-From 6fdd838c59d92ea435766f452da515f234a438ed Mon Sep 17 00:00:00 2001
-From: Richard Si <sichard26@gmail.com>
-Date: Mon, 1 Jan 2024 17:19:45 -0500
-Subject: [PATCH 2/2] Fix tests broken by Setuptools 69.0.3 which now preserves
- underscores in egg_info
-
-More test suite fixes for setuptools 69 compatibility
----
- tests/functional/test_check.py           | 20 ++++++++++++---
- tests/functional/test_freeze.py          | 22 +++++++----------
- tests/functional/test_install.py         |  2 +-
- tests/functional/test_install_reqs.py    |  2 +-
- tests/functional/test_install_vcs_git.py |  2 +-
- tests/functional/test_new_resolver.py    | 13 +++++++---
- tests/functional/test_show.py            | 19 ++++++++++++---
- tests/lib/__init__.py                    | 31 ++++++++++++++++++------
- 8 files changed, 75 insertions(+), 36 deletions(-)
-
-diff --git a/tests/functional/test_check.py b/tests/functional/test_check.py
-index e2b1c60ef..79b6df39c 100644
---- a/tests/functional/test_check.py
-+++ b/tests/functional/test_check.py
-@@ -119,7 +119,10 @@ def test_check_complicated_name_missing(script: PipTestEnvironment) -> None:
- 
-     # Without dependency
-     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
--    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
-+    assert (
-+        "Successfully installed package_A-1.0" in result.stdout
-+        or "Successfully installed package-A-1.0" in result.stdout
-+    ), str(result)
- 
-     result = script.pip("check", expect_error=True)
-     expected_lines = ("package-a 1.0 requires dependency-b, which is not installed.",)
-@@ -142,7 +145,10 @@ def test_check_complicated_name_broken(script: PipTestEnvironment) -> None:
- 
-     # With broken dependency
-     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
--    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
-+    assert (
-+        "Successfully installed package_A-1.0" in result.stdout
-+        or "Successfully installed package-A-1.0" in result.stdout
-+    ), str(result)
- 
-     result = script.pip(
-         "install",
-@@ -175,7 +181,10 @@ def test_check_complicated_name_clean(script: PipTestEnvironment) -> None:
-     )
- 
-     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
--    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
-+    assert (
-+        "Successfully installed package_A-1.0" in result.stdout
-+        or "Successfully installed package-A-1.0" in result.stdout
-+    ), str(result)
- 
-     result = script.pip(
-         "install",
-@@ -203,7 +212,10 @@ def test_check_considers_conditional_reqs(script: PipTestEnvironment) -> None:
-     )
- 
-     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
--    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
-+    assert (
-+        "Successfully installed package_A-1.0" in result.stdout
-+        or "Successfully installed package-A-1.0" in result.stdout
-+    ), str(result)
- 
-     result = script.pip("check", expect_error=True)
-     expected_lines = ("package-a 1.0 requires dependency-b, which is not installed.",)
-diff --git a/tests/functional/test_freeze.py b/tests/functional/test_freeze.py
-index 9a5937df3..a8e6c038c 100644
---- a/tests/functional/test_freeze.py
-+++ b/tests/functional/test_freeze.py
-@@ -221,12 +221,10 @@ def test_freeze_editable_not_vcs(script: PipTestEnvironment) -> None:
-     # We need to apply os.path.normcase() to the path since that is what
-     # the freeze code does.
-     expected = textwrap.dedent(
--        """\
--    ...# Editable install with no version control (version-pkg==0.1)
--    -e {}
--    ...""".format(
--            os.path.normcase(pkg_path)
--        )
-+        f"""\
-+    ...# Editable install with no version control (version...pkg==0.1)
-+    -e {os.path.normcase(pkg_path)}
-+    ..."""
-     )
-     _check_output(result.stdout, expected)
- 
-@@ -248,12 +246,10 @@ def test_freeze_editable_git_with_no_remote(
-     # We need to apply os.path.normcase() to the path since that is what
-     # the freeze code does.
-     expected = textwrap.dedent(
--        """\
--    ...# Editable Git install with no remote (version-pkg==0.1)
--    -e {}
--    ...""".format(
--            os.path.normcase(pkg_path)
--        )
-+        f"""\
-+    ...# Editable Git install with no remote (version...pkg==0.1)
-+    -e {os.path.normcase(pkg_path)}
-+    ..."""
-     )
-     _check_output(result.stdout, expected)
- 
-@@ -489,7 +485,7 @@ def test_freeze_git_remote(script: PipTestEnvironment) -> None:
-     expected = os.path.normcase(
-         textwrap.dedent(
-             f"""
--            ...# Editable Git...(version-pkg...)...
-+            ...# Editable Git...(version...pkg...)...
-             # '{other_remote}'
-             -e {repo_dir}...
-         """
-diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py
-index 140061a17..4b0a4abdf 100644
---- a/tests/functional/test_install.py
-+++ b/tests/functional/test_install.py
-@@ -358,7 +358,7 @@ def test_basic_install_editable_from_svn(script: PipTestEnvironment) -> None:
-     checkout_path = _create_test_package(script.scratch_path)
-     repo_url = _create_svn_repo(script.scratch_path, checkout_path)
-     result = script.pip("install", "-e", "svn+" + repo_url + "#egg=version-pkg")
--    result.assert_installed("version-pkg", with_files=[".svn"])
-+    result.assert_installed("version_pkg", with_files=[".svn"])
- 
- 
- def _test_install_editable_from_git(script: PipTestEnvironment) -> None:
-diff --git a/tests/functional/test_install_reqs.py b/tests/functional/test_install_reqs.py
-index f649be000..4e3b3e653 100644
---- a/tests/functional/test_install_reqs.py
-+++ b/tests/functional/test_install_reqs.py
-@@ -300,7 +300,7 @@ def test_install_local_editable_with_subdirectory(script: PipTestEnvironment) ->
-         ),
-     )
- 
--    result.assert_installed("version-subpkg", sub_dir="version_subdir")
-+    result.assert_installed("version_subpkg", sub_dir="version_subdir")
- 
- 
- @pytest.mark.network
-diff --git a/tests/functional/test_install_vcs_git.py b/tests/functional/test_install_vcs_git.py
-index 2abc7aa0f..e59b269a6 100644
---- a/tests/functional/test_install_vcs_git.py
-+++ b/tests/functional/test_install_vcs_git.py
-@@ -449,7 +449,7 @@ def test_git_with_ambiguous_revs(script: PipTestEnvironment) -> None:
-     assert "Could not find a tag or branch" not in result.stdout
-     # it is 'version-pkg' instead of 'version_pkg' because
-     # egg-link name is version-pkg.egg-link because it is a single .py module
--    result.assert_installed("version-pkg", with_files=[".git"])
-+    result.assert_installed("version_pkg", with_files=[".git"])
- 
- 
- def test_editable__no_revision(script: PipTestEnvironment) -> None:
-diff --git a/tests/functional/test_new_resolver.py b/tests/functional/test_new_resolver.py
-index feae58a9c..c0abec686 100644
---- a/tests/functional/test_new_resolver.py
-+++ b/tests/functional/test_new_resolver.py
-@@ -5,6 +5,7 @@ import textwrap
- from typing import TYPE_CHECKING, Callable, Dict, List, Tuple
- 
- import pytest
-+from packaging.utils import canonicalize_name
- 
- from tests.conftest import ScriptFactory
- from tests.lib import (
-@@ -27,9 +28,13 @@ def assert_editable(script: PipTestEnvironment, *args: str) -> None:
-     # This simply checks whether all of the listed packages have a
-     # corresponding .egg-link file installed.
-     # TODO: Implement a more rigorous way to test for editable installations.
--    egg_links = {f"{arg}.egg-link" for arg in args}
--    assert egg_links <= set(
--        os.listdir(script.site_packages_path)
-+    egg_links = {f"{canonicalize_name(arg)}.egg-link" for arg in args}
-+    actual_egg_links = {
-+        f"{canonicalize_name(p.stem)}.egg-link"
-+        for p in script.site_packages_path.glob("*.egg-link")
-+    }
-+    assert (
-+        egg_links <= actual_egg_links
-     ), f"{args!r} not all found in {script.site_packages_path!r}"
- 
- 
-@@ -1847,7 +1852,7 @@ def test_new_resolver_succeeds_on_matching_constraint_and_requirement(
- 
-     script.assert_installed(test_pkg="0.1.0")
-     if editable:
--        assert_editable(script, "test-pkg")
-+        assert_editable(script, "test_pkg")
- 
- 
- def test_new_resolver_applies_url_constraint_to_dep(script: PipTestEnvironment) -> None:
-diff --git a/tests/functional/test_show.py b/tests/functional/test_show.py
-index b8ec0510a..05fccbbe3 100644
---- a/tests/functional/test_show.py
-+++ b/tests/functional/test_show.py
-@@ -277,7 +277,10 @@ def test_show_required_by_packages_basic(
-     lines = result.stdout.splitlines()
- 
-     assert "Name: simple" in lines
--    assert "Required-by: requires-simple" in lines
-+    assert (
-+        "Required-by: requires_simple" in lines
-+        or "Required-by: requires-simple" in lines
-+    )
- 
- 
- def test_show_required_by_packages_capitalized(
-@@ -294,7 +297,10 @@ def test_show_required_by_packages_capitalized(
-     lines = result.stdout.splitlines()
- 
-     assert "Name: simple" in lines
--    assert "Required-by: Requires-Capitalized" in lines
-+    assert (
-+        "Required-by: Requires_Capitalized" in lines
-+        or "Required-by: Requires-Capitalized" in lines
-+    )
- 
- 
- def test_show_required_by_packages_requiring_capitalized(
-@@ -314,8 +320,13 @@ def test_show_required_by_packages_requiring_capitalized(
-     lines = result.stdout.splitlines()
-     print(lines)
- 
--    assert "Name: Requires-Capitalized" in lines
--    assert "Required-by: requires-requires-capitalized" in lines
-+    assert (
-+        "Name: Requires_Capitalized" in lines or "Name: Requires-Capitalized" in lines
-+    )
-+    assert (
-+        "Required-by: requires_requires_capitalized" in lines
-+        or "Required-by: requires-requires-capitalized" in lines
-+    )
- 
- 
- def test_show_skip_work_dir_pkg(script: PipTestEnvironment) -> None:
-diff --git a/tests/lib/__init__.py b/tests/lib/__init__.py
-index d27c02e25..414926d12 100644
---- a/tests/lib/__init__.py
-+++ b/tests/lib/__init__.py
-@@ -41,6 +41,7 @@ from pip._internal.models.search_scope import SearchScope
- from pip._internal.models.selection_prefs import SelectionPreferences
- from pip._internal.models.target_python import TargetPython
- from pip._internal.network.session import PipSession
-+from pip._internal.utils.egg_link import _egg_link_names
- from tests.lib.venv import VirtualEnvironment
- from tests.lib.wheel import make_wheel
- 
-@@ -305,6 +306,12 @@ class TestPipResult:
-     def files_deleted(self) -> FoundFiles:
-         return FoundFiles(self._impl.files_deleted)
- 
-+    def _get_egg_link_path_created(self, egg_link_paths: List[str]) -> Optional[str]:
-+        for egg_link_path in egg_link_paths:
-+            if egg_link_path in self.files_created:
-+                return egg_link_path
-+        return None
-+
-     def assert_installed(
-         self,
-         pkg_name: str,
-@@ -320,7 +327,7 @@ class TestPipResult:
-         e = self.test_env
- 
-         if editable:
--            pkg_dir = e.venv / "src" / pkg_name.lower()
-+            pkg_dir = e.venv / "src" / canonicalize_name(pkg_name)
-             # If package was installed in a sub directory
-             if sub_dir:
-                 pkg_dir = pkg_dir / sub_dir
-@@ -329,22 +336,30 @@ class TestPipResult:
-             pkg_dir = e.site_packages / pkg_name
- 
-         if use_user_site:
--            egg_link_path = e.user_site / f"{pkg_name}.egg-link"
-+            egg_link_paths = [
-+                e.user_site / egg_link_name
-+                for egg_link_name in _egg_link_names(pkg_name)
-+            ]
-         else:
--            egg_link_path = e.site_packages / f"{pkg_name}.egg-link"
-+            egg_link_paths = [
-+                e.site_packages / egg_link_name
-+                for egg_link_name in _egg_link_names(pkg_name)
-+            ]
- 
-+        egg_link_path_created = self._get_egg_link_path_created(egg_link_paths)
-         if without_egg_link:
--            if egg_link_path in self.files_created:
-+            if egg_link_path_created:
-                 raise TestFailure(
--                    f"unexpected egg link file created: {egg_link_path!r}\n{self}"
-+                    f"unexpected egg link file created: {egg_link_path_created!r}\n"
-+                    f"{self}"
-                 )
-         else:
--            if egg_link_path not in self.files_created:
-+            if not egg_link_path_created:
-                 raise TestFailure(
--                    f"expected egg link file missing: {egg_link_path!r}\n{self}"
-+                    f"expected egg link file missing: {egg_link_paths!r}\n{self}"
-                 )
- 
--            egg_link_file = self.files_created[egg_link_path]
-+            egg_link_file = self.files_created[egg_link_path_created]
-             egg_link_contents = egg_link_file.bytes.replace(os.linesep, "\n")
- 
-             # FIXME: I don't understand why there's a trailing . here
--- 
-2.43.0
-

diff --git a/dev-python/pip/pip-23.3.2-r1.ebuild b/dev-python/pip/pip-23.3.2-r1.ebuild
deleted file mode 100644
index be6f9d444a4f..000000000000
--- a/dev-python/pip/pip-23.3.2-r1.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# 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..11} )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_12 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"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-SLOT="0"
-IUSE="test-rust"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${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-xdist[${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}]
-			)
-		' "${PYTHON_TESTED[@]}")
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/pip-23.1-no-coverage.patch"
-		"${FILESDIR}/pip-23.3.1-no-color.patch"
-		"${FILESDIR}/${P}-setuptools-69.0.3.patch"
-	)
-
-	distutils-r1_python_prepare_all
-
-	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
-		tests/functional/test_install.py::test_double_install_fail
-		# Internet
-		tests/functional/test_install.py::test_install_dry_run
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-		tests/functional/test_install.py::test_install_8559_wheel_package_present
-		tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist
-		tests/functional/test_install.py::test_link_hash_in_dep_fails_require_hashes
-		# TODO
-		tests/unit/test_network_auth.py::test_keyring_cli_get_password
-		tests/unit/test_network_auth.py::test_keyring_cli_set_password
-		# wants to install keyring from Internet, sigh
-		tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
-		# probably a too strict assert
-		# https://github.com/pypa/pip/issues/12152
-		tests/unit/test_req.py::TestRequirementSet::test_download_info_archive_cache_with_invalid_origin
-	)
-
-	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 SETUPTOOLS_USE_DISTUTILS=stdlib
-	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
-	local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-	local EPYTEST_XDIST=1
-	epytest -m "not network"
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2024-01-17 17:11 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2024-01-17 17:11 UTC (permalink / raw
  To: gentoo-commits

commit:     6d06eee3cabb37a3be6d52c74e30dbf0cf30c980
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 17 16:19:04 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jan 17 17:11:43 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d06eee3

dev-python/pip: Backport fixes for >=setuptools-69.0.3

Closes: https://bugs.gentoo.org/921976
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 .../pip/files/pip-23.3.2-setuptools-69.0.3.patch   | 383 +++++++++++++++++++++
 .../{pip-23.3.2.ebuild => pip-23.3.2-r1.ebuild}    |   1 +
 2 files changed, 384 insertions(+)

diff --git a/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch b/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch
new file mode 100644
index 000000000000..26d358da9534
--- /dev/null
+++ b/dev-python/pip/files/pip-23.3.2-setuptools-69.0.3.patch
@@ -0,0 +1,383 @@
+From a11f98c107cae60c82c480d3208c34656a22fa19 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= <stephane.bidoul@gmail.com>
+Date: Sun, 14 Jan 2024 12:54:21 +0100
+Subject: [PATCH 1/2] Change .egg-link search algorithm to support setuptools
+ >= 69
+
+---
+ src/pip/_internal/utils/egg_link.py | 28 ++++++++++++++++++----------
+ 1 file changed, 18 insertions(+), 10 deletions(-)
+
+diff --git a/src/pip/_internal/utils/egg_link.py b/src/pip/_internal/utils/egg_link.py
+index eb57ed151..4a384a636 100644
+--- a/src/pip/_internal/utils/egg_link.py
++++ b/src/pip/_internal/utils/egg_link.py
+@@ -15,24 +15,31 @@ __all__ = [
+ ]
+ 
+ 
+-def _egg_link_name(raw_name: str) -> str:
++def _egg_link_names(raw_name: str) -> List[str]:
+     """
+     Convert a Name metadata value to a .egg-link name, by applying
+     the same substitution as pkg_resources's safe_name function.
+     Note: we cannot use canonicalize_name because it has a different logic.
++
++    We also look for the raw name (without normalization) as setuptools 69 changed
++    the way it names .egg-link files (https://github.com/pypa/setuptools/issues/4167).
+     """
+-    return re.sub("[^A-Za-z0-9.]+", "-", raw_name) + ".egg-link"
++    return [
++        re.sub("[^A-Za-z0-9.]+", "-", raw_name) + ".egg-link",
++        f"{raw_name}.egg-link",
++    ]
+ 
+ 
+ def egg_link_path_from_sys_path(raw_name: str) -> Optional[str]:
+     """
+     Look for a .egg-link file for project name, by walking sys.path.
+     """
+-    egg_link_name = _egg_link_name(raw_name)
++    egg_link_names = _egg_link_names(raw_name)
+     for path_item in sys.path:
+-        egg_link = os.path.join(path_item, egg_link_name)
+-        if os.path.isfile(egg_link):
+-            return egg_link
++        for egg_link_name in egg_link_names:
++            egg_link = os.path.join(path_item, egg_link_name)
++            if os.path.isfile(egg_link):
++                return egg_link
+     return None
+ 
+ 
+@@ -64,9 +71,10 @@ def egg_link_path_from_location(raw_name: str) -> Optional[str]:
+             sites.append(user_site)
+         sites.append(site_packages)
+ 
+-    egg_link_name = _egg_link_name(raw_name)
++    egg_link_names = _egg_link_names(raw_name)
+     for site in sites:
+-        egglink = os.path.join(site, egg_link_name)
+-        if os.path.isfile(egglink):
+-            return egglink
++        for egg_link_name in egg_link_names:
++            egglink = os.path.join(site, egg_link_name)
++            if os.path.isfile(egglink):
++                return egglink
+     return None
+-- 
+2.43.0
+
+From 6fdd838c59d92ea435766f452da515f234a438ed Mon Sep 17 00:00:00 2001
+From: Richard Si <sichard26@gmail.com>
+Date: Mon, 1 Jan 2024 17:19:45 -0500
+Subject: [PATCH 2/2] Fix tests broken by Setuptools 69.0.3 which now preserves
+ underscores in egg_info
+
+More test suite fixes for setuptools 69 compatibility
+---
+ tests/functional/test_check.py           | 20 ++++++++++++---
+ tests/functional/test_freeze.py          | 22 +++++++----------
+ tests/functional/test_install.py         |  2 +-
+ tests/functional/test_install_reqs.py    |  2 +-
+ tests/functional/test_install_vcs_git.py |  2 +-
+ tests/functional/test_new_resolver.py    | 13 +++++++---
+ tests/functional/test_show.py            | 19 ++++++++++++---
+ tests/lib/__init__.py                    | 31 ++++++++++++++++++------
+ 8 files changed, 75 insertions(+), 36 deletions(-)
+
+diff --git a/tests/functional/test_check.py b/tests/functional/test_check.py
+index e2b1c60ef..79b6df39c 100644
+--- a/tests/functional/test_check.py
++++ b/tests/functional/test_check.py
+@@ -119,7 +119,10 @@ def test_check_complicated_name_missing(script: PipTestEnvironment) -> None:
+ 
+     # Without dependency
+     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
+-    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
++    assert (
++        "Successfully installed package_A-1.0" in result.stdout
++        or "Successfully installed package-A-1.0" in result.stdout
++    ), str(result)
+ 
+     result = script.pip("check", expect_error=True)
+     expected_lines = ("package-a 1.0 requires dependency-b, which is not installed.",)
+@@ -142,7 +145,10 @@ def test_check_complicated_name_broken(script: PipTestEnvironment) -> None:
+ 
+     # With broken dependency
+     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
+-    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
++    assert (
++        "Successfully installed package_A-1.0" in result.stdout
++        or "Successfully installed package-A-1.0" in result.stdout
++    ), str(result)
+ 
+     result = script.pip(
+         "install",
+@@ -175,7 +181,10 @@ def test_check_complicated_name_clean(script: PipTestEnvironment) -> None:
+     )
+ 
+     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
+-    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
++    assert (
++        "Successfully installed package_A-1.0" in result.stdout
++        or "Successfully installed package-A-1.0" in result.stdout
++    ), str(result)
+ 
+     result = script.pip(
+         "install",
+@@ -203,7 +212,10 @@ def test_check_considers_conditional_reqs(script: PipTestEnvironment) -> None:
+     )
+ 
+     result = script.pip("install", "--no-index", package_a_path, "--no-deps")
+-    assert "Successfully installed package-A-1.0" in result.stdout, str(result)
++    assert (
++        "Successfully installed package_A-1.0" in result.stdout
++        or "Successfully installed package-A-1.0" in result.stdout
++    ), str(result)
+ 
+     result = script.pip("check", expect_error=True)
+     expected_lines = ("package-a 1.0 requires dependency-b, which is not installed.",)
+diff --git a/tests/functional/test_freeze.py b/tests/functional/test_freeze.py
+index 9a5937df3..a8e6c038c 100644
+--- a/tests/functional/test_freeze.py
++++ b/tests/functional/test_freeze.py
+@@ -221,12 +221,10 @@ def test_freeze_editable_not_vcs(script: PipTestEnvironment) -> None:
+     # We need to apply os.path.normcase() to the path since that is what
+     # the freeze code does.
+     expected = textwrap.dedent(
+-        """\
+-    ...# Editable install with no version control (version-pkg==0.1)
+-    -e {}
+-    ...""".format(
+-            os.path.normcase(pkg_path)
+-        )
++        f"""\
++    ...# Editable install with no version control (version...pkg==0.1)
++    -e {os.path.normcase(pkg_path)}
++    ..."""
+     )
+     _check_output(result.stdout, expected)
+ 
+@@ -248,12 +246,10 @@ def test_freeze_editable_git_with_no_remote(
+     # We need to apply os.path.normcase() to the path since that is what
+     # the freeze code does.
+     expected = textwrap.dedent(
+-        """\
+-    ...# Editable Git install with no remote (version-pkg==0.1)
+-    -e {}
+-    ...""".format(
+-            os.path.normcase(pkg_path)
+-        )
++        f"""\
++    ...# Editable Git install with no remote (version...pkg==0.1)
++    -e {os.path.normcase(pkg_path)}
++    ..."""
+     )
+     _check_output(result.stdout, expected)
+ 
+@@ -489,7 +485,7 @@ def test_freeze_git_remote(script: PipTestEnvironment) -> None:
+     expected = os.path.normcase(
+         textwrap.dedent(
+             f"""
+-            ...# Editable Git...(version-pkg...)...
++            ...# Editable Git...(version...pkg...)...
+             # '{other_remote}'
+             -e {repo_dir}...
+         """
+diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py
+index 140061a17..4b0a4abdf 100644
+--- a/tests/functional/test_install.py
++++ b/tests/functional/test_install.py
+@@ -358,7 +358,7 @@ def test_basic_install_editable_from_svn(script: PipTestEnvironment) -> None:
+     checkout_path = _create_test_package(script.scratch_path)
+     repo_url = _create_svn_repo(script.scratch_path, checkout_path)
+     result = script.pip("install", "-e", "svn+" + repo_url + "#egg=version-pkg")
+-    result.assert_installed("version-pkg", with_files=[".svn"])
++    result.assert_installed("version_pkg", with_files=[".svn"])
+ 
+ 
+ def _test_install_editable_from_git(script: PipTestEnvironment) -> None:
+diff --git a/tests/functional/test_install_reqs.py b/tests/functional/test_install_reqs.py
+index f649be000..4e3b3e653 100644
+--- a/tests/functional/test_install_reqs.py
++++ b/tests/functional/test_install_reqs.py
+@@ -300,7 +300,7 @@ def test_install_local_editable_with_subdirectory(script: PipTestEnvironment) ->
+         ),
+     )
+ 
+-    result.assert_installed("version-subpkg", sub_dir="version_subdir")
++    result.assert_installed("version_subpkg", sub_dir="version_subdir")
+ 
+ 
+ @pytest.mark.network
+diff --git a/tests/functional/test_install_vcs_git.py b/tests/functional/test_install_vcs_git.py
+index 2abc7aa0f..e59b269a6 100644
+--- a/tests/functional/test_install_vcs_git.py
++++ b/tests/functional/test_install_vcs_git.py
+@@ -449,7 +449,7 @@ def test_git_with_ambiguous_revs(script: PipTestEnvironment) -> None:
+     assert "Could not find a tag or branch" not in result.stdout
+     # it is 'version-pkg' instead of 'version_pkg' because
+     # egg-link name is version-pkg.egg-link because it is a single .py module
+-    result.assert_installed("version-pkg", with_files=[".git"])
++    result.assert_installed("version_pkg", with_files=[".git"])
+ 
+ 
+ def test_editable__no_revision(script: PipTestEnvironment) -> None:
+diff --git a/tests/functional/test_new_resolver.py b/tests/functional/test_new_resolver.py
+index feae58a9c..c0abec686 100644
+--- a/tests/functional/test_new_resolver.py
++++ b/tests/functional/test_new_resolver.py
+@@ -5,6 +5,7 @@ import textwrap
+ from typing import TYPE_CHECKING, Callable, Dict, List, Tuple
+ 
+ import pytest
++from packaging.utils import canonicalize_name
+ 
+ from tests.conftest import ScriptFactory
+ from tests.lib import (
+@@ -27,9 +28,13 @@ def assert_editable(script: PipTestEnvironment, *args: str) -> None:
+     # This simply checks whether all of the listed packages have a
+     # corresponding .egg-link file installed.
+     # TODO: Implement a more rigorous way to test for editable installations.
+-    egg_links = {f"{arg}.egg-link" for arg in args}
+-    assert egg_links <= set(
+-        os.listdir(script.site_packages_path)
++    egg_links = {f"{canonicalize_name(arg)}.egg-link" for arg in args}
++    actual_egg_links = {
++        f"{canonicalize_name(p.stem)}.egg-link"
++        for p in script.site_packages_path.glob("*.egg-link")
++    }
++    assert (
++        egg_links <= actual_egg_links
+     ), f"{args!r} not all found in {script.site_packages_path!r}"
+ 
+ 
+@@ -1847,7 +1852,7 @@ def test_new_resolver_succeeds_on_matching_constraint_and_requirement(
+ 
+     script.assert_installed(test_pkg="0.1.0")
+     if editable:
+-        assert_editable(script, "test-pkg")
++        assert_editable(script, "test_pkg")
+ 
+ 
+ def test_new_resolver_applies_url_constraint_to_dep(script: PipTestEnvironment) -> None:
+diff --git a/tests/functional/test_show.py b/tests/functional/test_show.py
+index b8ec0510a..05fccbbe3 100644
+--- a/tests/functional/test_show.py
++++ b/tests/functional/test_show.py
+@@ -277,7 +277,10 @@ def test_show_required_by_packages_basic(
+     lines = result.stdout.splitlines()
+ 
+     assert "Name: simple" in lines
+-    assert "Required-by: requires-simple" in lines
++    assert (
++        "Required-by: requires_simple" in lines
++        or "Required-by: requires-simple" in lines
++    )
+ 
+ 
+ def test_show_required_by_packages_capitalized(
+@@ -294,7 +297,10 @@ def test_show_required_by_packages_capitalized(
+     lines = result.stdout.splitlines()
+ 
+     assert "Name: simple" in lines
+-    assert "Required-by: Requires-Capitalized" in lines
++    assert (
++        "Required-by: Requires_Capitalized" in lines
++        or "Required-by: Requires-Capitalized" in lines
++    )
+ 
+ 
+ def test_show_required_by_packages_requiring_capitalized(
+@@ -314,8 +320,13 @@ def test_show_required_by_packages_requiring_capitalized(
+     lines = result.stdout.splitlines()
+     print(lines)
+ 
+-    assert "Name: Requires-Capitalized" in lines
+-    assert "Required-by: requires-requires-capitalized" in lines
++    assert (
++        "Name: Requires_Capitalized" in lines or "Name: Requires-Capitalized" in lines
++    )
++    assert (
++        "Required-by: requires_requires_capitalized" in lines
++        or "Required-by: requires-requires-capitalized" in lines
++    )
+ 
+ 
+ def test_show_skip_work_dir_pkg(script: PipTestEnvironment) -> None:
+diff --git a/tests/lib/__init__.py b/tests/lib/__init__.py
+index d27c02e25..414926d12 100644
+--- a/tests/lib/__init__.py
++++ b/tests/lib/__init__.py
+@@ -41,6 +41,7 @@ from pip._internal.models.search_scope import SearchScope
+ from pip._internal.models.selection_prefs import SelectionPreferences
+ from pip._internal.models.target_python import TargetPython
+ from pip._internal.network.session import PipSession
++from pip._internal.utils.egg_link import _egg_link_names
+ from tests.lib.venv import VirtualEnvironment
+ from tests.lib.wheel import make_wheel
+ 
+@@ -305,6 +306,12 @@ class TestPipResult:
+     def files_deleted(self) -> FoundFiles:
+         return FoundFiles(self._impl.files_deleted)
+ 
++    def _get_egg_link_path_created(self, egg_link_paths: List[str]) -> Optional[str]:
++        for egg_link_path in egg_link_paths:
++            if egg_link_path in self.files_created:
++                return egg_link_path
++        return None
++
+     def assert_installed(
+         self,
+         pkg_name: str,
+@@ -320,7 +327,7 @@ class TestPipResult:
+         e = self.test_env
+ 
+         if editable:
+-            pkg_dir = e.venv / "src" / pkg_name.lower()
++            pkg_dir = e.venv / "src" / canonicalize_name(pkg_name)
+             # If package was installed in a sub directory
+             if sub_dir:
+                 pkg_dir = pkg_dir / sub_dir
+@@ -329,22 +336,30 @@ class TestPipResult:
+             pkg_dir = e.site_packages / pkg_name
+ 
+         if use_user_site:
+-            egg_link_path = e.user_site / f"{pkg_name}.egg-link"
++            egg_link_paths = [
++                e.user_site / egg_link_name
++                for egg_link_name in _egg_link_names(pkg_name)
++            ]
+         else:
+-            egg_link_path = e.site_packages / f"{pkg_name}.egg-link"
++            egg_link_paths = [
++                e.site_packages / egg_link_name
++                for egg_link_name in _egg_link_names(pkg_name)
++            ]
+ 
++        egg_link_path_created = self._get_egg_link_path_created(egg_link_paths)
+         if without_egg_link:
+-            if egg_link_path in self.files_created:
++            if egg_link_path_created:
+                 raise TestFailure(
+-                    f"unexpected egg link file created: {egg_link_path!r}\n{self}"
++                    f"unexpected egg link file created: {egg_link_path_created!r}\n"
++                    f"{self}"
+                 )
+         else:
+-            if egg_link_path not in self.files_created:
++            if not egg_link_path_created:
+                 raise TestFailure(
+-                    f"expected egg link file missing: {egg_link_path!r}\n{self}"
++                    f"expected egg link file missing: {egg_link_paths!r}\n{self}"
+                 )
+ 
+-            egg_link_file = self.files_created[egg_link_path]
++            egg_link_file = self.files_created[egg_link_path_created]
+             egg_link_contents = egg_link_file.bytes.replace(os.linesep, "\n")
+ 
+             # FIXME: I don't understand why there's a trailing . here
+-- 
+2.43.0
+

diff --git a/dev-python/pip/pip-23.3.2.ebuild b/dev-python/pip/pip-23.3.2-r1.ebuild
similarity index 98%
rename from dev-python/pip/pip-23.3.2.ebuild
rename to dev-python/pip/pip-23.3.2-r1.ebuild
index 0ab48e625f7d..be6f9d444a4f 100644
--- a/dev-python/pip/pip-23.3.2.ebuild
+++ b/dev-python/pip/pip-23.3.2-r1.ebuild
@@ -59,6 +59,7 @@ python_prepare_all() {
 	local PATCHES=(
 		"${FILESDIR}/pip-23.1-no-coverage.patch"
 		"${FILESDIR}/pip-23.3.1-no-color.patch"
+		"${FILESDIR}/${P}-setuptools-69.0.3.patch"
 	)
 
 	distutils-r1_python_prepare_all


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2023-11-25  6:45 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2023-11-25  6:45 UTC (permalink / raw
  To: gentoo-commits

commit:     d89ed8c8920204029d02ce001f532bfef0307f69
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 25 06:44:37 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 25 06:45:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d89ed8c8

dev-python/pip: Fix testing with NO_COLOR

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

 dev-python/pip/files/pip-23.3.1-no-color.patch | 35 ++++++++++++++++++++++++++
 dev-python/pip/pip-23.3.1.ebuild               |  1 +
 2 files changed, 36 insertions(+)

diff --git a/dev-python/pip/files/pip-23.3.1-no-color.patch b/dev-python/pip/files/pip-23.3.1-no-color.patch
new file mode 100644
index 000000000000..528e2c6cf465
--- /dev/null
+++ b/dev-python/pip/files/pip-23.3.1-no-color.patch
@@ -0,0 +1,35 @@
+From ad01e9c2a965d395c5902c8ad70c970c7631316b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 25 Nov 2023 07:36:59 +0100
+Subject: [PATCH] Fix tests when NO_COLOR is set in the calling environment
+
+Add `FORCE_COLOR` and `NO_COLOR` variables to the `isolate()` fixture
+to ensure that these two variables do not affect internal test output.
+This fixes the following two test failures when pytest is called with
+`NO_COLOR` set:
+
+```
+FAILED tests/unit/test_exceptions.py::TestDiagnosticPipErrorPresentation_ASCII::test_complete_color - AssertionError: assert '\x1b[1merror...ing harder.\n' == '\x1b[1;31mer...ing harder.\n'
+FAILED tests/unit/test_exceptions.py::TestDiagnosticPipErrorPresentation_Unicode::test_complete_color - AssertionError: assert '\x1b[1merror...ing harder.\n' == '\x1b[1;31mer...ing harder.\n'
+```
+---
+ news/7ae28a10-04c4-4a1f-a276-4c9e04f2e0c1.trivial.rst | 0
+ tests/conftest.py                                     | 4 ++++
+ 2 files changed, 4 insertions(+)
+ create mode 100644 news/7ae28a10-04c4-4a1f-a276-4c9e04f2e0c1.trivial.rst
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index c5bf4bb9567..8d9eb029c79 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -318,6 +318,10 @@ def isolate(tmpdir: Path, monkeypatch: pytest.MonkeyPatch) -> None:
+     # Make sure tests don't share a requirements tracker.
+     monkeypatch.delenv("PIP_BUILD_TRACKER", False)
+ 
++    # Make sure color control variables don't affect internal output.
++    monkeypatch.delenv("FORCE_COLOR", False)
++    monkeypatch.delenv("NO_COLOR", False)
++
+     # FIXME: Windows...
+     os.makedirs(os.path.join(home_dir, ".config", "git"))
+     with open(os.path.join(home_dir, ".config", "git", "config"), "wb") as fp:

diff --git a/dev-python/pip/pip-23.3.1.ebuild b/dev-python/pip/pip-23.3.1.ebuild
index 58c5279dbfaa..88ef2bad1879 100644
--- a/dev-python/pip/pip-23.3.1.ebuild
+++ b/dev-python/pip/pip-23.3.1.ebuild
@@ -58,6 +58,7 @@ distutils_enable_tests pytest
 python_prepare_all() {
 	local PATCHES=(
 		"${FILESDIR}/pip-23.1-no-coverage.patch"
+		"${FILESDIR}/${P}-no-color.patch"
 	)
 
 	distutils-r1_python_prepare_all


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2022-08-30 19:01 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2022-08-30 19:01 UTC (permalink / raw
  To: gentoo-commits

commit:     1739efddd0b5975e261453445915d7bbc0817e6e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 18:54:56 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 18:54:56 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1739efdd

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                         |   3 -
 dev-python/pip/files/pip-21.3-no-coverage.patch |  52 ---------
 dev-python/pip/files/pip-22.2-no-coverage.patch |  52 ---------
 dev-python/pip/pip-22.1.2-r1.ebuild             | 130 ----------------------
 dev-python/pip/pip-22.2-r1.ebuild               | 134 -----------------------
 dev-python/pip/pip-22.2.1-r1.ebuild             | 136 ------------------------
 6 files changed, 507 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index d45ad2c97c73..a8d8eaba4a81 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,7 +1,4 @@
-DIST pip-22.1.2.gh.tar.gz 9346675 BLAKE2B f709f8977d467d5a3170884bb75cd2f74a2f40801ae02a3725d442e18e4073f9c4a39cd1c9d2ce3949eb888be69d151f67d0cf2d0cbad7e2ec1ec6e78150b5c7 SHA512 7dd13150023f1cca8f5e01da7688ae418b5d0b36364efcfc15374a5147c7cabd46ff1d34e6499bc8e182dc0d34a366f5fe21d8ab4de4d112d269a97200401305
-DIST pip-22.2.1.gh.tar.gz 9279141 BLAKE2B 61906027e36c8b3b82f3d17a59cbc995864622184c7f4099e9dfbb5082d1953dff72551558b8fe0d463d7defcd8b9403a978e4a8c7d79af5cd6b9dbbbcc9c7b5 SHA512 77996ce7e1aa4b5aab0c55dfee5e9bfe9f5f09f33cb796ce78bba7365f37ce9f1cce4eeaf5fdbeddde0819ecc6a30ffdafa6b7e25f93c672fcc8646303a7946e
 DIST pip-22.2.2.gh.tar.gz 9279218 BLAKE2B 2179b0d3f5f05bbd678f1785b4dbc0613078c09c83b45faa62d766182dfeb564095abda809ed99f45644abcb06c125efc528aeaed3ad40ab1c9e8972e33ccbb2 SHA512 bd59e28b55475b77a8f11ea771cbad3b2602ff974e219f9a55288963a9522c9279a5b00fde40fb65cfebefae0e905d3da3c06fe50b402aa5326b25f70a98a015
-DIST pip-22.2.gh.tar.gz 9278410 BLAKE2B e32fe63e81593a0ec9c0110af0f07f1a47ddd3d6c660c11e9eb9142c251b7f45e3a1cc343193b123364a6a3a69490add7d4ebb368aac027c448f00f7cd163d7c SHA512 2ff3f9c2dc84c65c14c978e8c58cd3cee6cfff9753655c726763d6d7780d147479f32c47873d402ad9e0821fef940b971a7df93fabd6b998f07dea5af1251c9b
 DIST setuptools-62.3.2-py3-none-any.whl 1225929 BLAKE2B 608952e201f749ebf557e3962ba9856d5bdcbc534f3a25598cab0d6c53282cfb3b9f007ba135497a8addf49db4c02bc4387c486d95a4529d01ce4114154ec28a SHA512 366d69dc44e326dd7549cdacd8dec481a14dce4feef4338adc38b9de5c4c338f04d61696e13ce8603be1315f2e8734100f92d3fe4b4b11843e19f550c9631978
 DIST virtualenv-16.7.12.gh.tar.gz 8906590 BLAKE2B a1f206769e4e5797562906162e492e44c4a72720e4f88a0362dc802ce2df20c65aaab6a72dce2238445601a10fae59bd90cd362217994d30911f105afd71c5fa SHA512 0278b33fb19f6553e70ad3dcffa6ea1a455ff435b216ac9b4fadff216b2932714faa2bb6027af3058010111d8511a5c2fcd424f31c9645be361603971f111c8e
 DIST wheel-0.36.2-py2.py3-none-any.whl 35046 BLAKE2B bc4e8dab7c74eea34d3b4a813b7eaf6295a99a396a861b6cdd76f743043e89140bad132bdd13e385e8945ce02e0798e1d3ac73fc1b23bde5b2a83e4bb4dd5cdc SHA512 6bb5119b4d3704fe1e3c1eaaa3124edab13f61b46f8a0a8e75974fac4e5b25d8b53606071a03a8d8990ad1cfe2ab247ddea260098df2c0c35ae965be47080284

diff --git a/dev-python/pip/files/pip-21.3-no-coverage.patch b/dev-python/pip/files/pip-21.3-no-coverage.patch
deleted file mode 100644
index 8292f97f9488..000000000000
--- a/dev-python/pip/files/pip-21.3-no-coverage.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 8473691148031ed4db5bd8870fbeef9484b9c831 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Sat, 23 Oct 2021 08:11:11 +0200
-Subject: [PATCH] Disable coverage testing support inside test venvs
-
----
- tests/conftest.py | 15 ---------------
- 1 file changed, 15 deletions(-)
-
-diff --git a/tests/conftest.py b/tests/conftest.py
-index 076aeaf19..77c41dc15 100644
---- a/tests/conftest.py
-+++ b/tests/conftest.py
-@@ -340,13 +340,6 @@ def wheel_install(tmpdir_factory: pytest.TempdirFactory, common_wheels: Path) ->
-     return _common_wheel_editable_install(tmpdir_factory, common_wheels, "wheel")
- 
- 
--@pytest.fixture(scope="session")
--def coverage_install(
--    tmpdir_factory: pytest.TempdirFactory, common_wheels: Path
--) -> Path:
--    return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage")
--
--
- def install_egg_link(
-     venv: VirtualEnvironment, project_name: str, egg_info_dir: Path
- ) -> None:
-@@ -362,7 +355,6 @@ def virtualenv_template(
-     tmpdir_factory: pytest.TempdirFactory,
-     pip_src: Path,
-     setuptools_install: Path,
--    coverage_install: Path,
- ) -> Iterator[VirtualEnvironment]:
- 
-     venv_type: VirtualEnvironmentType
-@@ -389,13 +381,6 @@ def virtualenv_template(
-         [venv.bin / "python", "setup.py", "-q", "develop"], cwd=pip_editable
-     )
- 
--    # Install coverage and pth file for executing it in any spawned processes
--    # in this virtual environment.
--    install_egg_link(venv, "coverage", coverage_install)
--    # zz prefix ensures the file is after easy-install.pth.
--    with open(venv.site / "zz-coverage-helper.pth", "a") as f:
--        f.write("import coverage; coverage.process_startup()")
--
-     # Drop (non-relocatable) launchers.
-     for exe in os.listdir(venv.bin):
-         if not (
--- 
-2.33.1
-

diff --git a/dev-python/pip/files/pip-22.2-no-coverage.patch b/dev-python/pip/files/pip-22.2-no-coverage.patch
deleted file mode 100644
index 20a5fa4beabf..000000000000
--- a/dev-python/pip/files/pip-22.2-no-coverage.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From 75292c12ee2062f7d035b326b652ba6cffb8480d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Sat, 23 Oct 2021 08:11:11 +0200
-Subject: [PATCH] Disable coverage testing support inside test venvs
-
----
- tests/conftest.py | 15 ---------------
- 1 file changed, 15 deletions(-)
-
-diff --git a/tests/conftest.py b/tests/conftest.py
-index 210ff0f4e..e5c0d2ef0 100644
---- a/tests/conftest.py
-+++ b/tests/conftest.py
-@@ -382,13 +382,6 @@ def wheel_install(tmpdir_factory: pytest.TempPathFactory, common_wheels: Path) -
-     return _common_wheel_editable_install(tmpdir_factory, common_wheels, "wheel")
- 
- 
--@pytest.fixture(scope="session")
--def coverage_install(
--    tmpdir_factory: pytest.TempPathFactory, common_wheels: Path
--) -> Path:
--    return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage")
--
--
- def install_egg_link(
-     venv: VirtualEnvironment, project_name: str, egg_info_dir: Path
- ) -> None:
-@@ -404,7 +397,6 @@ def virtualenv_template(
-     tmpdir_factory: pytest.TempPathFactory,
-     pip_src: Path,
-     setuptools_install: Path,
--    coverage_install: Path,
- ) -> Iterator[VirtualEnvironment]:
- 
-     venv_type: VirtualEnvironmentType
-@@ -431,13 +423,6 @@ def virtualenv_template(
-         [os.fspath(venv.bin / "python"), "setup.py", "-q", "develop"], cwd=pip_editable
-     )
- 
--    # Install coverage and pth file for executing it in any spawned processes
--    # in this virtual environment.
--    install_egg_link(venv, "coverage", coverage_install)
--    # zz prefix ensures the file is after easy-install.pth.
--    with open(venv.site / "zz-coverage-helper.pth", "a") as f:
--        f.write("import coverage; coverage.process_startup()")
--
-     # Drop (non-relocatable) launchers.
-     for exe in os.listdir(venv.bin):
-         if not (
--- 
-2.35.1
-

diff --git a/dev-python/pip/pip-22.1.2-r1.ebuild b/dev-python/pip/pip-22.1.2-r1.ebuild
deleted file mode 100644
index 92328155e736..000000000000
--- a/dev-python/pip/pip-22.1.2-r1.ebuild
+++ /dev/null
@@ -1,130 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{8..10} )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_11 pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1 multiprocessing
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-62.3.2-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.12
-
-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/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.gh.tar.gz
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-SLOT="0"
-IUSE="vanilla"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		$(python_gen_cond_dep '
-			dev-python/freezegun[${PYTHON_USEDEP}]
-			dev-python/pretend[${PYTHON_USEDEP}]
-			dev-python/pytest-xdist[${PYTHON_USEDEP}]
-			dev-python/scripttest[${PYTHON_USEDEP}]
-			dev-python/tomli-w[${PYTHON_USEDEP}]
-			dev-python/werkzeug[${PYTHON_USEDEP}]
-			dev-python/wheel[${PYTHON_USEDEP}]
-			!alpha? ( !arm? ( !hppa? ( !ia64? ( !s390? ( !sparc? (
-				dev-python/cryptography[${PYTHON_USEDEP}]
-			) ) ) ) ) )
-		' "${PYTHON_TESTED[@]}")
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/pip-21.3-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			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} since virtualenv-16 is broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	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 GENTOO_PIP_TESTING=1
-	local -x PYTHONPATH="${WORKDIR}/virtualenv-${VENV_PV}"
-	local -x SETUPTOOLS_USE_DISTUTILS=stdlib
-	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
-	epytest -m "not network" -n "$(makeopts_jobs)"
-}
-
-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
-}

diff --git a/dev-python/pip/pip-22.2-r1.ebuild b/dev-python/pip/pip-22.2-r1.ebuild
deleted file mode 100644
index 67d8b8ae610c..000000000000
--- a/dev-python/pip/pip-22.2-r1.ebuild
+++ /dev/null
@@ -1,134 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{8..10} )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_11 pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1 multiprocessing
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-62.3.2-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.12
-
-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/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.gh.tar.gz
-	)
-"
-
-LICENSE="MIT"
-# bundled deps
-LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-SLOT="0"
-IUSE="vanilla"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		$(python_gen_cond_dep '
-			dev-python/freezegun[${PYTHON_USEDEP}]
-			dev-python/pretend[${PYTHON_USEDEP}]
-			dev-python/pytest-xdist[${PYTHON_USEDEP}]
-			dev-python/scripttest[${PYTHON_USEDEP}]
-			dev-python/tomli-w[${PYTHON_USEDEP}]
-			dev-python/werkzeug[${PYTHON_USEDEP}]
-			dev-python/wheel[${PYTHON_USEDEP}]
-			!alpha? ( !arm? ( !hppa? ( !ia64? ( !s390? ( !sparc? (
-				dev-python/cryptography[${PYTHON_USEDEP}]
-			) ) ) ) ) )
-		' "${PYTHON_TESTED[@]}")
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/pip-22.2-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			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} since virtualenv-16 is broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_inspect.py::test_inspect_basic
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		# Internet
-		tests/functional/test_install.py::test_install_dry_run
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	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 GENTOO_PIP_TESTING=1
-	local -x PYTHONPATH="${WORKDIR}/virtualenv-${VENV_PV}"
-	local -x SETUPTOOLS_USE_DISTUTILS=stdlib
-	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
-	epytest -m "not network" -n "$(makeopts_jobs)"
-}
-
-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
-}

diff --git a/dev-python/pip/pip-22.2.1-r1.ebuild b/dev-python/pip/pip-22.2.1-r1.ebuild
deleted file mode 100644
index 8d3b6ef3e28e..000000000000
--- a/dev-python/pip/pip-22.2.1-r1.ebuild
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# please bump dev-python/ensurepip-wheels along with this package!
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{8..10} )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_11 pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1 multiprocessing
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-62.3.2-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.12
-
-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/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.gh.tar.gz
-	)
-"
-
-LICENSE="MIT"
-# bundled deps
-LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-SLOT="0"
-IUSE="vanilla"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		$(python_gen_cond_dep '
-			dev-python/freezegun[${PYTHON_USEDEP}]
-			dev-python/pretend[${PYTHON_USEDEP}]
-			dev-python/pytest-xdist[${PYTHON_USEDEP}]
-			dev-python/scripttest[${PYTHON_USEDEP}]
-			dev-python/tomli-w[${PYTHON_USEDEP}]
-			dev-python/werkzeug[${PYTHON_USEDEP}]
-			dev-python/wheel[${PYTHON_USEDEP}]
-			!alpha? ( !arm? ( !hppa? ( !ia64? ( !s390? ( !sparc? (
-				dev-python/cryptography[${PYTHON_USEDEP}]
-			) ) ) ) ) )
-		' "${PYTHON_TESTED[@]}")
-	)
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/pip-22.2.1-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			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} since virtualenv-16 is broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_inspect.py::test_inspect_basic
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		# Internet
-		tests/functional/test_install.py::test_install_dry_run
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	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 GENTOO_PIP_TESTING=1
-	local -x PYTHONPATH="${WORKDIR}/virtualenv-${VENV_PV}"
-	local -x SETUPTOOLS_USE_DISTUTILS=stdlib
-	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
-	epytest -m "not network" -n "$(makeopts_jobs)"
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2022-07-29 11:43 Arthur Zamarin
  0 siblings, 0 replies; 18+ messages in thread
From: Arthur Zamarin @ 2022-07-29 11:43 UTC (permalink / raw
  To: gentoo-commits

commit:     c2ae6c5af4e6f403f0ad5b75bf80a1f4c3978073
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Fri Jul 29 11:41:56 2022 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Fri Jul 29 11:43:42 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2ae6c5a

dev-python/pip: add 22.2.1

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 dev-python/pip/Manifest                           |   1 +
 dev-python/pip/files/pip-22.2.1-no-coverage.patch |  52 +++++++++
 dev-python/pip/pip-22.2.1.ebuild                  | 132 ++++++++++++++++++++++
 3 files changed, 185 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index bd7ad8308546..126c95ac5d6f 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,5 @@
 DIST pip-22.1.2.gh.tar.gz 9346675 BLAKE2B f709f8977d467d5a3170884bb75cd2f74a2f40801ae02a3725d442e18e4073f9c4a39cd1c9d2ce3949eb888be69d151f67d0cf2d0cbad7e2ec1ec6e78150b5c7 SHA512 7dd13150023f1cca8f5e01da7688ae418b5d0b36364efcfc15374a5147c7cabd46ff1d34e6499bc8e182dc0d34a366f5fe21d8ab4de4d112d269a97200401305
+DIST pip-22.2.1.gh.tar.gz 9279141 BLAKE2B 61906027e36c8b3b82f3d17a59cbc995864622184c7f4099e9dfbb5082d1953dff72551558b8fe0d463d7defcd8b9403a978e4a8c7d79af5cd6b9dbbbcc9c7b5 SHA512 77996ce7e1aa4b5aab0c55dfee5e9bfe9f5f09f33cb796ce78bba7365f37ce9f1cce4eeaf5fdbeddde0819ecc6a30ffdafa6b7e25f93c672fcc8646303a7946e
 DIST pip-22.2.gh.tar.gz 9278410 BLAKE2B e32fe63e81593a0ec9c0110af0f07f1a47ddd3d6c660c11e9eb9142c251b7f45e3a1cc343193b123364a6a3a69490add7d4ebb368aac027c448f00f7cd163d7c SHA512 2ff3f9c2dc84c65c14c978e8c58cd3cee6cfff9753655c726763d6d7780d147479f32c47873d402ad9e0821fef940b971a7df93fabd6b998f07dea5af1251c9b
 DIST setuptools-62.3.2-py3-none-any.whl 1225929 BLAKE2B 608952e201f749ebf557e3962ba9856d5bdcbc534f3a25598cab0d6c53282cfb3b9f007ba135497a8addf49db4c02bc4387c486d95a4529d01ce4114154ec28a SHA512 366d69dc44e326dd7549cdacd8dec481a14dce4feef4338adc38b9de5c4c338f04d61696e13ce8603be1315f2e8734100f92d3fe4b4b11843e19f550c9631978
 DIST virtualenv-16.7.12.gh.tar.gz 8906590 BLAKE2B a1f206769e4e5797562906162e492e44c4a72720e4f88a0362dc802ce2df20c65aaab6a72dce2238445601a10fae59bd90cd362217994d30911f105afd71c5fa SHA512 0278b33fb19f6553e70ad3dcffa6ea1a455ff435b216ac9b4fadff216b2932714faa2bb6027af3058010111d8511a5c2fcd424f31c9645be361603971f111c8e

diff --git a/dev-python/pip/files/pip-22.2.1-no-coverage.patch b/dev-python/pip/files/pip-22.2.1-no-coverage.patch
new file mode 100644
index 000000000000..bd9523956ca8
--- /dev/null
+++ b/dev-python/pip/files/pip-22.2.1-no-coverage.patch
@@ -0,0 +1,52 @@
+From fe4438ee999938da3b6f67b4dd53d6676d67c3e7 Mon Sep 17 00:00:00 2001
+From: Arthur Zamarin <arthurzam@gentoo.org>
+Date: Fri, 29 Jul 2022 14:06:03 +0300
+Subject: [PATCH] Disable coverage testing support inside test venvs
+
+---
+ tests/conftest.py | 15 ---------------
+ 1 file changed, 15 deletions(-)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index c9ab292..e7c14df 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -403,13 +403,6 @@ def wheel_install(tmpdir_factory: pytest.TempPathFactory, common_wheels: Path) -
+     return _common_wheel_editable_install(tmpdir_factory, common_wheels, "wheel")
+ 
+ 
+-@pytest.fixture(scope="session")
+-def coverage_install(
+-    tmpdir_factory: pytest.TempPathFactory, common_wheels: Path
+-) -> Path:
+-    return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage")
+-
+-
+ def install_pth_link(
+     venv: VirtualEnvironment, project_name: str, lib_dir: Path
+ ) -> None:
+@@ -424,7 +417,6 @@ def virtualenv_template(
+     tmpdir_factory: pytest.TempPathFactory,
+     pip_src: Path,
+     setuptools_install: Path,
+-    coverage_install: Path,
+ ) -> Iterator[VirtualEnvironment]:
+ 
+     venv_type: VirtualEnvironmentType
+@@ -451,13 +443,6 @@ def virtualenv_template(
+         [os.fspath(venv.bin / "python"), "setup.py", "-q", "develop"], cwd=pip_editable
+     )
+ 
+-    # Install coverage and pth file for executing it in any spawned processes
+-    # in this virtual environment.
+-    install_pth_link(venv, "coverage", coverage_install)
+-    # zz prefix ensures the file is after easy-install.pth.
+-    with open(venv.site / "zz-coverage-helper.pth", "a") as f:
+-        f.write("import coverage; coverage.process_startup()")
+-
+     # Drop (non-relocatable) launchers.
+     for exe in os.listdir(venv.bin):
+         if not (
+-- 
+2.35.1
+

diff --git a/dev-python/pip/pip-22.2.1.ebuild b/dev-python/pip/pip-22.2.1.ebuild
new file mode 100644
index 000000000000..d5542f692f0d
--- /dev/null
+++ b/dev-python/pip/pip-22.2.1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{8..10} )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" python3_11 pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+# setuptools & wheel .whl files are required for testing,
+# the exact version is not very important.
+SETUPTOOLS_WHL="setuptools-62.3.2-py3-none-any.whl"
+WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
+# upstream still requires virtualenv-16 for testing, we are now fetching
+# it directly to avoid blockers with virtualenv-20
+VENV_PV=16.7.12
+
+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/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+	test? (
+		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
+		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
+		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
+			-> virtualenv-${VENV_PV}.gh.tar.gz
+	)
+"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE="vanilla"
+
+RDEPEND="
+	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+	${RDEPEND}
+	test? (
+		$(python_gen_cond_dep '
+			dev-python/freezegun[${PYTHON_USEDEP}]
+			dev-python/pretend[${PYTHON_USEDEP}]
+			dev-python/pytest-xdist[${PYTHON_USEDEP}]
+			dev-python/scripttest[${PYTHON_USEDEP}]
+			dev-python/tomli-w[${PYTHON_USEDEP}]
+			dev-python/werkzeug[${PYTHON_USEDEP}]
+			dev-python/wheel[${PYTHON_USEDEP}]
+			!alpha? ( !hppa? ( !ia64? (
+				dev-python/cryptography[${PYTHON_USEDEP}]
+			) ) )
+		' "${PYTHON_TESTED[@]}")
+	)
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/pip-22.2.1-no-coverage.patch"
+	)
+	if ! use vanilla; then
+		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
+	fi
+
+	distutils-r1_python_prepare_all
+
+	if use test; then
+		mkdir tests/data/common_wheels/ || die
+		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
+			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} since virtualenv-16 is broken"
+		return 0
+	fi
+
+	local EPYTEST_DESELECT=(
+		tests/functional/test_inspect.py::test_inspect_basic
+		tests/functional/test_install.py::test_double_install_fail
+		tests/functional/test_list.py::test_multiple_exclude_and_normalization
+		# Internet
+		tests/functional/test_install.py::test_install_dry_run
+		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
+		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
+		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
+	)
+
+	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 GENTOO_PIP_TESTING=1
+	local -x PYTHONPATH="${WORKDIR}/virtualenv-${VENV_PV}"
+	local -x SETUPTOOLS_USE_DISTUTILS=stdlib
+	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
+	epytest -m "not network" -n "$(makeopts_jobs)"
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2022-03-16  8:07 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2022-03-16  8:07 UTC (permalink / raw
  To: gentoo-commits

commit:     84be4fa2f7470014e8d2ef68415a3fcc40e37185
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 16 08:02:33 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Mar 16 08:02:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84be4fa2

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   3 -
 .../pip/files/pip-21.3.1-cryptography-tests.patch  |  39 ------
 dev-python/pip/pip-21.3.1-r1.ebuild                | 146 ---------------------
 dev-python/pip/pip-22.0.1.ebuild                   | 145 --------------------
 dev-python/pip/pip-22.0.2.ebuild                   | 145 --------------------
 5 files changed, 478 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index a959ca4348e3..3a4f6666bd1e 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,6 +1,3 @@
-DIST pip-21.3.1.tar.gz 8961896 BLAKE2B f694956854cfd26f9b043fc28994448d2b2efff04080808f4e89ba15905887b432efb02d1c81370f75bd42e5c615a5a2360af63437967bc2fef63a85d59906a7 SHA512 2f50f95fe36cffc18821a70824f5b28d03598894f9ea5b02acc4921d16fc7739131814828a2159bcd577331cc780c7776a3669fa1ca2d4690c861add10a16f00
-DIST pip-22.0.1.tar.gz 9288984 BLAKE2B 11936d6baffb8ccf3715f1183ac007f93930c6188c9b8b7c063b1c42513658cf8de31ce98a73d7d94a0a5b28407c985fe419419a689fae2a43bfc5c2fcb0439e SHA512 64ee12c8bfa12e8df4d5160c24064f28805d14c215d9db2663ca069d49e1e3c7050084bd9059bfdb31f0901440b4c2711d4544440a937a94ca1b9fa7f213924d
-DIST pip-22.0.2.tar.gz 9289498 BLAKE2B 4e23c9cf5410cbed77b631fc153c1a9a992a11e5f06c9e317a4e3018da19382f25208557d327447ee778d2a9ca585f08ffa2a3fd8bcdfcda7fd2ec195e99c135 SHA512 5cc649b1b64c731d3b47c2296d37c93d276393224e8183e6f8966e320b876122c3e89c163d3da5cba064f4279a5e1f2a92b349edaf834c33b69b77d593b7195f
 DIST pip-22.0.3.tar.gz 9290286 BLAKE2B f81140fbff5d16e8a38d21047dd790be2287b664b130d43e71c7d4f23d6a7cd5c8b2e58f988cc18dc4d08b83b0fcb3eac6b6ec001421e83e35db74f15d6c557e SHA512 05f0807b298c2136842ad1cae3b003f81d85ca79103f12171e4c8d020d6add076848c1acfb6442c4ae2da6b834de0e87dffaec7bd24dfc403372cead94949326
 DIST pip-22.0.4.tar.gz 9325766 BLAKE2B 9ce5a25e6fb9aedc39e2cddab2a8af3b47dbaaaf8bd22c39f8301b784e6e9f5434f63d5ef467f4d819b15bcd5cf8d3da52db34b3514c7b4a15823f77cb47e1c1 SHA512 af6d1787b4fe97f2eec9c2e3e3f0f756efca8cb83f6ecdae797986fb6050ee60d872a8a8eb7502a32c4334fc0c7af8cf3c58ce980407d0e9f89eec28a4290093
 DIST setuptools-57.4.0-py3-none-any.whl 819017 BLAKE2B afba86cf9aeea58ee869fdc11bbb192abbf2f89710e468b90dc291fec228ca16202483e36195a5ad4e2b8d210326bc83e2be6ec696ab413d94ffaeb05bb9c030 SHA512 9bf230f4e0e72acab07ab372a6ca05adb3d175a8079d2f73d327c632f3d27b8ee10442d3e60f4c94a6e61d5ba2212fc78187ca6e1717e15bb570bdce4263fd0b

diff --git a/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch b/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch
deleted file mode 100644
index 1505d487ad40..000000000000
--- a/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 8fa5d719a3c902ca9b6c9198229b7a67fecf8b8e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Fri, 26 Nov 2021 16:12:16 +0100
-Subject: [PATCH] Move cryptography-based imports into the fixture
-
-Move the imports that require cryptography into the cert_factory
-fixture.  This makes it possible to deselect these tests on systems
-where cryptography cannot be installed.
----
- tests/conftest.py | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/tests/conftest.py b/tests/conftest.py
-index 076aeaf19..bab6ab3f5 100644
---- a/tests/conftest.py
-+++ b/tests/conftest.py
-@@ -27,7 +27,6 @@ from pip._internal.cli.main import main as pip_entry_point
- from pip._internal.locations import _USE_SYSCONFIG
- from pip._internal.utils.temp_dir import global_tempdir_manager
- from tests.lib import DATA_DIR, SRC_DIR, PipTestEnvironment, TestData
--from tests.lib.certs import make_tls_cert, serialize_cert, serialize_key
- from tests.lib.path import Path
- from tests.lib.server import MockServer as _MockServer
- from tests.lib.server import make_mock_server, server_running
-@@ -535,6 +534,11 @@ def deprecated_python() -> bool:
- 
- @pytest.fixture(scope="session")
- def cert_factory(tmpdir_factory: pytest.TempdirFactory) -> Callable[[], str]:
-+    # Delay the import requiring cryptography in order to make it possible
-+    # to deselect relevant tests on systems where cryptography cannot
-+    # be installed.
-+    from tests.lib.certs import make_tls_cert, serialize_cert, serialize_key
-+
-     def factory() -> str:
-         """Returns path to cert/key file."""
-         output_path = Path(str(tmpdir_factory.mktemp("certs"))) / "cert.pem"
--- 
-2.34.1
-

diff --git a/dev-python/pip/pip-21.3.1-r1.ebuild b/dev-python/pip/pip-21.3.1-r1.ebuild
deleted file mode 100644
index 8b39334f4fc3..000000000000
--- a/dev-python/pip/pip-21.3.1-r1.ebuild
+++ /dev/null
@@ -1,146 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-57.4.0-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.11
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.tar.gz
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86"
-SLOT="0"
-IUSE="test vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		dev-python/tomli-w[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-		!alpha? ( !hppa? ( !ia64? (
-			dev-python/cryptography[${PYTHON_USEDEP}]
-		) ) )
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-21.3-no-coverage.patch"
-		"${FILESDIR}/${P}-cryptography-tests.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-		tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	[[ ${EPYTHON} == python3.10 ]] && EPYTEST_DESELECT+=(
-		tests/lib/test_lib.py::test_correct_pip_version
-		# uses vendored packaging that uses deprecated distutils
-		tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors
-	)
-
-	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
-
-	distutils_install_for_testing
-	pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
-	distutils_install_for_testing
-	popd >/dev/null || die
-	# prevent it from being installed
-	rm -r "${BUILD_DIR}"/lib/virtualenv* || die
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-	epytest -m "not network"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	"${EPYTHON}" -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}

diff --git a/dev-python/pip/pip-22.0.1.ebuild b/dev-python/pip/pip-22.0.1.ebuild
deleted file mode 100644
index 48c8736f6a40..000000000000
--- a/dev-python/pip/pip-22.0.1.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-57.4.0-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.11
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.tar.gz
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
-SLOT="0"
-IUSE="test vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		dev-python/tomli-w[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-		!alpha? ( !hppa? ( !ia64? (
-			dev-python/cryptography[${PYTHON_USEDEP}]
-		) ) )
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-21.3-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-		tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	[[ ${EPYTHON} == python3.10 ]] && EPYTEST_DESELECT+=(
-		tests/lib/test_lib.py::test_correct_pip_version
-		# uses vendored packaging that uses deprecated distutils
-		tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors
-	)
-
-	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
-
-	distutils_install_for_testing
-	pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
-	distutils_install_for_testing
-	popd >/dev/null || die
-	# prevent it from being installed
-	rm -r "${BUILD_DIR}"/lib/virtualenv* || die
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-	epytest -m "not network"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	"${EPYTHON}" -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}

diff --git a/dev-python/pip/pip-22.0.2.ebuild b/dev-python/pip/pip-22.0.2.ebuild
deleted file mode 100644
index 48c8736f6a40..000000000000
--- a/dev-python/pip/pip-22.0.2.ebuild
+++ /dev/null
@@ -1,145 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-57.4.0-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.11
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.tar.gz
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
-SLOT="0"
-IUSE="test vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		dev-python/tomli-w[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-		!alpha? ( !hppa? ( !ia64? (
-			dev-python/cryptography[${PYTHON_USEDEP}]
-		) ) )
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-21.3-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local EPYTEST_DESELECT=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-		tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-		tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
-		tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
-	)
-
-	[[ ${EPYTHON} == python3.10 ]] && EPYTEST_DESELECT+=(
-		tests/lib/test_lib.py::test_correct_pip_version
-		# uses vendored packaging that uses deprecated distutils
-		tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors
-	)
-
-	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
-
-	distutils_install_for_testing
-	pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
-	distutils_install_for_testing
-	popd >/dev/null || die
-	# prevent it from being installed
-	rm -r "${BUILD_DIR}"/lib/virtualenv* || die
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-	epytest -m "not network"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	"${EPYTHON}" -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2021-11-27 20:14 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-11-27 20:14 UTC (permalink / raw
  To: gentoo-commits

commit:     23a9e8e8318ccb2a654979b9fef0b655d69c4577
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 27 20:12:31 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 27 20:14:00 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=23a9e8e8

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                         |   1 -
 dev-python/pip/files/pip-21.1-no-coverage.patch |  51 ----------
 dev-python/pip/pip-21.2.4.ebuild                | 129 ------------------------
 3 files changed, 181 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index e64327676d1f..105f0877a738 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,3 @@
-DIST pip-21.2.4.tar.gz 8786693 BLAKE2B 02d4cdd3d9feda2d4daaf7552bf86e068d2f040ef9836a128c8dfc36697594d6a7d830cc58dc4f2d42c22fec0230f3055ab8b5b204bfd1fb0b9429e2dd44f537 SHA512 3c018601bca60d865032962deaf0ba4943fc6c3f3d8d69dab65f987737daf7fa91492c8250ab36988d1fa5f22b20608ada88ac1ffde914a7d72485bf5164b45f
 DIST pip-21.3.1.tar.gz 8961896 BLAKE2B f694956854cfd26f9b043fc28994448d2b2efff04080808f4e89ba15905887b432efb02d1c81370f75bd42e5c615a5a2360af63437967bc2fef63a85d59906a7 SHA512 2f50f95fe36cffc18821a70824f5b28d03598894f9ea5b02acc4921d16fc7739131814828a2159bcd577331cc780c7776a3669fa1ca2d4690c861add10a16f00
 DIST setuptools-57.4.0-py3-none-any.whl 819017 BLAKE2B afba86cf9aeea58ee869fdc11bbb192abbf2f89710e468b90dc291fec228ca16202483e36195a5ad4e2b8d210326bc83e2be6ec696ab413d94ffaeb05bb9c030 SHA512 9bf230f4e0e72acab07ab372a6ca05adb3d175a8079d2f73d327c632f3d27b8ee10442d3e60f4c94a6e61d5ba2212fc78187ca6e1717e15bb570bdce4263fd0b
 DIST virtualenv-16.7.11.tar.gz 8134533 BLAKE2B ea81e11c210d911bf9576edf7b1754721b270adcc5d9633415d33b8f659149d64932fe2d366200121ec00c266c25dae380e248add438fc357477114eba4dfb4e SHA512 82d0d2a964508511e8e1686703581ff543f65791dc2449d9741d46ea57c4c89673947d2477ba374176f05fcea2a5ca572aa650c61c4f3271c4d73d1ff9d9ff42

diff --git a/dev-python/pip/files/pip-21.1-no-coverage.patch b/dev-python/pip/files/pip-21.1-no-coverage.patch
deleted file mode 100644
index 5f9c836d32ea..000000000000
--- a/dev-python/pip/files/pip-21.1-no-coverage.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 66ca1e64ce3fb971ec30d5f8b2a0bda49721bc2d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Wed, 29 Jul 2020 07:42:25 +0200
-Subject: [PATCH] Disable coverage testing support inside test venvs
-
----
- tests/conftest.py | 14 +-------------
- 1 file changed, 1 insertion(+), 13 deletions(-)
-
-diff --git a/tests/conftest.py b/tests/conftest.py
-index a53e0c4f7..c91d1e1ae 100644
---- a/tests/conftest.py
-+++ b/tests/conftest.py
-@@ -315,11 +315,6 @@ def wheel_install(tmpdir_factory, common_wheels):
-     return _common_wheel_editable_install(tmpdir_factory, common_wheels, "wheel")
- 
- 
--@pytest.fixture(scope="session")
--def coverage_install(tmpdir_factory, common_wheels):
--    return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage")
--
--
- def install_egg_link(venv, project_name, egg_info_dir):
-     with open(venv.site / "easy-install.pth", "a") as fp:
-         fp.write(str(egg_info_dir.resolve()) + "\n")
-@@ -329,7 +324,7 @@ def install_egg_link(venv, project_name, egg_info_dir):
- 
- @pytest.fixture(scope="session")
- def virtualenv_template(
--    request, tmpdir_factory, pip_src, setuptools_install, coverage_install
-+    request, tmpdir_factory, pip_src, setuptools_install
- ):
- 
-     if request.config.getoption("--use-venv"):
-@@ -355,13 +350,6 @@ def virtualenv_template(
-         [venv.bin / "python", "setup.py", "-q", "develop"], cwd=pip_editable
-     )
- 
--    # Install coverage and pth file for executing it in any spawned processes
--    # in this virtual environment.
--    install_egg_link(venv, "coverage", coverage_install)
--    # zz prefix ensures the file is after easy-install.pth.
--    with open(venv.site / "zz-coverage-helper.pth", "a") as f:
--        f.write("import coverage; coverage.process_startup()")
--
-     # Drop (non-relocatable) launchers.
-     for exe in os.listdir(venv.bin):
-         if not (
--- 
-2.31.1
-

diff --git a/dev-python/pip/pip-21.2.4.ebuild b/dev-python/pip/pip-21.2.4.ebuild
deleted file mode 100644
index 791ed303685d..000000000000
--- a/dev-python/pip/pip-21.2.4.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-57.4.0-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-# upstream still requires virtualenv-16 for testing, we are now fetching
-# it directly to avoid blockers with virtualenv-20
-VENV_PV=16.7.11
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-		https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
-			-> virtualenv-${VENV_PV}.tar.gz
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv sparc x86 ~x64-macos"
-SLOT="0"
-IUSE="test vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/cryptography[${PYTHON_USEDEP}]
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-21.1-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local deselect=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-		tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-	)
-
-	[[ ${EPYTHON} == python3.10 ]] && deselect+=(
-		tests/lib/test_lib.py::test_correct_pip_version
-		# uses vendored packaging that uses deprecated distutils
-		tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors
-	)
-
-	distutils_install_for_testing
-	pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
-	distutils_install_for_testing
-	popd >/dev/null || die
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-	epytest ${deselect[@]/#/--deselect } -m "not network"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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"; from pip._internal.cli.main import main; sys.exit(main())'
-
-	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2021-11-27 10:27 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-11-27 10:27 UTC (permalink / raw
  To: gentoo-commits

commit:     2f13337ce5da0e1990bbdf82158f75e497001a27
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 26 15:20:33 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Nov 27 10:27:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f13337c

dev-python/pip: Skip cryptography tests when not available

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

 .../pip/files/pip-21.3.1-cryptography-tests.patch  | 39 ++++++++++++++++++++++
 dev-python/pip/pip-21.3.1-r1.ebuild                | 10 ++++++
 2 files changed, 49 insertions(+)

diff --git a/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch b/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch
new file mode 100644
index 000000000000..1505d487ad40
--- /dev/null
+++ b/dev-python/pip/files/pip-21.3.1-cryptography-tests.patch
@@ -0,0 +1,39 @@
+From 8fa5d719a3c902ca9b6c9198229b7a67fecf8b8e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Fri, 26 Nov 2021 16:12:16 +0100
+Subject: [PATCH] Move cryptography-based imports into the fixture
+
+Move the imports that require cryptography into the cert_factory
+fixture.  This makes it possible to deselect these tests on systems
+where cryptography cannot be installed.
+---
+ tests/conftest.py | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 076aeaf19..bab6ab3f5 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -27,7 +27,6 @@ from pip._internal.cli.main import main as pip_entry_point
+ from pip._internal.locations import _USE_SYSCONFIG
+ from pip._internal.utils.temp_dir import global_tempdir_manager
+ from tests.lib import DATA_DIR, SRC_DIR, PipTestEnvironment, TestData
+-from tests.lib.certs import make_tls_cert, serialize_cert, serialize_key
+ from tests.lib.path import Path
+ from tests.lib.server import MockServer as _MockServer
+ from tests.lib.server import make_mock_server, server_running
+@@ -535,6 +534,11 @@ def deprecated_python() -> bool:
+ 
+ @pytest.fixture(scope="session")
+ def cert_factory(tmpdir_factory: pytest.TempdirFactory) -> Callable[[], str]:
++    # Delay the import requiring cryptography in order to make it possible
++    # to deselect relevant tests on systems where cryptography cannot
++    # be installed.
++    from tests.lib.certs import make_tls_cert, serialize_cert, serialize_key
++
+     def factory() -> str:
+         """Returns path to cert/key file."""
+         output_path = Path(str(tmpdir_factory.mktemp("certs"))) / "cert.pem"
+-- 
+2.34.1
+

diff --git a/dev-python/pip/pip-21.3.1-r1.ebuild b/dev-python/pip/pip-21.3.1-r1.ebuild
index 2b3d17d2f6de..37cf7af8a3d9 100644
--- a/dev-python/pip/pip-21.3.1-r1.ebuild
+++ b/dev-python/pip/pip-21.3.1-r1.ebuild
@@ -57,6 +57,7 @@ BDEPEND="
 python_prepare_all() {
 	local PATCHES=(
 		"${FILESDIR}/${PN}-21.3-no-coverage.patch"
+		"${FILESDIR}/${P}-cryptography-tests.patch"
 	)
 	if ! use vanilla; then
 		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
@@ -97,6 +98,15 @@ python_test() {
 		tests/functional/test_warning.py::test_pip_works_with_warnings_as_errors
 	)
 
+	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
+
 	distutils_install_for_testing
 	pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
 	distutils_install_for_testing


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2021-05-26  8:36 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-05-26  8:36 UTC (permalink / raw
  To: gentoo-commits

commit:     71144f18904771559c8fe835266c0517bf8e6f66
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed May 26 08:32:59 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed May 26 08:36:07 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71144f18

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   3 -
 .../pip/files/pip-19.3-disable-version-check.patch |  24 -----
 dev-python/pip/files/pip-21.0-no-coverage.patch    |  53 ---------
 dev-python/pip/pip-21.0.1.ebuild                   | 120 ---------------------
 dev-python/pip/pip-21.1.ebuild                     | 120 ---------------------
 5 files changed, 320 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index e522c4c25e4..d25199fe58c 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,7 +1,4 @@
-DIST pip-21.0.1.tar.gz 8772082 BLAKE2B 2fdd78e2db8ceda2bd21fdeb4d29c0c2eda412827b87cc97ec1996a5b71b9c6e5938c0a6ef696163780bbbc55d81b8b3b1b6e2e79b05fbe9ce4bdd52e3ebdf13 SHA512 2db5397f4ca3a3f56f5add3f827bf1f0a4296019703438d68498266b9d2559b6baa3132061c5ad4c2a08bec6e76a2768763fdca02d86cf32aadd4640afbf3664
 DIST pip-21.1.1.tar.gz 8771867 BLAKE2B 1cb920ab52510e816a7c3b8b6d1b47576a27cf1b208ab8fefa102ff36c09eb4e99b34f213a043550a9e6fb37bb8b6306f9e939371661ff7f23ba03f21b4a643b SHA512 05157ed586597f16948afdad43d98cc095803d2d22b1427ac1028ca2a73a26d65e597446808194343ed36f9eb7cb910ac89e73a6a9a90ee868ec822fdbe641c5
 DIST pip-21.1.2.tar.gz 8772481 BLAKE2B 23dbcc5dd7e7f66934282b9c93958267eb367d418b6c814032b7b89e0d94c73c143626781b8df081394019d2e575030b7a2fd61bb5221992ce2060cf069e8b04 SHA512 54a2b6074fcb2640868dedcabb5087b79a53a8ad57ec4ab5acf2862b8037403d8f156c2853ab60c2f10c6af999a0a90774f0bc3eca2978a82590935d37af167f
-DIST pip-21.1.tar.gz 8771224 BLAKE2B 2056a741b7f51d56c3984e2b0bcd1fa9cc12ba9677f80505fa5182fc0afad9c7dfe4ecf9429cf5ed5f8534f0a6a003b12455e90537a5dacbe188c8db548b71c3 SHA512 2617ae852cd52db980ab4131d711946b63930d30f480e050555bc61acb78577aa447b88065c6c8eba7e29c7167f78f04b11404cb0c1975caac464fa768ee7de8
-DIST setuptools-51.3.3-py3-none-any.whl 786243 BLAKE2B cc8a98cdfd5cb78a342a3d50049c0ebd0965451e9bd4050b7a133346f505a17842a498531ade9bf932064a6cac81277ecf60d94ef94faa39b78740de87f9fd86 SHA512 1d4f29e392371b7f0e427d0570fddbdd1204f6c98e48a0a289db23b20f7c048551584ac946e30b90d720cce4f508b3c39208e9a70f87067d66734432963d141c
 DIST setuptools-56.0.0-py3-none-any.whl 784941 BLAKE2B 136352bcaeeb803f94983db2e0f9ec79dacc23a6742a2f6f1b4bdd2b29a104f4965d78f9b4adf1a501c7bf39d4ed85a6786b03489f90872661afbf5e674fd3f9 SHA512 32405236e9c2936cde137bc4d4d07b548391336ce0511cd5677dcd1f85c7a142b0947e03cdceaeb37067874f5aa71daacaa1a6af95ae9fe3ad8af264f61e10f4
 DIST wheel-0.36.2-py2.py3-none-any.whl 35046 BLAKE2B bc4e8dab7c74eea34d3b4a813b7eaf6295a99a396a861b6cdd76f743043e89140bad132bdd13e385e8945ce02e0798e1d3ac73fc1b23bde5b2a83e4bb4dd5cdc SHA512 6bb5119b4d3704fe1e3c1eaaa3124edab13f61b46f8a0a8e75974fac4e5b25d8b53606071a03a8d8990ad1cfe2ab247ddea260098df2c0c35ae965be47080284

diff --git a/dev-python/pip/files/pip-19.3-disable-version-check.patch b/dev-python/pip/files/pip-19.3-disable-version-check.patch
deleted file mode 100644
index e8fe868431d..00000000000
--- a/dev-python/pip/files/pip-19.3-disable-version-check.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/src/pip/_internal/cli/req_command.py b/src/pip/_internal/cli/req_command.py
-index 203e86a4..a2183f10 100644
---- a/src/pip/_internal/cli/req_command.py
-+++ b/src/pip/_internal/cli/req_command.py
-@@ -129,17 +129,8 @@ class IndexGroupCommand(Command, SessionCommandMixin):
-         # Make sure the index_group options are present.
-         assert hasattr(options, 'no_index')
- 
--        if options.disable_pip_version_check or options.no_index:
--            return
--
--        # Otherwise, check if we're using the latest version of pip available.
--        session = self._build_session(
--            options,
--            retries=0,
--            timeout=min(5, options.timeout)
--        )
--        with session:
--            pip_self_version_check(session, options)
-+        # Disabled on Gentoo
-+        return
- 
- 
- class RequirementCommand(IndexGroupCommand):

diff --git a/dev-python/pip/files/pip-21.0-no-coverage.patch b/dev-python/pip/files/pip-21.0-no-coverage.patch
deleted file mode 100644
index 82e3e1b30f7..00000000000
--- a/dev-python/pip/files/pip-21.0-no-coverage.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-From 7f61ba983025cbfab7b7b810b13f1a89cb503568 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Wed, 29 Jul 2020 07:42:25 +0200
-Subject: [PATCH] Disable coverage testing support inside test venvs
-
----
- tests/conftest.py | 16 +---------------
- 1 file changed, 1 insertion(+), 15 deletions(-)
-
-diff --git a/tests/conftest.py b/tests/conftest.py
-index 0bb69dae6..02da6c573 100644
---- a/tests/conftest.py
-+++ b/tests/conftest.py
-@@ -311,13 +311,6 @@ def wheel_install(tmpdir_factory, common_wheels):
-                                           'wheel')
- 
- 
--@pytest.fixture(scope='session')
--def coverage_install(tmpdir_factory, common_wheels):
--    return _common_wheel_editable_install(tmpdir_factory,
--                                          common_wheels,
--                                          'coverage')
--
--
- def install_egg_link(venv, project_name, egg_info_dir):
-     with open(venv.site / 'easy-install.pth', 'a') as fp:
-         fp.write(str(egg_info_dir.resolve()) + '\n')
-@@ -327,7 +320,7 @@ def install_egg_link(venv, project_name, egg_info_dir):
- 
- @pytest.fixture(scope='session')
- def virtualenv_template(request, tmpdir_factory, pip_src,
--                        setuptools_install, coverage_install):
-+                        setuptools_install, common_wheels):
- 
-     if request.config.getoption('--use-venv'):
-         venv_type = 'venv'
-@@ -351,13 +344,6 @@ def virtualenv_template(request, tmpdir_factory, pip_src,
-     subprocess.check_call([venv.bin / 'python', 'setup.py', '-q', 'develop'],
-                           cwd=pip_editable)
- 
--    # Install coverage and pth file for executing it in any spawned processes
--    # in this virtual environment.
--    install_egg_link(venv, 'coverage', coverage_install)
--    # zz prefix ensures the file is after easy-install.pth.
--    with open(venv.site / 'zz-coverage-helper.pth', 'a') as f:
--        f.write('import coverage; coverage.process_startup()')
--
-     # Drop (non-relocatable) launchers.
-     for exe in os.listdir(venv.bin):
-         if not (
--- 
-2.30.0
-

diff --git a/dev-python/pip/pip-21.0.1.ebuild b/dev-python/pip/pip-21.0.1.ebuild
deleted file mode 100644
index 90285879935..00000000000
--- a/dev-python/pip/pip-21.0.1.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-51.3.3-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 ~riscv sparc x86 ~x64-macos"
-SLOT="0"
-IUSE="test -vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/cryptography[${PYTHON_USEDEP}]
-		dev-python/csv23[${PYTHON_USEDEP}]
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		<dev-python/virtualenv-20[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
-		"${FILESDIR}/${PN}-21.0-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local deselect=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-	)
-
-	distutils_install_for_testing --via-root
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-
-	pytest -vv ${deselect[@]/#/--deselect } -m "not network" ||
-		die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
-
-	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}

diff --git a/dev-python/pip/pip-21.1.ebuild b/dev-python/pip/pip-21.1.ebuild
deleted file mode 100644
index f6ec7e81791..00000000000
--- a/dev-python/pip/pip-21.1.ebuild
+++ /dev/null
@@ -1,120 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1
-
-# setuptools & wheel .whl files are required for testing,
-# the exact version is not very important.
-SETUPTOOLS_WHL="setuptools-56.0.0-py3-none-any.whl"
-WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="
-	https://pip.pypa.io/en/stable/
-	https://pypi.org/project/pip/
-	https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
-	)
-"
-
-LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
-SLOT="0"
-IUSE="test -vanilla"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/cryptography[${PYTHON_USEDEP}]
-		dev-python/csv23[${PYTHON_USEDEP}]
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		<dev-python/virtualenv-20[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-21.1-no-coverage.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local deselect=(
-		tests/functional/test_install.py::test_double_install_fail
-		tests/functional/test_list.py::test_multiple_exclude_and_normalization
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-download]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-install]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-list]'
-		'tests/unit/test_commands.py::test_index_group_handle_pip_version_check[False-False-True-wheel]'
-		tests/functional/test_install.py::test_install_pip_does_not_modify_pip_when_satisfied
-		# Internet
-		tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
-	)
-
-	distutils_install_for_testing --via-root
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-	epytest ${deselect[@]/#/--deselect } -m "not network"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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"; from pip._internal.cli.main import main; sys.exit(main())'
-
-	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2021-01-24 10:15 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-01-24 10:15 UTC (permalink / raw
  To: gentoo-commits

commit:     6325b514f90aa4a210026c5a387f2cef63d2f7f7
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 24 08:59:41 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Jan 24 10:15:40 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6325b514

dev-python/pip: Bump to 21.0

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

 dev-python/pip/Manifest                         |   1 +
 dev-python/pip/files/pip-21.0-no-coverage.patch |  53 +++++++++
 dev-python/pip/pip-21.0.ebuild                  | 146 ++++++++++++++++++++++++
 3 files changed, 200 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 5794974f45e..2c048a9cf68 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,3 +1,4 @@
 DIST pip-20.3.3.tar.gz 8757085 BLAKE2B dce60cd59669929957715d6be70da4924c3a89bb4129f0972516bde8ccca751b4f327dd2f44a06cd0b48d092f8d520d1ec236ee812f768282004b34f1fabb798 SHA512 362d20e5d2665fa6211cf3836ca02a0340fb34ecde1d5902eecae744eb655d7dcfed0bd464e9db186b87b63a7aaf275e43645cf6321bdddd44b62787de84d87b
+DIST pip-21.0.tar.gz 8770962 BLAKE2B 5a246e40a8b2ea5ceda27bec27e9bb6390613e28c301ed79fd95886c850a29ee1c0261f2dd69f1c2485dd72ec3010f61c4e783ed707a40630534790eba748c4b SHA512 ac77a7204423f1fdc3a4d328dab1860258efccde0123cff3217f357637c4ce3d85772ab81a230122ff813be2cfa40f2862e5d499390289efe1dcde3a31a42264
 DIST setuptools-44.0.0-py2.py3-none-any.whl 583230 BLAKE2B 823e6792471660f247e30a938aa869d345a63db7294e5f9b4bd88f15a7694779011d29740fe317149620985f705fc6e18cbb07a18e5680cc11d7c229ffbc74f6 SHA512 7006fd303181afbeeec0e30cafb9fd1e4d3c6f55cfdd6343fedbc32b17dbb96b3d96ae37f4db27bfb168738727474cf425904ec280ff1d2b789fc48077a8fa84
 DIST wheel-0.34.2-py2.py3-none-any.whl 26502 BLAKE2B 3a1bd4571c582245b60ff33c9bf74ff8a2ebafb26e56fc7b9bd215058d059b6bd13bbe21ce46002af257813a54126f27e19253f211e21c4548c7cf84cd15caf7 SHA512 4f1a44f4691ed8baad777d7874f7f4da96a5019eb485fd3a9eed9259aa2a9d5acccc6dc63a72128664347c64ee039a6076c6ca9c3b75a1f94457967864e522ed

diff --git a/dev-python/pip/files/pip-21.0-no-coverage.patch b/dev-python/pip/files/pip-21.0-no-coverage.patch
new file mode 100644
index 00000000000..82e3e1b30f7
--- /dev/null
+++ b/dev-python/pip/files/pip-21.0-no-coverage.patch
@@ -0,0 +1,53 @@
+From 7f61ba983025cbfab7b7b810b13f1a89cb503568 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 29 Jul 2020 07:42:25 +0200
+Subject: [PATCH] Disable coverage testing support inside test venvs
+
+---
+ tests/conftest.py | 16 +---------------
+ 1 file changed, 1 insertion(+), 15 deletions(-)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 0bb69dae6..02da6c573 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -311,13 +311,6 @@ def wheel_install(tmpdir_factory, common_wheels):
+                                           'wheel')
+ 
+ 
+-@pytest.fixture(scope='session')
+-def coverage_install(tmpdir_factory, common_wheels):
+-    return _common_wheel_editable_install(tmpdir_factory,
+-                                          common_wheels,
+-                                          'coverage')
+-
+-
+ def install_egg_link(venv, project_name, egg_info_dir):
+     with open(venv.site / 'easy-install.pth', 'a') as fp:
+         fp.write(str(egg_info_dir.resolve()) + '\n')
+@@ -327,7 +320,7 @@ def install_egg_link(venv, project_name, egg_info_dir):
+ 
+ @pytest.fixture(scope='session')
+ def virtualenv_template(request, tmpdir_factory, pip_src,
+-                        setuptools_install, coverage_install):
++                        setuptools_install, common_wheels):
+ 
+     if request.config.getoption('--use-venv'):
+         venv_type = 'venv'
+@@ -351,13 +344,6 @@ def virtualenv_template(request, tmpdir_factory, pip_src,
+     subprocess.check_call([venv.bin / 'python', 'setup.py', '-q', 'develop'],
+                           cwd=pip_editable)
+ 
+-    # Install coverage and pth file for executing it in any spawned processes
+-    # in this virtual environment.
+-    install_egg_link(venv, 'coverage', coverage_install)
+-    # zz prefix ensures the file is after easy-install.pth.
+-    with open(venv.site / 'zz-coverage-helper.pth', 'a') as f:
+-        f.write('import coverage; coverage.process_startup()')
+-
+     # Drop (non-relocatable) launchers.
+     for exe in os.listdir(venv.bin):
+         if not (
+-- 
+2.30.0
+

diff --git a/dev-python/pip/pip-21.0.ebuild b/dev-python/pip/pip-21.0.ebuild
new file mode 100644
index 00000000000..43ecef72bc5
--- /dev/null
+++ b/dev-python/pip/pip-21.0.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{7..9} pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1
+
+SETUPTOOLS_PV="44.0.0"
+WHEEL_PV="0.34.2"
+
+DESCRIPTION="Installs python packages -- replacement for easy_install"
+HOMEPAGE="
+	https://pip.pypa.io/en/stable/
+	https://pypi.org/project/pip/
+	https://github.com/pypa/pip/"
+SRC_URI="
+	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+	test? (
+		https://files.pythonhosted.org/packages/py2.py3/s/setuptools/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl
+		https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-${WHEEL_PV}-py2.py3-none-any.whl
+	)
+"
+# PyPI archive does not have tests, so we need to download from GitHub.
+# setuptools & wheel .whl files are required for testing, exact version is not very important.
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+SLOT="0"
+IUSE="test -vanilla"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+	${RDEPEND}
+	test? (
+		dev-python/cryptography[${PYTHON_USEDEP}]
+		dev-python/csv23[${PYTHON_USEDEP}]
+		dev-python/freezegun[${PYTHON_USEDEP}]
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pretend[${PYTHON_USEDEP}]
+		dev-python/pytest[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		dev-python/scripttest[${PYTHON_USEDEP}]
+		<dev-python/virtualenv-20[${PYTHON_USEDEP}]
+		dev-python/werkzeug[${PYTHON_USEDEP}]
+		dev-python/wheel[${PYTHON_USEDEP}]
+	)
+"
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
+		"${FILESDIR}/${PN}-21.0-no-coverage.patch"
+	)
+	if ! use vanilla; then
+		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
+	fi
+
+	# TODO
+	rm tests/functional/test_new_resolver_user.py || die
+
+	distutils-r1_python_prepare_all
+
+	if use test; then
+		mkdir tests/data/common_wheels/ || die
+		cp "${DISTDIR}"/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl \
+			tests/data/common_wheels/ || die
+
+		cp "${DISTDIR}"/wheel-${WHEEL_PV}-py2.py3-none-any.whl \
+			tests/data/common_wheels/ || die
+	fi
+}
+
+python_test() {
+	if [[ ${EPYTHON} == pypy* ]]; then
+		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
+		return 0
+	fi
+
+	# these will be built in to an expression passed to pytest to exclude
+	local exclude_tests=(
+		git
+		svn
+		bazaar
+		mercurial
+		version_check
+		uninstall_non_local_distutils
+		pep518_uses_build_env
+		install_package_with_root
+		install_editable_with_prefix
+		install_user_wheel
+		install_from_current_directory_into_usersite
+		uninstall_editable_from_usersite
+		uninstall_from_usersite_with_dist_in_global_site
+		build_env_isolation
+		user_config_accepted
+		# these fail with new setuptools + distutils_install_for_testing
+		double_install_fail
+		multiple_exclude_and_normalization
+	)
+
+	distutils_install_for_testing --via-root
+
+	# generate the expression to exclude failing tests
+	local exclude_expr
+	printf -v exclude_expr "or %s " "${exclude_tests[@]}" || die
+	exclude_expr="not (${exclude_expr#or })" || die
+
+	local -x GENTOO_PIP_TESTING=1 \
+		PATH="${TEST_DIR}/scripts:${PATH}" \
+		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
+
+	pytest -vv \
+		-k "${exclude_expr}" \
+		-m "not network" \
+		|| die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+	# Prevent dbus auto-launch
+	# https://bugs.gentoo.org/692178
+	export DBUS_SESSION_BUS_ADDRESS="disabled:"
+
+	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+	distutils-r1_python_install_all
+
+	COMPLETION="${T}"/completion.tmp
+
+	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
+
+	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
+	newbashcomp "${COMPLETION}" ${PN}
+
+	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
+	insinto /usr/share/zsh/site-functions
+	newins "${COMPLETION}" _pip
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2020-09-28 19:50 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2020-09-28 19:50 UTC (permalink / raw
  To: gentoo-commits

commit:     04aa01fbed130443cb82ff434918ebe87a898060
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 28 19:39:01 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Sep 28 19:39:01 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04aa01fb

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                           |   1 -
 dev-python/pip/files/pip-20.1.1-test-endian.patch |  78 ------------
 dev-python/pip/pip-20.1.1-r1.ebuild               | 140 ----------------------
 3 files changed, 219 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 80d373c19db..54b1d8ecef1 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,3 @@
-DIST pip-20.1.1.tar.gz 6503229 BLAKE2B 5b0409042c970ec47fa6f947b21a53aca43563a6bb442fd5f91788fa97caf7167a84b4f581de87453eb0e55657d2ccd11dca2d1815c3bfe9ef5923994306a6db SHA512 ee7b0345c08fbe0215811d07b4c57c1ceece826871842f6d1c174d82e8eee0ad810aa5413d6763ecd5a513e151792a53c36623ab99d2049555ef2542d32d1658
 DIST pip-20.2.2.tar.gz 8719081 BLAKE2B 642a8e9b2f7c3dc08b7e8f7874b7d1d988622f50b9430939060c3b9c086ae7bdaf4a58e9709376e0d36411fb2b492d4e44ddb6282f1fe12d7c8b9ecfdb1c0482 SHA512 0b000977f169900eebd4afeabfc7bd59b104246bbb048ce5b4db7f701e20ef1caef22c7ca2311843eafc4a37abbb81a74beddddf655eeaf2e33e3949d5a811e6
 DIST pip-20.2.3.tar.gz 8719284 BLAKE2B 280637627750302b11828f066b949df7a8d38c6fbdb7532a41eed0d4bd5b83a24ec717e9f57ebcf9d246a0c5aeb272bdaefc9299926dfe308ce20b84e82d81c2 SHA512 b2f7c6b2d5b0c3d743fa8b1061196f8cedf7f106e0cb87507070f1d930d1f1c8a875c800b2d1f7be5b9cada1ba6d3e5b2d7e2f3bdd42e43fd5147536ec1bdf48
 DIST setuptools-44.0.0-py2.py3-none-any.whl 583230 BLAKE2B 823e6792471660f247e30a938aa869d345a63db7294e5f9b4bd88f15a7694779011d29740fe317149620985f705fc6e18cbb07a18e5680cc11d7c229ffbc74f6 SHA512 7006fd303181afbeeec0e30cafb9fd1e4d3c6f55cfdd6343fedbc32b17dbb96b3d96ae37f4db27bfb168738727474cf425904ec280ff1d2b789fc48077a8fa84

diff --git a/dev-python/pip/files/pip-20.1.1-test-endian.patch b/dev-python/pip/files/pip-20.1.1-test-endian.patch
deleted file mode 100644
index b6aea145656..00000000000
--- a/dev-python/pip/files/pip-20.1.1-test-endian.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From b30dd1e04e1f37901733f1be0a5a1e02c466ad0c Mon Sep 17 00:00:00 2001
-From: gutsytechster <prashantsharma161198@gmail.com>
-Date: Wed, 15 Apr 2020 19:54:48 +0530
-Subject: [PATCH] fix(tests/unit): Update tests to be endian safe
-
-This updates `test_path_to_display` and `test_str_to_display__encoding`
-to use the endian safe expected result instead of the hardcoded one.
-
-This fixes https://github.com/pypa/pip/issues/7921
----
- tests/unit/test_compat.py |  8 +++++++-
- tests/unit/test_utils.py  | 16 +++++++++++++---
- 2 files changed, 20 insertions(+), 4 deletions(-)
-
-diff --git a/tests/unit/test_compat.py b/tests/unit/test_compat.py
-index 1f31bc5c..b13087a1 100644
---- a/tests/unit/test_compat.py
-+++ b/tests/unit/test_compat.py
-@@ -2,6 +2,7 @@
- 
- import locale
- import os
-+import sys
- 
- import pytest
- 
-@@ -91,8 +92,13 @@ def test_str_to_display__decode_error(monkeypatch, caplog):
-     # Encode with an incompatible encoding.
-     data = u'ab'.encode('utf-16')
-     actual = str_to_display(data)
-+    # Keep the expected value endian safe
-+    if sys.byteorder == "little":
-+        expected = "\\xff\\xfea\x00b\x00"
-+    elif sys.byteorder == "big":
-+        expected = "\\xfe\\xff\x00a\x00b"
- 
--    assert actual == u'\\xff\\xfea\x00b\x00', (
-+    assert actual == expected, (
-         # Show the encoding for easier troubleshooting.
-         'encoding: {!r}'.format(locale.getpreferredencoding())
-     )
-diff --git a/tests/unit/test_utils.py b/tests/unit/test_utils.py
-index 7d74a664..ebabd29e 100644
---- a/tests/unit/test_utils.py
-+++ b/tests/unit/test_utils.py
-@@ -375,6 +375,18 @@ def test_rmtree_retries_for_3sec(tmpdir, monkeypatch):
-         rmtree('foo')
- 
- 
-+if sys.byteorder == "little":
-+    expected_byte_string = (
-+        u"b'\\xff\\xfe/\\x00p\\x00a\\x00t\\x00h\\x00/"
-+        "\\x00d\\x00\\xe9\\x00f\\x00'"
-+    )
-+elif sys.byteorder == "big":
-+    expected_byte_string = (
-+        u"b'\\xfe\\xff\\x00/\\x00p\\x00a\\x00t\\x00h\\"
-+        "x00/\\x00d\\x00\\xe9\\x00f'"
-+    )
-+
-+
- @pytest.mark.parametrize('path, fs_encoding, expected', [
-     (None, None, None),
-     # Test passing a text (unicode) string.
-@@ -383,9 +395,7 @@ def test_rmtree_retries_for_3sec(tmpdir, monkeypatch):
-     (u'/path/déf'.encode('utf-8'), 'utf-8', u'/path/déf'),
-     # Test a bytes object with a character that can't be decoded.
-     (u'/path/déf'.encode('utf-8'), 'ascii', u"b'/path/d\\xc3\\xa9f'"),
--    (u'/path/déf'.encode('utf-16'), 'utf-8',
--     u"b'\\xff\\xfe/\\x00p\\x00a\\x00t\\x00h\\x00/"
--     "\\x00d\\x00\\xe9\\x00f\\x00'"),
-+    (u'/path/déf'.encode('utf-16'), 'utf-8', expected_byte_string),
- ])
- def test_path_to_display(monkeypatch, path, fs_encoding, expected):
-     monkeypatch.setattr(sys, 'getfilesystemencoding', lambda: fs_encoding)
--- 
-2.26.2
-

diff --git a/dev-python/pip/pip-20.1.1-r1.ebuild b/dev-python/pip/pip-20.1.1-r1.ebuild
deleted file mode 100644
index 1d87f8aac74..00000000000
--- a/dev-python/pip/pip-20.1.1-r1.ebuild
+++ /dev/null
@@ -1,140 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{6,7,8,9} pypy3 )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1 multiprocessing
-
-SETUPTOOLS_PV="44.0.0"
-WHEEL_PV="0.34.2"
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="https://pip.pypa.io/ https://pypi.org/project/pip/ https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py2.py3/s/setuptools/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-${WHEEL_PV}-py2.py3-none-any.whl
-	)
-"
-# PyPI archive does not have tests, so we need to download from GitHub.
-# setuptools & wheel .whl files are required for testing, exact version is not very important.
-
-LICENSE="MIT"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ppc ppc64 sparc x86"
-SLOT="0"
-IUSE="test -vanilla"
-
-# disable-system-install patch breaks tests
-RESTRICT="!test? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-DEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/cryptography[${PYTHON_USEDEP}]
-		dev-python/csv23[${PYTHON_USEDEP}]
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		dev-python/pytest[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		<dev-python/virtualenv-20[${PYTHON_USEDEP}]
-		dev-python/werkzeug[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
-		"${FILESDIR}/${P}-test-endian.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
-	fi
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl \
-			tests/data/common_wheels/ || die
-
-		cp "${DISTDIR}"/wheel-${WHEEL_PV}-py2.py3-none-any.whl \
-			tests/data/common_wheels/ || die
-	fi
-}
-
-python_test() {
-	if [[ ${EPYTHON} == pypy* ]]; then
-		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
-		return 0
-	fi
-
-	local -a exclude_tests
-
-	# these will be built in to an expression passed to pytest to exclude
-	exclude_tests=(
-		git
-		svn
-		bazaar
-		mercurial
-		version_check
-		uninstall_non_local_distutils
-		pep518_uses_build_env
-		install_package_with_root
-		install_editable_with_prefix
-		install_user_wheel
-		install_from_current_directory_into_usersite
-		uninstall_editable_from_usersite
-		uninstall_from_usersite_with_dist_in_global_site
-		build_env_isolation
-		user_config_accepted
-	)
-
-	distutils_install_for_testing
-
-	# generate the expression to exclude failing tests
-	local exclude_expr
-	printf -v exclude_expr "or %s " "${exclude_tests[@]}" || die
-	exclude_expr="not (${exclude_expr#or })" || die
-
-	local -x GENTOO_PIP_TESTING=1 \
-		PATH="${TEST_DIR}/scripts:${PATH}" \
-		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
-
-	pytest -vv \
-		-k "${exclude_expr}" \
-		-m "not network" \
-		|| die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
-	# Prevent dbus auto-launch
-	# https://bugs.gentoo.org/692178
-	export DBUS_SESSION_BUS_ADDRESS="disabled:"
-
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
-
-	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2020-02-01  8:33 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2020-02-01  8:33 UTC (permalink / raw
  To: gentoo-commits

commit:     0ed9e986ca461fa075cfe52ce0fd8edc7f884f41
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Feb  1 06:35:03 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Feb  1 08:33:19 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ed9e986

dev-python/pip: Bump to 20.0.2

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

 dev-python/pip/Manifest                            |   3 +
 .../files/pip-20.0.2-disable-system-install.patch  |  29 +++++
 dev-python/pip/pip-20.0.2.ebuild                   | 137 +++++++++++++++++++++
 3 files changed, 169 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 035862b6310..f0487112632 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,7 +1,10 @@
 DIST pip-19.1.tar.gz 6320747 BLAKE2B 9b69fcdef751d6938a7c67f44692afa7088f660ab1e0ae113d21d0f48b4e29f43e0f0bcc137cf16ac0324ea3b500bd2a84234823f8d82556d6727f68139aab4b SHA512 0d2442c22c41133118353ba98f45260f0615a891725b2a069d8fbf26ec4033cc7297bb671944c3dcc1f68800b91e92e58fb407ca5a333382e20ac4bb5c9e0cb6
 DIST pip-19.3.1.tar.gz 6409819 BLAKE2B b3aacd0bee60400a1f30b4be57871002072e5cc7a86e76cca1848e977ebdc85b6e282fc521c19bf7a518d1aef3280133fcd65a431cb2a16e202dd7721c5b97ad SHA512 39446c0ab6e4495d98f22923a2a76901b024d9047b60d92580b21d447a718e5285cfd66f8ad0c20befcfe1abc7f06be29b6a5644d1b30265d3b67399fe76e033
+DIST pip-20.0.2.tar.gz 6445047 BLAKE2B 8f6e0a8908cf594c8d51818942b0839f59a495697a95dcc0347235e90cbe6d7f035f155761e7da9cfca1ba08b2c5a2c5def52c60c381f5428ef48efd1b6b5131 SHA512 f9965944ca0f319d01db1638ce97cf64772afff1778b3b1271155de73208cfcb3954d89a469c1143c0bf3288a53d4446165a49df994374b16ac6f7ffdae85857
 DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25
 DIST setuptools-41.0.1-py2.py3-none-any.whl 575966 BLAKE2B 332986453a35e4ec36ab2bdb80a8b0a70ffe4fec1bb874f481b0d8e31016a26d53070f90d0eea9030b8c48a1f9bc21a54d8a5a2b70096e1f8db84d42449903e4 SHA512 c84ddf1d1ea90216b2c475f3e4879f4e6792a859adf61db70d67f49a35f2cb4df6fd6d93049881e6d2a8d914768edfcd091475206bb5da3ac66c41c4b9147102
 DIST setuptools-41.4.0-py2.py3-none-any.whl 580302 BLAKE2B 58dc2d48445406f7467bfb0934dc507e8a569e4759bfcc95287cfb21b5b1a7bcab061656a29a8b4976ee3ae12a3adca570035ae4a6d9df09ae7a799857775d36 SHA512 a27b38d596931dfef81d705d05689b7748ce0e02d21af4a37204fc74b0913fa7241b8135535eb7749f09af361cad90c475af98493fef11c4ad974780ee01243d
+DIST setuptools-44.0.0-py2.py3-none-any.whl 583230 BLAKE2B 823e6792471660f247e30a938aa869d345a63db7294e5f9b4bd88f15a7694779011d29740fe317149620985f705fc6e18cbb07a18e5680cc11d7c229ffbc74f6 SHA512 7006fd303181afbeeec0e30cafb9fd1e4d3c6f55cfdd6343fedbc32b17dbb96b3d96ae37f4db27bfb168738727474cf425904ec280ff1d2b789fc48077a8fa84
 DIST wheel-0.33.1-py2.py3-none-any.whl 21496 BLAKE2B 41bb9ed91d43f94209a010c286d541da9d68b9e727ec8a339fe3c24fb806746b1de5b62c6cd26d2c2841be17406e1f99353b6d172f5258540faeba014945e9e8 SHA512 761ad8cb96557b146642871e1f8ce75849a9828193d992a19d072236b9f8452ab54907a3b82bc7441f75f036155ae21b7450120e0c4c19aa5100b58337945ac0
 DIST wheel-0.33.6-py2.py3-none-any.whl 21556 BLAKE2B 6b6124c1e8e70592399a90c88b2a70efc5885bad81d2ff07a2e243eee008ba5cb0c927454036915a61e97489e29fe1abc4ba2e63d7eadf1a8985c8a8b7cdf4c4 SHA512 4663cd55ee9d3de138216bb06870606b546b19cb6a733f1beab211c0ba72e63d849c422d320ddc8aa8275ad04a30119a84c1351e589150cd18c2a34f9fdb224a
+DIST wheel-0.34.2-py2.py3-none-any.whl 26502 BLAKE2B 3a1bd4571c582245b60ff33c9bf74ff8a2ebafb26e56fc7b9bd215058d059b6bd13bbe21ce46002af257813a54126f27e19253f211e21c4548c7cf84cd15caf7 SHA512 4f1a44f4691ed8baad777d7874f7f4da96a5019eb485fd3a9eed9259aa2a9d5acccc6dc63a72128664347c64ee039a6076c6ca9c3b75a1f94457967864e522ed

diff --git a/dev-python/pip/files/pip-20.0.2-disable-system-install.patch b/dev-python/pip/files/pip-20.0.2-disable-system-install.patch
new file mode 100644
index 00000000000..c6b5354bc68
--- /dev/null
+++ b/dev-python/pip/files/pip-20.0.2-disable-system-install.patch
@@ -0,0 +1,29 @@
+From 57d610bbcc721c2e58fd2e9f3197bb3e3acbd935 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 1 Feb 2020 09:14:46 +0100
+Subject: [PATCH] install: Raise an error to avoid breaking python-exec
+
+Running pip without --target, --root, or --user will result in packages
+being installed systemwide. This has a tendency to break python-exec if
+setuptools gets installed or upgraded.
+---
+ src/pip/_internal/commands/install.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/pip/_internal/commands/install.py b/src/pip/_internal/commands/install.py
+index 02a187c8..025b824b 100644
+--- a/src/pip/_internal/commands/install.py
++++ b/src/pip/_internal/commands/install.py
+@@ -246,6 +246,9 @@ class InstallCommand(RequirementCommand):
+         if options.upgrade:
+             upgrade_strategy = options.upgrade_strategy
+ 
++        if not options.use_user_site and not options.target_dir and not options.root_path and not os.getenv('GENTOO_PIP_TESTING'):
++            raise CommandError("(Gentoo) Please run pip with the --user option to avoid breaking python-exec")
++
+         cmdoptions.check_dist_restriction(options, check_target=True)
+ 
+         install_options = options.install_options or []
+-- 
+2.25.0
+

diff --git a/dev-python/pip/pip-20.0.2.ebuild b/dev-python/pip/pip-20.0.2.ebuild
new file mode 100644
index 00000000000..fe842dac954
--- /dev/null
+++ b/dev-python/pip/pip-20.0.2.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+SETUPTOOLS_PV="44.0.0"
+WHEEL_PV="0.34.2"
+
+DESCRIPTION="Installs python packages -- replacement for easy_install"
+HOMEPAGE="https://pip.pypa.io/ https://pypi.org/project/pip/ https://github.com/pypa/pip/"
+SRC_URI="
+	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+	test? (
+		https://files.pythonhosted.org/packages/py2.py3/s/setuptools/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl
+		https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-${WHEEL_PV}-py2.py3-none-any.whl
+	)
+"
+# PyPI archive does not have tests, so we need to download from GitHub.
+# setuptools & wheel .whl files are required for testing, exact version is not very important.
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm64 ~sparc ~x86"
+SLOT="0"
+IUSE="test -vanilla"
+
+# disable-system-install patch breaks tests
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+	${RDEPEND}
+	test? (
+		dev-python/cryptography[${PYTHON_USEDEP}]
+		dev-python/freezegun[${PYTHON_USEDEP}]
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pretend[${PYTHON_USEDEP}]
+		dev-python/pytest[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		dev-python/scripttest[${PYTHON_USEDEP}]
+		dev-python/virtualenv[${PYTHON_USEDEP}]
+		dev-python/werkzeug[${PYTHON_USEDEP}]
+		dev-python/wheel[${PYTHON_USEDEP}]
+	)
+"
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
+	)
+	if ! use vanilla; then
+		PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
+	fi
+	distutils-r1_python_prepare_all
+
+	if use test; then
+		mkdir tests/data/common_wheels/ || die
+		cp "${DISTDIR}"/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl \
+			tests/data/common_wheels/ || die
+
+		cp "${DISTDIR}"/wheel-${WHEEL_PV}-py2.py3-none-any.whl \
+			tests/data/common_wheels/ || die
+	fi
+}
+
+python_test() {
+	if [[ ${EPYTHON} == pypy* ]]; then
+		ewarn "Skipping tests on ${EPYTHON} since they are very broken"
+		return 0
+	fi
+
+	local -a exclude_tests
+
+	# these will be built in to an expression passed to pytest to exclude
+	exclude_tests=(
+		git
+		svn
+		bazaar
+		mercurial
+		version_check
+		uninstall_non_local_distutils
+		pep518_uses_build_env
+		install_package_with_root
+		install_editable_with_prefix
+		install_user_wheel
+		install_from_current_directory_into_usersite
+		uninstall_editable_from_usersite
+		uninstall_from_usersite_with_dist_in_global_site
+		build_env_isolation
+	)
+
+	distutils_install_for_testing
+
+	# generate the expression to exclude failing tests
+	local exclude_expr
+	printf -v exclude_expr "or %s " "${exclude_tests[@]}" || die
+	exclude_expr="not (${exclude_expr#or })" || die
+
+	local -x GENTOO_PIP_TESTING=1 \
+		PATH="${TEST_DIR}/scripts:${PATH}" \
+		PYTHONPATH="${TEST_DIR}/lib:${BUILD_DIR}/lib"
+
+	pytest -vv \
+		-k "${exclude_expr}" \
+		-m "not network" \
+		|| die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+	# Prevent dbus auto-launch
+	# https://bugs.gentoo.org/692178
+	export DBUS_SESSION_BUS_ADDRESS="disabled:"
+
+	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+	distutils-r1_python_install_all
+
+	COMPLETION="${T}"/completion.tmp
+
+	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
+
+	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
+	newbashcomp "${COMPLETION}" ${PN}
+
+	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
+	insinto /usr/share/zsh/site-functions
+	newins "${COMPLETION}" _pip
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2019-11-23  0:22 Patrick McLean
  0 siblings, 0 replies; 18+ messages in thread
From: Patrick McLean @ 2019-11-23  0:22 UTC (permalink / raw
  To: gentoo-commits

commit:     3d497622c6f95eb3e177d2134378a03ab517d1d1
Author:     Patrick McLean <patrick.mclean <AT> sony <DOT> com>
AuthorDate: Sat Nov 23 00:13:03 2019 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Sat Nov 23 00:21:52 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d497622

dev-python/pip-19.3.1-r1: Revbump, update install patch for --prefix

Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 .../files/pip-19.3.1-disable-system-install.patch  |  17 +++
 dev-python/pip/pip-19.3.1-r1.ebuild                | 119 +++++++++++++++++++++
 2 files changed, 136 insertions(+)

diff --git a/dev-python/pip/files/pip-19.3.1-disable-system-install.patch b/dev-python/pip/files/pip-19.3.1-disable-system-install.patch
new file mode 100644
index 00000000000..70583957bd7
--- /dev/null
+++ b/dev-python/pip/files/pip-19.3.1-disable-system-install.patch
@@ -0,0 +1,17 @@
+install: Raise an error to avoid breaking python-exec
+
+Running pip without --target, --root, or --user will result in packages
+being installed systemwide. This has a tendency to break python-exec if
+setuptools gets installed or upgraded.
+
+--- pip-19.1/src/pip/_internal/commands/install.py
++++ pip-19.1/src/pip/_internal/commands/install.py
+@@ -246,6 +246,9 @@ class InstallCommand(RequirementCommand):
+         if options.upgrade:
+             upgrade_strategy = options.upgrade_strategy
+
++        if not any((options.use_user_site, options.target_dir, options.root_path, options.prefix_path)):
++            raise CommandError("(Gentoo) Please run pip with the --user option to avoid breaking python-exec")
++
+         if options.build_dir:
+             options.build_dir = os.path.abspath(options.build_dir)

diff --git a/dev-python/pip/pip-19.3.1-r1.ebuild b/dev-python/pip/pip-19.3.1-r1.ebuild
new file mode 100644
index 00000000000..e631044bd5a
--- /dev/null
+++ b/dev-python/pip/pip-19.3.1-r1.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy{,3} )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+SETUPTOOLS_PV="41.4.0"
+WHEEL_PV="0.33.6"
+
+DESCRIPTION="Installs python packages -- replacement for easy_install"
+HOMEPAGE="https://pip.pypa.io/ https://pypi.org/project/pip/ https://github.com/pypa/pip/"
+SRC_URI="
+	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+	test? (
+		https://files.pythonhosted.org/packages/py2.py3/s/setuptools/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl
+		https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-${WHEEL_PV}-py2.py3-none-any.whl
+	)
+"
+# PyPI archive does not have tests, so we need to download from GitHub.
+# setuptools & wheel .whl files are required for testing, exact version is not very important.
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="test -vanilla"
+
+# disable-system-install patch breaks tests
+RESTRICT="!vanilla? ( test )"
+
+RDEPEND="
+	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+	${RDEPEND}
+	test? (
+		dev-python/freezegun[${PYTHON_USEDEP}]
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pretend[${PYTHON_USEDEP}]
+		<dev-python/pytest-4[${PYTHON_USEDEP}]
+		dev-python/pytest-cov[${PYTHON_USEDEP}]
+		<dev-python/pytest-rerunfailures-7.0[${PYTHON_USEDEP}]
+		dev-python/pytest-timeout[${PYTHON_USEDEP}]
+		<dev-python/pytest-xdist-1.28.0[${PYTHON_USEDEP}]
+		dev-python/pyyaml[${PYTHON_USEDEP}]
+		dev-python/scripttest[${PYTHON_USEDEP}]
+		dev-python/wheel[${PYTHON_USEDEP}]
+	)
+"
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
+	)
+	if ! use vanilla; then
+		PATCHES+=( "${FILESDIR}/pip-19.3.1-disable-system-install.patch" )
+	fi
+	distutils-r1_python_prepare_all
+
+	if use test; then
+		mkdir tests/data/common_wheels/
+		cp "${DISTDIR}"/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl tests/data/common_wheels/ || die
+		cp "${DISTDIR}"/wheel-${WHEEL_PV}-py2.py3-none-any.whl tests/data/common_wheels/ || die
+	fi
+}
+
+python_test () {
+	# pip test suite likes to test installed version of pip, both the module and the executable.
+	# Here we install it into a temporary dir and add to PATHs in a subshell.
+	EPYTHON_ROOT="${T}/${EPYTHON}_root"
+	esetup.py install --root "${EPYTHON_ROOT}"
+
+	if [[ ${EPYTHON} == python2* ]]; then
+		# These tests just fail on Python 2.
+		EXCLUDE_TESTS=( or pep518_uses_build_env or install_package_with_root or install_editable_with_prefix
+			or install_from_current_directory_into_usersite or install_user_wheel
+			or uninstall_from_usersite_with_dist_in_global_site
+			or uninstall_editable_from_usersite
+			or build_env_isolation
+		)
+	fi
+
+	(
+		export PATH="${EPYTHON_ROOT}/usr/bin:$PATH"
+		export PYTHONPATH="${EPYTHON_ROOT}/$(python_get_sitedir)"
+
+		# Disable VCS and network tests.
+		# version_check tests are excluded since we explicitly disable this feature entirely.
+		# uninstall test just fails, likely because of our test environment setup.
+		python -m pytest -v \
+			-n $(makeopts_jobs) \
+			--timeout 300 \
+			-k "not (svn or git or bazaar or mercurial or version_check or uninstall_non_local_distutils ${EXCLUDE_TESTS[*]})" \
+			-m "not network" \
+			|| die
+	)
+}
+
+python_install_all() {
+	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+	distutils-r1_python_install_all
+
+	COMPLETION="${T}"/completion.tmp
+
+	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
+
+	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
+	newbashcomp "${COMPLETION}" ${PN}
+
+	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
+	insinto /usr/share/zsh/site-functions
+	newins "${COMPLETION}" _pip
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2019-10-22 20:38 Maxim Koltsov
  0 siblings, 0 replies; 18+ messages in thread
From: Maxim Koltsov @ 2019-10-22 20:38 UTC (permalink / raw
  To: gentoo-commits

commit:     ecefbd1b813fafcc718b8ec843d73b6c6ad8dd9f
Author:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 21 21:07:36 2019 +0000
Commit:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
CommitDate: Tue Oct 22 20:37:56 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecefbd1b

dev-python/pip: drop old

Package-Manager: Portage-2.3.77, Repoman-2.3.17
Signed-off-by: Maxim Koltsov <maksbotan <AT> gentoo.org>

 dev-python/pip/Manifest                            |  2 -
 .../files/pip-10.0.1-disable-system-install.patch  | 18 ----
 .../files/pip-10.0.1-disable-version-check.patch   | 19 -----
 .../files/pip-6.0.2-disable-version-check.patch    | 14 ----
 dev-python/pip/files/pip-8.0.0-unbundle.patch      | 43 ----------
 dev-python/pip/pip-10.0.1.ebuild                   | 48 -----------
 dev-python/pip/pip-19.2.2.ebuild                   | 97 ----------------------
 7 files changed, 241 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index f28dd709937..035862b6310 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,6 +1,4 @@
-DIST pip-10.0.1.tar.gz 1246072 BLAKE2B e08607be43e1d7b9c7bbc12dff73bc3170953f48f8f7439a0b27b9d540f23eb3bca7873211a5f1448b5cedd6e8e12983af6fa4666bba3ac4700059d170036733 SHA512 983cce8375ff0304263209c69be16e5be7a58af340b8c3ffddd64fcea130b2f8f8a98305ab31e9c3eed9a0d039c73777c88bde3bf2ea1e184fa3e0a2faa97fd4
 DIST pip-19.1.tar.gz 6320747 BLAKE2B 9b69fcdef751d6938a7c67f44692afa7088f660ab1e0ae113d21d0f48b4e29f43e0f0bcc137cf16ac0324ea3b500bd2a84234823f8d82556d6727f68139aab4b SHA512 0d2442c22c41133118353ba98f45260f0615a891725b2a069d8fbf26ec4033cc7297bb671944c3dcc1f68800b91e92e58fb407ca5a333382e20ac4bb5c9e0cb6
-DIST pip-19.2.2.tar.gz 6381643 BLAKE2B 3c7d3c070d9bc52557b67c8fc34274d8c769179e01758b63d69c5da48d94a5980ecba62f8b74135ee2f08b4686f8835dee5da5d30fc12af0044f7f0180b3f50b SHA512 ca634925e21aba338aa65f80d258833c6622b4c1d85eaf827fa5439aed62d7c6d64fde91cfebc05bd83eb215b019b690379cf5c4ac85a2f32d6357e6bd95fd88
 DIST pip-19.3.1.tar.gz 6409819 BLAKE2B b3aacd0bee60400a1f30b4be57871002072e5cc7a86e76cca1848e977ebdc85b6e282fc521c19bf7a518d1aef3280133fcd65a431cb2a16e202dd7721c5b97ad SHA512 39446c0ab6e4495d98f22923a2a76901b024d9047b60d92580b21d447a718e5285cfd66f8ad0c20befcfe1abc7f06be29b6a5644d1b30265d3b67399fe76e033
 DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25
 DIST setuptools-41.0.1-py2.py3-none-any.whl 575966 BLAKE2B 332986453a35e4ec36ab2bdb80a8b0a70ffe4fec1bb874f481b0d8e31016a26d53070f90d0eea9030b8c48a1f9bc21a54d8a5a2b70096e1f8db84d42449903e4 SHA512 c84ddf1d1ea90216b2c475f3e4879f4e6792a859adf61db70d67f49a35f2cb4df6fd6d93049881e6d2a8d914768edfcd091475206bb5da3ac66c41c4b9147102

diff --git a/dev-python/pip/files/pip-10.0.1-disable-system-install.patch b/dev-python/pip/files/pip-10.0.1-disable-system-install.patch
deleted file mode 100644
index 776d395b7b9..00000000000
--- a/dev-python/pip/files/pip-10.0.1-disable-system-install.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-install: Raise an error to avoid breaking python-exec
-
-Running pip without --target, --root, or --user will result in packages
-being installed systemwide. This has a tendency to break python-exec if
-setuptools gets installed or upgraded.
-
---- pip-10.0.1/src/pip/_internal/commands/install.py
-+++ pip-10.0.1/src/pip/_internal/commands/install.py
-@@ -202,6 +202,9 @@
-         if options.upgrade:
-             upgrade_strategy = options.upgrade_strategy
- 
-+        if not options.use_user_site and not options.target_dir and not options.root_path:
-+            raise CommandError("(Gentoo) Please run pip with the --user option to avoid breaking python-exec")
-+
-         if options.build_dir:
-             options.build_dir = os.path.abspath(options.build_dir)
- 

diff --git a/dev-python/pip/files/pip-10.0.1-disable-version-check.patch b/dev-python/pip/files/pip-10.0.1-disable-version-check.patch
deleted file mode 100644
index ad146dc1507..00000000000
--- a/dev-python/pip/files/pip-10.0.1-disable-version-check.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Don't check for new versions of pip.
-
---- pip-10.0.1/src/pip/_internal/basecommand.py
-+++ pip-10.0.1/src/pip/_internal/basecommand.py
-@@ -255,14 +255,6 @@
- 
-             return UNKNOWN_ERROR
-         finally:
--            # Check if we're using the latest version of pip available
--            if (not options.disable_pip_version_check and not
--                    getattr(options, "no_index", False)):
--                with self._build_session(
--                        options,
--                        retries=0,
--                        timeout=min(5, options.timeout)) as session:
--                    pip_version_check(session, options)
-             # Avoid leaking loggers
-             for handler in set(logging.root.handlers) - original_root_handlers:
-                 # this method benefit from the Logger class internal lock

diff --git a/dev-python/pip/files/pip-6.0.2-disable-version-check.patch b/dev-python/pip/files/pip-6.0.2-disable-version-check.patch
deleted file mode 100644
index a192c228a99..00000000000
--- a/dev-python/pip/files/pip-6.0.2-disable-version-check.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Don't check PyPI for new versions of pip by default, updates will occur when
-new releases are added to the tree.
-
---- pip-6.0.2/pip/cmdoptions.py
-+++ pip-6.0.2/pip/cmdoptions.py
-@@ -404,7 +404,7 @@
-     "--disable-pip-version-check",
-     dest="disable_pip_version_check",
-     action="store_true",
--    default=False,
-+    default=True,
-     help="Don't periodically check PyPI to determine whether a new version "
-          "of pip is available for download.")
- 

diff --git a/dev-python/pip/files/pip-8.0.0-unbundle.patch b/dev-python/pip/files/pip-8.0.0-unbundle.patch
deleted file mode 100644
index d508d51ab4f..00000000000
--- a/dev-python/pip/files/pip-8.0.0-unbundle.patch
+++ /dev/null
@@ -1,43 +0,0 @@
- pip/_vendor/__init__.py | 15 +++++----------
- 1 file changed, 5 insertions(+), 10 deletions(-)
-
-diff --git a/pip/_vendor/__init__.py b/pip/_vendor/__init__.py
-index b09a7c3..b9fe6ee 100644
---- a/pip/_vendor/__init__.py
-+++ b/pip/_vendor/__init__.py
-@@ -14,7 +14,7 @@ import sys
- # Downstream redistributors which have debundled our dependencies should also
- # patch this value to be true. This will trigger the additional patching
- # to cause things like "six" to be available as pip.
--DEBUNDLED = False
-+DEBUNDLED = True
- 
- # By default, look in this directory for a bunch of .whl files which we will
- # add to the beginning of sys.path before attempting to import anything. This
-@@ -29,13 +29,10 @@ WHEEL_DIR = os.path.abspath(os.path.dirname(__file__))
- def vendored(modulename):
-     vendored_name = "{0}.{1}".format(__name__, modulename)
- 
--    try:
--        __import__(vendored_name, globals(), locals(), level=0)
--    except ImportError:
--        __import__(modulename, globals(), locals(), level=0)
--        sys.modules[vendored_name] = sys.modules[modulename]
--        base, head = vendored_name.rsplit(".", 1)
--        setattr(sys.modules[base], head, sys.modules[modulename])
-+    __import__(modulename, globals(), locals(), level=0)
-+    sys.modules[vendored_name] = sys.modules[modulename]
-+    base, head = vendored_name.rsplit(".", 1)
-+    setattr(sys.modules[base], head, sys.modules[modulename])
- 
- 
- # If we're operating in a debundled setup, then we want to go ahead and trigger
-@@ -85,8 +82,6 @@ if DEBUNDLED:
-     vendored("requests.packages.urllib3.packages.ordered_dict")
-     vendored("requests.packages.urllib3.packages.six")
-     vendored("requests.packages.urllib3.packages.ssl_match_hostname")
--    vendored("requests.packages.urllib3.packages.ssl_match_hostname."
--             "_implementation")
-     vendored("requests.packages.urllib3.poolmanager")
-     vendored("requests.packages.urllib3.request")
-     vendored("requests.packages.urllib3.response")

diff --git a/dev-python/pip/pip-10.0.1.ebuild b/dev-python/pip/pip-10.0.1.ebuild
deleted file mode 100644
index 19a0c39cdd0..00000000000
--- a/dev-python/pip/pip-10.0.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy{,3} )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit eutils bash-completion-r1 distutils-r1
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="https://pip.pypa.io/ https://pypi.org/project/pip/ https://github.com/pypa/pip/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
-SLOT="0"
-IUSE="-vanilla"
-
-# required test data isn't bundled with the tarball
-RESTRICT="test"
-
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-10.0.1-disable-version-check.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-10.0.1-disable-system-install.patch" )
-	fi
-	distutils-r1_python_prepare_all
-}
-
-python_install_all() {
-	local DOCS=( AUTHORS.txt docs/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	"${PYTHON}" -m pip completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	"${PYTHON}" -m pip completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}

diff --git a/dev-python/pip/pip-19.2.2.ebuild b/dev-python/pip/pip-19.2.2.ebuild
deleted file mode 100644
index 1d2a8c7a372..00000000000
--- a/dev-python/pip/pip-19.2.2.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 python3_{5,6,7} pypy{,3} )
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit bash-completion-r1 distutils-r1 multiprocessing
-
-SETUPTOOLS_PV="41.0.1"
-WHEEL_PV="0.33.1"
-
-DESCRIPTION="Installs python packages -- replacement for easy_install"
-HOMEPAGE="https://pip.pypa.io/ https://pypi.org/project/pip/ https://github.com/pypa/pip/"
-SRC_URI="
-	https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
-	test? (
-		https://files.pythonhosted.org/packages/py2.py3/s/setuptools/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl
-		https://files.pythonhosted.org/packages/py2.py3/w/wheel/wheel-${WHEEL_PV}-py2.py3-none-any.whl
-	)
-"
-# PyPI archive does not have tests, so we need to download from GitHub.
-# setuptools & wheel .whl files are required for testing, exact version is not very important.
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-IUSE="test -vanilla"
-
-# disable-system-install patch breaks tests
-RESTRICT="!vanilla? ( test )"
-
-RDEPEND="
-	>=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
-"
-DEPEND="
-	${RDEPEND}
-	test? (
-		dev-python/freezegun[${PYTHON_USEDEP}]
-		dev-python/mock[${PYTHON_USEDEP}]
-		dev-python/pretend[${PYTHON_USEDEP}]
-		<dev-python/pytest-4[${PYTHON_USEDEP}]
-		dev-python/pytest-cov[${PYTHON_USEDEP}]
-		<dev-python/pytest-rerunfailures-7.0[${PYTHON_USEDEP}]
-		dev-python/pytest-timeout[${PYTHON_USEDEP}]
-		<dev-python/pytest-xdist-1.28.0[${PYTHON_USEDEP}]
-		dev-python/pyyaml[${PYTHON_USEDEP}]
-		dev-python/scripttest[${PYTHON_USEDEP}]
-		dev-python/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-19.1-disable-version-check.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-19.1-disable-system-install.patch" )
-	fi
-	distutils-r1_python_prepare_all
-
-	if use test; then
-		mkdir tests/data/common_wheels/
-		cp "${DISTDIR}"/setuptools-${SETUPTOOLS_PV}-py2.py3-none-any.whl tests/data/common_wheels/ || die
-		cp "${DISTDIR}"/wheel-${WHEEL_PV}-py2.py3-none-any.whl tests/data/common_wheels/ || die
-	fi
-}
-
-python_test () {
-	# Exclude tests that fail for some reason. Some of these failures may be Gentoo-specific.
-	python -m pytest \
-		-n $(makeopts_jobs) \
-		--timeout 300 \
-		-k "not (svn or git or bazaar or mercurial or test_pep518_uses_build_env or test_install_package_with_root or test_install_editable_with_prefix or install_from_user or install_user_conflict or upgrade_user_conflict or build_env_isolation or config_file_venv_option or get_legacy_build_wheel or install_user_wheel or uninstall_non_local_distutils or install_from_current_directory_into_usersite or uninstall_editable_from_usersite)" \
-		-m "not network" \
-		|| die
-}
-
-python_install_all() {
-	local DOCS=( AUTHORS.txt docs/html/**/*.rst )
-	distutils-r1_python_install_all
-
-	COMPLETION="${T}"/completion.tmp
-
-	# '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"; import pip.__main__; sys.exit(pip.__main__._main())'
-
-	${PYTHON} -c "${pipcmd}" completion --bash > "${COMPLETION}" || die
-	newbashcomp "${COMPLETION}" ${PN}
-
-	${PYTHON} -c "${pipcmd}" completion --zsh > "${COMPLETION}" || die
-	insinto /usr/share/zsh/site-functions
-	newins "${COMPLETION}" _pip
-}


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2017-01-04  4:28 Mike Gilbert
  0 siblings, 0 replies; 18+ messages in thread
From: Mike Gilbert @ 2017-01-04  4:28 UTC (permalink / raw
  To: gentoo-commits

commit:     698a23d83720989123978eb212b387bc5fe96e4a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  4 04:28:30 2017 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Jan  4 04:28:30 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=698a23d8

dev-python/pip: disable systemwide installs

Bug: https://bugs.gentoo.org/553762

Package-Manager: Portage-2.3.3_p13, Repoman-2.3.1_p6

 .../pip/files/pip-disable-system-install.patch     | 29 ++++++++++++++++++++++
 .../pip/{pip-9.0.1.ebuild => pip-9.0.1-r1.ebuild}  | 12 ++++-----
 2 files changed, 34 insertions(+), 7 deletions(-)

diff --git a/dev-python/pip/files/pip-disable-system-install.patch b/dev-python/pip/files/pip-disable-system-install.patch
new file mode 100644
index 00000000..9e57245
--- /dev/null
+++ b/dev-python/pip/files/pip-disable-system-install.patch
@@ -0,0 +1,29 @@
+From 847553da616edabede18c69ba640a32b719b45a8 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Tue, 27 Oct 2015 12:20:44 -0400
+Subject: [PATCH] install: Raise an error to avoid breaking python-exec
+
+Running pip without --target, --root, or --user will result in packages
+being installed systemwide. This has a tendency to break python-exec if
+setuptools gets installed or upgraded.
+---
+ pip/commands/install.py | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/pip/commands/install.py b/pip/commands/install.py
+index 46cd9f2..36b72f2 100644
+--- a/pip/commands/install.py
++++ b/pip/commands/install.py
+@@ -204,6 +204,9 @@ class InstallCommand(RequirementCommand):
+             )
+             options.ignore_installed = True
+ 
++        if not options.use_user_site and not options.target_dir and not options.root_path:
++            raise CommandError("(Gentoo) Please run pip with the --user option to avoid breaking python-exec")
++
+         if options.build_dir:
+             options.build_dir = os.path.abspath(options.build_dir)
+ 
+-- 
+2.6.2
+

diff --git a/dev-python/pip/pip-9.0.1.ebuild b/dev-python/pip/pip-9.0.1-r1.ebuild
similarity index 93%
rename from dev-python/pip/pip-9.0.1.ebuild
rename to dev-python/pip/pip-9.0.1-r1.ebuild
index 8cd1b05..4affc43 100644
--- a/dev-python/pip/pip-9.0.1.ebuild
+++ b/dev-python/pip/pip-9.0.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -58,12 +58,10 @@ RESTRICT="test"
 DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
 RDEPEND="${DEPEND}"
 
-src_prepare() {
-	epatch "${FILESDIR}"/${PN}-9.0.1-disable-version-check.patch
-
-	distutils-r1_src_prepare
-	eapply_user
-}
+PATCHES=(
+	"${FILESDIR}/pip-disable-system-install.patch"
+	"${FILESDIR}/${PN}-9.0.1-disable-version-check.patch"
+)
 
 python_install_all() {
 	local DOCS=( AUTHORS.txt docs/*.rst )


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2016-01-21 11:43 Justin Lecher
  0 siblings, 0 replies; 18+ messages in thread
From: Justin Lecher @ 2016-01-21 11:43 UTC (permalink / raw
  To: gentoo-commits

commit:     abf8d1cf02b68d82bc21e117442cede219f6d76f
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 21 11:43:40 2016 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Thu Jan 21 11:43:47 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=abf8d1cf

dev-python/pip: Update unbundle patch

Package-Manager: portage-2.2.27
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 dev-python/pip/files/pip-8.0.0-unbundle.patch      | 43 ++++++++++++++++++++++
 .../pip/{pip-8.0.0.ebuild => pip-8.0.0-r1.ebuild}  |  2 +-
 2 files changed, 44 insertions(+), 1 deletion(-)

diff --git a/dev-python/pip/files/pip-8.0.0-unbundle.patch b/dev-python/pip/files/pip-8.0.0-unbundle.patch
new file mode 100644
index 0000000..d508d51
--- /dev/null
+++ b/dev-python/pip/files/pip-8.0.0-unbundle.patch
@@ -0,0 +1,43 @@
+ pip/_vendor/__init__.py | 15 +++++----------
+ 1 file changed, 5 insertions(+), 10 deletions(-)
+
+diff --git a/pip/_vendor/__init__.py b/pip/_vendor/__init__.py
+index b09a7c3..b9fe6ee 100644
+--- a/pip/_vendor/__init__.py
++++ b/pip/_vendor/__init__.py
+@@ -14,7 +14,7 @@ import sys
+ # Downstream redistributors which have debundled our dependencies should also
+ # patch this value to be true. This will trigger the additional patching
+ # to cause things like "six" to be available as pip.
+-DEBUNDLED = False
++DEBUNDLED = True
+ 
+ # By default, look in this directory for a bunch of .whl files which we will
+ # add to the beginning of sys.path before attempting to import anything. This
+@@ -29,13 +29,10 @@ WHEEL_DIR = os.path.abspath(os.path.dirname(__file__))
+ def vendored(modulename):
+     vendored_name = "{0}.{1}".format(__name__, modulename)
+ 
+-    try:
+-        __import__(vendored_name, globals(), locals(), level=0)
+-    except ImportError:
+-        __import__(modulename, globals(), locals(), level=0)
+-        sys.modules[vendored_name] = sys.modules[modulename]
+-        base, head = vendored_name.rsplit(".", 1)
+-        setattr(sys.modules[base], head, sys.modules[modulename])
++    __import__(modulename, globals(), locals(), level=0)
++    sys.modules[vendored_name] = sys.modules[modulename]
++    base, head = vendored_name.rsplit(".", 1)
++    setattr(sys.modules[base], head, sys.modules[modulename])
+ 
+ 
+ # If we're operating in a debundled setup, then we want to go ahead and trigger
+@@ -85,8 +82,6 @@ if DEBUNDLED:
+     vendored("requests.packages.urllib3.packages.ordered_dict")
+     vendored("requests.packages.urllib3.packages.six")
+     vendored("requests.packages.urllib3.packages.ssl_match_hostname")
+-    vendored("requests.packages.urllib3.packages.ssl_match_hostname."
+-             "_implementation")
+     vendored("requests.packages.urllib3.poolmanager")
+     vendored("requests.packages.urllib3.request")
+     vendored("requests.packages.urllib3.response")

diff --git a/dev-python/pip/pip-8.0.0.ebuild b/dev-python/pip/pip-8.0.0-r1.ebuild
similarity index 97%
rename from dev-python/pip/pip-8.0.0.ebuild
rename to dev-python/pip/pip-8.0.0-r1.ebuild
index aeffddf..842b1a9 100644
--- a/dev-python/pip/pip-8.0.0.ebuild
+++ b/dev-python/pip/pip-8.0.0-r1.ebuild
@@ -42,7 +42,7 @@ RESTRICT="test"
 
 PATCHES=(
 	"${FILESDIR}"/${PN}-6.0.2-disable-version-check.patch
-	"${FILESDIR}"/${PN}-7.1.2-unbundle.patch
+	"${FILESDIR}"/${P}-unbundle.patch
 	)
 
 python_prepare_all() {


^ permalink raw reply related	[flat|nested] 18+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/
@ 2015-08-24 10:12 Justin Lecher
  0 siblings, 0 replies; 18+ messages in thread
From: Justin Lecher @ 2015-08-24 10:12 UTC (permalink / raw
  To: gentoo-commits

commit:     393e765615102a470b94669a61e790c38d99c268
Author:     Justin Lecher <jlec <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 24 10:04:58 2015 +0000
Commit:     Justin Lecher <jlec <AT> gentoo <DOT> org>
CommitDate: Mon Aug 24 10:12:14 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=393e7656

dev-python/pip: Version Bump

unbundle all vendored libs

Package-Manager: portage-2.2.20.1
Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>

 dev-python/pip/Manifest                       |  1 +
 dev-python/pip/files/pip-7.1.2-unbundle.patch | 34 ++++++++++++++
 dev-python/pip/pip-7.1.2.ebuild               | 66 +++++++++++++++++++++++++++
 3 files changed, 101 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index e49ecf3..271de02 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -5,3 +5,4 @@ DIST pip-7.0.0.tar.gz 1053302 SHA256 7b46bfc1b95494731de306a688e2a7bc056d7fa7ad2
 DIST pip-7.0.1.tar.gz 1053513 SHA256 cfec177552fdd0b2d12b72651c8e874f955b4c62c1c2c9f2588cbdc1c0d0d416 SHA512 cade5fbcd45e888330a1f78409bba406e009efe819701fed8c4e4abecd0ee1c5099c59290636f961d3b7e8266e1952fa586a5a290aeef13d90359585a7ea6600 WHIRLPOOL c77192dcd25cd7c9433e6281a8b424aa1745feae9cbbd3fe1a251ae3bedbd95ee623b8b82e210bcc4555e310ff3317331b94ce566c9f9decba990d898eb456ce
 DIST pip-7.0.3.tar.gz 1054215 SHA256 b4c598825a6f6dc2cac65968feb28e6be6c1f7f1408493c60a07eaa731a0affd SHA512 b35efe45b4aff1a061f41561de7333415c081d9cbd2ee2eccf7af882ddaec643ec766d0f789b49bd94c961c60c6c2e420b31554f112b427bb3af690f4d00e731 WHIRLPOOL 23c45a70a87c61a3c01525abd46f877ec164e70c28e10aa3099590bf0c8421548828cb08f660016a1bdc73e535c18ebc85b734307b9a2f2e7c230518c574839e
 DIST pip-7.1.0.tar.gz 1049267 SHA256 d5275ba3221182a5dd1b6bcfbfc5ec277fb399dd23226d6fa018048f7e0f10f2 SHA512 abda274dfe5f81e121bef9b3bf7a64218f72786037c17b0d99f36c954b09d6b5200a8b78f43de4739c813628a49cbb9d300e869766958e4ed177cf9caad8d511 WHIRLPOOL 35b2953c00a2ff4838f5f550016292b125f06d10f90736b96efc2240dadeebbba8be3d1b860efbe9989bffd51f5a6c5fa43234615b513cdc1aa900df8eb25f2a
+DIST pip-7.1.2.tar.gz 1049170 SHA256 ca047986f0528cfa975a14fb9f7f106271d4e0c3fe1ddced6c1db2e7ae57a477 SHA512 78082afe6b559bf87f91ae9b6d304cfbfce00206e09be42fdae9d449a55cd8d968df6873e834191d0b0e6baae29e72eb3eee42386ff7c5dc9c29b6c28b754449 WHIRLPOOL 953fdc9104f3ac34c9104ec93948f58c4b0e193f18da60d3247d801c283c574490f8b91146e4278888c0b920090f537095c1a1693ca352d062dd98473390fdc9

diff --git a/dev-python/pip/files/pip-7.1.2-unbundle.patch b/dev-python/pip/files/pip-7.1.2-unbundle.patch
new file mode 100644
index 0000000..70adc20
--- /dev/null
+++ b/dev-python/pip/files/pip-7.1.2-unbundle.patch
@@ -0,0 +1,34 @@
+ pip/_vendor/__init__.py | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/pip/_vendor/__init__.py b/pip/_vendor/__init__.py
+index ef8851d..349d022 100644
+--- a/pip/_vendor/__init__.py
++++ b/pip/_vendor/__init__.py
+@@ -14,7 +14,7 @@ import sys
+ # Downstream redistributors which have debundled our dependencies should also
+ # patch this value to be true. This will trigger the additional patching
+ # to cause things like "six" to be available as pip.
+-DEBUNDLED = False
++DEBUNDLED = True
+ 
+ # By default, look in this directory for a bunch of .whl files which we will
+ # add to the beginning of sys.path before attempting to import anything. This
+@@ -29,13 +29,10 @@ WHEEL_DIR = os.path.abspath(os.path.dirname(__file__))
+ def vendored(modulename):
+     vendored_name = "{0}.{1}".format(__name__, modulename)
+ 
+-    try:
+-        __import__(vendored_name, globals(), locals(), level=0)
+-    except ImportError:
+-        __import__(modulename, globals(), locals(), level=0)
+-        sys.modules[vendored_name] = sys.modules[modulename]
+-        base, head = vendored_name.rsplit(".", 1)
+-        setattr(sys.modules[base], head, sys.modules[modulename])
++    __import__(modulename, globals(), locals(), level=0)
++    sys.modules[vendored_name] = sys.modules[modulename]
++    base, head = vendored_name.rsplit(".", 1)
++    setattr(sys.modules[base], head, sys.modules[modulename])
+ 
+ 
+ # If we're operating in a debundled setup, then we want to go ahead and trigger

diff --git a/dev-python/pip/pip-7.1.2.ebuild b/dev-python/pip/pip-7.1.2.ebuild
new file mode 100644
index 0000000..8ddb913
--- /dev/null
+++ b/dev-python/pip/pip-7.1.2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} pypy pypy3  )
+
+inherit bash-completion-r1 distutils-r1
+
+DESCRIPTION="Installs python packages -- replacement for easy_install"
+HOMEPAGE="https://pip.pypa.io/ https://pypi.python.org/pypi/pip/ https://github.com/pypa/pip/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+SLOT="0"
+
+# Check pip/_vendor/vendor.txt for this
+VENDOR_DEPEND="
+	>=dev-python/distlib-0.2.1
+	>=dev-python/html5lib-0.999999
+	>=dev-python/six-1.9
+	>=dev-python/colorama-0.3.3
+	>=dev-python/requests-2.7.0
+	>=dev-python/CacheControl-0.11.5
+	>=dev-python/lockfile-0.10.2
+	>=dev-python/progress-1.2
+	>=dev-python/ipaddress-1.0.14
+	>=dev-python/packaging-15.3
+	>=dev-python/retrying-1.3.3
+"
+RDEPEND="${VENDOR_DEPEND}
+	>=dev-python/setuptools-18.2[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+# required test data isn't bundled with the tarball
+RESTRICT="test"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-6.0.2-disable-version-check.patch
+	"${FILESDIR}"/${P}-unbundle.patch
+	)
+
+python_prepare_all() {
+	mv pip/_vendor/__init__.py "${T}" || die
+	rm -r pip/_vendor/* || die
+	mv "${T}"/__init__.py pip/_vendor/__init__.py || die
+
+	distutils-r1_python_prepare_all
+}
+
+python_install_all() {
+	local DOCS=( AUTHORS.txt docs/*.rst )
+	distutils-r1_python_install_all
+
+	COMPLETION="${T}"/completion.tmp
+
+	${EPYTHON} pip/__init__.py completion --bash > "${COMPLETION}" || die
+	newbashcomp "${COMPLETION}" ${PN}
+
+	${EPYTHON} pip/__init__.py completion --zsh > "${COMPLETION}" || die
+	insinto /usr/share/zsh/site-functions
+	newins "${COMPLETION}" _pip
+}


^ permalink raw reply related	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2024-02-20  9:09 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-20 19:00 [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/files/, dev-python/pip/ Sebastian Pipping
  -- strict thread matches above, loose matches on Subject: below --
2024-02-20  9:09 Michał Górny
2024-01-17 17:11 Michał Górny
2023-11-25  6:45 Michał Górny
2022-08-30 19:01 Michał Górny
2022-07-29 11:43 Arthur Zamarin
2022-03-16  8:07 Michał Górny
2021-11-27 20:14 Michał Górny
2021-11-27 10:27 Michał Górny
2021-05-26  8:36 Michał Górny
2021-01-24 10:15 Michał Górny
2020-09-28 19:50 Michał Górny
2020-02-01  8:33 Michał Górny
2019-11-23  0:22 Patrick McLean
2019-10-22 20:38 Maxim Koltsov
2017-01-04  4:28 Mike Gilbert
2016-01-21 11:43 Justin Lecher
2015-08-24 10:12 Justin Lecher

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox