summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-05-09 09:38:04 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-05-09 09:38:04 +0000
commit11c57b2987e06bf35a84672a4e560212fc363804 (patch)
treee1860cb34d71b1ed7fedeb81e996044324acf10c /dev-python
parent49d6eff372ef65c2d900b06355a7169f8c771c6a (diff)
downloadbaldeagleos-repo-11c57b2987e06bf35a84672a4e560212fc363804.tar.gz
baldeagleos-repo-11c57b2987e06bf35a84672a4e560212fc363804.tar.xz
baldeagleos-repo-11c57b2987e06bf35a84672a4e560212fc363804.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiohttp/aiohttp-3.13.5.ebuild4
-rw-r--r--dev-python/appdirs/appdirs-1.4.4-r3.ebuild2
-rw-r--r--dev-python/asyncssh/Manifest1
-rw-r--r--dev-python/asyncssh/asyncssh-2.23.0.ebuild50
-rw-r--r--dev-python/distlib/distlib-0.4.0-r1.ebuild60
-rw-r--r--dev-python/distlib/files/distlib-0.4.0-py315.patch51
-rw-r--r--dev-python/execnet/execnet-2.1.2.ebuild4
-rw-r--r--dev-python/gpep517/gpep517-19.ebuild2
-rw-r--r--dev-python/hatch-fancy-pypi-readme/hatch-fancy-pypi-readme-25.1.0.ebuild3
-rw-r--r--dev-python/hatch-vcs/hatch-vcs-0.5.0.ebuild3
-rw-r--r--dev-python/hypothesis-gentoo/hypothesis-gentoo-4.ebuild2
-rw-r--r--dev-python/hypothesis/hypothesis-6.151.14.ebuild2
-rw-r--r--dev-python/hypothesis/hypothesis-6.151.9.ebuild2
-rw-r--r--dev-python/hypothesis/hypothesis-6.152.4.ebuild11
-rw-r--r--dev-python/iniconfig/iniconfig-2.3.0.ebuild2
-rw-r--r--dev-python/inline-snapshot/inline-snapshot-0.32.7.ebuild5
-rw-r--r--dev-python/installer/installer-0.7.0.ebuild3
-rw-r--r--dev-python/jaraco-classes/jaraco-classes-3.4.0.ebuild3
-rw-r--r--dev-python/jaraco-collections/jaraco-collections-5.2.1.ebuild8
-rw-r--r--dev-python/jq/jq-1.11.0.ebuild2
-rw-r--r--dev-python/linuxdoc/linuxdoc-20240924.ebuild2
-rw-r--r--dev-python/linuxdoc/linuxdoc-99999999.ebuild2
-rw-r--r--dev-python/matplotlib-inline/Manifest1
-rw-r--r--dev-python/matplotlib-inline/matplotlib-inline-0.2.2.ebuild45
-rw-r--r--dev-python/moto/moto-5.1.22-r1.ebuild3
-rw-r--r--dev-python/narwhals/Manifest4
-rw-r--r--dev-python/narwhals/narwhals-2.21.0.ebuild (renamed from dev-python/narwhals/narwhals-2.19.0.ebuild)2
-rw-r--r--dev-python/pbs-installer/Manifest2
-rw-r--r--dev-python/pbs-installer/pbs-installer-2026.5.8.ebuild33
-rw-r--r--dev-python/pexpect/pexpect-4.9.0.ebuild30
-rw-r--r--dev-python/portend/portend-3.2.1.ebuild3
-rw-r--r--dev-python/pretend/pretend-1.0.9-r2.ebuild3
-rw-r--r--dev-python/propcache/Manifest2
-rw-r--r--dev-python/propcache/propcache-0.5.2.ebuild55
-rw-r--r--dev-python/psutil/psutil-7.2.2.ebuild10
-rw-r--r--dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild2
-rw-r--r--dev-python/pydantic-settings/Manifest4
-rw-r--r--dev-python/pydantic-settings/pydantic-settings-2.14.1.ebuild (renamed from dev-python/pydantic-settings/pydantic-settings-2.13.1.ebuild)2
-rw-r--r--dev-python/pygithub/pygithub-2.9.1.ebuild2
-rw-r--r--dev-python/pygments/pygments-2.19.2.ebuild3
-rw-r--r--dev-python/pyproject-hooks/pyproject-hooks-1.2.0.ebuild3
-rw-r--r--dev-python/pytesseract/pytesseract-0.3.13.ebuild2
-rw-r--r--dev-python/pytest-freezer/pytest-freezer-0.4.9.ebuild4
-rw-r--r--dev-python/pytest-rerunfailures/pytest-rerunfailures-16.1.ebuild2
-rw-r--r--dev-python/pytest-skip-markers/pytest-skip-markers-1.5.2.ebuild4
-rw-r--r--dev-python/pytest-system-statistics/pytest-system-statistics-1.0.2-r2.ebuild2
-rw-r--r--dev-python/pytest-timeout/pytest-timeout-2.4.0.ebuild9
-rw-r--r--dev-python/pytest-xdist/files/pytest-xdist-3.8.0-pytest-9.patch64
-rw-r--r--dev-python/pytest-xdist/pytest-xdist-3.8.0.ebuild12
-rw-r--r--dev-python/python-dateutil/python-dateutil-2.9.0_p0.ebuild6
-rw-r--r--dev-python/python-discovery/python-discovery-1.3.0.ebuild6
-rw-r--r--dev-python/python-tests/Manifest3
-rw-r--r--dev-python/python-tests/python-tests-0.3.15.0_beta1.ebuild75
-rw-r--r--dev-python/python-tests/python-tests-0.3.15.9999.ebuild60
-rw-r--r--dev-python/python-tests/python-tests-3.15.0_beta1.ebuild74
-rw-r--r--dev-python/python-tests/python-tests-3.15.9999.ebuild60
-rw-r--r--dev-python/referencing/referencing-0.37.0.ebuild4
-rw-r--r--dev-python/six/six-1.17.0.ebuild26
-rw-r--r--dev-python/snakeoil/snakeoil-0.11.0.ebuild2
-rw-r--r--dev-python/snakeoil/snakeoil-9999.ebuild2
-rw-r--r--dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild14
-rw-r--r--dev-python/test/test-0.ebuild8
-rw-r--r--dev-python/testpath/testpath-0.6.0.ebuild3
-rw-r--r--dev-python/tomli-w/tomli-w-1.2.0.ebuild3
-rw-r--r--dev-python/types-docutils/Manifest1
-rw-r--r--dev-python/types-docutils/types-docutils-0.22.3.20260508.ebuild16
-rw-r--r--dev-python/types-gdb/Manifest1
-rw-r--r--dev-python/types-gdb/types-gdb-16.3.0.20260508.ebuild16
-rw-r--r--dev-python/types-psutil/Manifest1
-rw-r--r--dev-python/types-psutil/types-psutil-7.2.2.20260508.ebuild20
-rw-r--r--dev-python/types-python-dateutil/Manifest2
-rw-r--r--dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260508.ebuild (renamed from dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260402.ebuild)0
-rw-r--r--dev-python/types-setuptools/Manifest1
-rw-r--r--dev-python/types-setuptools/types-setuptools-82.0.0.20260508.ebuild20
-rw-r--r--dev-python/typing-extensions/files/typing-extensions-4.15.0-py314-test.patch28
-rw-r--r--dev-python/typing-extensions/typing-extensions-4.15.0.ebuild35
-rw-r--r--dev-python/uv-build/Manifest1
-rw-r--r--dev-python/uv-build/uv-build-0.11.12.ebuild99
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.11.12.ebuild164
-rw-r--r--dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild3
81 files changed, 1181 insertions, 107 deletions
diff --git a/dev-python/aiohttp/aiohttp-3.13.5.ebuild b/dev-python/aiohttp/aiohttp-3.13.5.ebuild
index f7a0d56f8072..30bbc17ba1b9 100644
--- a/dev-python/aiohttp/aiohttp-3.13.5.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.13.5.ebuild
@@ -138,6 +138,10 @@ python_test() {
tests/test_client_functional.py::test_invalid_idna
# broken by irrelevant deprecation warnings
tests/test_circular_imports.py::test_no_warnings
+ # https://github.com/aio-libs/aiohttp/issues/11400#issuecomment-4168569526
+ # https://github.com/python/cpython/issues/145599
+ # https://github.com/python/cpython/pull/145600
+ tests/test_cookie_helpers.py::test_parse_set_cookie_headers_uses_unquote_with_octal
)
case ${EPYTHON} in
diff --git a/dev-python/appdirs/appdirs-1.4.4-r3.ebuild b/dev-python/appdirs/appdirs-1.4.4-r3.ebuild
index 12d339c70cf8..24296d79a7bb 100644
--- a/dev-python/appdirs/appdirs-1.4.4-r3.ebuild
+++ b/dev-python/appdirs/appdirs-1.4.4-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/asyncssh/Manifest b/dev-python/asyncssh/Manifest
index da183430afab..f2fb47fba037 100644
--- a/dev-python/asyncssh/Manifest
+++ b/dev-python/asyncssh/Manifest
@@ -1 +1,2 @@
DIST asyncssh-2.22.0.tar.gz 540523 BLAKE2B 250253711d7a4bfda448f63888f6665d7af8ffc27c1da7389dbd996b64c028d3c0b5a0baa3f5d6e04294857cf5a8ff6b3d4a6d5c5e3a46094ddfde7f59ac4205 SHA512 30340dbfa0db60071458ce51f24d972760b3284ed7bc10613546eddb39cb191076e02c0f1405d9f2f74bed8d5102f182d5e7e8264ad0c46b10e536cd80819da6
+DIST asyncssh-2.23.0.tar.gz 542154 BLAKE2B 8754476a48209e37841594373b4cf9be2f8adab529200893bf79a7fb8d7b25925a32627a0bdbd0314f2a15d2513668565a750aacfeae0c1032674b0186321769 SHA512 473404e08a4f77a35ce7cd5722d046f0e6b06f87a77a44050b1abfa0a971360c9775d9ec44493de1a4b4ad4bc729d59ffb2bdf6e17390620ad9e121317c2ca2a
diff --git a/dev-python/asyncssh/asyncssh-2.23.0.ebuild b/dev-python/asyncssh/asyncssh-2.23.0.ebuild
new file mode 100644
index 000000000000..319f7649de45
--- /dev/null
+++ b/dev-python/asyncssh/asyncssh-2.23.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Asynchronous SSHv2 client and server library"
+HOMEPAGE="
+ https://github.com/ronf/asyncssh/
+ https://pypi.org/project/asyncssh/
+"
+
+LICENSE="|| ( EPL-2.0 GPL-2+ )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ virtual/openssh
+ >=dev-python/cryptography-39.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/aiofiles[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+ >=dev-python/gssapi-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/ifaddr-0.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-23.0.0[${PYTHON_USEDEP}]
+ amd64? (
+ >=dev-python/fido2-2[${PYTHON_USEDEP}]
+ )
+ )
+"
+
+EPYTEST_PLUGINS=()
+# xdist: fails on serializing 'type'
+distutils_enable_tests pytest
+distutils_enable_sphinx docs
+
+pkg_postinst() {
+ optfeature "OpenSSH private key encryption support" ">=dev-python/bcrypt-3.1.3"
+ optfeature "key exchange and authentication with U2F/FIDO2 security keys support" ">=dev-python/fido2-2"
+ optfeature "GSSAPI key exchange and authentication support" ">=dev-python/gssapi-1.2.0"
+ optfeature "using asyncssh with dev-libs/libsodium" "dev-python/libnacl"
+ optfeature "X.509 certificate authentication support" ">=dev-python/pyopenssl-23.0.0"
+}
diff --git a/dev-python/distlib/distlib-0.4.0-r1.ebuild b/dev-python/distlib/distlib-0.4.0-r1.ebuild
new file mode 100644
index 000000000000..85b064aea2cb
--- /dev/null
+++ b/dev-python/distlib/distlib-0.4.0-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level components of distutils2/packaging"
+HOMEPAGE="
+ https://pypi.org/project/distlib/
+ https://github.com/pypa/distlib/
+"
+SRC_URI="
+ https://github.com/pypa/distlib/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# pypiserver is called as external executable
+BDEPEND="
+ test? (
+ dev-python/pypiserver
+ )
+"
+
+src_prepare() {
+ local PATCHES=(
+ # use system pypiserver instead of bundled one
+ "${FILESDIR}/distlib-0.3.9-system-pypiserver.patch"
+ # https://github.com/pypa/distlib/commit/6286442857de9f734686d08f0e59ca8048ee357a
+ "${FILESDIR}/${P}-py314-test.patch"
+ # https://github.com/pypa/distlib/pull/256
+ "${FILESDIR}/${P}-py315.patch"
+ )
+
+ # make sure it's not used
+ rm tests/pypi-server-standalone.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x SKIP_ONLINE=1
+ local -x PYTHONHASHSEED=0
+
+ # disable system-site-packages -- distlib has no deps, and is very
+ # fragile to packages actually installed on the system
+ sed -i -e '/system-site-packages/s:true:false:' \
+ "${BUILD_DIR}/install${EPREFIX}/usr/pyvenv.cfg" || die
+
+ "${EPYTHON}" tests/test_all.py -v -x ||
+ die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/distlib/files/distlib-0.4.0-py315.patch b/dev-python/distlib/files/distlib-0.4.0-py315.patch
new file mode 100644
index 000000000000..4a27f0203705
--- /dev/null
+++ b/dev-python/distlib/files/distlib-0.4.0-py315.patch
@@ -0,0 +1,51 @@
+From 53a497ae37b3220662ac177e9477e9551e4e37b0 Mon Sep 17 00:00:00 2001
+From: Victor Stinner <vstinner@python.org>
+Date: Wed, 14 Jan 2026 14:32:40 +0100
+Subject: [PATCH] Update cache_from_source() for Python 3.15
+
+The debug_override parameter of cache_from_source() is deprecated in
+Python 3.14. The function docstring says:
+
+ The debug_override parameter is deprecated. If debug_override
+ is not None, a True value is the same as setting 'optimization'
+ to the empty string while a False value is equivalent to setting
+ 'optimization' to '1'.
+
+The parameter has been removed in Python 3.15.
+
+Fixes #255
+---
+ distlib/util.py | 6 +++++-
+ tests/test_util.py | 2 +-
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/distlib/util.py b/distlib/util.py
+index 0d5bd7a..b700384 100644
+--- a/distlib/util.py
++++ b/distlib/util.py
+@@ -589,7 +589,11 @@ def ensure_dir(self, path):
+ self.dirs_created.add(path)
+
+ def byte_compile(self, path, optimize=False, force=False, prefix=None, hashed_invalidation=False):
+- dpath = cache_from_source(path, not optimize)
++ if not optimize:
++ optimization = ''
++ else:
++ optimization = '1'
++ dpath = cache_from_source(path, optimization=optimization)
+ logger.info('Byte-compiling %s to %s', path, dpath)
+ if not self.dry_run:
+ if force or self.newer(path, dpath):
+diff --git a/tests/test_util.py b/tests/test_util.py
+index d8694a9..d4bb572 100644
+--- a/tests/test_util.py
++++ b/tests/test_util.py
+@@ -652,7 +652,7 @@ def test_is_writable(self):
+
+ def test_byte_compile(self):
+ path = os.path.join(self.workdir, 'hello.py')
+- dpath = cache_from_source(path, True)
++ dpath = cache_from_source(path, optimization='')
+ self.fileop.write_text_file(path, 'print("Hello, world!")', 'utf-8')
+ self.fileop.byte_compile(path, optimize=False)
+ self.assertTrue(os.path.exists(dpath))
diff --git a/dev-python/execnet/execnet-2.1.2.ebuild b/dev-python/execnet/execnet-2.1.2.ebuild
index e09cfa4d8ca7..3219b4ba39bc 100644
--- a/dev-python/execnet/execnet-2.1.2.ebuild
+++ b/dev-python/execnet/execnet-2.1.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -32,7 +32,7 @@ python_test() {
local EPYTEST_DESELECT=()
case ${EPYTHON} in
- python3.1[34]t)
+ python3*t)
EPYTEST_DESELECT+=(
# https://github.com/pytest-dev/execnet/issues/306
testing/test_channel.py::TestChannelBasicBehaviour::test_channel_callback_remote_freed
diff --git a/dev-python/gpep517/gpep517-19.ebuild b/dev-python/gpep517/gpep517-19.ebuild
index b0267ec46f0c..7a2ccf10e6a6 100644
--- a/dev-python/gpep517/gpep517-19.ebuild
+++ b/dev-python/gpep517/gpep517-19.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
diff --git a/dev-python/hatch-fancy-pypi-readme/hatch-fancy-pypi-readme-25.1.0.ebuild b/dev-python/hatch-fancy-pypi-readme/hatch-fancy-pypi-readme-25.1.0.ebuild
index 0e3d84b7360b..0c1a177d3fc1 100644
--- a/dev-python/hatch-fancy-pypi-readme/hatch-fancy-pypi-readme-25.1.0.ebuild
+++ b/dev-python/hatch-fancy-pypi-readme/hatch-fancy-pypi-readme-25.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -26,6 +26,7 @@ RDEPEND="
dev-python/hatchling[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
EPYTEST_DESELECT=(
diff --git a/dev-python/hatch-vcs/hatch-vcs-0.5.0.ebuild b/dev-python/hatch-vcs/hatch-vcs-0.5.0.ebuild
index b608ad91d493..f2c2276735cb 100644
--- a/dev-python/hatch-vcs/hatch-vcs-0.5.0.ebuild
+++ b/dev-python/hatch-vcs/hatch-vcs-0.5.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -31,4 +31,5 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/hypothesis-gentoo/hypothesis-gentoo-4.ebuild b/dev-python/hypothesis-gentoo/hypothesis-gentoo-4.ebuild
index b08de883681d..82bffee4dc42 100644
--- a/dev-python/hypothesis-gentoo/hypothesis-gentoo-4.ebuild
+++ b/dev-python/hypothesis-gentoo/hypothesis-gentoo-4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2025 Gentoo Authors
+# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/hypothesis/hypothesis-6.151.14.ebuild b/dev-python/hypothesis/hypothesis-6.151.14.ebuild
index e2dc047d3cc6..78143f7a693b 100644
--- a/dev-python/hypothesis/hypothesis-6.151.14.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.151.14.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
diff --git a/dev-python/hypothesis/hypothesis-6.151.9.ebuild b/dev-python/hypothesis/hypothesis-6.151.9.ebuild
index a15a2de8782c..73b48352d737 100644
--- a/dev-python/hypothesis/hypothesis-6.151.9.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.151.9.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
diff --git a/dev-python/hypothesis/hypothesis-6.152.4.ebuild b/dev-python/hypothesis/hypothesis-6.152.4.ebuild
index 6c33ed8b598f..2c65b19aa496 100644
--- a/dev-python/hypothesis/hypothesis-6.152.4.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.152.4.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_{14..15} python3_{13..15}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
@@ -68,6 +68,15 @@ python_test() {
tests/cover/test_custom_reprs.py
)
+ case ${EPYTHON} in
+ python3.15*)
+ EPYTEST_DESELECT+=(
+ 'hypothesis-python/tests/cover/test_lookup.py::test_resolves_forwardrefs_to_builtin_types[sentinel]'
+ 'hypothesis-python/tests/cover/test_lookup.py::test_resolves_builtin_types[sentinel]'
+ )
+ ;;
+ esac
+
local -x HYPOTHESIS_NO_PLUGINS=1
epytest -o filterwarnings= tests/{cover,pytest,quality}
}
diff --git a/dev-python/iniconfig/iniconfig-2.3.0.ebuild b/dev-python/iniconfig/iniconfig-2.3.0.ebuild
index c6600da1ed4a..8d7d453b64fe 100644
--- a/dev-python/iniconfig/iniconfig-2.3.0.ebuild
+++ b/dev-python/iniconfig/iniconfig-2.3.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2025 Gentoo Authors
+# Copyright 2020-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/inline-snapshot/inline-snapshot-0.32.7.ebuild b/dev-python/inline-snapshot/inline-snapshot-0.32.7.ebuild
index 0967f87cbd6d..3b5a33685adf 100644
--- a/dev-python/inline-snapshot/inline-snapshot-0.32.7.ebuild
+++ b/dev-python/inline-snapshot/inline-snapshot-0.32.7.ebuild
@@ -37,14 +37,11 @@ BDEPEND="
dev-python/mypy[${PYTHON_USEDEP}]
' 'python*')
>=dev-python/pydantic-2[${PYTHON_USEDEP}]
- >=dev-python/pytest-freezer-0.4.8[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.14.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-subtests-0.11.0[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGIN_LOAD_VIA_ENV=1
-EPYTEST_PLUGINS=( "${PN}" pytest-{freezer,mock,subtests,xdist} )
+EPYTEST_PLUGINS=( "${PN}" pytest-{freezer,mock,xdist} )
EPYTEST_XDIST=1
distutils_enable_tests pytest
diff --git a/dev-python/installer/installer-0.7.0.ebuild b/dev-python/installer/installer-0.7.0.ebuild
index d87f0967b2ea..a461ee0e73dd 100644
--- a/dev-python/installer/installer-0.7.0.ebuild
+++ b/dev-python/installer/installer-0.7.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
@@ -27,6 +27,7 @@ BDEPEND="
app-arch/unzip
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_compile() {
diff --git a/dev-python/jaraco-classes/jaraco-classes-3.4.0.ebuild b/dev-python/jaraco-classes/jaraco-classes-3.4.0.ebuild
index c7fd46a03bc9..439f30fc07fb 100644
--- a/dev-python/jaraco-classes/jaraco-classes-3.4.0.ebuild
+++ b/dev-python/jaraco-classes/jaraco-classes-3.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,4 +24,5 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/jaraco-collections/jaraco-collections-5.2.1.ebuild b/dev-python/jaraco-collections/jaraco-collections-5.2.1.ebuild
index 5540988be5ec..39fe6081897c 100644
--- a/dev-python/jaraco-collections/jaraco-collections-5.2.1.ebuild
+++ b/dev-python/jaraco-collections/jaraco-collections-5.2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,6 +23,7 @@ RDEPEND="
dev-python/jaraco-text[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
src_configure() {
@@ -35,8 +36,3 @@ src_configure() {
-e '/^dynamic =/d' \
pyproject.toml || die
}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/jq/jq-1.11.0.ebuild b/dev-python/jq/jq-1.11.0.ebuild
index d138f0ab9cb8..70fe07f30af9 100644
--- a/dev-python/jq/jq-1.11.0.ebuild
+++ b/dev-python/jq/jq-1.11.0.ebuild
@@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 ~x86"
# Minimum versions of jq + onigurama are from setup.py's bundled versions
DEPEND="
diff --git a/dev-python/linuxdoc/linuxdoc-20240924.ebuild b/dev-python/linuxdoc/linuxdoc-20240924.ebuild
index fb516ad9980a..881e0fc568ce 100644
--- a/dev-python/linuxdoc/linuxdoc-20240924.ebuild
+++ b/dev-python/linuxdoc/linuxdoc-20240924.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( pypy3_11 python3_13t python3_14t python3_{11..14} )
inherit distutils-r1 pypi
diff --git a/dev-python/linuxdoc/linuxdoc-99999999.ebuild b/dev-python/linuxdoc/linuxdoc-99999999.ebuild
index 282a614487ea..f9abcc3a81b6 100644
--- a/dev-python/linuxdoc/linuxdoc-99999999.ebuild
+++ b/dev-python/linuxdoc/linuxdoc-99999999.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( pypy3_11 python3_13t python3_14t python3_{11..14} )
inherit distutils-r1
diff --git a/dev-python/matplotlib-inline/Manifest b/dev-python/matplotlib-inline/Manifest
index a191446bb65c..1cf6ba92389d 100644
--- a/dev-python/matplotlib-inline/Manifest
+++ b/dev-python/matplotlib-inline/Manifest
@@ -1 +1,2 @@
DIST matplotlib-inline-0.2.1.gh.tar.gz 107440 BLAKE2B 283a9262dec0f95c7d0cd54be00cac3546277c9988a0400d0357d2ac245cfa319ff146df5f8efdcc03607c726a530ca05c83f82a8effbc003186c7d5461adfbc SHA512 5a85e5a8b5821201681508942bccc9a150bfc70e579f933c6155fa2f0fdb6c04c16ff238cc3de15b8ca5b96b907e6ba087671fe58f2822754a313d2efb54d80f
+DIST matplotlib-inline-0.2.2.gh.tar.gz 107569 BLAKE2B 46d8eea653ec5878aaec9247ba1c6321dba2d5a6d7de90a7200bd32c1ca5456008bbd4161305d8c874fbad5dfb17c3f4c98caa381901008801d1006464e61f61 SHA512 d7d356c0827a3264f12312d3e174aeb1ba566e10cdae8d30b0b28d77c32ef6b4ec4b2f507af36c0eb3e201c9b44141eb18f93b602ce423ecbe063f455b7900ff
diff --git a/dev-python/matplotlib-inline/matplotlib-inline-0.2.2.ebuild b/dev-python/matplotlib-inline/matplotlib-inline-0.2.2.ebuild
new file mode 100644
index 000000000000..2302f79c6f2a
--- /dev/null
+++ b/dev-python/matplotlib-inline/matplotlib-inline-0.2.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Inline Matplotlib backend for Jupyter"
+HOMEPAGE="
+ https://github.com/ipython/matplotlib-inline/
+ https://pypi.org/project/matplotlib-inline/
+"
+SRC_URI="
+ https://github.com/ipython/matplotlib-inline/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+# Although in theory we could depend on matplotlib, upstream does not.
+# This is because the sole purpose of the package is to be loaded by
+# ipython (also not a dependency!) as a response to interactive use of
+# the "%matplotlib" magic.
+#
+# In order to be seamless and straightforward, this backend is always
+# installed and just requires users using matplotlib, to install
+# matplotlib before importing and using it.
+RDEPEND="
+ dev-python/traitlets[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/nbdime[${PYTHON_USEDEP}]
+ dev-python/notebook[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( nbval )
+distutils_enable_tests pytest
diff --git a/dev-python/moto/moto-5.1.22-r1.ebuild b/dev-python/moto/moto-5.1.22-r1.ebuild
index 6a8412e111be..2979d6f91703 100644
--- a/dev-python/moto/moto-5.1.22-r1.ebuild
+++ b/dev-python/moto/moto-5.1.22-r1.ebuild
@@ -102,6 +102,5 @@ python_test() {
local -x TZ=UTC
local -x AWS_DEFAULT_REGION=us-east-1
- # -o timeout_func_only=true: bad interaction with pytest-rerunfailures and pytest-timeout leads to a permanent hang otherwise
- epytest -m 'not network and not requires_docker' -o timeout_func_only=true
+ epytest -m 'not network and not requires_docker'
}
diff --git a/dev-python/narwhals/Manifest b/dev-python/narwhals/Manifest
index a0056b587289..5ea0fc82c462 100644
--- a/dev-python/narwhals/Manifest
+++ b/dev-python/narwhals/Manifest
@@ -1,4 +1,4 @@
-DIST narwhals-2.19.0.tar.gz 623698 BLAKE2B 631e321059b4df803ac491e15554af9804cc85f372cf49e192f3455772fd9b80dec1a30c89f8d85580d8a6a4a5b7fb743deda25deb9198425fb3f903a77e7b82 SHA512 3427a945b7a4daa4c43dc5c448a5bab8d1bc342d48cc43520b099178dfa66b6e24b4510aa9e931f467adb488573467b3f1164665464be1850c2f14924da85de1
-DIST narwhals-2.19.0.tar.gz.provenance 9847 BLAKE2B 061cfe1f59ced294fcea9bfcf2e3bf5066e0ae8106a5bf1d3cb4c04ba5a106ad261b5d2b20df7593d96c5bc5506f3ebef3663c7f9ccfd3be5574f2f45be98209 SHA512 10cd0d409e57b4480902f63079cad5380dc0a50d560e2ab26b0a31fd345c00a8070893469c12e04abf37a877abe8cdf38b222c01b056ab9a81b28c5bffe7e4c6
DIST narwhals-2.20.0.tar.gz 627848 BLAKE2B a625e703ed20d9b38f86705b384e2f4c7e79a762e3331c68193d89c4c065ebba58e06922bd9c363cf03175605ddaf21b1204daea164ebf351cccf6941913c04b SHA512 cb48b03e2540aa04e55cbf4a8862b7d0d3376b4aab81f0b7c252097d1774188f2699a1e45f1fa7ad57f6f2a16d9b83569f7ea7f6238e159e537e68e531bed2a5
DIST narwhals-2.20.0.tar.gz.provenance 9765 BLAKE2B 5e37b3fd16d6be34b8c31a2abf662b4e0ecfdf9477e53cdba2216200a1122641a0df7bfcf8acb111bddb31663caab2374e6240bcfd192074a9331cadb0b793ee SHA512 e3885f58c61d7d041b300857db0ae279aaa02afe14187e1a831b8e0c5f8a8317b6719370b36a9c4e6a9ee2bd169ff9fa9212a45e381b5b1b26386a534f595ebd
+DIST narwhals-2.21.0.tar.gz 633083 BLAKE2B cbcecf22c193eacc7de6ab8975df4a635a5082656653d041bf39cecfbfbba51cc93901bb3a886d77bb97ce8df5355e7d4c23222fb123798e3e9b5358f2f159e2 SHA512 2ff8cb94ff3c7a37a036e369f858cc8e9f61f5f540660c92d3fa55ac3d3dbe310c97d723976305346cce9352c2cc31a61a6cb8cfaa797a9e663873a2301d5a94
+DIST narwhals-2.21.0.tar.gz.provenance 9706 BLAKE2B 06980c59d823ceb4a640eda267a046053f6f3721bf454e6aad651d82c4d8e7324c344ff5ae939fc54a4272163dfec0009e1afd5dd2a964636c96b92bb43f0fbb SHA512 27c813fe0052d2a93266be6795b143106cb66e1625aea906675a087f5226572396ba9d5e700435c22df876e1b1ab2762dfddf60a7979e93946dbec709ee52fc7
diff --git a/dev-python/narwhals/narwhals-2.19.0.ebuild b/dev-python/narwhals/narwhals-2.21.0.ebuild
index 9ed6257443fa..01d018288706 100644
--- a/dev-python/narwhals/narwhals-2.19.0.ebuild
+++ b/dev-python/narwhals/narwhals-2.21.0.ebuild
@@ -37,7 +37,7 @@ python_test() {
'tests/modern_polars/unpivot_test.py::test_unpivot[pyarrow]'
# fragile to parallel merges that can cause non-atomic .dist-info
# changes
- tests/system_info_test.py::test_get_sys_info
+ tests/system_info_test.py::test_get_deps_info
)
epytest --runslow --constructors="pandas,pandas[nullable],pandas[pyarrow],pyarrow"
diff --git a/dev-python/pbs-installer/Manifest b/dev-python/pbs-installer/Manifest
index 4336888ff76c..824bc37b2c6a 100644
--- a/dev-python/pbs-installer/Manifest
+++ b/dev-python/pbs-installer/Manifest
@@ -4,3 +4,5 @@ DIST pbs_installer-2026.4.7.tar.gz 71866 BLAKE2B 0617ec42b1f42a8f66a7b47de10ec29
DIST pbs_installer-2026.4.7.tar.gz.provenance 9693 BLAKE2B 522a8e6fbfd26ab0f0d868ed1b81dfe78b8d1b12ba35ae4ad2d5ec155f0610db94d55beba051c9460513f76405b6d9a610f68073eb288ed70fb4bf1b256397b1 SHA512 a865874430b405ffa0a9a3f1947eee0c830641626abad740c278e6c27961c0457c2d59923653330285dcd41d3cdc6af7ff85173173dbce3865ae789d11c7e413
DIST pbs_installer-2026.5.4.tar.gz 71861 BLAKE2B 6dfaf5a4f09a5d304a72b11677c01d957cc841387295deee3649869c15b66910c76da530716923a2df38565c38a91a5bbab2445a6e27821e25d265c8bd438a1a SHA512 aeb6f43049e85158973740f6620c47ab70f7cf87e1376a01f772bcdae55f8c2f7e4eb374ee8579fe214b1ac7cc529e7c7d64d6fa88d1be661b0777a060376ac7
DIST pbs_installer-2026.5.4.tar.gz.provenance 9834 BLAKE2B 12aec6b380928f5f576a4179733cd5b534bbae7db6024b27b2457a29e3b3806d57de85ec7691936cdc08e889f140527c19472abdb25c60d8e5e14aac4642578d SHA512 9b5cdc743fb74179b49f3f0f8d236361b63a46d65512a909b7b85093207f61fee591607f4cf86c3eaf54201cdfdb4a74346bf89440d54b9b9172b42e291f53e0
+DIST pbs_installer-2026.5.8.tar.gz 71877 BLAKE2B b85346c84c7e2b8859c44a13e844f015feb6f77938c853aa2f31f6572e23bddc8f4fcff2c0a21c814f20517953ed0f273bd5f6cb2ce1bcca0eb20bad8c78e674 SHA512 e3c3fad7358af454c08e31132a74d77afcbb3400e71c31d87440b194e21f00ebb7c663732329e3f5cad224c99d46a84c6958451379c2f0751afe1b372328be0d
+DIST pbs_installer-2026.5.8.tar.gz.provenance 9611 BLAKE2B e5191bb1aaf8f1d3cb427ebe6e27186eeac4392db5cdf4bfefdea45361ac490e198e3a30e8f66c42d2be6d317aba4ec477e5c6cebc4cd5d8889b9358cc37eb98 SHA512 d8e146b3939996443e87d1f9ee0814863c9d0274f5390868245bebdc7ac9f379d7fcbd69c6e6a9e65be68b3dc105b05263eae14745b5ad44fb9c23efd6d60fe8
diff --git a/dev-python/pbs-installer/pbs-installer-2026.5.8.ebuild b/dev-python/pbs-installer/pbs-installer-2026.5.8.ebuild
new file mode 100644
index 000000000000..557165ae6a2a
--- /dev/null
+++ b/dev-python/pbs-installer/pbs-installer-2026.5.8.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYPI_VERIFY_REPO=https://github.com/frostming/pbs-installer
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Installer for Python Build Standalone"
+HOMEPAGE="
+ https://pypi.org/project/pbs-installer/
+ https://github.com/frostming/pbs-installer/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+# httpx is needed to download builds
+# zstandard is needed to install them
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/backports-zstd-1.0.0[${PYTHON_USEDEP}]
+ ' 3.11 3.12 3.13)
+ <dev-python/httpx-1[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.27.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests import-check
diff --git a/dev-python/pexpect/pexpect-4.9.0.ebuild b/dev-python/pexpect/pexpect-4.9.0.ebuild
index dbf660f4efdc..56b92b054a88 100644
--- a/dev-python/pexpect/pexpect-4.9.0.ebuild
+++ b/dev-python/pexpect/pexpect-4.9.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,10 +25,22 @@ RDEPEND="
>=dev-python/ptyprocess-0.5[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
distutils_enable_sphinx doc \
dev-python/sphinxcontrib-github-alt
+EPYTEST_DESELECT=(
+ # flaky test on weaker arches
+ tests/test_performance.py
+ # requires zsh installed, not worth it
+ tests/test_replwrap.py::REPLWrapTestCase::test_zsh
+ # flaky
+ tests/test_env.py::TestCaseEnv::test_spawn_uses_env
+ # flaky & hangy
+ tests/test_socket.py::ExpectTestCase::test_interrupt
+)
+
PATCHES=(
# https://github.com/pexpect/pexpect/pull/794
"${FILESDIR}/${P}-py313.patch"
@@ -44,22 +56,6 @@ src_test() {
distutils-r1_src_test
}
-python_test() {
- local EPYTEST_DESELECT=(
- # flaky test on weaker arches
- tests/test_performance.py
- # requires zsh installed, not worth it
- tests/test_replwrap.py::REPLWrapTestCase::test_zsh
- # flaky
- tests/test_env.py::TestCaseEnv::test_spawn_uses_env
- # flaky & hangy
- tests/test_socket.py::ExpectTestCase::test_interrupt
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
python_install_all() {
if use examples; then
dodoc -r examples
diff --git a/dev-python/portend/portend-3.2.1.ebuild b/dev-python/portend/portend-3.2.1.ebuild
index f972a973154e..5e3eafb4ed09 100644
--- a/dev-python/portend/portend-3.2.1.ebuild
+++ b/dev-python/portend/portend-3.2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,4 +25,5 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/pretend/pretend-1.0.9-r2.ebuild b/dev-python/pretend/pretend-1.0.9-r2.ebuild
index d1af2fe42856..6c479de23370 100644
--- a/dev-python/pretend/pretend-1.0.9-r2.ebuild
+++ b/dev-python/pretend/pretend-1.0.9-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -22,4 +22,5 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/propcache/Manifest b/dev-python/propcache/Manifest
index 98fc49660729..d89c3bdcea5d 100644
--- a/dev-python/propcache/Manifest
+++ b/dev-python/propcache/Manifest
@@ -1,2 +1,4 @@
DIST propcache-0.4.1.tar.gz 46442 BLAKE2B ff554a2dfd9c4944ab5b16c516510eb33b78b09729d271487bd85994f5c7695b7bcb274becdcab601b771b4c75267dd0dde1acaf4afdac9683bd3ee4ff225af2 SHA512 10342a0e64107eea991fe163901e02537304225fca4a0e9c62d1f5dd0077e3eac6a892e6cd2dffe943d52ba121fb603e2150e1aa63deb0cd5003083310a07070
DIST propcache-0.4.1.tar.gz.provenance 9198 BLAKE2B 34cab350c955c33d662d59d40adb265ea28a46a03b701768801733891aefdf84af0acfbc779a7f10775f039512502f606031314757d250eef0bfbe746300cedc SHA512 d38429d3ec212d826ab38e05961f16c8a19190089e6411be08b85e1758daf91ad27d270b83e6c597e5161717c2da1c091c2be8bd4391c90ee7a8cffa56ef99d9
+DIST propcache-0.5.2.tar.gz 50208 BLAKE2B 53b0a36724277bbe1b08e4fe9b6bf7b32933fbb52b5c4fa3477b3fba1d021875f9311cb4abc020989a40c3482707b0e9e3b40669b9d219334b10b0303dfbfbe9 SHA512 7d720b55a54a3dc35a13c27c8b2821e5dc8ccabae1c004c4049df6a4d914c7f5247cac4efb8a6e0cc95cb9cf62119c27febfeaaaa900343f19ee8c8cef92e15f
+DIST propcache-0.5.2.tar.gz.provenance 9321 BLAKE2B 4a48da3e3c88f767ef481373c560fc6d0895987422a43a4a9cd09d27a70c254d2b05fe19876c03f72d094770965992d1df0d8b066cbb9cd15f3eb4ee867dfc33 SHA512 ef3796ac1f4b65bfec89d1d9944870dfdead6f932671eb0725d6bf0ba1e19a8a8d50dd9e1b73c02d97b64d19af314e782dfda52a131c9851bb506f4a2a3cd08e
diff --git a/dev-python/propcache/propcache-0.5.2.ebuild b/dev-python/propcache/propcache-0.5.2.ebuild
new file mode 100644
index 000000000000..1ecb0a219ccb
--- /dev/null
+++ b/dev-python/propcache/propcache-0.5.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=standalone
+PYPI_VERIFY_REPO=https://github.com/aio-libs/propcache
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Accelerated property cache"
+HOMEPAGE="
+ https://github.com/aio-libs/propcache/
+ https://pypi.org/project/propcache/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ dev-python/expandvars[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_compile() {
+ local -x PROPCACHE_NO_EXTENSIONS=0
+ if ! use native-extensions || [[ ${EPYTHON} != python* ]]; then
+ PROPCACHE_NO_EXTENSIONS=1
+ fi
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ tests/test_benchmarks.py
+ )
+
+ local opts=()
+ if ! use native-extensions || [[ ${EPYTHON} != python* ]]; then
+ opts+=( --no-c-extensions )
+ fi
+
+ rm -rf propcache || die
+ epytest -o addopts= "${opts[@]}"
+}
diff --git a/dev-python/psutil/psutil-7.2.2.ebuild b/dev-python/psutil/psutil-7.2.2.ebuild
index 6eef6d832e72..c2d9e7db1b97 100644
--- a/dev-python/psutil/psutil-7.2.2.ebuild
+++ b/dev-python/psutil/psutil-7.2.2.ebuild
@@ -19,7 +19,7 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
-EPYTEST_PLUGINS=( pytest-subtests )
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_test() {
@@ -84,6 +84,14 @@ python_test() {
tests/test_memleaks.py
)
+ case ${EPYTHON} in
+ python3.15*)
+ EPYTEST_DESELECT+=(
+ tests/test_process.py::TestProcess::test_rlimit_infinity_value
+ )
+ ;;
+ esac
+
# Since we are running in an environment a bit similar to CI,
# let's skip the tests that are disabled for CI
local -x TRAVIS=1
diff --git a/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild b/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild
index 80789bc3263a..876288ea562b 100644
--- a/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild
+++ b/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pydantic-settings/Manifest b/dev-python/pydantic-settings/Manifest
index 87c3671558fe..99498f44cf80 100644
--- a/dev-python/pydantic-settings/Manifest
+++ b/dev-python/pydantic-settings/Manifest
@@ -1,4 +1,4 @@
-DIST pydantic_settings-2.13.1.tar.gz 223826 BLAKE2B 0b58da3891e6ba63f7be5a18340293ea1d0fe0e112f880e992e1dab90018adb32b9334b2d8ce8f861be6780bf4657b3c7352fc822c9e8ae97766d8cde08ed455 SHA512 bf800b27afd3cfdd14e3cbc65573274f6bcdfd261f3398097c73473ca49abe3f8f53fbaf01acbac844dc9a86b3c44f27e0d0ec6e6f207cec2c9f2cd22debb986
-DIST pydantic_settings-2.13.1.tar.gz.provenance 9329 BLAKE2B 26ace0f7f5ff172f0cab598a91223e2fef4240424ecae97ad02e184bf53aa72b90da6e89e0ed2381335d59f13750758c0bdff90f6e09f1229ef76c97d330ac8a SHA512 9983cff4dbc7e65824713db8823aa8945adca233415c27d0a2604007060b049aab0ffd588d0cdd56e1fa89ce1284d451e5b62064d6187c72f18583f58cbadd28
DIST pydantic_settings-2.14.0.tar.gz 235709 BLAKE2B e0b0941560b8a009c3ca03465a2ba4fad6d6d88214c3a40da59fb996bc2ee36dfa7273e47724e17c4f7887e17d412b6c8f6ec42c3e09e7a382f4407b2c3061c4 SHA512 b50b741ea75956f9e4b3ea3cd25451c046264c62212b21334482f2e583679899660588b3b56a5f89e099e12d4bcb3802ef943ec077518f819e8336cb00c1a0e6
DIST pydantic_settings-2.14.0.tar.gz.provenance 9337 BLAKE2B 5005c40f98ee24f8d5a9d39f039afa8f8d581391d8d5620d5ace5508fe89a296ce07651e3807e4c89dd41c3bee1b6207543e48f87ea1395bbfc338872e4e0f5f SHA512 c2cce764319e7b9e7280f66cd5ed9bf10b6f156d43bdb19acdfda845593d7b7030be6c543cdf0ca6eddb83605f3a3e69aef6a04568ee8b850895815bc0c3ba03
+DIST pydantic_settings-2.14.1.tar.gz 235551 BLAKE2B eed48ff5483d76e3c8f222b1c4fe725279ca5cbaf1ac65d5c933d82655c85cd7bd0c0b685341795613bcf5cad143f2bb982c6e21e1c0b073cc329014eeebb575 SHA512 ee1608700cafe614b12aa871a9dfe22af65f63c722e543d7a02760c532f7938a65e73a81ab7ce2a20f58fbf3d7ebaa8858e2145836786dd860c22dd03b0e56e6
+DIST pydantic_settings-2.14.1.tar.gz.provenance 9513 BLAKE2B 2851804cf2cdb9e2b3a26708e126da501a6ca89cc121b6ce921a0e192b7b5ef41abafa076300fb154ca2de48f85a0354fa598e230767433bc56587975233dbeb SHA512 bc2c7eff25e5404136b955a7c34b29b3725537e10939bf61ed2d1d85f1ed6c88ab342981e1796247895573e63efa7a2761822f12b3ee60999d6ccfc3dc7740d7
diff --git a/dev-python/pydantic-settings/pydantic-settings-2.13.1.ebuild b/dev-python/pydantic-settings/pydantic-settings-2.14.1.ebuild
index 0dd19242deb6..9bdd7bc86b59 100644
--- a/dev-python/pydantic-settings/pydantic-settings-2.13.1.ebuild
+++ b/dev-python/pydantic-settings/pydantic-settings-2.14.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
RDEPEND="
>=dev-python/pydantic-2.7.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pygithub/pygithub-2.9.1.ebuild b/dev-python/pygithub/pygithub-2.9.1.ebuild
index 425e63103753..4844e8f6cbd5 100644
--- a/dev-python/pygithub/pygithub-2.9.1.ebuild
+++ b/dev-python/pygithub/pygithub-2.9.1.ebuild
@@ -34,6 +34,6 @@ BDEPEND="
)
"
-EPYTEST_PLUGINS=( pytest-subtests )
+EPYTEST_PLUGINS=()
EPYTEST_XDIST=1
distutils_enable_tests pytest
diff --git a/dev-python/pygments/pygments-2.19.2.ebuild b/dev-python/pygments/pygments-2.19.2.ebuild
index e9aece22d4a6..f18e61a73bf8 100644
--- a/dev-python/pygments/pygments-2.19.2.ebuild
+++ b/dev-python/pygments/pygments-2.19.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -40,6 +40,7 @@ EPYTEST_DESELECT=(
tests/test_html_formatter.py::test_ctags
)
+EPYTEST_PLUGINS=()
EPYTEST_XDIST=1
distutils_enable_tests pytest
diff --git a/dev-python/pyproject-hooks/pyproject-hooks-1.2.0.ebuild b/dev-python/pyproject-hooks/pyproject-hooks-1.2.0.ebuild
index 5c1a04720fd2..6bfcc0548604 100644
--- a/dev-python/pyproject-hooks/pyproject-hooks-1.2.0.ebuild
+++ b/dev-python/pyproject-hooks/pyproject-hooks-1.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Gentoo Authors
+# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,6 +25,7 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
EPYTEST_DESELECT=(
diff --git a/dev-python/pytesseract/pytesseract-0.3.13.ebuild b/dev-python/pytesseract/pytesseract-0.3.13.ebuild
index 46c0b1f59a7b..590b9d923749 100644
--- a/dev-python/pytesseract/pytesseract-0.3.13.ebuild
+++ b/dev-python/pytesseract/pytesseract-0.3.13.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
+KEYWORDS="amd64 arm64 x86"
RDEPEND="
dev-python/pillow[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-freezer/pytest-freezer-0.4.9.ebuild b/dev-python/pytest-freezer/pytest-freezer-0.4.9.ebuild
index 6451e8f251b9..e11eb8cfab82 100644
--- a/dev-python/pytest-freezer/pytest-freezer-0.4.9.ebuild
+++ b/dev-python/pytest-freezer/pytest-freezer-0.4.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023-2025 Gentoo Authors
+# Copyright 2023-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,4 +23,6 @@ RDEPEND="
>=dev-python/pytest-3.6[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
distutils_enable_tests pytest
diff --git a/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.1.ebuild b/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.1.ebuild
index 4b9bb05551c9..fcc7fc3567d8 100644
--- a/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.1.ebuild
+++ b/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pytest-skip-markers/pytest-skip-markers-1.5.2.ebuild b/dev-python/pytest-skip-markers/pytest-skip-markers-1.5.2.ebuild
index 9fe540a48660..572c7919fc61 100644
--- a/dev-python/pytest-skip-markers/pytest-skip-markers-1.5.2.ebuild
+++ b/dev-python/pytest-skip-markers/pytest-skip-markers-1.5.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -35,7 +35,7 @@ BDEPEND="
"
EPYTEST_PLUGIN_LOAD_VIA_ENV=1
-EPYTEST_PLUGINS=( "${PN}" pyfakefs pytest-subtests )
+EPYTEST_PLUGINS=( "${PN}" pyfakefs )
distutils_enable_tests pytest
export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/pytest-system-statistics/pytest-system-statistics-1.0.2-r2.ebuild b/dev-python/pytest-system-statistics/pytest-system-statistics-1.0.2-r2.ebuild
index 12486cc6f34d..dffa07b95e32 100644
--- a/dev-python/pytest-system-statistics/pytest-system-statistics-1.0.2-r2.ebuild
+++ b/dev-python/pytest-system-statistics/pytest-system-statistics-1.0.2-r2.ebuild
@@ -37,7 +37,7 @@ PATCHES=(
"${FILESDIR}/pytest-system-statistics-1.0.2-loader.patch"
)
-EPYTEST_PLUGINS=( "${PN}" pytest-subtests )
+EPYTEST_PLUGINS=( "${PN}" )
EPYTEST_PLUGIN_LOAD_VIA_ENV=1
distutils_enable_tests pytest
diff --git a/dev-python/pytest-timeout/pytest-timeout-2.4.0.ebuild b/dev-python/pytest-timeout/pytest-timeout-2.4.0.ebuild
index 522dbf08b075..c6c59c7f2ebf 100644
--- a/dev-python/pytest-timeout/pytest-timeout-2.4.0.ebuild
+++ b/dev-python/pytest-timeout/pytest-timeout-2.4.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -31,15 +31,14 @@ BDEPEND="
)
"
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
EPYTEST_XDIST=1
distutils_enable_tests pytest
python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=pytest_timeout
-
if has_version "dev-python/pytest-cov[${PYTHON_USEDEP}]"; then
- PYTEST_PLUGINS+=,pytest_cov.plugin
+ local EPYTEST_PLUGINS=( "${EPYTEST_PLUGINS[@]}" pytest-cov )
else
EPYTEST_DESELECT+=(
test_pytest_timeout.py::test_cov
diff --git a/dev-python/pytest-xdist/files/pytest-xdist-3.8.0-pytest-9.patch b/dev-python/pytest-xdist/files/pytest-xdist-3.8.0-pytest-9.patch
new file mode 100644
index 000000000000..c39a004664bb
--- /dev/null
+++ b/dev-python/pytest-xdist/files/pytest-xdist-3.8.0-pytest-9.patch
@@ -0,0 +1,64 @@
+From 0c984478f39d7a01aa24c061f2581bdfd071cb6a Mon Sep 17 00:00:00 2001
+From: Bruno Oliveira <bruno@soliv.dev>
+Date: Sun, 2 Nov 2025 10:18:21 -0300
+Subject: [PATCH] Adapt test to also worth with pytest-main
+
+---
+ testing/test_newhooks.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/testing/test_newhooks.py b/testing/test_newhooks.py
+index e3a8ac6f..9091ed31 100644
+--- a/testing/test_newhooks.py
++++ b/testing/test_newhooks.py
+@@ -115,7 +115,7 @@ def pytest_handlecrashitem(crashitem, report, sched):
+ res.stdout.fnmatch_lines_random(["*HOOK: pytest_handlecrashitem"])
+ res.stdout.fnmatch_lines(
+ [
+- "FAILED test_handlecrashitem_one.py::test_b",
+- "FAILED test_handlecrashitem_one.py::test_b",
++ "FAILED test_handlecrashitem_one.py::test_b*",
++ "FAILED test_handlecrashitem_one.py::test_b*",
+ ]
+ )
+From 44f4bea2652e06e7cd5d4a063aa2673b5ef701ee Mon Sep 17 00:00:00 2001
+From: Bruno Oliveira <nicoddemus@gmail.com>
+Date: Tue, 11 Nov 2025 08:00:23 -0300
+Subject: [PATCH] Fix CI for pytest 9.0+ (#1272)
+
+---
+ testing/test_remote.py | 11 ++++++++---
+ 1 file changed, 8 insertions(+), 3 deletions(-)
+
+diff --git a/testing/test_remote.py b/testing/test_remote.py
+index 909f7ca2..ae82e2b7 100644
+--- a/testing/test_remote.py
++++ b/testing/test_remote.py
+@@ -378,6 +378,11 @@ def test_mainargv(request):
+
+
+ def test_remote_usage_prog(pytester: pytest.Pytester) -> None:
++ if pytest.version_tuple[:2] >= (9, 0):
++ get_optparser_expr = "get_config_parser.optparser"
++ else:
++ get_optparser_expr = "get_config_parser._getparser()"
++
+ pytester.makeconftest(
+ """
+ import pytest
+@@ -394,12 +399,12 @@ def pytest_configure(config):
+ """
+ )
+ pytester.makepyfile(
+- """
++ f"""
+ import sys
+
+ def test(get_config_parser, request):
+- get_config_parser._getparser().error("my_usage_error")
+- """
++ {get_optparser_expr}.error("my_usage_error")
++ """
+ )
+
+ result = pytester.runpytest_subprocess("-n1")
diff --git a/dev-python/pytest-xdist/pytest-xdist-3.8.0.ebuild b/dev-python/pytest-xdist/pytest-xdist-3.8.0.ebuild
index 8b224d8fe0ba..7eaef3c4501c 100644
--- a/dev-python/pytest-xdist/pytest-xdist-3.8.0.ebuild
+++ b/dev-python/pytest-xdist/pytest-xdist-3.8.0.ebuild
@@ -32,12 +32,16 @@ BDEPEND="
)
"
-EPYTEST_PLUGINS=()
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
distutils_enable_tests pytest
-python_test() {
- # force loading necessary plugins in subprocesses
- local -x PYTEST_PLUGINS=xdist.plugin,xdist.looponfail
+PATCHES=(
+ # https://github.com/pytest-dev/pytest-xdist/commit/0c984478f39d7a01aa24c061f2581bdfd071cb6a
+ # https://github.com/pytest-dev/pytest-xdist/commit/44f4bea2652e06e7cd5d4a063aa2673b5ef701ee
+ "${FILESDIR}/${P}-pytest-9.patch"
+)
+python_test() {
epytest -o tmp_path_retention_count=1
}
diff --git a/dev-python/python-dateutil/python-dateutil-2.9.0_p0.ebuild b/dev-python/python-dateutil/python-dateutil-2.9.0_p0.ebuild
index 8b68fe27115c..aaa9a5a2bbde 100644
--- a/dev-python/python-dateutil/python-dateutil-2.9.0_p0.ebuild
+++ b/dev-python/python-dateutil/python-dateutil-2.9.0_p0.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYPI_NO_NORMALIZE=1
-PYTHON_FULLY_TESTED=( python3_{10..13} pypy3 )
+PYTHON_FULLY_TESTED=( python3_{11..14} python3_{13..14}t )
PYTHON_COMPAT=( "${PYTHON_FULLY_TESTED[@]}" )
inherit distutils-r1 pypi
@@ -40,6 +40,7 @@ PATCHES=(
"${FILESDIR}/python-dateutil-2.9.0-no-pytest-cov.patch"
)
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_prepare_all() {
@@ -57,6 +58,5 @@ python_test() {
)
fi
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
epytest
}
diff --git a/dev-python/python-discovery/python-discovery-1.3.0.ebuild b/dev-python/python-discovery/python-discovery-1.3.0.ebuild
index b487b66b0704..7bf748143147 100644
--- a/dev-python/python-discovery/python-discovery-1.3.0.ebuild
+++ b/dev-python/python-discovery/python-discovery-1.3.0.ebuild
@@ -45,6 +45,12 @@ python_test() {
tests/test_py_info_extra.py::test_satisfies_path_not_abs_basename_match
)
;;
+ python3.15)
+ EPYTEST_DESELECT+=(
+ # TODO
+ tests/test_discovery.py::test_predicate_with_fallback_specs
+ )
+ ;;
esac
epytest
diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest
index 048e88db6d9b..e2effc321343 100644
--- a/dev-python/python-tests/Manifest
+++ b/dev-python/python-tests/Manifest
@@ -20,6 +20,8 @@ DIST Python-3.14.4.tar.xz 23855332 BLAKE2B cb96ace0b3a0316ffc8f2fca1e9b67dc8df7d
DIST Python-3.14.4.tar.xz.sigstore 5219 BLAKE2B 5d4e076139082e525c2758a64ca2cc4c05c69e601ffc9c402d5a041f8b867ee5f37264ded3bfa014cc979ccd3c573c208d2321ac5a3be93b906116bd0d8a5c37 SHA512 ec41d0d25fa3cd87cf62adcbe6b9e575cecc49f947a64ca997aa792ed22d93ef1bbc4dc2848e365dfb43b6c447dcf47417f9c68a5881d0ede8750fece9f97a87
DIST Python-3.14.5rc1.tar.xz 23894408 BLAKE2B 7b894cc9fbc6df9255ad04aed506cc7751a8f59295a1d491e150731b34b2197802f3d12cc51c6412247c5a23c051f3f90ce69b969e0bc0a74cffb11e62de58e9 SHA512 67ede84d59046e3b413643449a7eced8cefcd908238b8a34d2ac38507d967201695c62c22464f1bfd51669daf306995262279c7bbfc5a25998ed867a3d743b38
DIST Python-3.14.5rc1.tar.xz.sigstore 5363 BLAKE2B ad8ed1f9076ce67c33b290cdb6e24846de1642ce2deece0ec42d8adca67e7b403a53f7d64064c8c9d6d7ce05f8f1a62f5069a2cc85721160902b98cfebd254f9 SHA512 26a9129b8df1d5b83f6d81bdc49c78a5f45542ff9e56a3ecfc5b9480b5a0e0ee44b2fd3d1dd7775458c9076b4b27d891f149f3b24304f2456b5a0c5615e6ea12
+DIST Python-3.15.0b1.tar.xz 35178032 BLAKE2B 1bbfdeb373fa3a26b9d957084edc9bfb7f81ae579cd9bf9fba1a43a3bf409a2e01512c56c642eb47b6e1a3c0fe44f182d72a15498b90a75d424b6325d0fd97a1 SHA512 ce486f903aa8690f1725565c3fdc0034a983a60952a96a950fa7c89ab899a71cabed4a9252c497e0474f206f83ff02e2793cf975c345825324b85bced750c270
+DIST Python-3.15.0b1.tar.xz.sigstore 5411 BLAKE2B a1697c5239559c6871d3299c3dfa77edf0319ee03be12f6b3bd0b424e05a81b19249a98a316e5e6f8d403b04392ba69910ab8cef4ed86cf0d4a92fe04501a651 SHA512 72a4e1cfd48ba7ead6d5896d1441cf8c0991549beb28bc546534c4e1296495c9874dc7941239f8f5ed833b038bd66437868fd121c89a123d62cad157b744a4c2
DIST python-gentoo-patches-3.11.11.tar.xz 10604 BLAKE2B 6be4c66b0458f7a7085aef976cff3dcb4d114ac0b64fb27327a5693e8d41a77f7eeed718b9c5a1b1961278235ee4cd43497aa3dc27e6e6bed65804b95f667a15 SHA512 ab8113a94949cead34d976179f80c3e0a6686bf2476079a74f97b4d08c24a237500dc7ee09dc3b0ec98d2fbcb138397c73d7e2252e617a957a13999e59115158
DIST python-gentoo-patches-3.11.14.tar.xz 15968 BLAKE2B 5bd091046feee03afd59a87b72c44b3a0874b23f89eb98020cc057f5651d31857721eb095bd056dae8bef85220dbe5aff2900cf8411dceb14e8775a4a2f09a93 SHA512 760df16f98c1a91164b43c13eb36073c74169321569791125fdad8682419b818736fe02e40c1aa1232a11081b1007c923a8fd2afd002eb4fdff0800da92d03e2
DIST python-gentoo-patches-3.11.15.tar.xz 15988 BLAKE2B 16e98450749ebd1c617acbb9aba380fff50a8f7dba19f3f99edd3bd387c1a5d61d78cbf493cf003dfe03d2be59374ad89077b39fe203059bbbb881ae02a72ea5 SHA512 b705c72a585e315eb3ba69ffbf2a80836f0fc894fa8ae2c22768e6aa8ac2a23aada5def3d2635193793f58e3da81f0f10281c47bd8e129e1fd2c9167d292265b
@@ -37,3 +39,4 @@ DIST python-gentoo-patches-3.14.3.tar.xz 8012 BLAKE2B a8106360a6c77e0e19ecdf55e9
DIST python-gentoo-patches-3.14.4.tar.xz 8012 BLAKE2B 07928ae9e2c057b75edabe287e0201a9aa35ddcfbb1b35c3729c25ccea707c343214ed82e0ad5df65a0994c0e263f7f50e8dd95ebdaae37210c14e1cc1f2d492 SHA512 8c8cf86842f42fa8634c0faee2c1e6dd51c621ae42d48300b0ab185d90653ad58e30c967a6b455e237303aa52d139a2980b948f8613725884d6aa0df016e07d8
DIST python-gentoo-patches-3.14.4_p1.tar.xz 9016 BLAKE2B 39bee4db44684a087b3bf6793a22d1655c2a90fabb56ea0421ded013cf53e66ac83cb3016d469f06c5d7cab7b8d22138bc4c1e01843a174299e1af0f88e5818c SHA512 a299212bd3d4a70c83a1efe1ec155f7b13829aa10aecf638de0889cf7b8ebe5227d3f14a1d51dac18fa4ae19b1060639490e61f2c1f52deadd40065c07b317f2
DIST python-gentoo-patches-3.14.5rc1.tar.xz 8436 BLAKE2B 527156383cba6288df15a0bb0718960ba2a30428a2367d014a11b22e598c63d2c912480e37b064233e05590d1112b6c3c4ac1fa9db392ac11a98b8ec54847d30 SHA512 8adb64ca0bc1c653fb04a71bd6b40415ae3ca4761edf578199c5cc1d1da392b239ca07af395114970467c8233027c5eefb4b869bcab4379d5a7310a286aaec53
+DIST python-gentoo-patches-3.15.0b1.tar.xz 3420 BLAKE2B 266ada600b587ff430a21c38d7585fcdb2d320a4160dd8e93dac3a6517faa685eadda9a9b14b271c6380a78112c83f39fc30bbbece10bfc7e6cde2eba61103fa SHA512 9f42700e03051fbadf3b9e6f7163077ab6b8c1f406e5bfc99560b590dbbabe72e5b38cd8c16b21aec75c4e760af549bffef6d76e65f390d61cd8840894949565
diff --git a/dev-python/python-tests/python-tests-0.3.15.0_beta1.ebuild b/dev-python/python-tests/python-tests-0.3.15.0_beta1.ebuild
new file mode 100644
index 000000000000..55db1d00e5bf
--- /dev/null
+++ b/dev-python/python-tests/python-tests-0.3.15.0_beta1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+REAL_PV=${PV#0.}
+MY_PV=${REAL_PV/_beta/b}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 2-3)t
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${REAL_PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-0.3.15.9999.ebuild b/dev-python/python-tests/python-tests-0.3.15.9999.ebuild
new file mode 100644
index 000000000000..5d2768f19454
--- /dev/null
+++ b/dev-python/python-tests/python-tests-0.3.15.9999.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit git-r3 python-r1
+
+PYVER="$(ver_cut 2-3)t"
+PATCHSET="python-gentoo-patches-3.15.0b1"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+"
+EGIT_REPO_URI="https://github.com/python/cpython.git"
+EGIT_BRANCH=${PYVER%t}
+S="${WORKDIR}/${P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+src_unpack() {
+ git-r3_src_unpack
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-3.15.0_beta1.ebuild b/dev-python/python-tests/python-tests-3.15.0_beta1.ebuild
new file mode 100644
index 000000000000..7d88acdb6a4d
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.15.0_beta1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+VERIFY_SIG_METHOD=sigstore
+
+inherit python-r1 verify-sig
+
+MY_PV=${PV/_beta/b}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+if [[ ${PV} != *_* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+# https://www.python.org/downloads/metadata/sigstore/
+VERIFY_SIG_CERT_IDENTITY=hugo@python.org
+VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/python-tests/python-tests-3.15.9999.ebuild b/dev-python/python-tests/python-tests-3.15.9999.ebuild
new file mode 100644
index 000000000000..287a601c13c7
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.15.9999.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit git-r3 python-r1
+
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-3.15.0b1"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://distfiles.gentoo.org/pub/proj/python/patchsets/${PYVER%t}/${PATCHSET}.tar.xz
+"
+EGIT_REPO_URI="https://github.com/python/cpython.git"
+EGIT_BRANCH=${PYVER}
+S="${WORKDIR}/${P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+# enable by default to help CI handle it (we have no additional deps)
+IUSE="+python_targets_${PYTHON_COMPAT[0]}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+"
+
+src_unpack() {
+ git-r3_src_unpack
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/referencing/referencing-0.37.0.ebuild b/dev-python/referencing/referencing-0.37.0.ebuild
index c1e2b7ccf0b5..0d848153cbe4 100644
--- a/dev-python/referencing/referencing-0.37.0.ebuild
+++ b/dev-python/referencing/referencing-0.37.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023-2025 Gentoo Authors
+# Copyright 2023-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -33,5 +33,5 @@ BDEPEND="
)
"
-EPYTEST_PLUGINS=( pytest-subtests )
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/six/six-1.17.0.ebuild b/dev-python/six/six-1.17.0.ebuild
index 2c16c5a5c31a..77f47b86da81 100644
--- a/dev-python/six/six-1.17.0.ebuild
+++ b/dev-python/six/six-1.17.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,23 +19,11 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
distutils_enable_sphinx documentation --no-autodoc
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
-python_test() {
- local EPYTEST_DESELECT=(
- # requires USE=gdb on CPython, no point in forcing the dep
- # also missing on PyPy
- 'test_six.py::test_move_items[dbm_ndbm]'
- )
-
- case ${EPYTHON} in
- python3.13*)
- EPYTEST_DESELECT+=(
- 'test_six.py::test_move_items[tkinter_tix]'
- )
- ;;
- esac
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
+EPYTEST_DESELECT=(
+ # requires USE=gdb on CPython, no point in forcing the dep
+ # also missing on PyPy
+ 'test_six.py::test_move_items[dbm_ndbm]'
+)
diff --git a/dev-python/snakeoil/snakeoil-0.11.0.ebuild b/dev-python/snakeoil/snakeoil-0.11.0.ebuild
index dad929bf6304..9ddefe4f03c2 100644
--- a/dev-python/snakeoil/snakeoil-0.11.0.ebuild
+++ b/dev-python/snakeoil/snakeoil-0.11.0.ebuild
@@ -28,5 +28,5 @@ HOMEPAGE="
LICENSE="BSD BSD-2 MIT"
SLOT="0"
-EPYTEST_PLUGINS=( pytest-subtests )
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/snakeoil/snakeoil-9999.ebuild b/dev-python/snakeoil/snakeoil-9999.ebuild
index 8274fd09946a..5d158b8d6ff9 100644
--- a/dev-python/snakeoil/snakeoil-9999.ebuild
+++ b/dev-python/snakeoil/snakeoil-9999.ebuild
@@ -28,5 +28,5 @@ HOMEPAGE="
LICENSE="BSD BSD-2 MIT"
SLOT="0"
-EPYTEST_PLUGINS=( pytest-subtests )
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild b/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild
index c2dc8839ab69..f18de8fb3226 100644
--- a/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild
+++ b/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,8 +25,20 @@ LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_test() {
+ local EPYTEST_DESELECT=()
+
+ case ${EPYTHON} in
+ python3.15*)
+ EPYTEST_DESELECT+=(
+ # changes in pprint(). yes, seriously.
+ tests/sortedcollection.py::tests.sortedcollection.SortedCollection
+ )
+ ;;
+ esac
+
epytest --ignore docs/conf.py
}
diff --git a/dev-python/test/test-0.ebuild b/dev-python/test/test-0.ebuild
index d22498627c72..c3d6ebd47418 100644
--- a/dev-python/test/test-0.ebuild
+++ b/dev-python/test/test-0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2024-2025 Gentoo Authors
+# Copyright 2024-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -45,4 +45,10 @@ RDEPEND="
$(python_gen_cond_dep '
dev-python/python-tests:3.14t
' python3_14t)
+ $(python_gen_cond_dep '
+ dev-python/python-tests:3.15
+ ' python3_15)
+ $(python_gen_cond_dep '
+ dev-python/python-tests:3.15t
+ ' python3_15t)
"
diff --git a/dev-python/testpath/testpath-0.6.0.ebuild b/dev-python/testpath/testpath-0.6.0.ebuild
index 5b576cc0a83f..dd58885f2c89 100644
--- a/dev-python/testpath/testpath-0.6.0.ebuild
+++ b/dev-python/testpath/testpath-0.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,5 +23,6 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
distutils_enable_sphinx doc
diff --git a/dev-python/tomli-w/tomli-w-1.2.0.ebuild b/dev-python/tomli-w/tomli-w-1.2.0.ebuild
index 1247c6fe971e..e2f3dd3d0c8f 100644
--- a/dev-python/tomli-w/tomli-w-1.2.0.ebuild
+++ b/dev-python/tomli-w/tomli-w-1.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Gentoo Authors
+# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -28,6 +28,7 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_test() {
diff --git a/dev-python/types-docutils/Manifest b/dev-python/types-docutils/Manifest
index 59c2670c4dfa..6ad31d7bf615 100644
--- a/dev-python/types-docutils/Manifest
+++ b/dev-python/types-docutils/Manifest
@@ -2,3 +2,4 @@ DIST types_docutils-0.22.3.20260223.tar.gz 57230 BLAKE2B 0de823a10d6b77e78911375
DIST types_docutils-0.22.3.20260316.tar.gz 57263 BLAKE2B 492f000970dcc60ca9893956e750812682de458f40b070b03cbe79ae4c48cdb46c318b59085192ba23a60e1e80e0c3141c10a23b78a0ab7ab0adb649f074c7ff SHA512 25c96cd05b6fa64c7ba97cd7f3a321b0ebdb80b22cc3efde92bf57dd5210f52fe0b6f97028a7cb1a37cb73d55a9a3ba7e8fa409958d954984affb3e2d02d45da
DIST types_docutils-0.22.3.20260322.tar.gz 57311 BLAKE2B 441f184bc0ef3b262eccedb6b1e9aca6ec2c99e529cdde3807f636ad18d9f35093233a9d065da8f76e23765fc8c6ceae679b7a01182b273ea790f0fb44bb2a6b SHA512 73616d36516b97df70e84430edf6589d9179ed6dee3dc2aca9acc9c782782580e2b41a71657625393a07191cb5b4acd6536f35062626617c4ee15d07f748437b
DIST types_docutils-0.22.3.20260408.tar.gz 57383 BLAKE2B 83a4923113df46e9e34dabd0c96ed9d890d76281cc8f19623d4c4ddce0059649b859bac063258de79a07cddf2c8873d82ae9b5e780a8fcbc687327c145705795 SHA512 006e13a701e06c86f41ae1e7da147a016e6f5262a0928bbb602b72b34a7a528ebb5e38713499a3f173ff0000ead60f3b5791b865e046980b62f94fc96159bfd9
+DIST types_docutils-0.22.3.20260508.tar.gz 57431 BLAKE2B 57e177b3456f67aa15064931c546a59c9adf1f768a2f06af0e94a89cae54c1056c91b3128766dd823e79cb123d5af1a4aae2030bf72f147f1415881a55e27c24 SHA512 1134279db54637bdc38a18d22898745ced91edc62b117e402f5b8f7a32d912dd84aeedb189727de7f558c72cb7aae299815d79b09768e068d7129a0fd23a094d
diff --git a/dev-python/types-docutils/types-docutils-0.22.3.20260508.ebuild b/dev-python/types-docutils/types-docutils-0.22.3.20260508.ebuild
new file mode 100644
index 000000000000..a83282aaa882
--- /dev/null
+++ b/dev-python/types-docutils/types-docutils-0.22.3.20260508.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for docutils"
+HOMEPAGE="https://pypi.org/project/types-docutils/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
diff --git a/dev-python/types-gdb/Manifest b/dev-python/types-gdb/Manifest
index 403420ea94d3..598846103baf 100644
--- a/dev-python/types-gdb/Manifest
+++ b/dev-python/types-gdb/Manifest
@@ -1,2 +1,3 @@
DIST types_gdb-16.3.0.20260203.tar.gz 25569 BLAKE2B da5f1e81f508f8383ab00a4581083d3c6e6e056380f9ab13308b732b3a597074d47fc7a359ee52756135cdfd00ca429d89366824b09b1c755002df12f3573513 SHA512 bd8665f5ce2ec975f9a59b5646332fec68e846614b9e4f84aafb60f6c84772448b847f7610e0d787a3b07904093d5983b5c8b5fe4da30d5dfc135c3eddf9044c
DIST types_gdb-16.3.0.20260408.tar.gz 25606 BLAKE2B 6e2699b4d5a3e901d2267903cf0c9a85a64696b27eded54dd7f8f3852945b8e20f2bdbcf5a8e5b171e8fd2a574a8ae0522ad3d5b5a6dbdb4b2e94d741d4d0c6c SHA512 28e2f9cdfb796baac931a51a50824bf95c388d210ca3f02bd9ab47432f2d6a7f3ad413754d568dc7e74c7c8a566d17958293ee9a8df6f07a8602bf52a74ddd4f
+DIST types_gdb-16.3.0.20260508.tar.gz 25611 BLAKE2B 80a83065f83483202203d3983c645a86bab44b1b078f8e2612de04ff23f56869c07f1030aa6708d0ba48fbb3da75669c3bf9b5b222bcd7815b3781ebaa2ac647 SHA512 8102b8660b24eb17000ef3806288532b4c46fb78b7779a12dad161a9105ea45b90edf80664dc8a23a647eb40fa8d823aa74cb62264dd9c90969614a7ec54785e
diff --git a/dev-python/types-gdb/types-gdb-16.3.0.20260508.ebuild b/dev-python/types-gdb/types-gdb-16.3.0.20260508.ebuild
new file mode 100644
index 000000000000..fbf77e18e21e
--- /dev/null
+++ b/dev-python/types-gdb/types-gdb-16.3.0.20260508.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for gdb"
+HOMEPAGE="https://pypi.org/project/types-gdb/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
diff --git a/dev-python/types-psutil/Manifest b/dev-python/types-psutil/Manifest
index 5b0db9d7d35d..ab4a587f7c6d 100644
--- a/dev-python/types-psutil/Manifest
+++ b/dev-python/types-psutil/Manifest
@@ -1 +1,2 @@
DIST types_psutil-7.2.2.20260408.tar.gz 26556 BLAKE2B 9348e17cc616c3f6dc8e5de62bda803f97d6648585aa7d0156ee583a6d95197383fc0886f011c28b366005915ad43791524457f981bf566ef89f916e51e17c6c SHA512 969b6424777e01c6a7ec9d15f6cd0455cec21295c8494f5ba37581149e11679bd0d1cf8b266484e24443cc872d711787207a1961c7303afc31dd66fd15d6708e
+DIST types_psutil-7.2.2.20260508.tar.gz 26575 BLAKE2B 8d31e14a16e6c701543c0bc71a2966a765a4dc8746e6513375fa1b9ea19b795629aa86c38f09d1fa21e29477f0e6f2bc3792e91d706da1e6a5b44f82d7d499f8 SHA512 4de979a1228bed858f0ef5e87229a5630b29d232f286948edff2e0fe2033aeaf3f7b26b298b86ffda51380f9883d4f0bcdaebc247956e3f2db8f3b3013d74627
diff --git a/dev-python/types-psutil/types-psutil-7.2.2.20260508.ebuild b/dev-python/types-psutil/types-psutil-7.2.2.20260508.ebuild
new file mode 100644
index 000000000000..2ecb6de47a46
--- /dev/null
+++ b/dev-python/types-psutil/types-psutil-7.2.2.20260508.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for psutil"
+HOMEPAGE="https://pypi.org/project/types-psutil/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ >=dev-python/setuptools-82.0.1[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/types-python-dateutil/Manifest b/dev-python/types-python-dateutil/Manifest
index 14dd89a8db9b..743e747d347e 100644
--- a/dev-python/types-python-dateutil/Manifest
+++ b/dev-python/types-python-dateutil/Manifest
@@ -1,2 +1,2 @@
-DIST types_python_dateutil-2.9.0.20260402.tar.gz 16941 BLAKE2B 8f5bcd0b848915ced25bb31cf19d4387234030122de5011c0fff6df1ba31b77082afb43341a11362d32be095f0a01b8144c380867f2a04341a4a1746feece70b SHA512 856eed7a6b1dfb5d655ca6a0521f48275c4560888028c42327e956993350617ed9d11751d70c0239b6a331c557b6c91f743d5dc02b9e5fe256f64973536c588a
DIST types_python_dateutil-2.9.0.20260408.tar.gz 16981 BLAKE2B 370257483cc71a80d03aff060d13bfd7f25272c315f84b69e2f4fcedeba169852001a4218658b0713a6639678aad411a2df52f48e14d64570e122fd1854de3d8 SHA512 4b4ca3ed3f06490340e9e945ff3abfa1569387ab68af1d180c5ef3a766e46fa6e607865577cf9a6290e48b4b533b4b8d55df6e06850cd631c877444664db241f
+DIST types_python_dateutil-2.9.0.20260508.tar.gz 17033 BLAKE2B a46afbb5e7889e389b5b3a6af75696245cf35b1dd2db97437edc0a51fc5fb2077fde65be7ab8a403e94cbca8440fc2c0f7723bc1b12aeb9fe9de63217125f264 SHA512 45716b6ab87712b358b878f834f8f01c719c4785038911e6c8112ab69c1a02e3783bff0a55eb878d5349feb6f772fcefb0152d47fb6393b3aeea024ab5e60597
diff --git a/dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260402.ebuild b/dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260508.ebuild
index 9ee72fee1d13..9ee72fee1d13 100644
--- a/dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260402.ebuild
+++ b/dev-python/types-python-dateutil/types-python-dateutil-2.9.0.20260508.ebuild
diff --git a/dev-python/types-setuptools/Manifest b/dev-python/types-setuptools/Manifest
index d9bace1dec2a..58d2a791674d 100644
--- a/dev-python/types-setuptools/Manifest
+++ b/dev-python/types-setuptools/Manifest
@@ -1 +1,2 @@
DIST types_setuptools-82.0.0.20260408.tar.gz 44861 BLAKE2B 962c26fe06a7c3e679820357cd754d2b86e0a6f23c8d73aa53f70f14c971b4c2adce4f1996f42a364d8a803c517d7ac9f64d925e2226a57580adae5170363f90 SHA512 13fa510d928db23f5a651e566862e3f27e5ff5182b48ba5fbc606363ef7221839baa29989530db046571ced6924733fed4f3a01f3f4961d1fe38fc952fa84d4d
+DIST types_setuptools-82.0.0.20260508.tar.gz 44919 BLAKE2B d650e3d58d09dbac12f91d6f72eda28f6b7b0b9811d3b30b1d7f452fb89af77ee2b67f2c36dfe7cef4dc79a4fa703dff6d380af63b4be8d8edf47e94085a2e8a SHA512 933c50dcd1db4fd0915af5d204421171118138afd2201481341733d6b816083b2da2f5af7f3e17ff6630a79673384701dc826d8a83fda95eaa534ff94470f75a
diff --git a/dev-python/types-setuptools/types-setuptools-82.0.0.20260508.ebuild b/dev-python/types-setuptools/types-setuptools-82.0.0.20260508.ebuild
new file mode 100644
index 000000000000..6eb6ca6acfff
--- /dev/null
+++ b/dev-python/types-setuptools/types-setuptools-82.0.0.20260508.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for setuptools"
+HOMEPAGE="https://pypi.org/project/types-setuptools/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ >=dev-python/setuptools-82.0.1[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/typing-extensions/files/typing-extensions-4.15.0-py314-test.patch b/dev-python/typing-extensions/files/typing-extensions-4.15.0-py314-test.patch
new file mode 100644
index 000000000000..a17dc9615766
--- /dev/null
+++ b/dev-python/typing-extensions/files/typing-extensions-4.15.0-py314-test.patch
@@ -0,0 +1,28 @@
+From aa81d37f98c3322d535a7d0c8dd093870f0fb5ef Mon Sep 17 00:00:00 2001
+From: Jelle Zijlstra <jelle.zijlstra@gmail.com>
+Date: Thu, 18 Sep 2025 21:03:16 -0700
+Subject: [PATCH] fix test on 3.14
+
+---
+ src/test_typing_extensions.py | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/src/test_typing_extensions.py b/src/test_typing_extensions.py
+index 27f4059c..f07e1eb0 100644
+--- a/src/test_typing_extensions.py
++++ b/src/test_typing_extensions.py
+@@ -4508,8 +4508,12 @@ def _make_td(future, class_name, annos, base, extra_names=None):
+ child = _make_td(
+ child_future, "Child", {"child": "int"}, "Base", {"Base": base}
+ )
+- base_anno = typing.ForwardRef("int", module="builtins") if base_future else int
+- child_anno = typing.ForwardRef("int", module="builtins") if child_future else int
++ if sys.version_info >= (3, 14):
++ base_anno = typing.ForwardRef("int", module="builtins", owner=base) if base_future else int
++ child_anno = typing.ForwardRef("int", module="builtins", owner=child) if child_future else int
++ else:
++ base_anno = typing.ForwardRef("int", module="builtins") if base_future else int
++ child_anno = typing.ForwardRef("int", module="builtins") if child_future else int
+ self.assertEqual(base.__annotations__, {'base': base_anno})
+ self.assertEqual(
+ child.__annotations__, {'child': child_anno, 'base': base_anno}
diff --git a/dev-python/typing-extensions/typing-extensions-4.15.0.ebuild b/dev-python/typing-extensions/typing-extensions-4.15.0.ebuild
index 77aefda0260d..1b950558c798 100644
--- a/dev-python/typing-extensions/typing-extensions-4.15.0.ebuild
+++ b/dev-python/typing-extensions/typing-extensions-4.15.0.ebuild
@@ -28,9 +28,40 @@ BDEPEND="
)
"
-distutils_enable_tests unittest
+# TODO: switch back to unittests once we don't need deselects
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/python/typing_extensions/pull/683
+ "${FILESDIR}/${P}-py314-test.patch"
+)
python_test() {
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ pypy3.11)
+ EPYTEST_DESELECT+=(
+ src/test_typing_extensions.py::NamedTupleTests::test_same_as_typing_NamedTuple
+ )
+ ;;
+ python3.15*)
+ EPYTEST_DESELECT+=(
+ src/test_typing_extensions.py::AllTests::test_alias_names_still_exist
+ src/test_typing_extensions.py::AllTests::test_all_names_in___all__
+ src/test_typing_extensions.py::AllTests::test_typing_extensions_includes_standard
+ src/test_typing_extensions.py::GetTypeHintTests::test_annotation_and_optional_default
+ src/test_typing_extensions.py::NoExtraItemsTests::test_constructor
+ src/test_typing_extensions.py::NoExtraItemsTests::test_repr
+ src/test_typing_extensions.py::TestSentinels::test_sentinel_deprecated
+ src/test_typing_extensions.py::TestSentinels::test_sentinel_deprecated_explicit_repr
+ src/test_typing_extensions.py::TypeAliasTypeTests::test_cannot_set_attributes
+ src/test_typing_extensions.py::TypeVarTupleTests::test_repr
+ src/test_typing_extensions.py::UnpackTests::test_repr
+ )
+ ;;
+ esac
+
cd src || die
- eunittest
+ epytest
}
diff --git a/dev-python/uv-build/Manifest b/dev-python/uv-build/Manifest
index e3fbe826c8ca..b414f8957586 100644
--- a/dev-python/uv-build/Manifest
+++ b/dev-python/uv-build/Manifest
@@ -1,6 +1,7 @@
DIST uv_build-0.11.1.tar.gz 381246 BLAKE2B 57bd4e5366899c745294e967b9c632ff12587faf5d016cf5dab90c722fa61ff999ec0d95274c88372b27f5ff4878ffe6a9a476bfea62ca4eccb1796666a09599 SHA512 7d1421bfd46635e7e927be951eaf4f5044dc6dceec99178a2c0204b6bafd54648f98107d9ac68ebf0685132c3a34fdbfb6a6b684455caa9acd9b4bb9cb9dfcab
DIST uv_build-0.11.10.tar.gz 376745 BLAKE2B 8447c14db66981f9188336dc1d8b7918784f2cfbdd2ddeed3d66f5cdc7a1d521f49082c68d5c48d5fbee87b8f4bdc39cb259353f99d63f6e77d2eed02c292e7c SHA512 ab1e10e9c23bfd90ef12a274695076a2e9756da3b13b062a9f4ab073fc8789a2faee3a8b87af1abeb071de84f245a26ebf896b31825b753acdd32ba74df6f1d0
DIST uv_build-0.11.11.tar.gz 376722 BLAKE2B 58e62e3366961b489f1f6e1e8c83d0b770879660d9d3b0c6266dce46c5da8e9887408b09f0f59fd3fecda30adf887012df6390f386fb22843c0bb66e3c813a97 SHA512 ed612caee074c756c8ab242e3e0bf64e76dfddfefa383c3587b675b07e61621504ccaea653733c27ef2dd9b8bef1aa6d21ba1b9b39102d49c9ec3e9d7d13e758
+DIST uv_build-0.11.12.tar.gz 377487 BLAKE2B f9d4c1b53f9c4ff2209f2b96a581f01f0a363fa02c6724e3d4f1d10ac3dd8447eb15d2aaac2a2fafe3d8a3fe20bf37a0b65c2e24f771d7f163a09f34a0151d51 SHA512 99747e605f984fb8b9b8d9b68a987cf20f49cec24cb57f795ef393268246366befb390398ca8d447f1178b8ad307376a2dbb62d083b8e987c0d2d5ab8116a6b3
DIST uv_build-0.11.2.tar.gz 381227 BLAKE2B a0989816b2c4f224fe78d88a0dbee2f87b6426d0cb67299ae7f5caec644bf11ba0a3503919103d5c2a747cf696f2e7447a618a8b11156ffad9c308eeb3fb1e7b SHA512 66ce17d053002eb3c7fe82bf0c0e9953770dbc5b75822fa6bacdddd3092b5899d5416cd669e633a58b644e6fb6ceb6a8ff940878d7874c08b5d23b02564f2ba3
DIST uv_build-0.11.3.tar.gz 382592 BLAKE2B c212ba9dbd57d588f229a6972a20824cb1439c1770d677a7754a2ccad598a0b9235edbd4c6e178bae99c04c2a31a104a6213335e2c8e005728b25500c1b3a729 SHA512 3ed531b2ac111a8446336861eb80e90d5e7aa595cc65de7e83c79f94f4b2a0183028e3738ed30169b00430ef380574701fd1beffd120bc2cf7510d3bcb28bf11
DIST uv_build-0.11.5.tar.gz 360294 BLAKE2B 5e913cc609b40bbc906e574a16d1cecec8fa59517ef3dac392ebe81e7d377ca20346ddb09b4292377cbbc506cce95e5c4df284d80b5f26907de6539999bc52d3 SHA512 731cdd7a17ba40d20add0ef9928c688016b4f19b5378a7cb71a3d02aca09a4585a1bd6b6304ef4c1b5745fe3edb5ee36a1a49b563946dd29d1e210fd5946d1de
diff --git a/dev-python/uv-build/uv-build-0.11.12.ebuild b/dev-python/uv-build/uv-build-0.11.12.ebuild
new file mode 100644
index 000000000000..2ab229426f84
--- /dev/null
+++ b/dev-python/uv-build/uv-build-0.11.12.ebuild
@@ -0,0 +1,99 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maturin compiles uv-build executable for every impl, we do not want
+# that, so we use another backend. And since we use another backend,
+# why not dogfood it in the first place?
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="PEP517 uv build backend"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv-build/
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/uv-${PV}
+"
+BDEPEND="
+ test? (
+ app-arch/unzip
+ dev-python/build[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # use the executable from dev-python/uv instead of building
+ # a largely overlapping uv-build executable (at least for now)
+ sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
+
+ # replace the build-system section
+ sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
+ cat >> pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["uv_build<9999"]
+ build-backend = "uv_build"
+ backend-path = ["src"]
+ EOF
+
+ # rename to make uv-build find it
+ mv python src || die
+}
+
+python_test() {
+ "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
+
+ local zip_result=$(
+ unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
+ )
+ local zip_expected="\
+Archive: dist/uv_build-${PV}-py3-none-any.whl
+ testing: uv_build/ OK
+ testing: uv_build/__init__.py OK
+ testing: uv_build/__main__.py OK
+ testing: uv_build/py.typed OK
+ testing: uv_build-${PV}.dist-info/ OK
+ testing: uv_build-${PV}.dist-info/WHEEL OK
+ testing: uv_build-${PV}.dist-info/METADATA OK
+ testing: uv_build-${PV}.dist-info/RECORD OK
+No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
+"
+ if [[ ${zip_result} != ${zip_expected} ]]; then
+ eerror ".zip result:\n${zip_result}"
+ eerror ".zip expected:\n${zip_expected}"
+ die ".whl result mismatch"
+ fi
+
+ local tar_result=$(
+ tar -tf "dist/uv_build-${PV}.tar.gz" || die
+ )
+ local tar_expected="\
+uv_build-${PV}/PKG-INFO
+uv_build-${PV}/
+uv_build-${PV}/README.md
+uv_build-${PV}/pyproject.toml
+uv_build-${PV}/src
+uv_build-${PV}/src/uv_build
+uv_build-${PV}/src/uv_build/__init__.py
+uv_build-${PV}/src/uv_build/__main__.py
+uv_build-${PV}/src/uv_build/py.typed\
+"
+ if [[ ${tar_result} != ${tar_expected} ]]; then
+ eerror ".tar.gz result:\n${tar_result}"
+ eerror ".tar.gz expected:\n${tar_expected}"
+ die ".tar.gz result mismatch"
+ fi
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index e5a888b0682d..53e01ca146a6 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -4,6 +4,8 @@ DIST uv-0.11.10-crates.tar.xz 46797580 BLAKE2B 69c193a4d0d8b81b7ee504ad4439c3647
DIST uv-0.11.10.gh.tar.gz 5252516 BLAKE2B 81502332be0bc84c89714a61c4befef787f5191bb0aa56f6fe7aec08d3f5df7ee0df44bace6c1bfdd34b7b2dd65a42f621888b240688495526bdcea86fd5879f SHA512 d969396c1cf0793a4589aa8c9c47b100d3e1ca8bdd55bd95f3bdbd1164c67f58678c06190f35e22248d173f6ddc2b24cbae8c5888f44dd2cc6a1a7e1f0eeea16
DIST uv-0.11.11-crates.tar.xz 46797580 BLAKE2B 69c193a4d0d8b81b7ee504ad4439c36474b4bbfd91387b29a498f5cdc1529b3d52d0bbd2249e1ec4163914f63b4c139f68762396ed61e3480e5a813089277d59 SHA512 dbde92b55820f8b507f2c87d35917cf9e43da9add81046c2715a8e542e2d88d5916d90e7c07e9d1dc8331ca7b098e38cc5bcbac0ef66ceb81c5a68d9146bb35b
DIST uv-0.11.11.gh.tar.gz 5253331 BLAKE2B 4a866f3838bd60630e3ff47ea8e6c754fd986aa242bc9c355f071bed321385d9ef6049a7663777027d49b9fbd80cf0793b2ab0271500d7305873574332b5a48e SHA512 f9129868fb8d343d63e4080deb0e71e71fdb5c71e2ea4f17d05d0f0c20338daf86f521895e8bd69795ffad36ddc94e8cf5ee8fbbb4eb5fdc0692524b21eef9c6
+DIST uv-0.11.12-crates.tar.xz 46797580 BLAKE2B 69c193a4d0d8b81b7ee504ad4439c36474b4bbfd91387b29a498f5cdc1529b3d52d0bbd2249e1ec4163914f63b4c139f68762396ed61e3480e5a813089277d59 SHA512 dbde92b55820f8b507f2c87d35917cf9e43da9add81046c2715a8e542e2d88d5916d90e7c07e9d1dc8331ca7b098e38cc5bcbac0ef66ceb81c5a68d9146bb35b
+DIST uv-0.11.12.gh.tar.gz 5259600 BLAKE2B bf43a4b38e37a45d73820e3d445ac38a56314cefcdc0a734cad5b93200ce9e4b689c8aa3125eb34d8aa150ff4b2b94b786dd518a49aacf6d6ce655f66e9506f9 SHA512 a23c95152f0515645174b85ed8887fe29e3e56d457aaad7992cfe5a59b95e527348ebd7e0ce9d23cf589f20849326a876ae61ed9b10324a48b8021077cd264fe
DIST uv-0.11.2-crates.tar.xz 46998940 BLAKE2B d3447d8f11e14a01abb7531249a3c5806e9de8bc981897863d2018efc498ab0d01291b400a522030a73ae98e5b80e1451203f060c1925e044c8eb7c323b37014 SHA512 768bf9ee90e4728d853255bdb5eb68ba61ddb49f389e4264feeb2a5efae92b18be1ac403f64d37c073f7c4455113b365bd4b298293623abd598a0795b0909adf
DIST uv-0.11.2.gh.tar.gz 5135705 BLAKE2B abcedb5bbf0ef2c6585580818a7b11046a1555559254c2255a929050a61d3906fe176007ca8d39d0b4a2fc8582ce70376a73b7b6c4856af796056099750ecea1 SHA512 5db8253e1403a21a82c172429f8a2ee336d19a7b1e640942bd8b6a523defa8308f60b035c8ffae40d1de9292a598a5619f36debf5bf7bb3663b1f630e311cfd4
DIST uv-0.11.3-crates.tar.xz 46981748 BLAKE2B be42ea0a2997d23ddbd1e2772c4ad1e7a2ab8866624fa3e8eee31638e65293a5241ae0a3b3c2cecab64250b8e166f548c041145ed840a91e8c90d4d1d79ffcb8 SHA512 99686a97e1f630c396b6e7b282e85b37642b3fefb05233ec0276f4fc8fc297738c600c2348c5f15c5744242dfe121412f0bf2d4339f59b254b02ab9f4612d614
diff --git a/dev-python/uv/uv-0.11.12.ebuild b/dev-python/uv/uv-0.11.12.ebuild
new file mode 100644
index 000000000000..030c2e92591f
--- /dev/null
+++ b/dev-python/uv/uv-0.11.12.ebuild
@@ -0,0 +1,164 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+RUST_MIN_VER="1.93.0"
+
+inherit cargo check-reqs
+
+CRATE_PV=${PV}
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
+ CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016
+ ZLIB BZIP2
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ dev-lang/python:3.13
+ !!~dev-python/uv-0.5.0
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+ rust_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # force thin lto, makes build much faster and less memory hungry
+ # (i.e. makes it possible to actually build uv on 32-bit PPC)
+ sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+
+ # uv is now forcing bundled liblzma, sigh
+ sed -i -e '/xz/s:"static"::' Cargo.toml || die
+}
+
+src_configure() {
+ local myfeatures=(
+ test-git
+ test-pypi
+ test-python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+
+ insinto /etc/xdg/uv
+ newins - uv.toml <<-EOF || die
+ # These defaults match Fedora, see:
+ # https://src.fedoraproject.org/rpms/uv/pull-request/18
+
+ # By default ("automatic"), uv downloads missing Python versions
+ # automatically and keeps them in the user's home directory.
+ # Disable that to make downloading opt-in, and especially
+ # to avoid unnecessarily fetching custom Python when the distro
+ # package would be preferable. Python builds can still be
+ # downloaded manually via "uv python install".
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-downloads
+ python-downloads = "manual"
+
+ # By default ("managed"), uv always prefers self-installed
+ # Python versions over the system Python, independently
+ # of versions. Since we generally expect users to use that
+ # to install old Python versions not in ::gentoo anymore,
+ # this effectively means that uv would end up preferring very
+ # old Python versions over the newer ones that are provided
+ # by the system. Default to using the system versions to avoid
+ # this counter-intuitive behavior.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-preference
+ python-preference = "system"
+ EOF
+}
diff --git a/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild b/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild
index cc70e45c32ea..df59fa873dcd 100644
--- a/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild
+++ b/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2025 Gentoo Authors
+# Copyright 2022-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -28,6 +28,7 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
python_test() {