dev-python/pip: Bump to 20.0.2

Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Michał Górny
2020-02-01 07:35:03 +01:00
parent aeb72c0526
commit 0ed9e986ca
3 changed files with 169 additions and 0 deletions

View File

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

View File

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

View File

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