public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/, dev-python/pip/files/
@ 2018-06-26  3:39 Tim Harder
  0 siblings, 0 replies; 18+ messages in thread
From: Tim Harder @ 2018-06-26  3:39 UTC (permalink / raw
  To: gentoo-commits

commit:     d9c8635bc6ee81573cbdd50a4bc212cd6244062b
Author:     Tim Harder <radhermit <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 26 02:28:04 2018 +0000
Commit:     Tim Harder <radhermit <AT> gentoo <DOT> org>
CommitDate: Tue Jun 26 03:38:32 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d9c8635b

dev-python/pip: version bump to 10.0.1

Closes: https://bugs.gentoo.org/578988
Closes: https://bugs.gentoo.org/621584

 dev-python/pip/Manifest                            |  1 +
 .../files/pip-10.0.1-disable-system-install.patch  | 18 ++++++++
 .../files/pip-10.0.1-disable-version-check.patch   | 19 +++++++++
 dev-python/pip/pip-10.0.1.ebuild                   | 48 ++++++++++++++++++++++
 4 files changed, 86 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index d365e0ca388..ca3c8caf9d8 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,2 +1,3 @@
+DIST pip-10.0.1.tar.gz 1246072 BLAKE2B e08607be43e1d7b9c7bbc12dff73bc3170953f48f8f7439a0b27b9d540f23eb3bca7873211a5f1448b5cedd6e8e12983af6fa4666bba3ac4700059d170036733 SHA512 983cce8375ff0304263209c69be16e5be7a58af340b8c3ffddd64fcea130b2f8f8a98305ab31e9c3eed9a0d039c73777c88bde3bf2ea1e184fa3e0a2faa97fd4
 DIST pip-7.1.2.tar.gz 1049170 BLAKE2B 1461abba4cb80a9a4e806675ca2d996dedeeb8fb38f05b618f98f400475405da018ea6e75663c21b7b7eb5091408d602a3127afeea9a4bd29f075e5eb8042ad0 SHA512 78082afe6b559bf87f91ae9b6d304cfbfce00206e09be42fdae9d449a55cd8d968df6873e834191d0b0e6baae29e72eb3eee42386ff7c5dc9c29b6c28b754449
 DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25

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
new file mode 100644
index 00000000000..776d395b7b9
--- /dev/null
+++ b/dev-python/pip/files/pip-10.0.1-disable-system-install.patch
@@ -0,0 +1,18 @@
+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
new file mode 100644
index 00000000000..ad146dc1507
--- /dev/null
+++ b/dev-python/pip/files/pip-10.0.1-disable-version-check.patch
@@ -0,0 +1,19 @@
+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/pip-10.0.1.ebuild b/dev-python/pip/pip-10.0.1.ebuild
new file mode 100644
index 00000000000..bd0c75e2b39
--- /dev/null
+++ b/dev-python/pip/pip-10.0.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} 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-fbsd ~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
+}


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

* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/, dev-python/pip/files/
@ 2019-04-28  8:15 Maxim Koltsov
  0 siblings, 0 replies; 18+ messages in thread
From: Maxim Koltsov @ 2019-04-28  8:15 UTC (permalink / raw
  To: gentoo-commits

commit:     64dad89900c7b185a01a2b64f14a57188fa4ed74
Author:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 27 19:27:04 2019 +0000
Commit:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
CommitDate: Sun Apr 28 08:01:52 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64dad899

dev-python/pip: bump to 19.1

- Bump EAPI to 7
- Fix completion file installation

Closes: https://bugs.gentoo.org/671286
Package-Manager: Portage-2.3.63, Repoman-2.3.12
Signed-off-by: Maxim Koltsov <maksbotan <AT> gentoo.org>

 dev-python/pip/Manifest                            |  1 +
 .../files/pip-19.1-disable-system-install.patch    | 17 +++++++
 .../pip/files/pip-19.1-disable-version-check.patch | 19 ++++++++
 dev-python/pip/pip-19.1.ebuild                     | 53 ++++++++++++++++++++++
 4 files changed, 90 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index ca3c8caf9d8..f816ec613bd 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,3 +1,4 @@
 DIST pip-10.0.1.tar.gz 1246072 BLAKE2B e08607be43e1d7b9c7bbc12dff73bc3170953f48f8f7439a0b27b9d540f23eb3bca7873211a5f1448b5cedd6e8e12983af6fa4666bba3ac4700059d170036733 SHA512 983cce8375ff0304263209c69be16e5be7a58af340b8c3ffddd64fcea130b2f8f8a98305ab31e9c3eed9a0d039c73777c88bde3bf2ea1e184fa3e0a2faa97fd4
+DIST pip-19.1.tar.gz 1334822 BLAKE2B afc2163c65a5ae181ffcf06f5fd8f321cff7c480d7cfac913b2f883c36840e79232f2a139f05659fc5bb583b8a35bdda583d22db152c8b8290c9e8c66e89dfaf SHA512 b10f6a8e0cc71b4987657acb90e677217a485f3605cca3ac9fe946102a8b6e07346d69952469db264e9aa7753015695818f107e361beab8a9fd0fbd5410900df
 DIST pip-7.1.2.tar.gz 1049170 BLAKE2B 1461abba4cb80a9a4e806675ca2d996dedeeb8fb38f05b618f98f400475405da018ea6e75663c21b7b7eb5091408d602a3127afeea9a4bd29f075e5eb8042ad0 SHA512 78082afe6b559bf87f91ae9b6d304cfbfce00206e09be42fdae9d449a55cd8d968df6873e834191d0b0e6baae29e72eb3eee42386ff7c5dc9c29b6c28b754449
 DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25

diff --git a/dev-python/pip/files/pip-19.1-disable-system-install.patch b/dev-python/pip/files/pip-19.1-disable-system-install.patch
new file mode 100644
index 00000000000..bc88ef715a2
--- /dev/null
+++ b/dev-python/pip/files/pip-19.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 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-19.1-disable-version-check.patch b/dev-python/pip/files/pip-19.1-disable-version-check.patch
new file mode 100644
index 00000000000..a46a47f0fc6
--- /dev/null
+++ b/dev-python/pip/files/pip-19.1-disable-version-check.patch
@@ -0,0 +1,19 @@
+Don't check for new versions of pip.
+
+--- pip-19.1/src/pip/_internal/cli/base_command.py
++++ pip-19.1/src/pip/_internal/cli/base_command.py
+@@ -213,12 +213,8 @@ class Command(object):
+ 
+             return UNKNOWN_ERROR
+         finally:
+-            allow_version_check = (
+-                # Does this command have the index_group options?
+-                hasattr(options, "no_index") and
+-                # Is this command allowed to perform this check?
+-                not (options.disable_pip_version_check or options.no_index)
+-            )
++            # Disabled on Gentoo
++            allow_version_check = False
+             # Check if we're using the latest version of pip available
+             if allow_version_check:
+                 session = self._build_session(

diff --git a/dev-python/pip/pip-19.1.ebuild b/dev-python/pip/pip-19.1.ebuild
new file mode 100644
index 00000000000..f549d358e60
--- /dev/null
+++ b/dev-python/pip/pip-19.1.ebuild
@@ -0,0 +1,53 @@
+# 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 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-fbsd ~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}-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
+}
+
+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/, dev-python/pip/files/
@ 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:     5f2e46d039297e9f87ced2545b19d8161e3ab89e
Author:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 21 20:56:25 2019 +0000
Commit:     Maxim Koltsov <maksbotan <AT> gentoo <DOT> org>
CommitDate: Tue Oct 22 20:37:55 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f2e46d0

dev-python/pip: bump to 19.3.1

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

 dev-python/pip/Manifest                            |   3 +
 .../pip/files/pip-19.3-disable-version-check.patch |  24 +++++
 dev-python/pip/pip-19.3.1.ebuild                   | 119 +++++++++++++++++++++
 3 files changed, 146 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index cf37dbb3c4e..f28dd709937 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,6 +1,9 @@
 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
+DIST setuptools-41.4.0-py2.py3-none-any.whl 580302 BLAKE2B 58dc2d48445406f7467bfb0934dc507e8a569e4759bfcc95287cfb21b5b1a7bcab061656a29a8b4976ee3ae12a3adca570035ae4a6d9df09ae7a799857775d36 SHA512 a27b38d596931dfef81d705d05689b7748ce0e02d21af4a37204fc74b0913fa7241b8135535eb7749f09af361cad90c475af98493fef11c4ad974780ee01243d
 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

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
new file mode 100644
index 00000000000..e8fe868431d
--- /dev/null
+++ b/dev-python/pip/files/pip-19.3-disable-version-check.patch
@@ -0,0 +1,24 @@
+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/pip-19.3.1.ebuild b/dev-python/pip/pip-19.3.1.ebuild
new file mode 100644
index 00000000000..a188c772c1b
--- /dev/null
+++ b/dev-python/pip/pip-19.3.1.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.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 \
+			-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/, dev-python/pip/files/
@ 2019-12-06  1:30 Patrick McLean
  0 siblings, 0 replies; 18+ messages in thread
From: Patrick McLean @ 2019-12-06  1:30 UTC (permalink / raw
  To: gentoo-commits

commit:     5ff17cb62ba846de4753fb77f91f9567080673cf
Author:     Patrick McLean <patrick.mclean <AT> sony <DOT> com>
AuthorDate: Fri Dec  6 01:29:58 2019 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Fri Dec  6 01:29:58 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ff17cb6

dev-python/pip-19.3.1-r2: Some cleanups, add py38

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

 .../pip/files/pip-19.3.1-network-tests.patch       |  66 ++++++++++
 .../pip-19.3.1-r2-disable-system-install.patch     |  17 +++
 dev-python/pip/pip-19.3.1-r2.ebuild                | 133 +++++++++++++++++++++
 3 files changed, 216 insertions(+)

diff --git a/dev-python/pip/files/pip-19.3.1-network-tests.patch b/dev-python/pip/files/pip-19.3.1-network-tests.patch
new file mode 100644
index 00000000000..f194a7b34a9
--- /dev/null
+++ b/dev-python/pip/files/pip-19.3.1-network-tests.patch
@@ -0,0 +1,66 @@
+diff --git a/news/7359.trivial b/news/7359.trivial
+new file mode 100644
+index 000000000..e69de29bb
+diff --git a/tests/functional/test_freeze.py b/tests/functional/test_freeze.py
+index d13c931d0..2e35de3e6 100644
+--- a/tests/functional/test_freeze.py
++++ b/tests/functional/test_freeze.py
+@@ -721,6 +721,7 @@ def test_freeze_user(script, virtualenv, data):
+     assert 'simple2' not in result.stdout
+
+
++@pytest.mark.network
+ def test_freeze_path(tmpdir, script, data):
+     """
+     Test freeze with --path.
+@@ -734,5 +735,6 @@ def test_freeze_path(tmpdir, script, data):
+     _check_output(result.stdout, expected)
+
+
++@pytest.mark.network
+ def test_freeze_path_exclude_user(tmpdir, script, data):
+     """
+@@ -756,6 +758,7 @@ def test_freeze_path_exclude_user(tmpdir, script, data):
+     _check_output(result.stdout, expected)
+
+
++@pytest.mark.network
+ def test_freeze_path_multiple(tmpdir, script, data):
+     """
+     Test freeze with multiple --path arguments.
+diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py
+index a9eff081d..ba7a0a55c 100644
+--- a/tests/functional/test_install.py
++++ b/tests/functional/test_install.py
+@@ -1325,6 +1325,7 @@ def test_install_no_binary_disables_building_wheels(script, data, with_wheel):
+     assert "Running setup.py install for upper" in str(res), str(res)
+
+
++@pytest.mark.network
+ def test_install_no_binary_builds_pep_517_wheel(script, data, with_wheel):
+     to_install = data.packages.joinpath('pep517_setup_and_pyproject')
+     res = script.pip(
+diff --git a/tests/functional/test_install_config.py b/tests/functional/test_install_config.py
+index 176976c4e..308263928 100644
+--- a/tests/functional/test_install_config.py
++++ b/tests/functional/test_install_config.py
+@@ -133,6 +133,7 @@ def test_command_line_appends_correctly(script, data):
+     ), 'stdout: {}'.format(result.stdout)
+
+
++@pytest.mark.network
+ def test_config_file_override_stack(script, virtualenv):
+     """
+     Test config files (global, overriding a global config with a
+diff --git a/tests/functional/test_install_upgrade.py b/tests/functional/test_install_upgrade.py
+index 6d2eeb5dc..0024de4d4 100644
+--- a/tests/functional/test_install_upgrade.py
++++ b/tests/functional/test_install_upgrade.py
+@@ -8,6 +8,7 @@
+ from tests.lib.local_repos import local_checkout
+
+
++@pytest.mark.network
+ def test_no_upgrade_unless_requested(script):
+     """
+     No upgrade if not specifically requested.

diff --git a/dev-python/pip/files/pip-19.3.1-r2-disable-system-install.patch b/dev-python/pip/files/pip-19.3.1-r2-disable-system-install.patch
new file mode 100644
index 00000000000..8486c37f0c7
--- /dev/null
+++ b/dev-python/pip/files/pip-19.3.1-r2-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 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")
++
+         if options.build_dir:
+             options.build_dir = os.path.abspath(options.build_dir)

diff --git a/dev-python/pip/pip-19.3.1-r2.ebuild b/dev-python/pip/pip-19.3.1-r2.ebuild
new file mode 100644
index 00000000000..6e7219b27df
--- /dev/null
+++ b/dev-python/pip/pip-19.3.1-r2.ebuild
@@ -0,0 +1,133 @@
+# 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,8} 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 ~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/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/wheel[${PYTHON_USEDEP}]
+	)
+"
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
+
+		# these are from upstream git
+		"${FILESDIR}/pip-19.3.1-network-tests.patch"
+	)
+	if ! use vanilla; then
+		PATCHES+=( "${FILESDIR}/pip-19.3.1-r2-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() {
+	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/, dev-python/pip/files/
@ 2020-02-22 20:22 Andreas Sturmlechner
  0 siblings, 0 replies; 18+ messages in thread
From: Andreas Sturmlechner @ 2020-02-22 20:22 UTC (permalink / raw
  To: gentoo-commits

commit:     3809fecf9b096bc86a2a1c169d715753ecbddaf2
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 22 16:09:51 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Feb 22 20:22:16 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3809fecf

dev-python/pip: Drop 19.1

Blocks dev-python/pytest-3.10.1 cleanup.

Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-python/pip/Manifest                            |   3 -
 .../files/pip-19.1-disable-system-install.patch    |  17 ----
 .../pip/files/pip-19.1-disable-version-check.patch |  19 ----
 dev-python/pip/pip-19.1.ebuild                     | 101 ---------------------
 4 files changed, 140 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index f0487112632..c1159161faf 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,10 +1,7 @@
-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-19.1-disable-system-install.patch b/dev-python/pip/files/pip-19.1-disable-system-install.patch
deleted file mode 100644
index bc88ef715a2..00000000000
--- a/dev-python/pip/files/pip-19.1-disable-system-install.patch
+++ /dev/null
@@ -1,17 +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-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 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-19.1-disable-version-check.patch b/dev-python/pip/files/pip-19.1-disable-version-check.patch
deleted file mode 100644
index a46a47f0fc6..00000000000
--- a/dev-python/pip/files/pip-19.1-disable-version-check.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Don't check for new versions of pip.
-
---- pip-19.1/src/pip/_internal/cli/base_command.py
-+++ pip-19.1/src/pip/_internal/cli/base_command.py
-@@ -213,12 +213,8 @@ class Command(object):
- 
-             return UNKNOWN_ERROR
-         finally:
--            allow_version_check = (
--                # Does this command have the index_group options?
--                hasattr(options, "no_index") and
--                # Is this command allowed to perform this check?
--                not (options.disable_pip_version_check or options.no_index)
--            )
-+            # Disabled on Gentoo
-+            allow_version_check = False
-             # Check if we're using the latest version of pip available
-             if allow_version_check:
-                 session = self._build_session(

diff --git a/dev-python/pip/pip-19.1.ebuild b/dev-python/pip/pip-19.1.ebuild
deleted file mode 100644
index 7a298c231eb..00000000000
--- a/dev-python/pip/pip-19.1.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 python3_{6,7} pypy3 )
-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 ) !test? ( 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() {
-	# 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/, dev-python/pip/files/
@ 2020-05-28 18:35 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2020-05-28 18:35 UTC (permalink / raw
  To: gentoo-commits

commit:     41fca3b9f6fca3210cb8241009b84ea344ceb489
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu May 28 18:33:31 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu May 28 18:35:28 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41fca3b9

dev-python/pip: Backport test fix for big endian

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

 dev-python/pip/files/pip-20.1.1-test-endian.patch | 78 +++++++++++++++++++++++
 dev-python/pip/pip-20.1.1.ebuild                  |  1 +
 2 files changed, 79 insertions(+)

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
new file mode 100644
index 00000000000..b6aea145656
--- /dev/null
+++ b/dev-python/pip/files/pip-20.1.1-test-endian.patch
@@ -0,0 +1,78 @@
+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.ebuild b/dev-python/pip/pip-20.1.1.ebuild
index 2d53216220c..adcd0cbcffd 100644
--- a/dev-python/pip/pip-20.1.1.ebuild
+++ b/dev-python/pip/pip-20.1.1.ebuild
@@ -56,6 +56,7 @@ DEPEND="
 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" )


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

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

commit:     dba99a9f6104da8a3a9c5ae5dbc8770b01332c3c
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 29 05:14:10 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jul 29 08:02:55 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dba99a9f

dev-python/pip: Bump to 20.2

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

 dev-python/pip/Manifest                         |   1 +
 dev-python/pip/files/pip-20.2-no-coverage.patch | 163 ++++++++++++++++++++++++
 dev-python/pip/pip-20.2.ebuild                  | 145 +++++++++++++++++++++
 3 files changed, 309 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index f49c838f90f..b0bc2c548cb 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,6 +1,7 @@
 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-20.1.1.tar.gz 6503229 BLAKE2B 5b0409042c970ec47fa6f947b21a53aca43563a6bb442fd5f91788fa97caf7167a84b4f581de87453eb0e55657d2ccd11dca2d1815c3bfe9ef5923994306a6db SHA512 ee7b0345c08fbe0215811d07b4c57c1ceece826871842f6d1c174d82e8eee0ad810aa5413d6763ecd5a513e151792a53c36623ab99d2049555ef2542d32d1658
+DIST pip-20.2.tar.gz 8715960 BLAKE2B dbcec865314ba0b65112e42477a2c48dc9a60592a07a834d3886025489fcd8de4c83733044d1ad84dd87af084677b2f406d5d8faa301853ab844b3770be168de SHA512 77db7c618b492cbdef54ef98d4e9a94735a809148fb08ef7d065fbeaf047ced26ddc20d0395a0b2db079c66175a267fc15717a24def70392182326b2c659e6f1
 DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25
 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

diff --git a/dev-python/pip/files/pip-20.2-no-coverage.patch b/dev-python/pip/files/pip-20.2-no-coverage.patch
new file mode 100644
index 00000000000..55be5b8c971
--- /dev/null
+++ b/dev-python/pip/files/pip-20.2-no-coverage.patch
@@ -0,0 +1,163 @@
+From 43389903a55a5432ca8556f42fb2252c91c7ca45 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] Revert "Add basic test coverage configuration"
+
+This is just PITA since coverage uses native C extensions.
+---
+ .coveragerc                                |  4 +++
+ setup.cfg                                  | 38 ----------------------
+ tests/conftest.py                          | 16 +--------
+ tools/requirements/tests-common_wheels.txt |  2 --
+ tox.ini                                    | 16 ++-------
+ 5 files changed, 7 insertions(+), 69 deletions(-)
+ create mode 100644 .coveragerc
+
+diff --git a/.coveragerc b/.coveragerc
+new file mode 100644
+index 00000000..5f833c94
+--- /dev/null
++++ b/.coveragerc
+@@ -0,0 +1,4 @@
++[run]
++branch = True
++omit =
++  src/pip/_vendor/*
+diff --git a/setup.cfg b/setup.cfg
+index 45fd58a3..e40596e9 100644
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -67,44 +67,6 @@ markers =
+     yaml: yaml based tests
+     fails_on_new_resolver: Does not yet work on the new resolver
+ 
+-[coverage:run]
+-branch = True
+-# Do not gather coverage for vendored libraries.
+-omit = */_vendor/*
+-# Centralized absolute file prefix for coverage files.
+-data_file = ${COVERAGE_OUTPUT_DIR}/.coverage
+-# By default, each covered process will try to truncate and then write to
+-# `data_file`, but with `parallel`, they will write to separate files suffixed
+-# with hostname, pid, and a timestamp.
+-parallel = True
+-# If not set, then at the termination of each worker (when using pytest-xdist),
+-# the following is traced: "Coverage.py warning: Module pip was previously
+-# imported, but not measured (module-not-measured)"
+-disable_warnings = module-not-measured
+-
+-[coverage:paths]
+-# We intentionally use "source0" here because pytest-cov unconditionally sets
+-# "source" after loading the config.
+-source0 =
+-    # The primary source code path which other paths will be combined into.
+-    src/pip/
+-    # Unit test source directory e.g.
+-    # `.tox/coverage-py3/lib/pythonX.Y/site-packages/pip/...`
+-    */site-packages/pip/
+-    # Functional test virtual environment directories, which look like
+-    # `tmpdir/pip0/pip/src/pip/...`
+-    */pip/src/pip/
+-
+-[coverage:report]
+-exclude_lines =
+-    # We must re-state the default because the `exclude_lines` option overrides
+-    # it.
+-    pragma: no cover
+-    # This excludes typing-specific code, which will be validated by mypy anyway.
+-    if MYPY_CHECK_RUNNING
+-    # Can be set to exclude e.g. `if PY2:` on Python 3
+-    ${PIP_CI_COVERAGE_EXCLUDES}
+-
+ [bdist_wheel]
+ universal = 1
+ 
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 2aab5020..0db6d967 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -294,13 +294,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')
+@@ -310,7 +303,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 six.PY3 and request.config.getoption('--use-venv'):
+         venv_type = 'venv'
+@@ -334,13 +327,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 (
+diff --git a/tools/requirements/tests-common_wheels.txt b/tools/requirements/tests-common_wheels.txt
+index f0edf0b0..6703d606 100644
+--- a/tools/requirements/tests-common_wheels.txt
++++ b/tools/requirements/tests-common_wheels.txt
+@@ -7,5 +7,3 @@
+ 
+ setuptools >= 40.8.0
+ wheel
+-# As required by pytest-cov.
+-coverage >= 4.4
+diff --git a/tox.ini b/tox.ini
+index 82e9abc6..7a19ca61 100644
+--- a/tox.ini
++++ b/tox.ini
+@@ -8,7 +8,6 @@ envlist =
+ # Wrapper for calls to pip that make sure the version being used is the
+ # original virtualenv (stable) version, and not the code being tested.
+ pip = python {toxinidir}/tools/tox_pip.py
+-mkdirp = python -c 'import os, sys; os.path.exists(sys.argv[1]) or os.mkdir(sys.argv[1])'
+ 
+ [testenv]
+ # Remove USERNAME once we drop PY2.
+@@ -31,20 +30,9 @@ commands = pytest --timeout 300 []
+ install_command = {[helpers]pip} install {opts} {packages}
+ list_dependencies_command = {[helpers]pip} freeze --all
+ 
+-[testenv:coverage]
++[testenv:coverage-py3]
+ basepython = python3
+-commands =
+-    {[helpers]mkdirp} {toxinidir}/.coverage-output
+-    pytest --timeout 300 --cov=pip --cov-config={toxinidir}/setup.cfg []
+-
+-setenv =
+-    # Used in coverage configuration in setup.cfg.
+-    COVERAGE_OUTPUT_DIR = {toxinidir}/.coverage-output
+-    # Ensure coverage is enabled in child processes in virtual environments
+-    # since they won't already have been enabled by pytest-cov.
+-    COVERAGE_PROCESS_START = {toxinidir}/setup.cfg
+-    # Used in coverage configuration in setup.cfg.
+-    PIP_CI_COVERAGE_EXCLUDES = if PY2
++commands = pytest --timeout 300 --cov=pip --cov-report=term-missing --cov-report=xml --cov-report=html tests/unit {posargs}
+ 
+ [testenv:docs]
+ # Don't skip install here since pip_sphinxext uses pip's internals.
+-- 
+2.28.0
+

diff --git a/dev-python/pip/pip-20.2.ebuild b/dev-python/pip/pip-20.2.ebuild
new file mode 100644
index 00000000000..8da2d952643
--- /dev/null
+++ b/dev-python/pip/pip-20.2.ebuild
@@ -0,0 +1,145 @@
+# 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,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_gen_cond_dep 'dev-python/enum34[${PYTHON_USEDEP}]' -2)
+	)
+"
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
+		"${FILESDIR}/${PN}-20.2-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
+
+	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/, dev-python/pip/files/
@ 2020-07-29  8:03 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2020-07-29  8:03 UTC (permalink / raw
  To: gentoo-commits

commit:     9422b5b7314708d4c3d73e90bea5a3af95bb7dcc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 29 07:56:25 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jul 29 08:02:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9422b5b7

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   4 -
 .../pip/files/pip-19.3.1-network-tests.patch       |  66 ----------
 .../pip-19.3.1-r2-disable-system-install.patch     |  17 ---
 .../files/pip-9.0.1-disable-version-check.patch    |  32 -----
 .../pip/files/pip-disable-system-install.patch     |  29 -----
 dev-python/pip/pip-19.3.1-r2.ebuild                | 138 ---------------------
 dev-python/pip/pip-9.0.1-r2.ebuild                 |  84 -------------
 7 files changed, 370 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index b0bc2c548cb..fb76bf56219 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,9 +1,5 @@
-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-20.1.1.tar.gz 6503229 BLAKE2B 5b0409042c970ec47fa6f947b21a53aca43563a6bb442fd5f91788fa97caf7167a84b4f581de87453eb0e55657d2ccd11dca2d1815c3bfe9ef5923994306a6db SHA512 ee7b0345c08fbe0215811d07b4c57c1ceece826871842f6d1c174d82e8eee0ad810aa5413d6763ecd5a513e151792a53c36623ab99d2049555ef2542d32d1658
 DIST pip-20.2.tar.gz 8715960 BLAKE2B dbcec865314ba0b65112e42477a2c48dc9a60592a07a834d3886025489fcd8de4c83733044d1ad84dd87af084677b2f406d5d8faa301853ab844b3770be168de SHA512 77db7c618b492cbdef54ef98d4e9a94735a809148fb08ef7d065fbeaf047ced26ddc20d0395a0b2db079c66175a267fc15717a24def70392182326b2c659e6f1
-DIST pip-9.0.1.tar.gz 1197370 BLAKE2B 3618161690d5e0a38d141f9b51baea4aaa3fdc225664ef180bbeecf6e2df95e9ea4f97c63fe3a68f84f4fb5ebcc74e316827253c7e07b03565e58113bbaa918a SHA512 ee59efb4b009ff6543b7afdea99b9cbbee1981ecc03af586acda76674024d3b66dab23049e68f3da9448734984619fc1eaba6e965c9dd3d731973376c8a42e25
-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.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-19.3.1-network-tests.patch b/dev-python/pip/files/pip-19.3.1-network-tests.patch
deleted file mode 100644
index f194a7b34a9..00000000000
--- a/dev-python/pip/files/pip-19.3.1-network-tests.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-diff --git a/news/7359.trivial b/news/7359.trivial
-new file mode 100644
-index 000000000..e69de29bb
-diff --git a/tests/functional/test_freeze.py b/tests/functional/test_freeze.py
-index d13c931d0..2e35de3e6 100644
---- a/tests/functional/test_freeze.py
-+++ b/tests/functional/test_freeze.py
-@@ -721,6 +721,7 @@ def test_freeze_user(script, virtualenv, data):
-     assert 'simple2' not in result.stdout
-
-
-+@pytest.mark.network
- def test_freeze_path(tmpdir, script, data):
-     """
-     Test freeze with --path.
-@@ -734,5 +735,6 @@ def test_freeze_path(tmpdir, script, data):
-     _check_output(result.stdout, expected)
-
-
-+@pytest.mark.network
- def test_freeze_path_exclude_user(tmpdir, script, data):
-     """
-@@ -756,6 +758,7 @@ def test_freeze_path_exclude_user(tmpdir, script, data):
-     _check_output(result.stdout, expected)
-
-
-+@pytest.mark.network
- def test_freeze_path_multiple(tmpdir, script, data):
-     """
-     Test freeze with multiple --path arguments.
-diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py
-index a9eff081d..ba7a0a55c 100644
---- a/tests/functional/test_install.py
-+++ b/tests/functional/test_install.py
-@@ -1325,6 +1325,7 @@ def test_install_no_binary_disables_building_wheels(script, data, with_wheel):
-     assert "Running setup.py install for upper" in str(res), str(res)
-
-
-+@pytest.mark.network
- def test_install_no_binary_builds_pep_517_wheel(script, data, with_wheel):
-     to_install = data.packages.joinpath('pep517_setup_and_pyproject')
-     res = script.pip(
-diff --git a/tests/functional/test_install_config.py b/tests/functional/test_install_config.py
-index 176976c4e..308263928 100644
---- a/tests/functional/test_install_config.py
-+++ b/tests/functional/test_install_config.py
-@@ -133,6 +133,7 @@ def test_command_line_appends_correctly(script, data):
-     ), 'stdout: {}'.format(result.stdout)
-
-
-+@pytest.mark.network
- def test_config_file_override_stack(script, virtualenv):
-     """
-     Test config files (global, overriding a global config with a
-diff --git a/tests/functional/test_install_upgrade.py b/tests/functional/test_install_upgrade.py
-index 6d2eeb5dc..0024de4d4 100644
---- a/tests/functional/test_install_upgrade.py
-+++ b/tests/functional/test_install_upgrade.py
-@@ -8,6 +8,7 @@
- from tests.lib.local_repos import local_checkout
-
-
-+@pytest.mark.network
- def test_no_upgrade_unless_requested(script):
-     """
-     No upgrade if not specifically requested.

diff --git a/dev-python/pip/files/pip-19.3.1-r2-disable-system-install.patch b/dev-python/pip/files/pip-19.3.1-r2-disable-system-install.patch
deleted file mode 100644
index 8486c37f0c7..00000000000
--- a/dev-python/pip/files/pip-19.3.1-r2-disable-system-install.patch
+++ /dev/null
@@ -1,17 +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-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 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")
-+
-         if options.build_dir:
-             options.build_dir = os.path.abspath(options.build_dir)

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
deleted file mode 100644
index 7334380c1e1..00000000000
--- a/dev-python/pip/files/pip-9.0.1-disable-version-check.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-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/files/pip-disable-system-install.patch b/dev-python/pip/files/pip-disable-system-install.patch
deleted file mode 100644
index 9e572454315..00000000000
--- a/dev-python/pip/files/pip-disable-system-install.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-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-19.3.1-r2.ebuild b/dev-python/pip/pip-19.3.1-r2.ebuild
deleted file mode 100644
index 17ca2852b9e..00000000000
--- a/dev-python/pip/pip-19.3.1-r2.ebuild
+++ /dev/null
@@ -1,138 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python2_7 python3_{6,7,8} pypy3 )
-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 arm64 ~hppa ~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/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/wheel[${PYTHON_USEDEP}]
-	)
-"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-19.3-disable-version-check.patch"
-
-		# these are from upstream git
-		"${FILESDIR}/pip-19.3.1-network-tests.patch"
-		"${FILESDIR}/${PN}-20.1.1-test-endian.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-19.3.1-r2-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
-}

diff --git a/dev-python/pip/pip-9.0.1-r2.ebuild b/dev-python/pip/pip-9.0.1-r2.ebuild
deleted file mode 100644
index 792b91c4cef..00000000000
--- a/dev-python/pip/pip-9.0.1-r2.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 python3_6 pypy3 )
-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.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 sparc x86 ~amd64-linux ~x86-linux"
-SLOT="0"
-
-IUSE="-vanilla"
-
-# 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}"
-
-python_prepare_all() {
-	local PATCHES=(
-		"${FILESDIR}/${PN}-9.0.1-disable-version-check.patch"
-	)
-	if ! use vanilla; then
-		PATCHES+=( "${FILESDIR}/pip-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
-}


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

* [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/, dev-python/pip/files/
@ 2021-04-25 10:36 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-04-25 10:36 UTC (permalink / raw
  To: gentoo-commits

commit:     25ced6fcac89fb582d8e6a193f4d118b833417f0
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 25 07:15:53 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Apr 25 10:36:37 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25ced6fc

dev-python/pip: Bump to 21.1

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

 dev-python/pip/Manifest                         |   2 +
 dev-python/pip/files/pip-21.1-no-coverage.patch |  51 ++++++++++
 dev-python/pip/pip-21.1.ebuild                  | 120 ++++++++++++++++++++++++
 3 files changed, 173 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index b77435b773a..8cba56a7e4a 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,3 +1,5 @@
 DIST pip-21.0.1.tar.gz 8772082 BLAKE2B 2fdd78e2db8ceda2bd21fdeb4d29c0c2eda412827b87cc97ec1996a5b71b9c6e5938c0a6ef696163780bbbc55d81b8b3b1b6e2e79b05fbe9ce4bdd52e3ebdf13 SHA512 2db5397f4ca3a3f56f5add3f827bf1f0a4296019703438d68498266b9d2559b6baa3132061c5ad4c2a08bec6e76a2768763fdca02d86cf32aadd4640afbf3664
+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-21.1-no-coverage.patch b/dev-python/pip/files/pip-21.1-no-coverage.patch
new file mode 100644
index 00000000000..5f9c836d32e
--- /dev/null
+++ b/dev-python/pip/files/pip-21.1-no-coverage.patch
@@ -0,0 +1,51 @@
+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.1.ebuild b/dev-python/pip/pip-21.1.ebuild
new file mode 100644
index 00000000000..f6ec7e81791
--- /dev/null
+++ b/dev-python/pip/pip-21.1.ebuild
@@ -0,0 +1,120 @@
+# 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/, dev-python/pip/files/
@ 2021-06-09 20:17 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-06-09 20:17 UTC (permalink / raw
  To: gentoo-commits

commit:     c9ec7571f9abe6d942eec8c3899e7c099cb9b74f
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Jun  9 18:19:43 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Jun  9 20:17:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9ec7571

dev-python/pip: Use local virtualenv-16 for testing

Fetch and use a local copy of virtualenv-16 instead of using the system
package.  This removes the for upgrade to virtualenv-20, and it should
make maintenance much less painful.

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

 dev-python/pip/Manifest                            |   1 +
 .../pip/files/virtualenv-16.7.10-py310.patch       |  84 +++++++++++++
 dev-python/pip/pip-21.1.2-r1.ebuild                | 133 +++++++++++++++++++++
 3 files changed, 218 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index d25199fe58c..e47711af1e9 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,5 @@
 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 setuptools-56.0.0-py3-none-any.whl 784941 BLAKE2B 136352bcaeeb803f94983db2e0f9ec79dacc23a6742a2f6f1b4bdd2b29a104f4965d78f9b4adf1a501c7bf39d4ed85a6786b03489f90872661afbf5e674fd3f9 SHA512 32405236e9c2936cde137bc4d4d07b548391336ce0511cd5677dcd1f85c7a142b0947e03cdceaeb37067874f5aa71daacaa1a6af95ae9fe3ad8af264f61e10f4
+DIST virtualenv-16.7.10.tar.gz 5116776 BLAKE2B 42f0a4b4330850b504f8febd991ef6ecdcbb0821efdd94ca324a8cc34a68a760a8a98de97f0cb2384d8e6cbb0ce8f261995c6433886444e29b75ba0ce09ca12c SHA512 f06d7c354ce1910f04dbcbe1a77e60392653bbe4f638bafbe9284454db2c0e5d63cf9159201d0916fc01aaba91d45fb733b63096c38517fcd83fd00ed8b26d28
 DIST wheel-0.36.2-py2.py3-none-any.whl 35046 BLAKE2B bc4e8dab7c74eea34d3b4a813b7eaf6295a99a396a861b6cdd76f743043e89140bad132bdd13e385e8945ce02e0798e1d3ac73fc1b23bde5b2a83e4bb4dd5cdc SHA512 6bb5119b4d3704fe1e3c1eaaa3124edab13f61b46f8a0a8e75974fac4e5b25d8b53606071a03a8d8990ad1cfe2ab247ddea260098df2c0c35ae965be47080284

diff --git a/dev-python/pip/files/virtualenv-16.7.10-py310.patch b/dev-python/pip/files/virtualenv-16.7.10-py310.patch
new file mode 100644
index 00000000000..27c17a07445
--- /dev/null
+++ b/dev-python/pip/files/virtualenv-16.7.10-py310.patch
@@ -0,0 +1,84 @@
+From b4aef0a53ba63c34e45413754705af4e438ef5df Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
+Date: Wed, 5 May 2021 10:59:02 +0200
+Subject: [PATCH] Legacy: Use sysconfig.get_default_scheme() where available
+ (#2109)
+
+---
+ .pre-commit-config.yaml      | 43 ------------------------------------
+ docs/changelog/2109.misc.rst |  1 +
+ virtualenv.py                |  3 ++-
+ 3 files changed, 3 insertions(+), 44 deletions(-)
+ delete mode 100644 .pre-commit-config.yaml
+ create mode 100644 docs/changelog/2109.misc.rst
+
+diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
+deleted file mode 100644
+index 0b8234b7d..000000000
+--- a/.pre-commit-config.yaml
++++ /dev/null
+@@ -1,43 +0,0 @@
+-repos:
+--   repo: https://github.com/ambv/black
+-    rev: 19.10b0
+-    hooks:
+-    -   id: black
+-        args: [--safe]
+-        language_version: python3.8
+--   repo: https://github.com/asottile/blacken-docs
+-    rev: v1.3.0
+-    hooks:
+-    -   id: blacken-docs
+-        additional_dependencies: [black==19.3b0]
+-        language_version: python3.8
+--   repo: https://github.com/asottile/seed-isort-config
+-    rev: v1.9.3
+-    hooks:
+-    -   id: seed-isort-config
+-        args: [--application-directories, '.']
+--   repo: https://github.com/pre-commit/mirrors-isort
+-    rev: v4.3.21
+-    hooks:
+-    -   id: isort
+--   repo: https://github.com/pre-commit/pre-commit-hooks
+-    rev: v2.4.0
+-    hooks:
+-    -   id: trailing-whitespace
+-    -   id: end-of-file-fixer
+-    -   id: check-yaml
+-    -   id: debug-statements
+-    -   id: check-merge-conflict
+-    -   id: trailing-whitespace
+-    -   id: check-docstring-first
+-    -   id: flake8
+-        additional_dependencies: ["flake8-bugbear == 19.8.0"]
+-        language_version: python3.8
+--   repo: https://github.com/asottile/pyupgrade
+-    rev: v1.25.1
+-    hooks:
+-    -   id: pyupgrade
+--   repo: https://github.com/pre-commit/pygrep-hooks
+-    rev: v1.4.2
+-    hooks:
+-    -   id: rst-backticks
+diff --git a/docs/changelog/2109.misc.rst b/docs/changelog/2109.misc.rst
+new file mode 100644
+index 000000000..985f955df
+--- /dev/null
++++ b/docs/changelog/2109.misc.rst
+@@ -0,0 +1 @@
++Preserve compatibility with Python 3.10 - by ``hroncok``
+diff --git a/virtualenv.py b/virtualenv.py
+index 3085d1d18..86aa65674 100755
+--- a/virtualenv.py
++++ b/virtualenv.py
+@@ -1809,7 +1809,8 @@ def fix_local_scheme(home_dir, symlink=True):
+         pass
+     else:
+         # noinspection PyProtectedMember
+-        if sysconfig._get_default_scheme() == "posix_local":
++        get_scheme = getattr(sysconfig, "get_default_scheme", None) or sysconfig._get_default_scheme
++        if get_scheme() == "posix_local":
+             local_path = os.path.join(home_dir, "local")
+             if not os.path.exists(local_path):
+                 os.mkdir(local_path)

diff --git a/dev-python/pip/pip-21.1.2-r1.ebuild b/dev-python/pip/pip-21.1.2-r1.ebuild
new file mode 100644
index 00000000000..69f4adb26c5
--- /dev/null
+++ b/dev-python/pip/pip-21.1.2-r1.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+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-56.0.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.10
+
+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 ~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
+
+		pushd "${WORKDIR}/virtualenv-${VENV_PV}" 2>/dev/null || die
+		eapply "${FILESDIR}/virtualenv-${VENV_PV}-py310.patch"
+		popd 2>/dev/null || 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}" 2>/dev/null || die
+	distutils_install_for_testing
+	popd 2>/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/, dev-python/pip/files/
@ 2021-08-01  8:17 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-08-01  8:17 UTC (permalink / raw
  To: gentoo-commits

commit:     3078d53d27bdcfac204e1450f00ab5b885e43273
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Aug  1 06:45:56 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Aug  1 08:14:52 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3078d53d

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   3 -
 .../pip/files/virtualenv-16.7.10-py310.patch       |  84 -------------
 dev-python/pip/pip-21.1.2-r1.ebuild                | 133 ---------------------
 3 files changed, 220 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index b92f07f57c9..d9a8e6a2972 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,8 +1,5 @@
-DIST pip-21.1.2.tar.gz 8772481 BLAKE2B 23dbcc5dd7e7f66934282b9c93958267eb367d418b6c814032b7b89e0d94c73c143626781b8df081394019d2e575030b7a2fd61bb5221992ce2060cf069e8b04 SHA512 54a2b6074fcb2640868dedcabb5087b79a53a8ad57ec4ab5acf2862b8037403d8f156c2853ab60c2f10c6af999a0a90774f0bc3eca2978a82590935d37af167f
 DIST pip-21.1.3.tar.gz 8772944 BLAKE2B 4c50fcb7c05e05d11b137d08547d9d55f19687442b8d44caf05d19917b200bcf860032cb28745e41d51afda80a7ac09d60afb8d619ade5b965ed87bac1133006 SHA512 21bdc78f24751981ae49c9fda0430fc92b8d33eb7a546bc344e8cea4aa85dcd42191ef8eb3fdfb4f3d1cb5921698f819d73e6e190d8745cf7ddfa52732d95999
 DIST pip-21.2.1.tar.gz 8781474 BLAKE2B 6a6a4972de31cea2f9ee2d70df00acec65efe344fa13e56ecf9b2f55125baa2effb30bf25c7649f5f30b2ecf9b5ebb7d32dc0f2dfa101444510c8573bd0c60be SHA512 2fff39703eb387ded66552ee62c2b3e4d18da6e8a904399919a5c51f65ddf1695ad410408fe5370877a1ce9992e7c07e091a1852dfb136ce5580e31fc1c03b81
-DIST setuptools-56.0.0-py3-none-any.whl 784941 BLAKE2B 136352bcaeeb803f94983db2e0f9ec79dacc23a6742a2f6f1b4bdd2b29a104f4965d78f9b4adf1a501c7bf39d4ed85a6786b03489f90872661afbf5e674fd3f9 SHA512 32405236e9c2936cde137bc4d4d07b548391336ce0511cd5677dcd1f85c7a142b0947e03cdceaeb37067874f5aa71daacaa1a6af95ae9fe3ad8af264f61e10f4
 DIST setuptools-57.4.0-py3-none-any.whl 819017 BLAKE2B afba86cf9aeea58ee869fdc11bbb192abbf2f89710e468b90dc291fec228ca16202483e36195a5ad4e2b8d210326bc83e2be6ec696ab413d94ffaeb05bb9c030 SHA512 9bf230f4e0e72acab07ab372a6ca05adb3d175a8079d2f73d327c632f3d27b8ee10442d3e60f4c94a6e61d5ba2212fc78187ca6e1717e15bb570bdce4263fd0b
-DIST virtualenv-16.7.10.tar.gz 5116776 BLAKE2B 42f0a4b4330850b504f8febd991ef6ecdcbb0821efdd94ca324a8cc34a68a760a8a98de97f0cb2384d8e6cbb0ce8f261995c6433886444e29b75ba0ce09ca12c SHA512 f06d7c354ce1910f04dbcbe1a77e60392653bbe4f638bafbe9284454db2c0e5d63cf9159201d0916fc01aaba91d45fb733b63096c38517fcd83fd00ed8b26d28
 DIST virtualenv-16.7.11.tar.gz 8134533 BLAKE2B ea81e11c210d911bf9576edf7b1754721b270adcc5d9633415d33b8f659149d64932fe2d366200121ec00c266c25dae380e248add438fc357477114eba4dfb4e SHA512 82d0d2a964508511e8e1686703581ff543f65791dc2449d9741d46ea57c4c89673947d2477ba374176f05fcea2a5ca572aa650c61c4f3271c4d73d1ff9d9ff42
 DIST wheel-0.36.2-py2.py3-none-any.whl 35046 BLAKE2B bc4e8dab7c74eea34d3b4a813b7eaf6295a99a396a861b6cdd76f743043e89140bad132bdd13e385e8945ce02e0798e1d3ac73fc1b23bde5b2a83e4bb4dd5cdc SHA512 6bb5119b4d3704fe1e3c1eaaa3124edab13f61b46f8a0a8e75974fac4e5b25d8b53606071a03a8d8990ad1cfe2ab247ddea260098df2c0c35ae965be47080284

diff --git a/dev-python/pip/files/virtualenv-16.7.10-py310.patch b/dev-python/pip/files/virtualenv-16.7.10-py310.patch
deleted file mode 100644
index 27c17a07445..00000000000
--- a/dev-python/pip/files/virtualenv-16.7.10-py310.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From b4aef0a53ba63c34e45413754705af4e438ef5df Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
-Date: Wed, 5 May 2021 10:59:02 +0200
-Subject: [PATCH] Legacy: Use sysconfig.get_default_scheme() where available
- (#2109)
-
----
- .pre-commit-config.yaml      | 43 ------------------------------------
- docs/changelog/2109.misc.rst |  1 +
- virtualenv.py                |  3 ++-
- 3 files changed, 3 insertions(+), 44 deletions(-)
- delete mode 100644 .pre-commit-config.yaml
- create mode 100644 docs/changelog/2109.misc.rst
-
-diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
-deleted file mode 100644
-index 0b8234b7d..000000000
---- a/.pre-commit-config.yaml
-+++ /dev/null
-@@ -1,43 +0,0 @@
--repos:
---   repo: https://github.com/ambv/black
--    rev: 19.10b0
--    hooks:
--    -   id: black
--        args: [--safe]
--        language_version: python3.8
---   repo: https://github.com/asottile/blacken-docs
--    rev: v1.3.0
--    hooks:
--    -   id: blacken-docs
--        additional_dependencies: [black==19.3b0]
--        language_version: python3.8
---   repo: https://github.com/asottile/seed-isort-config
--    rev: v1.9.3
--    hooks:
--    -   id: seed-isort-config
--        args: [--application-directories, '.']
---   repo: https://github.com/pre-commit/mirrors-isort
--    rev: v4.3.21
--    hooks:
--    -   id: isort
---   repo: https://github.com/pre-commit/pre-commit-hooks
--    rev: v2.4.0
--    hooks:
--    -   id: trailing-whitespace
--    -   id: end-of-file-fixer
--    -   id: check-yaml
--    -   id: debug-statements
--    -   id: check-merge-conflict
--    -   id: trailing-whitespace
--    -   id: check-docstring-first
--    -   id: flake8
--        additional_dependencies: ["flake8-bugbear == 19.8.0"]
--        language_version: python3.8
---   repo: https://github.com/asottile/pyupgrade
--    rev: v1.25.1
--    hooks:
--    -   id: pyupgrade
---   repo: https://github.com/pre-commit/pygrep-hooks
--    rev: v1.4.2
--    hooks:
--    -   id: rst-backticks
-diff --git a/docs/changelog/2109.misc.rst b/docs/changelog/2109.misc.rst
-new file mode 100644
-index 000000000..985f955df
---- /dev/null
-+++ b/docs/changelog/2109.misc.rst
-@@ -0,0 +1 @@
-+Preserve compatibility with Python 3.10 - by ``hroncok``
-diff --git a/virtualenv.py b/virtualenv.py
-index 3085d1d18..86aa65674 100755
---- a/virtualenv.py
-+++ b/virtualenv.py
-@@ -1809,7 +1809,8 @@ def fix_local_scheme(home_dir, symlink=True):
-         pass
-     else:
-         # noinspection PyProtectedMember
--        if sysconfig._get_default_scheme() == "posix_local":
-+        get_scheme = getattr(sysconfig, "get_default_scheme", None) or sysconfig._get_default_scheme
-+        if get_scheme() == "posix_local":
-             local_path = os.path.join(home_dir, "local")
-             if not os.path.exists(local_path):
-                 os.mkdir(local_path)

diff --git a/dev-python/pip/pip-21.1.2-r1.ebuild b/dev-python/pip/pip-21.1.2-r1.ebuild
deleted file mode 100644
index b1ccca2fad0..00000000000
--- a/dev-python/pip/pip-21.1.2-r1.ebuild
+++ /dev/null
@@ -1,133 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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-56.0.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.10
-
-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 ~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
-
-		pushd "${WORKDIR}/virtualenv-${VENV_PV}" >/dev/null || die
-		eapply "${FILESDIR}/virtualenv-${VENV_PV}-py310.patch"
-		popd >/dev/null || 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/, dev-python/pip/files/
@ 2021-10-23  8:44 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2021-10-23  8:44 UTC (permalink / raw
  To: gentoo-commits

commit:     a68b1c8148accfca11d7e5b88b78b00c75faece4
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 23 06:12:43 2021 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Oct 23 08:44:03 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a68b1c81

dev-python/pip: Bump to 21.3.1

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

 dev-python/pip/Manifest                         |   1 +
 dev-python/pip/files/pip-21.3-no-coverage.patch |  52 ++++++++++
 dev-python/pip/pip-21.3.1.ebuild                | 131 ++++++++++++++++++++++++
 3 files changed, 184 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 70c1ac6a904..e64327676d1 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,5 @@
 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
 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
new file mode 100644
index 00000000000..8292f97f948
--- /dev/null
+++ b/dev-python/pip/files/pip-21.3-no-coverage.patch
@@ -0,0 +1,52 @@
+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/pip-21.3.1.ebuild b/dev-python/pip/pip-21.3.1.ebuild
new file mode 100644
index 00000000000..f29173c5943
--- /dev/null
+++ b/dev-python/pip/pip-21.3.1.ebuild
@@ -0,0 +1,131 @@
+# 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.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 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 ]] && 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/, dev-python/pip/files/
@ 2022-05-22  7:13 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2022-05-22  7:13 UTC (permalink / raw
  To: gentoo-commits

commit:     fbc47eb5c52af7266959cf190b759ad0db20cd3a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun May 22 05:40:48 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun May 22 07:13:48 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbc47eb5

dev-python/pip: Bump to 22.1.1

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

 dev-python/pip/Manifest                            |   2 +
 .../pip/files/pip-22.1.1-test-version-check.patch  |  30 +++++
 dev-python/pip/pip-22.1.1.ebuild                   | 130 +++++++++++++++++++++
 3 files changed, 162 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index edb1fd4d31f6..9e0d2bdafb02 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,6 +1,8 @@
 DIST pip-22.0.4.tar.gz 9325766 BLAKE2B 9ce5a25e6fb9aedc39e2cddab2a8af3b47dbaaaf8bd22c39f8301b784e6e9f5434f63d5ef467f4d819b15bcd5cf8d3da52db34b3514c7b4a15823f77cb47e1c1 SHA512 af6d1787b4fe97f2eec9c2e3e3f0f756efca8cb83f6ecdae797986fb6050ee60d872a8a8eb7502a32c4334fc0c7af8cf3c58ce980407d0e9f89eec28a4290093
+DIST pip-22.1.1.tar.gz 9346893 BLAKE2B 2ecf113b644536c125150584ad3e05382c8cc3fa291bb227b7457a203222676721dfe6ba3d5bcde9a2d901ba11c674f0f49c14387023594ea2f0248e688224d8 SHA512 3f67171848c4b1282e3abb3a55b1e3d1bdd87e418c535298c8d91ec12d59da271182d7d45f07d080b46a27d9f53c0180ebbfe9379cc640a21f2ec9dd60b06e3e
 DIST setuptools-57.4.0-py3-none-any.whl 819017 BLAKE2B afba86cf9aeea58ee869fdc11bbb192abbf2f89710e468b90dc291fec228ca16202483e36195a5ad4e2b8d210326bc83e2be6ec696ab413d94ffaeb05bb9c030 SHA512 9bf230f4e0e72acab07ab372a6ca05adb3d175a8079d2f73d327c632f3d27b8ee10442d3e60f4c94a6e61d5ba2212fc78187ca6e1717e15bb570bdce4263fd0b
 DIST setuptools-62.2.0-py3-none-any.whl 1143965 BLAKE2B 42bf650892d2e5810f18f8002fc6318b5abf890d04b2a3050784b93da88d806af5118eee65ed89b06e1cb908e4c7f6aa50222fba4b8617ab36923cfb624528ae SHA512 496593580b5537fb142bc775d060d01ef3c9069fc06564b5e9cb8e2a56e8f264c1dc7438d38a17f8b7e20d509a6b4f62cdfaf290c4ed82e071a1cc10a297b8b8
+DIST setuptools-62.3.2-py3-none-any.whl 1225929 BLAKE2B 608952e201f749ebf557e3962ba9856d5bdcbc534f3a25598cab0d6c53282cfb3b9f007ba135497a8addf49db4c02bc4387c486d95a4529d01ce4114154ec28a SHA512 366d69dc44e326dd7549cdacd8dec481a14dce4feef4338adc38b9de5c4c338f04d61696e13ce8603be1315f2e8734100f92d3fe4b4b11843e19f550c9631978
 DIST virtualenv-16.7.11.tar.gz 8134533 BLAKE2B ea81e11c210d911bf9576edf7b1754721b270adcc5d9633415d33b8f659149d64932fe2d366200121ec00c266c25dae380e248add438fc357477114eba4dfb4e SHA512 82d0d2a964508511e8e1686703581ff543f65791dc2449d9741d46ea57c4c89673947d2477ba374176f05fcea2a5ca572aa650c61c4f3271c4d73d1ff9d9ff42
 DIST virtualenv-16.7.12.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-22.1.1-test-version-check.patch b/dev-python/pip/files/pip-22.1.1-test-version-check.patch
new file mode 100644
index 000000000000..b3160b1ccad2
--- /dev/null
+++ b/dev-python/pip/files/pip-22.1.1-test-version-check.patch
@@ -0,0 +1,30 @@
+From 345c475efe2dee94ee327d99f729c8274b1f6047 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sun, 22 May 2022 08:40:32 +0200
+Subject: [PATCH] Pass --disable-pip-version-check in tests
+
+Pass `--disable-pip-version-check` when running pip from the test suite.
+In the best case, these checks are unnecessary and in the worst, they
+cause tests to fail by emitting warnings.
+
+Fixes https://github.com/pypa/pip/issues/11114
+---
+ tests/lib/__init__.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/lib/__init__.py b/tests/lib/__init__.py
+index c8d68fea9..d64cf1d53 100644
+--- a/tests/lib/__init__.py
++++ b/tests/lib/__init__.py
+@@ -682,7 +682,7 @@ class PipTestEnvironment(TestFileEnvironment):
+             kwargs["allow_stderr_warning"] = True
+         if use_module:
+             exe = "python"
+-            args = ("-m", "pip") + args
++            args = ("-m", "pip", "--disable-pip-version-check") + args
+         else:
+             exe = "pip"
+         return self.run(exe, *args, **kwargs)
+-- 
+2.35.1
+

diff --git a/dev-python/pip/pip-22.1.1.ebuild b/dev-python/pip/pip-22.1.1.ebuild
new file mode 100644
index 000000000000..69eda74f4025
--- /dev/null
+++ b/dev-python/pip/pip-22.1.1.ebuild
@@ -0,0 +1,130 @@
+# 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}.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 ~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-21.3-no-coverage.patch"
+		"${FILESDIR}/pip-22.1.1-test-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_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
+	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/, dev-python/pip/files/
@ 2022-06-12 14:25 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2022-06-12 14:25 UTC (permalink / raw
  To: gentoo-commits

commit:     d8b6df7bb7c19ec0fffc92f33cf148e805b2afca
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 12 14:20:18 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Jun 12 14:20:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d8b6df7b

dev-python/pip: Remove old

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

 dev-python/pip/Manifest                            |   5 -
 .../pip/files/pip-22.1.1-test-version-check.patch  |  30 -----
 dev-python/pip/pip-22.0.4-r1.ebuild                | 128 ------------------
 dev-python/pip/pip-22.0.4.ebuild                   | 145 ---------------------
 dev-python/pip/pip-22.1.1.ebuild                   | 130 ------------------
 5 files changed, 438 deletions(-)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index dd69099730ad..3bae51442e9f 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,9 +1,4 @@
-DIST pip-22.0.4.tar.gz 9325766 BLAKE2B 9ce5a25e6fb9aedc39e2cddab2a8af3b47dbaaaf8bd22c39f8301b784e6e9f5434f63d5ef467f4d819b15bcd5cf8d3da52db34b3514c7b4a15823f77cb47e1c1 SHA512 af6d1787b4fe97f2eec9c2e3e3f0f756efca8cb83f6ecdae797986fb6050ee60d872a8a8eb7502a32c4334fc0c7af8cf3c58ce980407d0e9f89eec28a4290093
-DIST pip-22.1.1.tar.gz 9346893 BLAKE2B 2ecf113b644536c125150584ad3e05382c8cc3fa291bb227b7457a203222676721dfe6ba3d5bcde9a2d901ba11c674f0f49c14387023594ea2f0248e688224d8 SHA512 3f67171848c4b1282e3abb3a55b1e3d1bdd87e418c535298c8d91ec12d59da271182d7d45f07d080b46a27d9f53c0180ebbfe9379cc640a21f2ec9dd60b06e3e
 DIST pip-22.1.2.gh.tar.gz 9346675 BLAKE2B f709f8977d467d5a3170884bb75cd2f74a2f40801ae02a3725d442e18e4073f9c4a39cd1c9d2ce3949eb888be69d151f67d0cf2d0cbad7e2ec1ec6e78150b5c7 SHA512 7dd13150023f1cca8f5e01da7688ae418b5d0b36364efcfc15374a5147c7cabd46ff1d34e6499bc8e182dc0d34a366f5fe21d8ab4de4d112d269a97200401305
-DIST setuptools-57.4.0-py3-none-any.whl 819017 BLAKE2B afba86cf9aeea58ee869fdc11bbb192abbf2f89710e468b90dc291fec228ca16202483e36195a5ad4e2b8d210326bc83e2be6ec696ab413d94ffaeb05bb9c030 SHA512 9bf230f4e0e72acab07ab372a6ca05adb3d175a8079d2f73d327c632f3d27b8ee10442d3e60f4c94a6e61d5ba2212fc78187ca6e1717e15bb570bdce4263fd0b
-DIST setuptools-62.2.0-py3-none-any.whl 1143965 BLAKE2B 42bf650892d2e5810f18f8002fc6318b5abf890d04b2a3050784b93da88d806af5118eee65ed89b06e1cb908e4c7f6aa50222fba4b8617ab36923cfb624528ae SHA512 496593580b5537fb142bc775d060d01ef3c9069fc06564b5e9cb8e2a56e8f264c1dc7438d38a17f8b7e20d509a6b4f62cdfaf290c4ed82e071a1cc10a297b8b8
 DIST setuptools-62.3.2-py3-none-any.whl 1225929 BLAKE2B 608952e201f749ebf557e3962ba9856d5bdcbc534f3a25598cab0d6c53282cfb3b9f007ba135497a8addf49db4c02bc4387c486d95a4529d01ce4114154ec28a SHA512 366d69dc44e326dd7549cdacd8dec481a14dce4feef4338adc38b9de5c4c338f04d61696e13ce8603be1315f2e8734100f92d3fe4b4b11843e19f550c9631978
-DIST virtualenv-16.7.11.tar.gz 8134533 BLAKE2B ea81e11c210d911bf9576edf7b1754721b270adcc5d9633415d33b8f659149d64932fe2d366200121ec00c266c25dae380e248add438fc357477114eba4dfb4e SHA512 82d0d2a964508511e8e1686703581ff543f65791dc2449d9741d46ea57c4c89673947d2477ba374176f05fcea2a5ca572aa650c61c4f3271c4d73d1ff9d9ff42
 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-22.1.1-test-version-check.patch b/dev-python/pip/files/pip-22.1.1-test-version-check.patch
deleted file mode 100644
index b3160b1ccad2..000000000000
--- a/dev-python/pip/files/pip-22.1.1-test-version-check.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 345c475efe2dee94ee327d99f729c8274b1f6047 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Sun, 22 May 2022 08:40:32 +0200
-Subject: [PATCH] Pass --disable-pip-version-check in tests
-
-Pass `--disable-pip-version-check` when running pip from the test suite.
-In the best case, these checks are unnecessary and in the worst, they
-cause tests to fail by emitting warnings.
-
-Fixes https://github.com/pypa/pip/issues/11114
----
- tests/lib/__init__.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/lib/__init__.py b/tests/lib/__init__.py
-index c8d68fea9..d64cf1d53 100644
---- a/tests/lib/__init__.py
-+++ b/tests/lib/__init__.py
-@@ -682,7 +682,7 @@ class PipTestEnvironment(TestFileEnvironment):
-             kwargs["allow_stderr_warning"] = True
-         if use_module:
-             exe = "python"
--            args = ("-m", "pip") + args
-+            args = ("-m", "pip", "--disable-pip-version-check") + args
-         else:
-             exe = "pip"
-         return self.run(exe, *args, **kwargs)
--- 
-2.35.1
-

diff --git a/dev-python/pip/pip-22.0.4-r1.ebuild b/dev-python/pip/pip-22.0.4-r1.ebuild
deleted file mode 100644
index 0d8929566407..000000000000
--- a/dev-python/pip/pip-22.0.4-r1.ebuild
+++ /dev/null
@@ -1,128 +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_COMPAT=( python3_{8..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.2.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.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}.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}]
-			) ) )
-		' python3_{8..10})
-	)
-"
-
-distutils_enable_tests pytest
-
-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_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}" python3.{8..10} ]]; 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
-	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.0.4.ebuild b/dev-python/pip/pip-22.0.4.ebuild
deleted file mode 100644
index 44134252dbde..000000000000
--- a/dev-python/pip/pip-22.0.4.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 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 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.1.1.ebuild b/dev-python/pip/pip-22.1.1.ebuild
deleted file mode 100644
index e2310a5a0555..000000000000
--- a/dev-python/pip/pip-22.1.1.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}.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-21.3-no-coverage.patch"
-		"${FILESDIR}/pip-22.1.1-test-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_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
-	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/, dev-python/pip/files/
@ 2022-07-21 20:17 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2022-07-21 20:17 UTC (permalink / raw
  To: gentoo-commits

commit:     5654e58a6f91d33c53ab390ad9bf5b17a722f23a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 21 16:50:34 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jul 21 20:17:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5654e58a

dev-python/pip: Bump to 22.2

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

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

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 3bae51442e9f..bd7ad8308546 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.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-22.2-no-coverage.patch b/dev-python/pip/files/pip-22.2-no-coverage.patch
new file mode 100644
index 000000000000..20a5fa4beabf
--- /dev/null
+++ b/dev-python/pip/files/pip-22.2-no-coverage.patch
@@ -0,0 +1,52 @@
+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.2.ebuild b/dev-python/pip/pip-22.2.ebuild
new file mode 100644
index 000000000000..aca0d2742dac
--- /dev/null
+++ b/dev-python/pip/pip-22.2.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-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/, dev-python/pip/files/
@ 2023-04-15 19:39 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2023-04-15 19:39 UTC (permalink / raw
  To: gentoo-commits

commit:     d94e0d51a0dd0e6026856b427a18c42e77bb722e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 15 18:20:35 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Apr 15 19:39:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d94e0d51

dev-python/pip: Bump to 23.1

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

 dev-python/pip/Manifest                         |   1 +
 dev-python/pip/files/pip-23.1-no-coverage.patch |  52 ++++++++++
 dev-python/pip/pip-23.1.ebuild                  | 127 ++++++++++++++++++++++++
 3 files changed, 180 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 33889215186a..7fd30d2f03f7 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,5 +1,6 @@
 DIST pip-22.3.1.gh.tar.gz 9326504 BLAKE2B b125599a9f77e49414dae13ca3fe0ac27c9b7e127f6ca7f467f3af4e0b51d835f2790f8311b2ec616966c299fb431403b456f7b38ea1f3fe1e7f769f7d5a78e5 SHA512 c7865c4ce79b0fea7ba469fe593af3be205b3bdb574a6ae019842e0f82a0af406ec905d8c6ff02fbbafe01630c8899a398d071ce74501ca830249160f2f6df98
 DIST pip-23.0.1.gh.tar.gz 9336422 BLAKE2B 1781b0340ba7f76299fa8e37f0509f15a08cc599d196c74b90a2cb79321de570240ed9f12bc64d45ede2182ec8a3eead44ce1b840eaa83931d089ecc07923203 SHA512 ed14ce37293e749b4fd93d7f93d81356c77428b1fb14dfd760b59aea720ebb3cce5a49c2d32ab600e73b37389937830ff4dee04750e83078c8ab9d57513f294c
+DIST pip-23.1.gh.tar.gz 9346045 BLAKE2B 2d4e0dcfa730fe68b6b73d87fb3706a5c68f8eb497fe84c15a8a4ed5aa436a5ef07949d3c3d1393aa836bc8d2f67dbfad25609f807519a3d36b3aed34aff4756 SHA512 ba1417811d69462b1e858d6a431abdafdf66a217f9fb25ad9c8430b3ea5289c631a282f3c399f607539d2ce9e2a71b556926f6ebf30be18d86ccda192afe0dfb
 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-23.1-no-coverage.patch b/dev-python/pip/files/pip-23.1-no-coverage.patch
new file mode 100644
index 000000000000..943cc281cdfb
--- /dev/null
+++ b/dev-python/pip/files/pip-23.1-no-coverage.patch
@@ -0,0 +1,52 @@
+From d915b0eec7b5844c06b5d8853544c8c5b538b0b9 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 57dd7e68a..af2af9ffa 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -408,13 +408,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:
+@@ -430,7 +423,6 @@ def virtualenv_template(
+     pip_src: Path,
+     setuptools_install: Path,
+     wheel_install: Path,
+-    coverage_install: Path,
+ ) -> Iterator[VirtualEnvironment]:
+     venv_type: VirtualEnvironmentType
+     if request.config.getoption("--use-venv"):
+@@ -457,13 +449,6 @@ def virtualenv_template(
+         [os.fspath(venv.bin / "python"), "setup.py", "-q", "develop"], cwd=pip_editable
+     )
+ 
+-    # 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.40.0
+

diff --git a/dev-python/pip/pip-23.1.ebuild b/dev-python/pip/pip-23.1.ebuild
new file mode 100644
index 000000000000..a54946d50bf3
--- /dev/null
+++ b/dev-python/pip/pip-23.1.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2023 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_{9..11} )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+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"
+	)
+
+	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
+	)
+
+	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
+	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/, dev-python/pip/files/
@ 2024-06-22 16:39 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2024-06-22 16:39 UTC (permalink / raw
  To: gentoo-commits

commit:     8e3f1d24607966e75cbecad51fdef92d4e9be4e5
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 22 16:31:27 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Jun 22 16:39:26 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e3f1d24

dev-python/pip: Bump to 24.1

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

 dev-python/pip/Manifest                          |   1 +
 dev-python/pip/files/pip-24.1-test-offline.patch |  65 +++++++++++
 dev-python/pip/pip-24.1.ebuild                   | 137 +++++++++++++++++++++++
 3 files changed, 203 insertions(+)

diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index 3116dbf3047d..2fd0cf6f1120 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1 +1,2 @@
 DIST pip-24.0.gh.tar.gz 9398156 BLAKE2B 17a7ed9e15e9b8efa0d3e3c5586dc446958b62cf9ba52155a0d1ad97a3e212ee7a08a0e88a592718fc3d542eb8f434155a75cb98d90c008904bd8f59bd2b40b6 SHA512 0c2ecb2ecde4f155c83468d35bc4f52f37efffc16821ae7c706d035e1e8cc3709b41cb10f8140ff09205e8bbdba2c76128ad76d1cbd18401328b619228e834df
+DIST pip-24.1.gh.tar.gz 9188658 BLAKE2B 4a43ff0199d811dd30461e376f655a447f3f706a48dd97fe1d0ccf630f558e72209ccd06d98949a1541cd6b2942a816db23ce8aaa7fbbf9aef429502fb91ab92 SHA512 c60ab329fe91202ff64b5f0f90209085fbf8db0f0a05f0703f952ad69e39e2e3edb5dadc006a3f317cdd4ba4fb5abe56dfbd22792249a2d139702eec272186d1

diff --git a/dev-python/pip/files/pip-24.1-test-offline.patch b/dev-python/pip/files/pip-24.1-test-offline.patch
new file mode 100644
index 000000000000..ebbf5a94a1ba
--- /dev/null
+++ b/dev-python/pip/files/pip-24.1-test-offline.patch
@@ -0,0 +1,65 @@
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 35101cef2..5934e9f95 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -395,6 +395,7 @@ def pip_editable_parts(
+             "-m",
+             "pip",
+             "install",
++            "--no-build-isolation",
+             "--target",
+             pip_self_install_path,
+             "-e",
+diff --git a/tests/functional/test_config_settings.py b/tests/functional/test_config_settings.py
+index 3f88d9c39..857722dd1 100644
+--- a/tests/functional/test_config_settings.py
++++ b/tests/functional/test_config_settings.py
+@@ -118,6 +118,7 @@ def test_config_settings_implies_pep517(
+     )
+     result = script.pip(
+         "wheel",
++        "--no-build-isolation",
+         "--config-settings",
+         "FOO=Hello",
+         pkg_path,
+diff --git a/tests/functional/test_install.py b/tests/functional/test_install.py
+index eaea12a16..e19446385 100644
+--- a/tests/functional/test_install.py
++++ b/tests/functional/test_install.py
+@@ -685,7 +685,7 @@ def test_link_hash_in_dep_fails_require_hashes(
+     # Build a wheel for pkga and compute its hash.
+     wheelhouse = tmp_path / "wheehouse"
+     wheelhouse.mkdir()
+-    script.pip("wheel", "--no-deps", "-w", wheelhouse, project_path)
++    script.pip("wheel", "--no-build-isolation", "--no-deps", "-w", wheelhouse, project_path)
+     digest = hashlib.sha256(
+         wheelhouse.joinpath("pkga-1.0-py3-none-any.whl").read_bytes()
+     ).hexdigest()
+@@ -903,7 +903,7 @@ def test_editable_install__local_dir_setup_requires_with_pyproject(
+         "setup(name='dummy', setup_requires=['simplewheel'])\n"
+     )
+ 
+-    script.pip("install", "--find-links", shared_data.find_links, "-e", local_dir)
++    script.pip("install", "--no-build-isolation", "--find-links", shared_data.find_links, "-e", local_dir)
+ 
+ 
+ def test_install_pre__setup_requires_with_pyproject(
+diff --git a/tests/functional/test_self_update.py b/tests/functional/test_self_update.py
+index c50755220..1331a87c3 100644
+--- a/tests/functional/test_self_update.py
++++ b/tests/functional/test_self_update.py
+@@ -11,12 +11,12 @@ def test_self_update_editable(script: Any, pip_src: Any) -> None:
+     # Step 1. Install pip as non-editable. This is expected to succeed as
+     # the existing pip in the environment is installed in editable mode, so
+     # it only places a .pth file in the environment.
+-    proc = script.pip("install", pip_src)
++    proc = script.pip("install", "--no-build-isolation", pip_src)
+     assert proc.returncode == 0
+     # Step 2. Using the pip we just installed, install pip *again*, but
+     # in editable mode. This could fail, as we'll need to uninstall the running
+     # pip in order to install the new copy, and uninstalling pip while it's
+     # running could fail. This test is specifically to ensure that doesn't
+     # happen...
+-    proc = script.pip("install", "-e", pip_src)
++    proc = script.pip("install", "--no-build-isolation", "-e", pip_src)
+     assert proc.returncode == 0

diff --git a/dev-python/pip/pip-24.1.ebuild b/dev-python/pip/pip-24.1.ebuild
new file mode 100644
index 000000000000..f755b06a67b7
--- /dev/null
+++ b/dev-python/pip/pip-24.1.ebuild
@@ -0,0 +1,137 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# please bump dev-python/ensurepip-pip along with this package!
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{10..13} )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1
+
+DESCRIPTION="The PyPA recommended tool for installing Python packages"
+HOMEPAGE="
+	https://pip.pypa.io/en/stable/
+	https://pypi.org/project/pip/
+	https://github.com/pypa/pip/
+"
+SRC_URI="
+	https://github.com/pypa/pip/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+# bundled deps
+LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+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"
+		# https://github.com/pypa/pip/issues/12786 (and more)
+		"${FILESDIR}/pip-24.1-test-offline.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
+		# Internet
+		tests/functional/test_config_settings.py::test_backend_sees_config_via_sdist
+		tests/functional/test_install.py::test_double_install_fail
+		tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+	)
+	local EPYTEST_IGNORE=(
+		# requires proxy.py
+		tests/functional/test_proxy.py
+	)
+
+	if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then
+		EPYTEST_DESELECT+=(
+			tests/functional/test_install.py::test_install_sends_client_cert
+			tests/functional/test_install_config.py::test_do_not_prompt_for_authentication
+			tests/functional/test_install_config.py::test_prompt_for_authentication
+			tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+		)
+	fi
+
+	case ${EPYTHON} in
+		python3.10)
+			EPYTEST_DESELECT+=(
+				# no clue why they fail
+				tests/unit/test_base_command.py::test_base_command_global_tempdir_cleanup
+				tests/unit/test_base_command.py::test_base_command_local_tempdir_cleanup
+				tests/unit/test_base_command.py::test_base_command_provides_tempdir_helpers
+			)
+			;;
+	esac
+
+	local -x PIP_DISABLE_PIP_VERSION_CHECK=1
+	local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+	local EPYTEST_XDIST=1
+	epytest -m "not network" -o tmp_path_retention_policy=all
+}
+
+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/, dev-python/pip/files/
@ 2024-06-23 17:33 Michał Górny
  0 siblings, 0 replies; 18+ messages in thread
From: Michał Górny @ 2024-06-23 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     b34aef88e0ead714fdde2d5192ce97f6171b9a06
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Jun 23 16:29:05 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Jun 23 17:32:55 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b34aef88

dev-python/pip: Unbundle dependencies

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

 dev-python/pip/files/pip-24.1-unbundle.patch | 193 +++++++++++++++++++++++++++
 dev-python/pip/pip-24.1-r1.ebuild            | 176 ++++++++++++++++++++++++
 2 files changed, 369 insertions(+)

diff --git a/dev-python/pip/files/pip-24.1-unbundle.patch b/dev-python/pip/files/pip-24.1-unbundle.patch
new file mode 100644
index 000000000000..676ffa36094b
--- /dev/null
+++ b/dev-python/pip/files/pip-24.1-unbundle.patch
@@ -0,0 +1,193 @@
+diff --git a/src/pip/_internal/commands/debug.py b/src/pip/_internal/commands/debug.py
+index 567ca967e..427bfcf04 100644
+--- a/src/pip/_internal/commands/debug.py
++++ b/src/pip/_internal/commands/debug.py
+@@ -6,7 +6,6 @@ from optparse import Values
+ from types import ModuleType
+ from typing import Any, Dict, List, Optional
+ 
+-import pip._vendor
+ from pip._vendor.certifi import where
+ from pip._vendor.packaging.version import parse as parse_version
+ 
+@@ -192,9 +191,7 @@ class DebugCommand(Command):
+         show_value("REQUESTS_CA_BUNDLE", os.environ.get("REQUESTS_CA_BUNDLE"))
+         show_value("CURL_CA_BUNDLE", os.environ.get("CURL_CA_BUNDLE"))
+         show_value("pip._vendor.certifi.where()", where())
+-        show_value("pip._vendor.DEBUNDLED", pip._vendor.DEBUNDLED)
+-
+-        show_vendor_versions()
++        show_value("pip._vendor.DEBUNDLED", True)
+ 
+         show_tags(options)
+ 
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 35101cef2..840663fed 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -413,6 +413,7 @@ def _common_wheel_editable_install(
+     assert len(wheel_candidates) == 1, wheel_candidates
+     install_dir = tmpdir_factory.mktemp(package) / "install"
+     lib_install_dir = install_dir / "lib"
++    return lib_install_dir
+     bin_install_dir = install_dir / "bin"
+     with WheelFile.open(wheel_candidates[0]) as source:
+         install(
+diff --git a/tests/functional/test_check.py b/tests/functional/test_check.py
+index 46ecdcc64..6507febfa 100644
+--- a/tests/functional/test_check.py
++++ b/tests/functional/test_check.py
+@@ -6,10 +6,8 @@ from tests.lib import PipTestEnvironment, create_test_package_with_setup
+ def matches_expected_lines(string: str, expected_lines: Collection[str]) -> bool:
+     # Ignore empty lines
+     output_lines = list(filter(None, string.splitlines()))
+-    # We'll match the last n lines, given n lines to match.
+-    last_few_output_lines = output_lines[-len(expected_lines) :]
+     # And order does not matter
+-    return set(last_few_output_lines) == set(expected_lines)
++    return set(expected_lines).issubset(set(output_lines))
+ 
+ 
+ def test_basic_check_clean(script: PipTestEnvironment) -> None:
+diff --git a/tests/functional/test_freeze.py b/tests/functional/test_freeze.py
+index b7af974ea..144f79483 100644
+--- a/tests/functional/test_freeze.py
++++ b/tests/functional/test_freeze.py
+@@ -80,8 +80,8 @@ def test_basic_freeze(script: PipTestEnvironment) -> None:
+     result = script.pip("freeze", expect_stderr=True)
+     expected = textwrap.dedent(
+         """\
+-        ...simple==2.0
+-        simple2==3.0...
++        ...simple==2.0...
++        ...simple2==3.0...
+         <BLANKLINE>"""
+     )
+     _check_output(result.stdout, expected)
+@@ -1014,7 +1014,7 @@ def test_freeze_skip_work_dir_pkg(script: PipTestEnvironment) -> None:
+ 
+     # Freeze should not include package simple when run from package directory
+     result = script.pip("freeze", cwd=pkg_path)
+-    assert "simple" not in result.stdout
++    assert "\nsimple==" not in result.stdout
+ 
+ 
+ def test_freeze_include_work_dir_pkg(script: PipTestEnvironment) -> None:
+diff --git a/tests/functional/test_install_check.py b/tests/functional/test_install_check.py
+index 8a8a7c93a..bbda083f7 100644
+--- a/tests/functional/test_install_check.py
++++ b/tests/functional/test_install_check.py
+@@ -57,6 +57,7 @@ def test_check_install_canonicalization(script: PipTestEnvironment) -> None:
+     )
+     assert "requires" not in result.stderr
+     assert result.returncode == 0
++    return
+ 
+     # Double check that all errors are resolved in the end
+     result = script.pip("check")
+diff --git a/tests/functional/test_list.py b/tests/functional/test_list.py
+index 5164c1d5c..ce0a81aea 100644
+--- a/tests/functional/test_list.py
++++ b/tests/functional/test_list.py
+@@ -1,5 +1,6 @@
+ import json
+ import os
++import re
+ from pathlib import Path
+ 
+ import pytest
+@@ -41,8 +42,8 @@ def test_basic_list(simple_script: PipTestEnvironment) -> None:
+ 
+     """
+     result = simple_script.pip("list")
+-    assert "simple     1.0" in result.stdout, str(result)
+-    assert "simple2    3.0" in result.stdout, str(result)
++    assert re.search(r"simple\s+1\.0", result.stdout), str(result)
++    assert re.search(r"simple2\s+3\.0", result.stdout), str(result)
+ 
+ 
+ def test_verbose_flag(simple_script: PipTestEnvironment) -> None:
+@@ -54,8 +55,8 @@ def test_verbose_flag(simple_script: PipTestEnvironment) -> None:
+     assert "Version" in result.stdout, str(result)
+     assert "Location" in result.stdout, str(result)
+     assert "Installer" in result.stdout, str(result)
+-    assert "simple     1.0" in result.stdout, str(result)
+-    assert "simple2    3.0" in result.stdout, str(result)
++    assert re.search(r"simple\s+1\.0", result.stdout), str(result)
++    assert re.search(r"simple2\s+3\.0", result.stdout), str(result)
+ 
+ 
+ def test_columns_flag(simple_script: PipTestEnvironment) -> None:
+@@ -66,8 +67,8 @@ def test_columns_flag(simple_script: PipTestEnvironment) -> None:
+     assert "Package" in result.stdout, str(result)
+     assert "Version" in result.stdout, str(result)
+     assert "simple (1.0)" not in result.stdout, str(result)
+-    assert "simple     1.0" in result.stdout, str(result)
+-    assert "simple2    3.0" in result.stdout, str(result)
++    assert re.search(r"simple\s+1\.0", result.stdout), str(result)
++    assert re.search(r"simple2\s+3\.0", result.stdout), str(result)
+ 
+ 
+ def test_format_priority(simple_script: PipTestEnvironment) -> None:
+@@ -79,16 +80,16 @@ def test_format_priority(simple_script: PipTestEnvironment) -> None:
+     )
+     assert "simple==1.0" in result.stdout, str(result)
+     assert "simple2==3.0" in result.stdout, str(result)
+-    assert "simple     1.0" not in result.stdout, str(result)
+-    assert "simple2    3.0" not in result.stdout, str(result)
++    assert not re.search(r"simple\s+1\.0", result.stdout), str(result)
++    assert not re.search(r"simple2\s+3\.0", result.stdout), str(result)
+ 
+     result = simple_script.pip("list", "--format=freeze", "--format=columns")
+     assert "Package" in result.stdout, str(result)
+     assert "Version" in result.stdout, str(result)
+     assert "simple==1.0" not in result.stdout, str(result)
+     assert "simple2==3.0" not in result.stdout, str(result)
+-    assert "simple     1.0" in result.stdout, str(result)
+-    assert "simple2    3.0" in result.stdout, str(result)
++    assert re.search(r"simple\s+1\.0", result.stdout), str(result)
++    assert re.search(r"simple2\s+3\.0", result.stdout), str(result)
+ 
+ 
+ def test_local_flag(simple_script: PipTestEnvironment) -> None:
+@@ -124,8 +125,8 @@ def test_multiple_exclude_and_normalization(
+     assert "Normalizable_Name" in result.stdout
+     assert "pip" in result.stdout
+     result = script.pip("list", "--exclude", "normalizablE-namE", "--exclude", "pIp")
+-    assert "Normalizable_Name" not in result.stdout
+-    assert "pip" not in result.stdout
++    assert "Normalizable_Name " not in result.stdout
++    assert "pip " not in result.stdout
+ 
+ 
+ @pytest.mark.network
+diff --git a/tests/lib/venv.py b/tests/lib/venv.py
+index fac54d3bd..6bfe3cfdc 100644
+--- a/tests/lib/venv.py
++++ b/tests/lib/venv.py
+@@ -9,6 +9,7 @@ import venv as _venv
+ from pathlib import Path
+ from typing import Dict, Literal, Optional, Union
+ 
++import pytest
+ import virtualenv as _virtualenv
+ 
+ VirtualEnvironmentType = Literal["virtualenv", "venv"]
+@@ -35,7 +36,7 @@ class VirtualEnvironment:
+             self._venv_type = venv_type
+         else:
+             self._venv_type = "virtualenv"
+-        self._user_site_packages = False
++        self._user_site_packages = True
+         self._template = template
+         self._sitecustomize: Optional[str] = None
+         self._update_paths()
+@@ -234,6 +235,8 @@ class VirtualEnvironment:
+ 
+     @user_site_packages.setter
+     def user_site_packages(self, value: bool) -> None:
++        if not value:
++            pytest.skip("Gentoo: skipping due to lack of system site-packages")
+         self._user_site_packages = value
+         if self._legacy_virtualenv:
+             marker = self.lib / "no-global-site-packages.txt"

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

end of thread, other threads:[~2024-06-23 17:33 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-22  7:13 [gentoo-commits] repo/gentoo:master commit in: dev-python/pip/, dev-python/pip/files/ Michał Górny
  -- strict thread matches above, loose matches on Subject: below --
2024-06-23 17:33 Michał Górny
2024-06-22 16:39 Michał Górny
2023-04-15 19:39 Michał Górny
2022-07-21 20:17 Michał Górny
2022-06-12 14:25 Michał Górny
2021-10-23  8:44 Michał Górny
2021-08-01  8:17 Michał Górny
2021-06-09 20:17 Michał Górny
2021-04-25 10:36 Michał Górny
2020-07-29  8:03 Michał Górny
2020-07-29  8:03 Michał Górny
2020-05-28 18:35 Michał Górny
2020-02-22 20:22 Andreas Sturmlechner
2019-12-06  1:30 Patrick McLean
2019-10-22 20:38 Maxim Koltsov
2019-04-28  8:15 Maxim Koltsov
2018-06-26  3:39 Tim Harder

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