commit:     a2bb848624a43983625ed0c45730b1fff6918bcc
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 27 12:36:55 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 27 12:50:27 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2bb8486

dev-python/pipx: Enable pypy3 & py3.13

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

 dev-python/pipx/pipx-1.7.1.ebuild | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/dev-python/pipx/pipx-1.7.1.ebuild 
b/dev-python/pipx/pipx-1.7.1.ebuild
index 3dab14fc5594..a1eb2f8338c6 100644
--- a/dev-python/pipx/pipx-1.7.1.ebuild
+++ b/dev-python/pipx/pipx-1.7.1.ebuild
@@ -4,7 +4,7 @@
 EAPI=8
 
 DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
 
 inherit distutils-r1 pypi
 
@@ -65,13 +65,8 @@ src_prepare() {
                cp -vs "${DISTDIR}"/pip-24.0-py3-none-any.whl \
                        "${WORKDIR}/${TEST_SHIM}/" || die
                mkdir -p .pipx_tests/package_cache || die
-               local v
-               for v in 3.{10..12}; do
-                       ln -s "${WORKDIR}/${TEST_SHIM}" \
-                               ".pipx_tests/package_cache/${v}" || die
-               done
 
-               : > scripts/update_package_cache.py || die
+               > scripts/update_package_cache.py || die
                # sigh
                sed -e 's:server = str.*:server = "pypi-server":' \
                        -i tests/conftest.py || die
@@ -80,6 +75,19 @@ src_prepare() {
        distutils-r1_src_prepare
 }
 
+python_configure() {
+       local v=$(
+               "${EPYTHON}" - <<-EOF
+                       import sys
+                       print(".".join(str(x) for x in sys.version_info[:2]))
+               EOF
+       )
+       if [[ ! -e .pipx_tests/package_cache/${v} ]]; then
+               ln -s "${WORKDIR}/${TEST_SHIM}" \
+                       ".pipx_tests/package_cache/${v}" || die
+       fi
+}
+
 python_test() {
        local EPYTEST_DESELECT=(
                # Internet

Reply via email to