summaryrefslogtreecommitdiff
path: root/dev-python/virtualenv
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-04-15 19:12:21 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-04-15 19:12:21 +0000
commitf6bcc45ab811bbc6c133a87192de845240fdfd9c (patch)
tree2d40b5748b807e79e3247c8672686a94d5a61290 /dev-python/virtualenv
parentef93034729ae626be7fa73289869f79c19ac7144 (diff)
downloadbaldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.tar.gz
baldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.tar.xz
baldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.zip
Adding metadata
Diffstat (limited to 'dev-python/virtualenv')
-rw-r--r--dev-python/virtualenv/Manifest2
-rw-r--r--dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch29
-rw-r--r--dev-python/virtualenv/virtualenv-21.2.4.ebuild136
3 files changed, 167 insertions, 0 deletions
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index 380a91753707..daf32be26b69 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -6,3 +6,5 @@ DIST virtualenv-21.2.1.tar.gz 5844770 BLAKE2B e14ffb6c788e953df7eacc158743b63f72
DIST virtualenv-21.2.1.tar.gz.provenance 9437 BLAKE2B e87594c8c4aeda80f392b9b53cf9a93c677695eb15e2dc277a680c7f3dcc34559c3ed0116df154d4a19c6cdd17e03d2003959e07adf9997699de037c87742358 SHA512 ab36e476fa751846c2e05800709b1eccd57695f3ab38d6dcc1b063af499c34ac157121a9d517664922231b0d89c9efd39bf2b0f8404790eb3b01be9d7cb2bee2
DIST virtualenv-21.2.3.tar.gz 5844776 BLAKE2B 8c12e28a929b8694bbde3357dd6fb6fad1e052f5ff8d1b6bbb21e9effebf0b96cfc9cfe82b28fc21b3c04fb58b141c7bc03c4175d4567d70a27029b66f1e2902 SHA512 82a99787aabd0d9aab0793347f9fdc25ad171debedfc876bd1212850ba6ebe92a9c87920fadb88a966128b43883c0dcec25f04ea17466a5872535854cfb57b4f
DIST virtualenv-21.2.3.tar.gz.provenance 9480 BLAKE2B cc5c9dc8549d6eaf41a2723f7b692cd4305d2663d235128db867b656e8c95dea898a967d814df12639892c75b9ee84b37146cda1f32dd4b9edb9dce7d463f4c6 SHA512 e7524e1d9edc505fe11f437e1a71e6d52e7540e5dd7188d642493aaa9d26256b28c3e565a9dd39b5e0f5bdf0b7bbffa90029d587b29f6a4e5bc40ccb4c2a12fd
+DIST virtualenv-21.2.4.tar.gz 5850742 BLAKE2B 1aa6aee759d79e1d108d8564f1a797daf67d078a8ceb6ce3fa706788a3c1eaa8a8ee590320dc3de404061024e80ccc1925df94ed18b7998133c37237096725af SHA512 59cd373c7b149ab83609f2a331fb6ffa95792647d939d129b661cb12aa02686e1b789ccdf2ecf9ab959e3645c42df303ddb5a277e0600b156f6567f797fc49ff
+DIST virtualenv-21.2.4.tar.gz.provenance 9343 BLAKE2B 5458056abadcd9cf65f307c82460dab3501e38a9f4d688a0dd3c718e9b3aa401357fd45a1b679cacca9675fd501ba115d2fda76929bfe753ba644f4d1eb24571 SHA512 dc4ad98f34b6e4f15943ec3a8bc07d0335d60943cacb7f1ed08f6a5c0ee34c115c304ffb34a2fd89c19f3d1c59db9f3ee24e3c6a39d7c90f8e251f60d4d7bcb8
diff --git a/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch b/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch
new file mode 100644
index 000000000000..1447766cc15b
--- /dev/null
+++ b/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch
@@ -0,0 +1,29 @@
+From 4c59dc5ea8a90d93cd0fb68cebd742dd40d16710 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 22 Jun 2024 14:28:23 +0200
+Subject: [PATCH] [Gentoo] Use ensurepip wheels instead of local bundle
+
+---
+ src/virtualenv/seed/wheels/embed/__init__.py | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/src/virtualenv/seed/wheels/embed/__init__.py b/src/virtualenv/seed/wheels/embed/__init__.py
+index df58d6d0..e1b40d1e 100644
+--- a/src/virtualenv/seed/wheels/embed/__init__.py
++++ b/src/virtualenv/seed/wheels/embed/__init__.py
+@@ -70,6 +70,15 @@ def get_embed_wheel(distribution: str, for_py_version: str) -> Wheel | None:
+ :raises RuntimeError: if the bundled wheel on disk fails SHA-256 verification.
+
+ """
++
++ # Gentoo hack: get wheel from ensurepip directory
++ import sysconfig
++ bundle_dir = Path(sysconfig.get_config_var("WHEEL_PKG_DIR"))
++ try:
++ return Wheel.from_path(next(bundle_dir.glob(f"{distribution}-*.whl")))
++ except StopIteration:
++ return None
++
+ mapping = BUNDLE_SUPPORT.get(for_py_version, {}) or BUNDLE_SUPPORT[MAX]
+ wheel_file = mapping.get(distribution)
+ if wheel_file is None:
diff --git a/dev-python/virtualenv/virtualenv-21.2.4.ebuild b/dev-python/virtualenv/virtualenv-21.2.4.ebuild
new file mode 100644
index 000000000000..585a76648569
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-21.2.4.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/pypa/virtualenv
+PYTHON_TESTED=( python3_{11..14} pypy3_11 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+
+inherit distutils-r1 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 ~riscv ~s390 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.24.2[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
+ >=dev-python/python-discovery-1.2.2[${PYTHON_USEDEP}]
+
+ dev-python/ensurepip-pip
+ >=dev-python/ensurepip-setuptools-70.1
+ 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? (
+ ${RDEPEND}
+ $(python_gen_cond_dep '
+ dev-python/coverage[${PYTHON_USEDEP}]
+ >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' python3_{11..14})
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
+ ' 'pypy3*')
+ )
+"
+
+src_prepare() {
+ local PATCHES=(
+ # use wheels from ensurepip bundle
+ "${FILESDIR}/${PN}-21.2.4-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() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping testing on ${EPYTHON}"
+ return
+ fi
+
+ 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
+ # TODO
+ tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions
+ # random resource leaks or xdist
+ tests/unit/test_file_limit.py::test_too_many_open_files
+ # Internet
+ tests/unit/create/test_creator.py::test_create_distutils_cfg
+ # we do not use bundled wheels
+ tests/unit/seed/wheels/test_bundle.py::test_every_wheel_on_disk_has_sha256
+ )
+ case ${EPYTHON} in
+ pypy3.11)
+ EPYTEST_DESELECT+=(
+ # these don't like the executable called pypy3.11?
+ tests/unit/activation/test_bash.py::test_bash
+ tests/unit/activation/test_fish.py::test_fish
+ tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
+ )
+ ;;
+ esac
+
+ local -x TZ=UTC
+ local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} )
+ if [[ ${EPYTHON} == pypy3* ]]; then
+ EPYTEST_PLUGINS+=( pytest-freezer )
+ else
+ EPYTEST_PLUGINS+=( time-machine )
+ fi
+ local EPYTEST_RERUNS=5
+ local EPYTEST_TIMEOUT=180
+ local EPYTEST_XDIST=1
+ epytest -o addopts=
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ # remove bundled wheels, we're using ensurepip bundle instead
+ find "${ED}" -name '*.whl' -delete || die
+}