From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1684349-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id 35F3A158042
	for <garchives@archives.gentoo.org>; Tue, 29 Oct 2024 06:51:43 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id A999FE0805;
	Tue, 29 Oct 2024 06:51:41 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id 8084AE0805
	for <gentoo-commits@lists.gentoo.org>; Tue, 29 Oct 2024 06:51:41 +0000 (UTC)
Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256)
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 7651F34312C
	for <gentoo-commits@lists.gentoo.org>; Tue, 29 Oct 2024 06:51:40 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id D59B1198C
	for <gentoo-commits@lists.gentoo.org>; Tue, 29 Oct 2024 06:51:38 +0000 (UTC)
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Michał Górny" <mgorny@gentoo.org>
Message-ID: <1730184685.836cf5fb4868240d5be699f1343aae52f317f78d.mgorny@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/virtualenv/
X-VCS-Repository: repo/gentoo
X-VCS-Files: dev-python/virtualenv/Manifest dev-python/virtualenv/virtualenv-20.27.1.ebuild
X-VCS-Directories: dev-python/virtualenv/
X-VCS-Committer: mgorny
X-VCS-Committer-Name: Michał Górny
X-VCS-Revision: 836cf5fb4868240d5be699f1343aae52f317f78d
X-VCS-Branch: master
Date: Tue, 29 Oct 2024 06:51:38 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: 98bcf726-ffec-4848-88dc-bb0a7751519a
X-Archives-Hash: fa41a89a5024328d2c5fa42acf99e17f

commit:     836cf5fb4868240d5be699f1343aae52f317f78d
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 29 05:21:51 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Oct 29 06:51:25 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=836cf5fb

dev-python/virtualenv: Bump to 20.27.1

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

 dev-python/virtualenv/Manifest                  |   1 +
 dev-python/virtualenv/virtualenv-20.27.1.ebuild | 118 ++++++++++++++++++++++++
 2 files changed, 119 insertions(+)

diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index f967cb214857..70ad78e4c851 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -1,2 +1,3 @@
 DIST virtualenv-20.26.6.tar.gz 9372482 BLAKE2B 7e91c8beb59c3c3f4d538af425916abe94151efedae3f643c573f6c0dd05a37cfc42b5e61cbdb73e02fcc5adbfd34a0ffa5096790975890fe9d17f626ea5687c SHA512 9d403a835c66f9b7f733d3720f459b9450dddd5cd9a76358332da20dddd309918177d3d7782304e11f56f48755d901feb4eb9b708c3719241bf389f29bf0ba04
 DIST virtualenv-20.27.0.tar.gz 6483858 BLAKE2B 661a8e208eecb4cc27edd515c09e4541fca6a00285a7f4dcc798c37c602a505460cc53f699a33589dca2f686534bec188c48ae1001e52979febd1787760b2ef7 SHA512 1d0e1e32af8685d0e426823acaa3b73a1a8f60195a0627585b897d1c3d785b2cc67331c6e7f414589e5a61b84f6aecaffdaa4baefa51390bf23ebb3be2e2ef78
+DIST virtualenv-20.27.1.tar.gz 6491145 BLAKE2B 807f4b2f699098ef3ddff3fad6af9244f1a33468522395a1cfb4e937cdb44b83c54224c4abafb65ba00b266b68b0e91eeadef5b1c4a175dd0c3288f5ddbce073 SHA512 36a84a3ada9ac79fbd6c23f77b45742421af0fdbb6ff4a83660ca3fe0d2a9b2e34e0bb5df633362bb98fcba042fd6d7e5f82587efa124cc1d7cf076df260fea5

diff --git a/dev-python/virtualenv/virtualenv-20.27.1.ebuild b/dev-python/virtualenv/virtualenv-20.27.1.ebuild
new file mode 100644
index 000000000000..acc7255ef749
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-20.27.1.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+
+inherit distutils-r1 multiprocessing pypi
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+	https://virtualenv.pypa.io/en/stable/
+	https://pypi.org/project/virtualenv/
+	https://github.com/pypa/virtualenv/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+	>=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
+	>=dev-python/filelock-3.12.2[${PYTHON_USEDEP}]
+	>=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
+
+	dev-python/ensurepip-pip
+	dev-python/ensurepip-setuptools
+	dev-python/ensurepip-wheel
+"
+# coverage is used somehow magically in virtualenv, maybe it actually
+# tests something useful
+BDEPEND="
+	dev-python/hatch-vcs[${PYTHON_USEDEP}]
+	test? (
+		dev-python/coverage[${PYTHON_USEDEP}]
+		dev-python/flaky[${PYTHON_USEDEP}]
+		>=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
+		$(python_gen_cond_dep '
+			>=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
+		' pypy3)
+		>=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+		dev-python/pytest-xdist[${PYTHON_USEDEP}]
+		>=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
+		$(python_gen_cond_dep '
+			dev-python/time-machine[${PYTHON_USEDEP}]
+		' 'python3*')
+		dev-python/wheel[${PYTHON_USEDEP}]
+		>=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+	)
+"
+
+EPYTEST_TIMEOUT=180
+distutils_enable_tests pytest
+
+src_prepare() {
+	local PATCHES=(
+		# use wheels from ensurepip bundle
+		"${FILESDIR}/${PN}-20.26.3-ensurepip.patch"
+	)
+
+	distutils-r1_src_prepare
+
+	# workaround test failures due to warnings from setuptools-scm, sigh
+	echo '[tool.setuptools_scm]' >> pyproject.toml || die
+
+	# remove useless pins
+	sed -i -e 's:<[0-9.]*,::' pyproject.toml || die
+
+	# remove bundled wheels
+	rm src/virtualenv/seed/wheels/embed/*.whl || die
+}
+
+python_test() {
+	local EPYTEST_DESELECT=(
+		tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
+		# tests for old wheels with py3.7 support
+		tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke
+		tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support
+		# broken by different wheel versions in ensurepip
+		tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string
+		tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact
+		tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none
+		tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output
+		# hangs on a busy system, sigh
+		tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe
+	)
+	case ${EPYTHON} in
+		python3.1[23])
+			EPYTEST_DESELECT+=(
+				tests/unit/create/via_global_ref/test_build_c_ext.py
+			)
+			;&
+		python3.11)
+			EPYTEST_DESELECT+=(
+				# TODO
+				tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
+			)
+			;;
+	esac
+
+	local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+	local -x TZ=UTC
+	local plugins=( -p flaky -p pytest_mock )
+	if [[ ${EPYTHON} == pypy3 ]]; then
+		plugins+=( -p freezer )
+	else
+		plugins+=( -p time_machine )
+	fi
+	epytest "${plugins[@]}" -p xdist -n "$(makeopts_jobs)" --dist=worksteal
+}
+
+src_install() {
+	distutils-r1_src_install
+
+	# remove bundled wheels, we're using ensurepip bundle instead
+	find "${ED}" -name '*.whl' -delete || die
+}