* [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