diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-15 19:12:21 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-15 19:12:21 +0000 |
| commit | f6bcc45ab811bbc6c133a87192de845240fdfd9c (patch) | |
| tree | 2d40b5748b807e79e3247c8672686a94d5a61290 /dev-python/virtualenv | |
| parent | ef93034729ae626be7fa73289869f79c19ac7144 (diff) | |
| download | baldeagleos-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/Manifest | 2 | ||||
| -rw-r--r-- | dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch | 29 | ||||
| -rw-r--r-- | dev-python/virtualenv/virtualenv-21.2.4.ebuild | 136 |
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 +} |
