summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlfred Wingate <parona@protonmail.com>2023-12-21 19:11:20 +0200
committerMichał Górny <mgorny@gentoo.org>2024-01-06 14:33:23 +0100
commit051d942a82fe71802ffd7ee46e09e56be3dc8c09 (patch)
treebe7a98167b9e96173efd180e7f6150bcfd772246 /dev-python/virtualenvwrapper
parentmedia-radio/flrig: Fix missing include for clang++ (diff)
downloadgentoo-051d942a82fe71802ffd7ee46e09e56be3dc8c09.tar.gz
gentoo-051d942a82fe71802ffd7ee46e09e56be3dc8c09.tar.bz2
gentoo-051d942a82fe71802ffd7ee46e09e56be3dc8c09.zip
dev-python/virtualenvwrapper: add 6.0.0
Signed-off-by: Alfred Wingate <parona@protonmail.com> Closes: https://github.com/gentoo/gentoo/pull/34398 Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/virtualenvwrapper')
-rw-r--r--dev-python/virtualenvwrapper/Manifest1
-rw-r--r--dev-python/virtualenvwrapper/files/virtualenvwrapper-6.0.0-remove-use-of-which.patch106
-rw-r--r--dev-python/virtualenvwrapper/virtualenvwrapper-6.0.0.ebuild68
3 files changed, 175 insertions, 0 deletions
diff --git a/dev-python/virtualenvwrapper/Manifest b/dev-python/virtualenvwrapper/Manifest
index 75b20e89d6cd..958144e0a848 100644
--- a/dev-python/virtualenvwrapper/Manifest
+++ b/dev-python/virtualenvwrapper/Manifest
@@ -1 +1,2 @@
DIST virtualenvwrapper-4.8.4_p20230121.gh.tar.gz 72852 BLAKE2B 2996b88f93790587ffbeed936334bb1f12a9d6d952eb7c9b728a6644c9b7c7e0953bc7c71201fbd590f6258eb163af1aa6494f476decfa54f095ca215e4e13e1 SHA512 9df8b20dd8d50fe7891b845c8112edc165b08cc231ebb4010aed8ec50a22005207a9a3c9c9941daa2b958022f0edf993425bf95692f7032d1e5c5719a552d3b4
+DIST virtualenvwrapper-6.0.0.tar.gz 95407 BLAKE2B b2a6a7a58be23e1cf0642d780d8fc53e9aef6e44703fa15a2e7627db3c3e12024b33da75b591897ea5181ed5407eb2d52e96f56d7026c083a03e13f94165d9e4 SHA512 ab805b61a9f81e0b0842182686a88fcf07e41ad7206484f002110c693ca6076e2a88fefbef8b7409838082ed7e7a43f61f1a0006a314cb1d71efb943dc6fdede
diff --git a/dev-python/virtualenvwrapper/files/virtualenvwrapper-6.0.0-remove-use-of-which.patch b/dev-python/virtualenvwrapper/files/virtualenvwrapper-6.0.0-remove-use-of-which.patch
new file mode 100644
index 000000000000..41f0dba39a1d
--- /dev/null
+++ b/dev-python/virtualenvwrapper/files/virtualenvwrapper-6.0.0-remove-use-of-which.patch
@@ -0,0 +1,106 @@
+From fb2b22fce88d323727a49c760187c0470b78fa9a Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <parona@protonmail.com>
+Date: Wed, 21 Jun 2023 11:35:04 +0300
+Subject: [PATCH] Remove use of which, use command -v or built-ins instead
+
+* which isn't a POSIX tool and some distributions have or are still
+ considering dropping it in favour of using commands included by
+ POSIX or shell built-ins.
+* Used command built-in where applicable, but type and whence for bash
+ and zsh respectively in virtualenvwrapper_verify_resource to preserve
+ previous behaviour with which when programs also have built-ins
+ with the same name. command -v outputs just the name and not the path
+ in those cases.
+
+https://lwn.net/Articles/874049/
+https://bugs.gentoo.org/646588
+
+Signed-off-by: Alfred Wingate <parona@protonmail.com>
+--- a/tests/run_tests
++++ b/tests/run_tests
+@@ -61,7 +61,7 @@ do
+ echo " SHELL=$SHELL"
+ echo " BASH_VERSION=$BASH_VERSION"
+ echo " ZSH_VERSION=$ZSH_VERSION"
+- echo " virtualenv=$(which virtualenv)"
++ echo " virtualenv=$(command -v virtualenv)"
+ echo " test_shell_opts=$test_shell_opts"
+ echo " ZSH=$ZSH_NAME $ZSH_EVAL_CONTEXT"
+ echo " TMPDIR=$TMPDIR"
+--- a/tests/setup.sh
++++ b/tests/setup.sh
+@@ -14,7 +14,7 @@ export PROJECT_HOME=$(mktemp -d -t "PROJECT_HOME.XXXX.$$")
+ SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+ # This should point to VIRTUAL_ENV/bin when running under tox.
+-TEST_BIN_DIR=$(dirname $(which python))
++TEST_BIN_DIR=$(dirname $(command -v python))
+
+ load_wrappers() {
+ if [ "$USING_TOX" = "1" ]; then
+--- a/tests/test_cp.sh
++++ b/tests/test_cp.sh
+@@ -26,7 +26,7 @@ test_new_env_activated () {
+ (cd tests/testpackage && pip install .) >/dev/null 2>&1
+ cpvirtualenv "source" "destination" >/dev/null 2>&1
+ rmvirtualenv "source" >/dev/null 2>&1
+- testscript="$(which testscript.py)"
++ testscript="$(command -v testscript.py)"
+ assertTrue "Environment test script not found in path" "[ $WORKON_HOME/destination/bin/testscript.py -ef $testscript ]"
+ testscriptcontent="$(cat $testscript)"
+ assertTrue "No cpvirtualenvtest in $testscriptcontent" "echo $testscriptcontent | grep cpvirtualenvtest"
+--- a/tests/test_mkvirtualenv.sh
++++ b/tests/test_mkvirtualenv.sh
+@@ -68,11 +68,9 @@ GLOBAL postmkvirtualenv"
+ }
+
+ test_no_virtualenv () {
+- # Find "which" before we change the path
+- which=$(which which)
+ old_path="$PATH"
+ PATH="/bin:/usr/sbin:/sbin"
+- venv=$($which virtualenv 2>/dev/null)
++ venv=$(command -v virtualenv)
+ if [ ! -z "$venv" ]
+ then
+ echo "FOUND \"$venv\" in PATH so skipping this test"
+--- a/virtualenvwrapper.sh
++++ b/virtualenvwrapper.sh
+@@ -47,7 +47,7 @@
+ # Locate the global Python where virtualenvwrapper is installed.
+ if [ "${VIRTUALENVWRAPPER_PYTHON:-}" = "" ]
+ then
+- _virtualenvwrapper_python_executable="$(which python3 2>/dev/null)"
++ _virtualenvwrapper_python_executable="$(command -v python3)"
+ if [ -n "$_virtualenvwrapper_python_executable" ] && $_virtualenvwrapper_python_executable -m 'virtualenvwrapper.hook_loader' --help >/dev/null 2>&1
+ then
+ VIRTUALENVWRAPPER_PYTHON=$_virtualenvwrapper_python_executable
+@@ -326,7 +326,13 @@ function virtualenvwrapper_initialize {
+
+ # Verify that the passed resource is in path and exists
+ function virtualenvwrapper_verify_resource {
+- typeset exe_path="$(command \which "$1" | (unset GREP_OPTIONS; command \grep -v "not found"))"
++ if [ -n "${ZSH_VERSION}" ]
++ then
++ typeset exe_path="$(whence -p "${1}")"
++ else
++ typeset exe_path="$(type -P "${1}")"
++ fi
++
+ if [ "$exe_path" = "" ]
+ then
+ echo "ERROR: virtualenvwrapper could not find $1 in your path" >&2
+--- a/virtualenvwrapper_lazy.sh
++++ b/virtualenvwrapper_lazy.sh
+@@ -5,7 +5,7 @@ export _VIRTUALENVWRAPPER_API="$_VIRTUALENVWRAPPER_API mkvirtualenv rmvirtualenv
+
+ if [ -z "$VIRTUALENVWRAPPER_SCRIPT" ]
+ then
+- export VIRTUALENVWRAPPER_SCRIPT="$(command \which virtualenvwrapper.sh)"
++ export VIRTUALENVWRAPPER_SCRIPT="$(command -v virtualenvwrapper.sh)"
+ fi
+ if [ -z "$VIRTUALENVWRAPPER_SCRIPT" ]
+ then
+--
+2.43.0
+
diff --git a/dev-python/virtualenvwrapper/virtualenvwrapper-6.0.0.ebuild b/dev-python/virtualenvwrapper/virtualenvwrapper-6.0.0.ebuild
new file mode 100644
index 000000000000..707aaaa201d9
--- /dev/null
+++ b/dev-python/virtualenvwrapper/virtualenvwrapper-6.0.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Set of extensions to Ian Bicking's virtualenv tool"
+HOMEPAGE="
+ https://github.com/python-virtualenvwrapper/virtualenvwrapper/
+ https://pypi.org/project/virtualenvwrapper/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/stevedore[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ dev-python/virtualenv-clone[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ ')
+ test? (
+ ${RDEPEND}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/virtualenvwrapper-6.0.0-remove-use-of-which.patch"
+ "${FILESDIR}/virtualenvwrapper-4.8.4_p20230121-override-default-python-executable.patch"
+)
+
+src_prepare() {
+ default
+
+ # specify default python interpeter to align with PYTHON_SINGLE_TARGET
+ sed -i -e "s:@@GENTOO_PYTHON_EXECUTABLE@@:${PYTHON}:" virtualenvwrapper.sh || die
+
+ # remove tests which require an internet connection
+ rm tests/test_mkvirtualenv_install.sh || die
+ rm tests/test_mkvirtualenv_requirements.sh || die
+
+ # remove tests which require functional git repos with remotes
+ sed -i -e '/test_wipeenv_\(pip_e\|develop\) () {/,/}/ d' tests/test_wipeenv.sh || die
+}
+
+python_test() {
+ # tests have unusual expectations
+ local -x HOME="${HOME%/}"
+ local -x USER="${USER}"
+
+ cp -a "${BUILD_DIR}"/{install/usr,test} || die
+ local -x VIRTUAL_ENV="${BUILD_DIR}/test"
+
+ bash ./tests/run_tests "${VIRTUAL_ENV}" || die "Tests failed under ${EPYTHON}"
+}