summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-07-15 03:04:45 -0500
committerroot <root@alpha.trunkmasters.com>2026-07-15 03:04:45 -0500
commit2c34c3402bb20be0fbb58513da479b431ecc7320 (patch)
tree53a49676a7aa41b31db56731ff381a8dcce4d2de /dev-python
parent22ab5437b999b26eb3960d336dd392ccab062827 (diff)
downloadbaldeagleos-repo-2c34c3402bb20be0fbb58513da479b431ecc7320.tar.gz
baldeagleos-repo-2c34c3402bb20be0fbb58513da479b431ecc7320.tar.xz
baldeagleos-repo-2c34c3402bb20be0fbb58513da479b431ecc7320.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/asgiref/Manifest1
-rw-r--r--dev-python/asgiref/asgiref-3.12.1.ebuild24
-rw-r--r--dev-python/bashate/bashate-2.1.1.ebuild2
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.43.48.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.43.48.ebuild67
-rw-r--r--dev-python/construct/construct-2.10.70.ebuild3
-rw-r--r--dev-python/dogpile-cache/dogpile-cache-1.5.0.ebuild2
-rw-r--r--dev-python/extras/extras-1.0.0-r2.ebuild8
-rw-r--r--dev-python/faker/Manifest1
-rw-r--r--dev-python/faker/faker-40.31.0.ebuild41
-rw-r--r--dev-python/httpx2/Manifest1
-rw-r--r--dev-python/httpx2/httpx2-2.7.0.ebuild107
-rw-r--r--dev-python/jc/Manifest1
-rw-r--r--dev-python/jc/jc-1.25.6.ebuild37
-rw-r--r--dev-python/jedi/jedi-0.20.0.ebuild9
-rw-r--r--dev-python/lockfile/lockfile-0.12.2-r3.ebuild3
-rw-r--r--dev-python/mechanicalsoup/mechanicalsoup-1.4.0.ebuild12
-rw-r--r--dev-python/munch/munch-4.0.0.ebuild3
-rw-r--r--dev-python/mypy/Manifest1
-rw-r--r--dev-python/mypy/mypy-2.3.0.ebuild148
-rw-r--r--dev-python/nextinspace/nextinspace-3.0.1.ebuild9
-rw-r--r--dev-python/nextinspace/nextinspace-9999.ebuild9
-rw-r--r--dev-python/oslotest/Manifest2
-rw-r--r--dev-python/oslotest/oslotest-6.0.0.ebuild32
-rw-r--r--dev-python/oslotest/oslotest-6.1.0.ebuild27
-rw-r--r--dev-python/parso/parso-0.8.7.ebuild19
-rw-r--r--dev-python/pbr/pbr-7.0.3-r1.ebuild79
-rw-r--r--dev-python/pbr/pbr-7.0.3-r2.ebuild25
-rw-r--r--dev-python/peewee/Manifest1
-rw-r--r--dev-python/peewee/peewee-4.2.3.ebuild83
-rw-r--r--dev-python/pudb/pudb-2025.1.5.ebuild2
-rw-r--r--dev-python/pyghmi/Manifest1
-rw-r--r--dev-python/pyghmi/pyghmi-1.6.18.ebuild32
-rw-r--r--dev-python/pykeepass/pykeepass-4.1.1_p1.ebuild1
-rw-r--r--dev-python/pymediainfo/pymediainfo-7.0.1.ebuild3
-rw-r--r--dev-python/pyperclip/pyperclip-1.11.0.ebuild2
-rw-r--r--dev-python/pytest-param-files/pytest-param-files-0.6.0.ebuild4
-rw-r--r--dev-python/pytest-tap/Manifest1
-rw-r--r--dev-python/pytest-tap/files/pytest-tap-3.5-hatchling-wheel.patch70
-rw-r--r--dev-python/pytest-tap/metadata.xml10
-rw-r--r--dev-python/pytest-tap/pytest-tap-3.5.ebuild34
-rw-r--r--dev-python/python-daemon/python-daemon-3.1.2.ebuild2
-rw-r--r--dev-python/python-glanceclient/files/python-glanceclient-4.12.0-py315.patch67
-rw-r--r--dev-python/python-glanceclient/python-glanceclient-4.12.0.ebuild5
-rw-r--r--dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild2
-rw-r--r--dev-python/pywinrm/pywinrm-0.5.0.ebuild2
-rw-r--r--dev-python/requests-credssp/requests-credssp-2.0.0.ebuild2
-rw-r--r--dev-python/requests-kerberos/requests-kerberos-0.15.0.ebuild2
-rw-r--r--dev-python/requests-mock/requests-mock-1.12.1.ebuild5
-rw-r--r--dev-python/requests-ntlm/requests-ntlm-1.3.0.ebuild2
-rw-r--r--dev-python/requests-oauthlib/files/requests-oauthlib-2.0.0-test.patch31
-rw-r--r--dev-python/requests-oauthlib/requests-oauthlib-2.0.0.ebuild34
-rw-r--r--dev-python/ruamel-yaml/ruamel-yaml-0.19.1.ebuild6
-rw-r--r--dev-python/sphinx-basic-ng/sphinx-basic-ng-1.0.0_beta2.ebuild2
-rw-r--r--dev-python/sphinxcontrib-apidoc/sphinxcontrib-apidoc-0.6.0.ebuild8
-rw-r--r--dev-python/tavalidate/tavalidate-0.0.6-r1.ebuild1
-rw-r--r--dev-python/testscenarios/Manifest2
-rw-r--r--dev-python/testscenarios/testscenarios-0.5.0-r3.ebuild36
-rw-r--r--dev-python/testscenarios/testscenarios-0.6.ebuild37
-rw-r--r--dev-python/testtools/Manifest1
-rw-r--r--dev-python/testtools/files/testtools-2.7.2-py314.patch34
-rw-r--r--dev-python/testtools/files/testtools-2.7.2-twisted-fix.patch45
-rw-r--r--dev-python/testtools/testtools-2.7.2-r1.ebuild49
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2026.7.14.ebuild56
-rw-r--r--dev-python/twython/twython-3.9.1-r1.ebuild2
68 files changed, 893 insertions, 513 deletions
diff --git a/dev-python/asgiref/Manifest b/dev-python/asgiref/Manifest
index 03e68c421116..e2c1334d2728 100644
--- a/dev-python/asgiref/Manifest
+++ b/dev-python/asgiref/Manifest
@@ -1 +1,2 @@
DIST asgiref-3.11.1.tar.gz 38550 BLAKE2B 0741e7eb098adb54a72e9e364b60f898368348050dbc56c0d7d8af6b0dc20f3dc5f0761645e922948f885d1939aae4a874f100732479425d63df6f32153fbfce SHA512 f41977ac7a07af7b7c2630b50df30ea4dbbe6b2e6157e9064e3440e342297b5e0c3776648f29e9f8eb95de04d2486872eb2f3e6734b9695073c76f8abaf4053a
+DIST asgiref-3.12.1.tar.gz 42378 BLAKE2B 0e825068e755eb408fddc2abbfe8f8d884b18398087edfa4e9b807fb6774596e2b38248d757b6398019d24cb1751c3eb707bae0491d1cd7f5c4f059800856019 SHA512 21cea091580c0595bffae0fd92a81c18404318d8b7a6597032f23a42e1fda7b94c64c1dfa6ad0034839479a1246f55d5aa02aadcdd2d00df9d415027d2a120ff
diff --git a/dev-python/asgiref/asgiref-3.12.1.ebuild b/dev-python/asgiref/asgiref-3.12.1.ebuild
new file mode 100644
index 000000000000..084cbf2813db
--- /dev/null
+++ b/dev-python/asgiref/asgiref-3.12.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="ASGI utilities (successor to WSGI)"
+HOMEPAGE="
+ https://asgi.readthedocs.io/en/latest/
+ https://github.com/django/asgiref/
+ https://pypi.org/project/asgiref/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+EPYTEST_PLUGINS=( pytest-asyncio )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
diff --git a/dev-python/bashate/bashate-2.1.1.ebuild b/dev-python/bashate/bashate-2.1.1.ebuild
index a201db4f6fd1..e68185dae39d 100644
--- a/dev-python/bashate/bashate-2.1.1.ebuild
+++ b/dev-python/bashate/bashate-2.1.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/boto3/Manifest b/dev-python/boto3/Manifest
index 4a7900b08b57..c34b89b8468a 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -3,3 +3,4 @@ DIST boto3-1.43.36.gh.tar.gz 1169288 BLAKE2B c316bf8bc804c7c7a70eed0b01a66d7cf8f
DIST boto3-1.43.40.gh.tar.gz 1175361 BLAKE2B cb24a2dd76debf1b3b2d759d020b2cf17248db20044b06e0c191821170644f4762997a527b8e5c401305f5b0c725d1269d610c9cb1aa2bb776d894f70b09f3ac SHA512 eb7d0218051abddd74e544d8eaa4e83cdd2e9ef305d059c165c926ade12a795ae196eefbaa2b64176fe26a1bf20419d775670fccc4fda485c93197d10efcbcf1
DIST boto3-1.43.46.gh.tar.gz 1180600 BLAKE2B b27ffe984aade7d1f1b0a4c66204acecd5216cf5ccd66c40ed18015c48103c1a9a8c68ea39e5ddc971f6fdeaa0bcf4c39cdd9c252494f1650ea0f431644f4148 SHA512 447256677ce2943450877d7e08dc3c9bc2dc6da284d68c7a43ef25c6445acf135b5b26bf5ede80bd4d6fde48181bf6e5898aadda84e3190caad176280c313a31
DIST boto3-1.43.47.gh.tar.gz 1181255 BLAKE2B 9ecbe5f8f8720df1b5f9359aded4d708c25078703ca38763720068ba1135ade97f12bb288bc83850a72a14a56fbb5b58cbbd41c7160ba04c9e35ea6f47963f9f SHA512 d33f8e155195169727996dfbbe84a7d51ec1c65730853d61e21a952a0acbc7b5cb2c02ac61530a3da83dfd952ee423ffda62544723fe04ccd367a97ceed2e36c
+DIST boto3-1.43.48.gh.tar.gz 1182113 BLAKE2B 8485ed17dc4abb15648962d35264738d274e808f63cfe86c33e69462601f591f12ad3409e0e640c0ba394211b50a058154f628a3e2bd7c7bfe4223fd89a6921c SHA512 2b35c4b13cf36d93f1d74936e03acf38dc7939a9e509330c6af3e866c755d90b3c1eb95c4fbd153120eb8fce5d6a88eac0ff7a121812bad411b452fa74d3c300
diff --git a/dev-python/boto3/boto3-1.43.48.ebuild b/dev-python/boto3/boto3-1.43.48.ebuild
new file mode 100644
index 000000000000..93fbbe6dd59b
--- /dev/null
+++ b/dev-python/boto3/boto3-1.43.48.ebuild
@@ -0,0 +1,53 @@
+# 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_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.19.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index bde2d104ae9d..c7c285eedabb 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -3,3 +3,4 @@ DIST botocore-1.43.36.gh.tar.gz 16601718 BLAKE2B b4643995a2c173c9df865923d6912e2
DIST botocore-1.43.40.gh.tar.gz 16621912 BLAKE2B 87339ac693df7e8753b8a7463a93aea57f24005c48c6d5b0276307928704893f315e1b7c671d9a91340899bd8bff8846f7afa23eca4dbfaa03f54a3f07b2fa43 SHA512 49257c431950a63d34c137b2b3ed1bb642cfbdc98351dab2cb2dfdaae6f6e88ecb11c74d89d9ec52ad6b558e9d94fa6bc5da13c5a0e67ad441decf1df516e888
DIST botocore-1.43.46.gh.tar.gz 16680698 BLAKE2B cbb2a15145d8fd7d4021538774b21bdb3adfc95c0e9f91a5970b1cb1fc03f5453ab0b6315d27c70b846ea12a2fc8442eccebd04e357d22589cddf5e39fa251dd SHA512 a37e10b54383ad6a7fc1a764c8f565c127eac81e989197335b5bc3ca57b736cbcb36635c070d6d2cc48a06fafdb7c88319630d2c22b3b4349efb406438ba2a50
DIST botocore-1.43.47.gh.tar.gz 16683434 BLAKE2B ff7b769b782fd8c94e3faeaffa095f0a659b31afbe271619a698d18b2804c2d38e91f94f8d561fbedae08bf6461d4b48cee09a25e96f8d532a48a408499c14b3 SHA512 12f33f16dcc43b60904b1ec7f1307a7a45072f4cdafe3b9a6b4c4859009c7cd1b434a76a6c661e7b1d79c67a82743440ff57d07ee3fe5b3bf0ef8a980ad943e8
+DIST botocore-1.43.48.gh.tar.gz 16688909 BLAKE2B 18765fa54b970c5792bed052d910faa1179b8813000da14da41c72735c1a91f86286222b1614fd6b70d6793216e4f35017d42007b9c3a18c92ae03803c5854ed SHA512 560bcbb47f8de85de29bbcd359a01f314eaea8a38298e31f6efdc43b17fb307c10aabe7dfd19866a9fb37b4df42aff1e77f173c105d1c3a46e0117d1b40b5d40
diff --git a/dev-python/botocore/botocore-1.43.48.ebuild b/dev-python/botocore/botocore-1.43.48.ebuild
new file mode 100644
index 000000000000..a3a161f78545
--- /dev/null
+++ b/dev-python/botocore/botocore-1.43.48.ebuild
@@ -0,0 +1,67 @@
+# 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_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/construct/construct-2.10.70.ebuild b/dev-python/construct/construct-2.10.70.ebuild
index 589656d9ce40..81217fdff02e 100644
--- a/dev-python/construct/construct-2.10.70.ebuild
+++ b/dev-python/construct/construct-2.10.70.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
@@ -34,6 +34,7 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
EPYTEST_IGNORE=(
diff --git a/dev-python/dogpile-cache/dogpile-cache-1.5.0.ebuild b/dev-python/dogpile-cache/dogpile-cache-1.5.0.ebuild
index 6db5d1838a49..9acb2016de18 100644
--- a/dev-python/dogpile-cache/dogpile-cache-1.5.0.ebuild
+++ b/dev-python/dogpile-cache/dogpile-cache-1.5.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
diff --git a/dev-python/extras/extras-1.0.0-r2.ebuild b/dev-python/extras/extras-1.0.0-r2.ebuild
index ee0bbeb0979c..afea5eb9c002 100644
--- a/dev-python/extras/extras-1.0.0-r2.ebuild
+++ b/dev-python/extras/extras-1.0.0-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
@@ -27,3 +27,9 @@ BDEPEND="
"
distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed -i -e 's:assertEquals:assertEqual:' extras/tests/test_*.py || die
+}
diff --git a/dev-python/faker/Manifest b/dev-python/faker/Manifest
index 848176511d7a..177de3ccac8b 100644
--- a/dev-python/faker/Manifest
+++ b/dev-python/faker/Manifest
@@ -1,3 +1,4 @@
DIST faker-40.23.0.tar.gz 1972975 BLAKE2B bd31c81933c72a1cb367e764331295656e5b92f8b2aab19ee15bbf41a5c9cadae504e76068ee3882b90f13be9a323131e4d1b2af224f9462121acdbf9c6b5988 SHA512 734a4e51073596f6ba8b46cea54257e32f5f1567c21c44f15d82e5eff19a8209a07dd130767d57c02626d95e17cd517ee3c0aec3fc4682761b56e10c25058165
DIST faker-40.27.0.tar.gz 2018361 BLAKE2B 0a2caa035f137738669b57c50a79209f3c3dfedd0fd077992c2290d3cbde4fca3605d797630327cf82afac50f592cb972f10622832483ed45e7d18cd796906a2 SHA512 33734d76f291e6b36b3551201b6055c515d06d943ec1aaeeba739d38d4709849a99af785e1c49a5473ac12fc58d43114a5493a46de52a0d56861dbe5c84c9b0f
DIST faker-40.28.1.tar.gz 2022717 BLAKE2B a677249f4144ae6c123b438bae2e7d10c8e7faff839fe7371fe4c7d6fdbe61f0d70a4e90c0cc12448f857afb5aec1d4a424cd9ac3f998f5b78d5ff942aaf136d SHA512 3b0c86a85e4772a10b8995df39af498878d2961e4caa5bda61ef3a2f88e26dc1c3f97781f714e46ef67b0dece68ebfb37390379c06f5768a2914f074c7254d92
+DIST faker-40.31.0.tar.gz 2024136 BLAKE2B f3c1256c9d03d6ec918a849fb720b9bf18e8c177babc422896b174effac242b3c979092a084e7d290b718b7f2f9caaa5040479b62dd5d5cde2ac8c4e7ea14cc8 SHA512 aca52d229f21e80b41b94a95986ea1f5f96bbcfe42e3e9a6b197b44a95b0b6b6ef43fac7be7189a9afa8bd11fd28b6735ee321da37a1d74b222ae62f0c419ffb
diff --git a/dev-python/faker/faker-40.31.0.ebuild b/dev-python/faker/faker-40.31.0.ebuild
new file mode 100644
index 000000000000..125fe3904e57
--- /dev/null
+++ b/dev-python/faker/faker-40.31.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+# note: tests are flaky with xdist
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
+distutils_enable_tests pytest
+
+python_test() {
+ epytest
+ epytest --exclusive-faker-session tests/pytest/session_overrides
+}
diff --git a/dev-python/httpx2/Manifest b/dev-python/httpx2/Manifest
index 6d832149447f..efa09e893ff7 100644
--- a/dev-python/httpx2/Manifest
+++ b/dev-python/httpx2/Manifest
@@ -1,2 +1,3 @@
DIST httpx2-2.4.0.gh.tar.gz 2049043 BLAKE2B ec36c399853c4264bfb8247b770f6ddddecab3de150e75659455820fed1d41758326201684c1ec4adaa4a2e5451fceeba58b4ef0210aed7978e285b750ccf806 SHA512 f6033c1032faa078cb954fc9107a3c34ad46a6ab71ef426048f64147b94bd1737ab80447e5bcceec7c3147fd9ccfdf1b58dbaac5d3b9ab8b9bbb46f9e28617ab
DIST httpx2-2.5.0.gh.tar.gz 2053138 BLAKE2B 8d436c215dcb47664c41f0b286bfd614e9eef08161a3c534a40bac5e59d5fe57ec51f87ead1498965d13ad41c4939b3a93b2a053ac2a73d0927593aa8cb61a2a SHA512 45cfadee3c884843e595eb8cffb0887fbee98c069d94c1e5c2498e7ac8c90b414c7d4fff2e8ed4a03589b56b605566674f2dd20e22738aa92812795b50c287f3
+DIST httpx2-2.7.0.gh.tar.gz 2084293 BLAKE2B 82a2ba5d9ea378ecd345e2f44e83a231e52c6a4551c854d2719387abc5a6b03da16fa8c99b731773ee73bbd7212eaa0843bab586edf0938751f0e545b7d170c5 SHA512 4badec86b0e5a4bf0c0974168e65ab24033598f414ea57af24d63c33d5c4700637de3a443cb552cf87f33c6aad3ed17fe498a7ed061d96bde0fe8c22073f3fb2
diff --git a/dev-python/httpx2/httpx2-2.7.0.ebuild b/dev-python/httpx2/httpx2-2.7.0.ebuild
new file mode 100644
index 000000000000..91015cb37a30
--- /dev/null
+++ b/dev-python/httpx2/httpx2-2.7.0.ebuild
@@ -0,0 +1,107 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+# This package combines httpx2 and httpcore2 (because of exact version pin).
+DESCRIPTION="The next generation HTTP client (Pydantic fork)"
+HOMEPAGE="
+ https://pypi.org/project/httpx2/
+ https://pypi.org/project/httpcore2/
+ https://github.com/pydantic/httpx2/
+"
+SRC_URI="
+ https://github.com/pydantic/httpx2/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/anyio-4.10[${PYTHON_USEDEP}]
+ >=dev-python/idna-3.18[${PYTHON_USEDEP}]
+ >=dev-python/h11-0.16[${PYTHON_USEDEP}]
+ >=dev-python/truststore-0.10[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
+ ' 3.12)
+ cli? (
+ >=dev-python/click-8.4[${PYTHON_USEDEP}]
+ =dev-python/pygments-2*[${PYTHON_USEDEP}]
+ >=dev-python/rich-10[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ dev-python/uv-dynamic-versioning[${PYTHON_USEDEP}]
+ test? (
+ dev-python/brotlicffi[${PYTHON_USEDEP}]
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/h2[${PYTHON_USEDEP}]
+ dev-python/starlette[${PYTHON_USEDEP}]
+ dev-python/socksio[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/uvicorn[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}]
+ >=dev-python/wsproto-1.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/zstandard-0.18.0[${PYTHON_USEDEP}]
+ ' 3.12 3.13)
+ )
+"
+
+EPYTEST_PLUGINS=( anyio flaky pytest-{httpbin,trio} )
+EPYTEST_RERUNS=5
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_compile() {
+ local -x UV_DYNAMIC_VERSIONING_BYPASS=${PV}
+
+ cd src/httpcore2 || die
+ distutils-r1_python_compile
+ cd ../httpx2 || die
+ distutils-r1_python_compile
+ cd ../.. || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # random HTTP header case mismatch
+ tests/httpx2/test_main.py::test_auth
+ tests/httpx2/test_main.py::test_binary
+ tests/httpx2/test_main.py::test_follow_redirects
+ tests/httpx2/test_main.py::test_get
+ tests/httpx2/test_main.py::test_json
+ tests/httpx2/test_main.py::test_post
+ tests/httpx2/test_main.py::test_redirects
+ tests/httpx2/test_main.py::test_verbose
+ # Internet
+ tests/httpcore2/test_cancellations.py::test_h2_timeout_during_request
+ tests/httpx2/client/test_proxies.py::test_async_proxy_close
+ tests/httpx2/client/test_proxies.py::test_sync_proxy_close
+ # unexpected logs from uvicorn
+ tests/httpx2/test_utils.py::test_logging_request
+ tests/httpx2/test_utils.py::test_logging_redirect_chain
+ )
+
+ local EPYTEST_IGNORE=()
+ if ! use cli; then
+ EPYTEST_IGNORE+=(
+ tests/httpx2/test_main.py
+ )
+ fi
+
+ epytest tests/{httpcore2,httpx2}
+}
diff --git a/dev-python/jc/Manifest b/dev-python/jc/Manifest
index 55976c1c2b68..d6e3a29bba7a 100644
--- a/dev-python/jc/Manifest
+++ b/dev-python/jc/Manifest
@@ -1,2 +1 @@
-DIST jc-1.25.6.gh.tar.gz 15300270 BLAKE2B a49f05773eb74288dcd93795aed0c2ae8e8efddffdaa20736fbfc1b7397e52fe1f07618c7fb835e304ca845eb93ce3f827cb161a93c6eb3cf4fe4b1821f51e9b SHA512 5ec64731f5e01608fb5cd97fa0e12ad43e7147b79ccc3ab86c685aba7742cdd8a7d8da8d2bec518f675625e569287661a68bc5351f85c2db3776db0644d26dc4
DIST jc-1.25.7.gh.tar.gz 15380863 BLAKE2B 7005171140989c3b4b9053a663e0e2aee6bc8815a541ab61e04373add275806a22b4c13ac10ce1e5875a221d6b3c8c03aab3d79f2edc1161f15f4cb05dfe82e0 SHA512 2b06e538850f91c57b547272468e6096ef6a64e95206cbdd298296eda90605deda96a64ee63b8648bc9d710927249c1639a8cba9423746db2b8b19c61ed0af1d
diff --git a/dev-python/jc/jc-1.25.6.ebuild b/dev-python/jc/jc-1.25.6.ebuild
deleted file mode 100644
index c67537802447..000000000000
--- a/dev-python/jc/jc-1.25.6.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2022-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1
-
-DESCRIPTION="Converts the output of popular command-line tools and file-types to JSON"
-HOMEPAGE="
- https://github.com/kellyjonbrazil/jc/
- https://pypi.org/project/jc/
-"
-# no tests in sdist, as of 1.23.2
-SRC_URI="
- https://github.com/kellyjonbrazil/jc/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64"
-
-RDEPEND="
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/ruamel-yaml[${PYTHON_USEDEP}]
- dev-python/xmltodict[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests unittest
-
-python_test() {
- local -x TZ=America/Los_Angeles
- eunittest
-}
diff --git a/dev-python/jedi/jedi-0.20.0.ebuild b/dev-python/jedi/jedi-0.20.0.ebuild
index 5f974213fd54..482cf7bd384e 100644
--- a/dev-python/jedi/jedi-0.20.0.ebuild
+++ b/dev-python/jedi/jedi-0.20.0.ebuild
@@ -47,14 +47,9 @@ python_test() {
)
case ${EPYTHON} in
- pypy3.11)
+ python3.15*)
EPYTEST_DESELECT+=(
- test/test_api/test_api.py::test_preload_modules
- test/test_api/test_interpreter.py::test_param_infer_default
- test/test_inference/test_compiled.py::test_next_docstr
- test/test_inference/test_compiled.py::test_time_docstring
- test/test_inference/test_gradual/test_typeshed.py::test_module_exists_only_as_stub
- test/test_utils.py::TestSetupReadline::test_import
+ test/test_inference/test_sys_path.py::test_venv_and_pths
)
;;
esac
diff --git a/dev-python/lockfile/lockfile-0.12.2-r3.ebuild b/dev-python/lockfile/lockfile-0.12.2-r3.ebuild
index ce5e67d093be..3ccdb728430d 100644
--- a/dev-python/lockfile/lockfile-0.12.2-r3.ebuild
+++ b/dev-python/lockfile/lockfile-0.12.2-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
@@ -26,5 +26,6 @@ PATCHES=(
"${FILESDIR}"/${P}-pytest.patch
)
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
distutils_enable_sphinx doc/source --no-autodoc
diff --git a/dev-python/mechanicalsoup/mechanicalsoup-1.4.0.ebuild b/dev-python/mechanicalsoup/mechanicalsoup-1.4.0.ebuild
index f5e05b99de9f..91ba4344dd98 100644
--- a/dev-python/mechanicalsoup/mechanicalsoup-1.4.0.ebuild
+++ b/dev-python/mechanicalsoup/mechanicalsoup-1.4.0.ebuild
@@ -27,17 +27,17 @@ RDEPEND="
>=dev-python/requests-2.22.0[${PYTHON_USEDEP}]
>=dev-python/urllib3-2.2.2[${PYTHON_USEDEP}]
"
-BDEPEND="
- test? (
- >=dev-python/requests-mock-1.3.0[${PYTHON_USEDEP}]
- )
-"
-EPYTEST_PLUGINS=( pytest-{httpbin,mock} )
+EPYTEST_PLUGINS=( pytest-{httpbin,mock} requests-mock )
distutils_enable_tests pytest
distutils_enable_sphinx docs
python_test() {
+ local EPYTEST_DESELECT=(
+ # random regression (deps?)
+ tests/test_stateful_browser.py::test_select_form_associated_elements
+ )
+
epytest -o addopts=
}
diff --git a/dev-python/munch/munch-4.0.0.ebuild b/dev-python/munch/munch-4.0.0.ebuild
index c7cc1235f2e1..1706a270a29e 100644
--- a/dev-python/munch/munch-4.0.0.ebuild
+++ b/dev-python/munch/munch-4.0.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,6 +25,7 @@ BDEPEND="
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
PATCHES=(
diff --git a/dev-python/mypy/Manifest b/dev-python/mypy/Manifest
index 3684f8b8c01a..5da9d5206fa8 100644
--- a/dev-python/mypy/Manifest
+++ b/dev-python/mypy/Manifest
@@ -1,3 +1,4 @@
DIST mypy-1.20.2.gh.tar.gz 3837137 BLAKE2B cc28ad8a145d27dd4f6f395496e44ed80859df634e89fe7d584975107534cf063db97817b5b94665e2b7629ca1fa67c75c0ed2978237f10d68606c33bc6e79d3 SHA512 55affb5d086b18ea16b5cc9fd4bb2fbc99987d444f2c0b6c64aaa9dd87a7790f99385b922eb6afbd5fe0c0ff0a5da9f69ab03bb3d8aac350aa5b2f85174fc130
DIST mypy-2.1.0.gh.tar.gz 3916741 BLAKE2B 37bf2f6d79377ebde68537119c0b58ae9cf6868421329b1d5b814e48788749e53cd34053bb5472385881b167cc8af7fdd85cef3c63792868668286516fe27462 SHA512 ae24addeaa7c7f51b43df718482be368e9078c16c42c2449cabed74b98d3a36a701235b092d044c3e452ec84ee26806090f2d38e173d752e8511a178e12cd761
DIST mypy-2.2.0.gh.tar.gz 3970949 BLAKE2B 975d59c31ad9127be7d490a706c9bceb06b9eb0c19e96ed9112f35626c0a615edd51f83ddd4c1a30188c58572b45768dfbdd3f3c65c670972de46f96c3427cd3 SHA512 6f8d3be955df2e3de1495c67931ec813f62c05b68969108a2ba1a978221924e860bc03b48eddf51f4efca1c8f684e2708637004f6ce457489ba6fdea31582fdb
+DIST mypy-2.3.0.gh.tar.gz 4005925 BLAKE2B 72d9e55459d11729fe75e299c36dee981acb0576925bc4c4273f688bf7859736e17ccebf349bcf345f3cd1939353e1bbfe81ad655c3ba99cc08f11d3cf89cf78 SHA512 6457a9372149cb7154ea772bc3981838a7f7a51d652fefe2caa56015d7b1c1389ea069cfae6086e9840e317a97eb980548089b70b3135f5d1b1e6580298dfcbe
diff --git a/dev-python/mypy/mypy-2.3.0.ebuild b/dev-python/mypy/mypy-2.3.0.ebuild
new file mode 100644
index 000000000000..525c023a8c1c
--- /dev/null
+++ b/dev-python/mypy/mypy-2.3.0.ebuild
@@ -0,0 +1,148 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Optional static typing for Python"
+HOMEPAGE="
+ https://www.mypy-lang.org/
+ https://github.com/python/mypy/
+ https://pypi.org/project/mypy/
+"
+SRC_URI="
+ https://github.com/python/mypy/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="native-extensions"
+
+# stubgen collides with this package: https://bugs.gentoo.org/585594
+RDEPEND="
+ !dev-util/stubgen
+ <dev-python/ast-serialize-1[${PYTHON_USEDEP}]
+ >=dev-python/ast-serialize-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/librt-0.13.0[${PYTHON_USEDEP}]
+ >=dev-python/mypy-extensions-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pathspec-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ ${RDEPEND}
+ dev-python/types-psutil[${PYTHON_USEDEP}]
+ dev-python/types-setuptools[${PYTHON_USEDEP}]
+ )
+ test? (
+ >=dev-python/attrs-18.0[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.9.1[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+# frustratingly, mypyc produces non-deterministic output. If ccache is enabled it will be a waste of time,
+# but simultaneously it might trash your system and fill up the cache with a giant wave of non-reproducible
+# test files (https://github.com/mypyc/mypyc/issues/1014)
+export CCACHE_DISABLE=1
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.14.0-no-werror.patch
+)
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # don't force pytest-xdist, in case user asked for EPYTEST_JOBS=1
+ sed -i -e '/addopts/s:-nauto::' pyproject.toml || die
+}
+
+python_compile() {
+ local -x MYPY_USE_MYPYC=$(usex native-extensions 1 0)
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # the majority of them require Internet (via pip)
+ mypy/test/testpep561.py
+ # known broken with assertions enabled
+ # https://github.com/python/mypy/issues/16043
+ mypyc/test/test_external.py::TestExternal::test_c_unit_test
+ mypyc/test/test_run.py::TestRun::run-async.test::testRunAsyncMiscTypesInEnvironment
+ mypyc/test/test_run.py::TestRun::run-bools.test::testBoolOps
+ mypyc/test/test_run.py::TestRun::run-classes.test::testDelException
+ mypyc/test/test_run.py::TestRun::run-classes.test::testDelForDictSubclass
+ mypyc/test/test_run.py::TestRun::run-classes.test::testSubclassDict
+ mypyc/test/test_run.py::TestRun::run-dicts.test::testDictIterationMethodsRun
+ mypyc/test/test_run.py::TestRun::run-dicts.test::testDictMethods
+ mypyc/test/test_run.py::TestRun::run-dunders.test::testDundersContainer
+ mypyc/test/test_run.py::TestRun::run-floats.test::testFloatOps
+ mypyc/test/test_run.py::TestRun::run-i64.test::testI64BasicOps
+ mypyc/test/test_run.py::TestRun::run-i64.test::testI64DefaultArgValues
+ mypyc/test/test_run.py::TestRun::run-i64.test::testI64ErrorValuesAndUndefined
+ mypyc/test/test_run.py::TestRun::run-i64.test::testI64GlueMethodsAndInheritance
+ mypyc/test/test_run.py::TestRun::run-librt-strings.test::testLibrtStrings_librt
+ mypyc/test/test_run.py::TestRun::run-vecs-i64.test::testVecI64BasicOps_librt
+ mypyc/test/test_run.py::TestRun::run-vecs-i64.test::testVecI64BasicOps_librt_experimental
+ mypyc/test/test_run.py::TestRun::run-vecs-misc.test::testVecMiscBasicOps_librt
+ mypyc/test/test_run.py::TestRun::run-vecs-nested.test::testVecNestedBasicOps_librt
+ mypyc/test/test_run.py::TestRun::run-vecs-t.test::testVecTBasicOps_librt
+ mypyc/test/test_run.py::TestRun::run-vecs-t.test::testVecTBasicOps_librt_experimental
+ mypyc/test/test_run.py::TestRunStrictDunderTyping::run-dunders.test::testDundersContainer_dunder_typing
+ mypyc/test/test_run.py::TestRunStrictDunderTyping::run-floats.test::testFloatOps_dunder_typing
+ # these assume that types-docutils are not installed
+ mypy/test/testpythoneval.py::PythonEvaluationSuite::pythoneval.test::testIgnoreImportIfNoPython3StubAvailable
+ mypy/test/testpythoneval.py::PythonEvaluationSuite::pythoneval.test::testNoPython3StubAvailable
+ # TODO
+ mypy/test/meta/test_parse_data.py
+ mypy/test/meta/test_update_data.py
+ # Unknown SIGBUS, bug #967850
+ mypyc/test/test_run.py::TestRun::run-classes.test::testBufferRoundTrip_native_libs
+ )
+
+ case ${EPYTHON} in
+ python3.1[45]*)
+ EPYTEST_DESELECT+=(
+ mypyc/test/test_run.py::TestRun::run-async.test::testRunAsyncRefCounting
+ mypyc/test/test_run.py::TestRun::run-tuples.test::testNamedTupleClassSyntax
+ )
+ ;;
+ esac
+
+ # Some mypy/test/testcmdline.py::PythonCmdlineSuite tests
+ # fail with high COLUMNS values
+ local -x COLUMNS=80
+
+ # The tests depend on having in-source compiled extensions if you want to
+ # test those compiled extensions. Various crucial test dependencies aren't
+ # installed. Even pyproject.toml is needed because that's where pytest args
+ # are in. Hack them into the build directory and delete them afterwards.
+ # See: https://github.com/python/mypy/issues/16143
+ local -x MYPY_TEST_PREFIX="${S}"
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ cp -r "${S}"/{conftest.py,pyproject.toml} . || die
+
+ local failed=
+ nonfatal epytest || failed=1
+
+ rm -r conftest.py pyproject.toml .mypy_cache || die
+
+ [[ ${failed} ]] && die "epytest failed with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ optfeature "dmypy status -v support for memory use" dev-python/psutil
+}
diff --git a/dev-python/nextinspace/nextinspace-3.0.1.ebuild b/dev-python/nextinspace/nextinspace-3.0.1.ebuild
index 5a44788bf6d5..d7cfc842e967 100644
--- a/dev-python/nextinspace/nextinspace-3.0.1.ebuild
+++ b/dev-python/nextinspace/nextinspace-3.0.1.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
@@ -25,11 +25,6 @@ RDEPEND="
>=dev-python/colorama-0.4.3[${PYTHON_USEDEP}]
>=dev-python/requests-2.24[${PYTHON_USEDEP}]
"
-BDEPEND="
- test? (
- dev-python/pytest-lazy-fixtures[${PYTHON_USEDEP}]
- >=dev-python/requests-mock-1.8[${PYTHON_USEDEP}]
- )
-"
+EPYTEST_PLUGINS=( pytest-lazy-fixtures requests-mock )
distutils_enable_tests pytest
diff --git a/dev-python/nextinspace/nextinspace-9999.ebuild b/dev-python/nextinspace/nextinspace-9999.ebuild
index 23039ff15516..d7314c82636e 100644
--- a/dev-python/nextinspace/nextinspace-9999.ebuild
+++ b/dev-python/nextinspace/nextinspace-9999.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
@@ -25,11 +25,6 @@ RDEPEND="
>=dev-python/colorama-0.4.3[${PYTHON_USEDEP}]
>=dev-python/requests-2.24[${PYTHON_USEDEP}]
"
-BDEPEND="
- test? (
- dev-python/pytest-lazy-fixtures[${PYTHON_USEDEP}]
- >=dev-python/requests-mock-1.8[${PYTHON_USEDEP}]
- )
-"
+EPYTEST_PLUGINS=( pytest-lazy-fixtures requests-mock )
distutils_enable_tests pytest
diff --git a/dev-python/oslotest/Manifest b/dev-python/oslotest/Manifest
index 744e30d8e259..917e798ab3a5 100644
--- a/dev-python/oslotest/Manifest
+++ b/dev-python/oslotest/Manifest
@@ -1,3 +1 @@
-DIST oslotest-6.0.0.tar.gz 32997 BLAKE2B 5943f211d1a1d6c0f1b9700be935792c7f83a6db4dc7604afe1f4645939d2e113960c2fd258fe46e08e6f7f653f76bcbc5cb1b5c2e9a30524be7a8f81c50063f SHA512 4541f4fd4cb5ed4e903076fbcb58514709bbf3a9400964a8d54a5708ef8015b75023ef1442eb50980b78e0e794c6c4f95ae6cd75e8c8555fe897862f3d77fbdc
-DIST oslotest-6.1.0.tar.gz 34358 BLAKE2B 4258e3010500fb29b67d58df6ab2088a4e8b7396bb2f6b819d11cbd607a3ccee454a961037d00f6313efbf1f1b144a4655bcf1ae0ac588aef15e4109f6987c00 SHA512 b226f92bee97ad708b672188d0ff03e62673b04496211afb0398232cc6d4abbacf1f730fc2f652532032f19eeef309d178fd5059a603594dee3cdd116b9fcd3a
DIST oslotest-6.1.1.tar.gz 34131 BLAKE2B 681c024e1e7291983ed1ff98cddb14a6e57188c6b604440dbbddf1bd0900453c469a272eaa1e9dd242b69c378a5e9581a8f492ba293402f87ef91153c49b0514 SHA512 11524557f50549d187ab438e5368258b10aa4c10100979305c31269a681d201c204411047e84a89e9b310fe523cdee460fec0d1fdee65491de634b8bf11ec3ea
diff --git a/dev-python/oslotest/oslotest-6.0.0.ebuild b/dev-python/oslotest/oslotest-6.0.0.ebuild
deleted file mode 100644
index a7384b6aedde..000000000000
--- a/dev-python/oslotest/oslotest-6.0.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=pbr
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Oslo test framework"
-HOMEPAGE="
- https://opendev.org/openstack/oslotest/
- https://github.com/openstack/oslotest/
- https://pypi.org/project/oslotest/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 x86"
-
-RDEPEND="
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests unittest
-
-src_prepare() {
- sed -i -e '/subunit/d' requirements.txt || die
- distutils-r1_src_prepare
-}
diff --git a/dev-python/oslotest/oslotest-6.1.0.ebuild b/dev-python/oslotest/oslotest-6.1.0.ebuild
deleted file mode 100644
index d98cd5af7007..000000000000
--- a/dev-python/oslotest/oslotest-6.1.0.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=pbr
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Oslo test framework"
-HOMEPAGE="
- https://opendev.org/openstack/oslotest/
- https://github.com/openstack/oslotest/
- https://pypi.org/project/oslotest/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 x86"
-
-RDEPEND="
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests unittest
diff --git a/dev-python/parso/parso-0.8.7.ebuild b/dev-python/parso/parso-0.8.7.ebuild
index bbb9021820bd..22d476196605 100644
--- a/dev-python/parso/parso-0.8.7.ebuild
+++ b/dev-python/parso/parso-0.8.7.ebuild
@@ -27,3 +27,22 @@ distutils_enable_sphinx docs
EPYTEST_PLUGINS=()
EPYTEST_XDIST=1
distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+
+ case ${EPYTHON} in
+ python3.15*)
+ EPYTEST_DESELECT+=(
+ # minor exception message mismatch
+ 'test/test_python_errors.py::test_python_exception_matches[def f(x, x): pass]'
+ 'test/test_python_errors.py::test_python_exception_matches[def x(*): pass]'
+ # now valid in py3.15
+ 'test/test_python_errors.py::test_python_exception_matches[[*[] for a in [1]]]'
+ 'test/test_python_errors.py::test_python_exception_matches[{**{} for a in [1]}]'
+ )
+ ;;
+ esac
+
+ epytest
+}
diff --git a/dev-python/pbr/pbr-7.0.3-r1.ebuild b/dev-python/pbr/pbr-7.0.3-r1.ebuild
deleted file mode 100644
index 1a48791d56e9..000000000000
--- a/dev-python/pbr/pbr-7.0.3-r1.ebuild
+++ /dev/null
@@ -1,79 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=standalone
-PYTHON_TESTED=( python3_{13..14} )
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Inject some useful and sensible default behaviors into setuptools"
-HOMEPAGE="
- https://opendev.org/openstack/pbr/
- https://github.com/openstack/pbr/
- https://pypi.org/project/pbr/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-# importlib-resources/pkg-resources: _compat/metadata.py
-# packaging/pkg-resources: _compat/packaging.py
-RDEPEND="
- || (
- dev-python/importlib-resources[${PYTHON_USEDEP}]
- dev-python/pkg-resources[${PYTHON_USEDEP}]
- )
- || (
- >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
- dev-python/pkg-resources[${PYTHON_USEDEP}]
- )
- >=dev-python/setuptools-64.0.0[${PYTHON_USEDEP}]
-"
-
-# git is needed for tests, see https://bugs.launchpad.net/pbr/+bug/1326682 and
-# https://bugs.gentoo.org/show_bug.cgi?id=561038 docutils is needed for sphinx
-# exceptions... https://bugs.gentoo.org/show_bug.cgi?id=603848 stestr is run as
-# external tool.
-BDEPEND="
- ${RDEPEND}
- test? (
- $(python_gen_cond_dep '
- >=dev-python/wheel-0.32.0[${PYTHON_USEDEP}]
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20.0.3[${PYTHON_USEDEP}]
- dev-vcs/git
- ' "${PYTHON_TESTED[@]}")
- )
-"
-
-distutils_enable_tests unittest
-
-python_prepare_all() {
- # TODO: investigate
- sed -e 's:test_with_argument:_&:' \
- -e 's:test_wsgi_script_run:_&:' \
- -i pbr/tests/functional/test_wsgi_scripts.py || die
- # installs random packages via pip from the Internet
- rm pbr/tests/functional/test_pep517.py || die
- rm pbr/tests/functional/test_requirements.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Testing on ${EPYTHON} is not supported at the moment"
- return
- fi
-
- cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
- eunittest -b
-}
diff --git a/dev-python/pbr/pbr-7.0.3-r2.ebuild b/dev-python/pbr/pbr-7.0.3-r2.ebuild
index 4f449b2e2167..355fe1236522 100644
--- a/dev-python/pbr/pbr-7.0.3-r2.ebuild
+++ b/dev-python/pbr/pbr-7.0.3-r2.ebuild
@@ -4,7 +4,6 @@
EAPI=8
DISTUTILS_USE_PEP517=standalone
-PYTHON_TESTED=( python3_{13..14} )
PYTHON_COMPAT=( python3_{13..14} )
PYTHON_REQ_USE="threads(+)"
@@ -22,9 +21,6 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
- $(python_gen_cond_dep '
- dev-python/importlib-resources[${PYTHON_USEDEP}]
- ' pypy3_11 3.11)
>=dev-python/packaging-20.0[${PYTHON_USEDEP}]
>=dev-python/setuptools-64.0.0[${PYTHON_USEDEP}]
"
@@ -36,15 +32,13 @@ RDEPEND="
BDEPEND="
${RDEPEND}
test? (
- $(python_gen_cond_dep '
- >=dev-python/wheel-0.32.0[${PYTHON_USEDEP}]
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20.0.3[${PYTHON_USEDEP}]
- dev-vcs/git
- ' "${PYTHON_TESTED[@]}")
+ >=dev-python/wheel-0.32.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20.0.3[${PYTHON_USEDEP}]
+ dev-vcs/git
)
"
@@ -63,11 +57,6 @@ python_prepare_all() {
}
python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Testing on ${EPYTHON} is not supported at the moment"
- return
- fi
-
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
eunittest -b
}
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 1b031c995ea7..88599aaffbfd 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -4,3 +4,4 @@ DIST peewee-4.0.9.gh.tar.gz 1002262 BLAKE2B 456af69c3d57d2e8344080cf40845163c9d0
DIST peewee-4.1.2.gh.tar.gz 1046776 BLAKE2B 8a66ea828ad669db4d20cce089e485f75b9f792bc94fea8a1a1d46f9391e062f89c33cb2e7a34aae84645580967c586d4efff067d1aa4d7cfd6cc1da01fe90e9 SHA512 4a384817a8b3a146ac818b7327cc1ef4a02c0322409353ac29f64d9c66e1e6eeebb226db67fa6e4754662e82307b0abaa57b7526faa4dc7d90d911b8cc3094e9
DIST peewee-4.2.1.gh.tar.gz 1052835 BLAKE2B 1e6600f93622b06ab83b049f6f0ba0791c61e0027c9d00fd6c66a7619176b6be13fd50e655bf233c62247834f9804df338a5cbb8dfac5a9e384f54bafdc3fd8e SHA512 14fef860da92f7408047a24b2faaa9e1941072ff293044d610971ad5a8fafdc9c72f1784a57258529e769e81438a1c47ed42a784f1f7a41bffa563c1a956fd90
DIST peewee-4.2.2.gh.tar.gz 1055796 BLAKE2B caf2e0cd0ffde1073f09d161be2b10665cb9878786e38c25f14579ccea362591948bdadab8c9f7d8d898b287892a0e9ee772653eebe952943e368b054b3b15ed SHA512 0fabf02e266750819df0e0e9ff1934dc43a688b5b697984ca131236f04f68012d7b6b42e74af4b67863f0518a787589880a9c371419ff20d289581a727b783c0
+DIST peewee-4.2.3.gh.tar.gz 1060965 BLAKE2B 8efec0c00959f42586dd53a8f3181935bdb99b44a890faa2fe5f3c44661b98d9c8319711b39998be159cfdca98df86877af92beb407633381576bd40957e6892 SHA512 3094c10735aeaf4729c6232002d48af476d3839ebd844281775fd18a2277c1d03c7ea8c23d18c98735a64c66c9d77e0ce26ea7089aa4d448758a25e663dc3836
diff --git a/dev-python/peewee/peewee-4.2.3.ebuild b/dev-python/peewee/peewee-4.2.3.ebuild
new file mode 100644
index 000000000000..354b1a91f483
--- /dev/null
+++ b/dev-python/peewee/peewee-4.2.3.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+DESCRIPTION="Small Python ORM"
+HOMEPAGE="
+ https://github.com/coleifer/peewee/
+ https://pypi.org/project/peewee/
+"
+SRC_URI="
+ https://github.com/coleifer/peewee/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="examples +native-extensions test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ native-extensions? ( dev-db/sqlite:3= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-db/postgresql
+ dev-python/psycopg:0[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+src_prepare() {
+ default
+
+ # disable test failing on postgres 16
+ sed -e 's/test_timeout/_&/' -i tests/sqliteq.py || die
+}
+
+src_compile() {
+ if ! use native-extensions; then
+ local -x NO_SQLITE=1
+ fi
+
+ distutils-r1_src_compile
+}
+
+src_test() {
+ initdb -D "${T}"/pgsql || die
+ pg_ctl -w -D "${T}"/pgsql start -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" peewee_test || die
+ psql -h "${T}" peewee_test -c 'create extension hstore;' || die
+
+ local -x PEEWEE_PSQL_HOST="${T}"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ "${EPYTHON}" runtests.py -v 2 || die "tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use examples && DOCS=( examples/ )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pudb/pudb-2025.1.5.ebuild b/dev-python/pudb/pudb-2025.1.5.ebuild
index 2af9e0b6f4bf..8725abbd4629 100644
--- a/dev-python/pudb/pudb-2025.1.5.ebuild
+++ b/dev-python/pudb/pudb-2025.1.5.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/pyghmi/Manifest b/dev-python/pyghmi/Manifest
index 9bec1e3c1b1d..ffb708f6524e 100644
--- a/dev-python/pyghmi/Manifest
+++ b/dev-python/pyghmi/Manifest
@@ -1,2 +1 @@
-DIST pyghmi-1.6.18.tar.gz 286180 BLAKE2B 1fed199f2df8142e2d2dde91fd6c53c327a4899432fc8bca73e8bcb8db91bb2d6cb404ac40f8b1c989ce8854d12353692f6359e1906e0d7f989530808abaed0c SHA512 28182d2b13dd9100acf46f07781fd8a6e7fac757471dfa484a760de5b331dd4c71e1113eb3c03d2d7378d64986f5226fc0e20ca4b6c50184f11ac622718068a9
DIST pyghmi-1.6.19.tar.gz 286305 BLAKE2B da1de714f9bc7dc33d332cf3b627dcd27a3c4c82acdfb12ce7fbd72d7d2825f2c949739c84e1d7824172b957e5e1a7a706ca4c5c5bf257a4c92205497bd302b1 SHA512 92c98636e84f0fecdd17c1f4a7aa09d55f937eddf45ab41cd28fe5fe336991b7e19ede3b199b3b71ba66f125ecd33f3fc46b04ea44cbb99ca7afed6cdd129a55
diff --git a/dev-python/pyghmi/pyghmi-1.6.18.ebuild b/dev-python/pyghmi/pyghmi-1.6.18.ebuild
deleted file mode 100644
index ad0c0c312dde..000000000000
--- a/dev-python/pyghmi/pyghmi-1.6.18.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# 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_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A pure python implementation of IPMI protocol"
-HOMEPAGE="
- https://opendev.org/x/pyghmi/
- https://pypi.org/project/pyghmi/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- >=dev-python/cryptography-2.1[${PYTHON_USEDEP}]
- dev-python/pbr[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests unittest
diff --git a/dev-python/pykeepass/pykeepass-4.1.1_p1.ebuild b/dev-python/pykeepass/pykeepass-4.1.1_p1.ebuild
index 9fa6f231a0c7..88446de2b80e 100644
--- a/dev-python/pykeepass/pykeepass-4.1.1_p1.ebuild
+++ b/dev-python/pykeepass/pykeepass-4.1.1_p1.ebuild
@@ -31,7 +31,6 @@ RDEPEND="
>=dev-python/pyotp-2.9.0[${PYTHON_USEDEP}]
"
-EPYTEST_PLUGINS=()
distutils_enable_tests unittest
python_prepare() {
diff --git a/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild b/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild
index b65c8ff1731a..1986b833d291 100644
--- a/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild
+++ b/dev-python/pymediainfo/pymediainfo-7.0.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
@@ -31,4 +31,5 @@ BDEPEND="
"
distutils_enable_sphinx docs dev-python/alabaster dev-python/myst-parser
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/pyperclip/pyperclip-1.11.0.ebuild b/dev-python/pyperclip/pyperclip-1.11.0.ebuild
index 65734613e821..5f78a8102921 100644
--- a/dev-python/pyperclip/pyperclip-1.11.0.ebuild
+++ b/dev-python/pyperclip/pyperclip-1.11.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
diff --git a/dev-python/pytest-param-files/pytest-param-files-0.6.0.ebuild b/dev-python/pytest-param-files/pytest-param-files-0.6.0.ebuild
index 9fcda277909d..99257fa7897a 100644
--- a/dev-python/pytest-param-files/pytest-param-files-0.6.0.ebuild
+++ b/dev-python/pytest-param-files/pytest-param-files-0.6.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-DISTUTILS_USE_PEP517=flit
+DISTUTILS_USE_PEP517=flit-core
PYTHON_COMPAT=( python3_{13..14} )
inherit distutils-r1
@@ -27,4 +27,6 @@ RDEPEND="
>=dev-python/ruamel-yaml-0.15[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=( "${PN}" )
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
distutils_enable_tests pytest
diff --git a/dev-python/pytest-tap/Manifest b/dev-python/pytest-tap/Manifest
new file mode 100644
index 000000000000..778000a5626e
--- /dev/null
+++ b/dev-python/pytest-tap/Manifest
@@ -0,0 +1 @@
+DIST pytest-tap-3.5.gh.tar.gz 17237 BLAKE2B 7a665b81faa08f11bcdc21945e77f4c74372c40ba737c198ee7975de62842f123ccd3a3c1ee5e365c3c43b7f8404f391adf1c2c85fc4017d40f52ab14cc95bb3 SHA512 5227af603294a6f039bb4759859bbcb69629bf057f92c71e51472bce222740346e7c911e00bd0646abf1e6998259d4c4064e91db131c2672b3c9211df0836712
diff --git a/dev-python/pytest-tap/files/pytest-tap-3.5-hatchling-wheel.patch b/dev-python/pytest-tap/files/pytest-tap-3.5-hatchling-wheel.patch
new file mode 100644
index 000000000000..dc7df6edd335
--- /dev/null
+++ b/dev-python/pytest-tap/files/pytest-tap-3.5-hatchling-wheel.patch
@@ -0,0 +1,70 @@
+https://github.com/python-tap/pytest-tap/commit/aba9dfa88c8736e96e6af6382b2688c919600050
+
+From aba9dfa88c8736e96e6af6382b2688c919600050 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= <cynerd@email.cz>
+Date: Thu, 30 Oct 2025 03:24:39 +0100
+Subject: [PATCH] pyproject.toml: fix missing package i wheel (#105)
+
+* pyproject.toml: fix missing package i wheel
+
+The wheel was missing package due to it not being packaged. The
+hatchling documentation specifies that packages should be set this way.
+
+The testing of this change in virtual environment:
+
+ nobody@host:pytest-tap$ python3 -m venv env wheelfix+
+ nobody@host:pytest-tap$ . ./env/bin/activate wheelfix+
+ ((env) ) nobody@host:pytest-tap$ pip install . wheelfix+
+ Processing /home/cynerd/src/pytest-tap
+ Installing build dependencies ... done
+ Getting requirements to build wheel ... done
+ Preparing metadata (pyproject.toml) ... done
+ Requirement already satisfied: pytest>=3.0 in /nix/store/094gpcj7d1z8wdvymhxvi2rns757vb2p-python3.12-pytest-8.3.5/lib/python3.12/site-packages (from pytest-tap==3.5) (8.3.5)
+ Requirement already satisfied: tap-py<4.0,>=3.2 in /nix/store/bmvj5dimxkphyrzwl0jyvi6blz8imqpn-python3.12-tap.py-3.2.1/lib/python3.12/site-packages (from pytest-tap==3.5) (3.2.1)
+ Requirement already satisfied: iniconfig in /nix/store/8bcr5c5m8d1359k52mwjdbqjw2rzwdgq-python3.12-iniconfig-2.1.0/lib/python3.12/site-packages (from pytest>=3.0->pytest-tap==3.5) (2.1.0)
+ Requirement already satisfied: packaging in /nix/store/wr2lp9ziysxbjbf5ww09a4k7ivvnxbc4-python3.12-packaging-24.2/lib/python3.12/site-packages (from pytest>=3.0->pytest-tap==3.5) (24.2)
+ Requirement already satisfied: pluggy<2,>=1.5 in /nix/store/fbbyfni2ccjw8r7rh7ww3x8ky1yk4hi7-python3.12-pluggy-1.5.0/lib/python3.12/site-packages (from pytest>=3.0->pytest-tap==3.5) (1.5.0)
+ Building wheels for collected packages: pytest-tap
+ Building wheel for pytest-tap (pyproject.toml) ... done
+ Created wheel for pytest-tap: filename=pytest_tap-3.5-py3-none-any.whl size=6543 sha256=6733459ec7272402507031361355d4820fd799659e4102568790d9e53b2863c0
+ Stored in directory: /home/cynerd/.cache/pip/wheels/e4/ea/6f/0c79e4850b81f185670c0a561a2ebc457c7a0b4ee105c88476
+ Successfully built pytest-tap
+ Installing collected packages: pytest-tap
+ Successfully installed pytest-tap-3.5
+
+ [notice] A new release of pip is available: 25.0.1 -> 25.1.1
+ [notice] To update, run: pip install --upgrade pip
+ ((env) ) nobody@host:pytest-tap$ ls env/lib/python3.12/site-packages/pytest_tap/ wheelfix+
+ __init__.py plugin.py
+
+The listed directory wasn't present before this change.
+
+* Remove sources entry from pyproject.toml
+
+This applies a similar fix to https://github.com/python-tap/tappy/pull/166
+
+---------
+
+Co-authored-by: Matt Layman <matthewlayman@gmail.com>
+---
+ pyproject.toml | 4 +---
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 940540c..97b9a37 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -47,11 +47,9 @@ include = [
+ "/docs",
+ "/tests",
+ ]
+-sources = ["src"]
+
+ [tool.hatch.build.targets.wheel]
+-sources = ["src"]
+-packages = ["pytest_tap"]
++packages = ["src/pytest_tap"]
+
+ [tool.pytest.ini_options]
+ pythonpath = [".", "src"]
+
diff --git a/dev-python/pytest-tap/metadata.xml b/dev-python/pytest-tap/metadata.xml
new file mode 100644
index 000000000000..5e95859f915a
--- /dev/null
+++ b/dev-python/pytest-tap/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <stabilize-allarches />
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-python/pytest-tap/pytest-tap-3.5.ebuild b/dev-python/pytest-tap/pytest-tap-3.5.ebuild
new file mode 100644
index 000000000000..cb9dacdc00a9
--- /dev/null
+++ b/dev-python/pytest-tap/pytest-tap-3.5.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Reporting plugin for pytest that outputs Test Anything Protocol (TAP) data"
+HOMEPAGE="
+ https://github.com/python-tap/pytest-tap
+ https://pypi.org/project/pytest-tap/
+"
+# No tests in sdist
+SRC_URI="https://github.com/python-tap/pytest-tap/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pytest[${PYTHON_USEDEP}]
+ >=dev-python/tap-py-3.2[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5-hatchling-wheel.patch
+)
+
+EPYTEST_PLUGINS=( "${PN}" )
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+distutils_enable_tests pytest
diff --git a/dev-python/python-daemon/python-daemon-3.1.2.ebuild b/dev-python/python-daemon/python-daemon-3.1.2.ebuild
index 00e72c722b52..66a666573474 100644
--- a/dev-python/python-daemon/python-daemon-3.1.2.ebuild
+++ b/dev-python/python-daemon/python-daemon-3.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
diff --git a/dev-python/python-glanceclient/files/python-glanceclient-4.12.0-py315.patch b/dev-python/python-glanceclient/files/python-glanceclient-4.12.0-py315.patch
new file mode 100644
index 000000000000..aeae21445037
--- /dev/null
+++ b/dev-python/python-glanceclient/files/python-glanceclient-4.12.0-py315.patch
@@ -0,0 +1,67 @@
+From 98fa6a7ffcb128e406922ac8520180fc05c21648 Mon Sep 17 00:00:00 2001
+From: Steve Traylen <steve.traylen@cern.ch>
+Date: Sun, 26 Apr 2026 16:49:34 +0200
+Subject: [PATCH] fix hashlib ValueError message check for py3.15
+
+I realise python3.15 is is not supported yet but this allows tests
+to pass on 3.15a8.
+
+Python 3.15 changed the ValueError message raised by hashlib.new() for
+unknown algorithms from "unsupported hash type <name>" to "unsupported
+hash algorithm <name>",
+
+Replace the prefix check with a test for the algorithm name in
+the exception message
+
+Python change:
+
+https://github.com/python/cpython/commit/6be49ee517258281357aa6846d2564bc5626b7ca
+Change-Id: I69b1b0fb2ac18c0a590b9d375b88030361251935
+Signed-off-by: Steve Traylen <steve.traylen@cern.ch>
+---
+
+diff --git a/glanceclient/tests/unit/v2/test_images.py b/glanceclient/tests/unit/v2/test_images.py
+index 33626fd..839d7fe 100644
+--- a/glanceclient/tests/unit/v2/test_images.py
++++ b/glanceclient/tests/unit/v2/test_images.py
+@@ -1184,12 +1184,12 @@
+ do_checksum=False)
+ body = ''.join([b for b in body])
+ self.assertEqual('BB', body)
+- try:
+- body = self.controller.data('badalgo-db27-11e1-a1eb-080027cbe205')
+- self.fail('bad os_hash_algo did not raise an error.')
+- except ValueError as e:
+- msg = 'unsupported hash type not_an_algo'
+- self.assertIn(msg, str(e))
++ self.assertRaisesRegex(
++ ValueError,
++ r'unsupported hash (type|algorithm) not_an_algo',
++ self.controller.data,
++ 'badalgo-db27-11e1-a1eb-080027cbe205'
++ )
+
+ def test_data_with_checksum(self):
+ for prefix in ['headeronly', 'chkonly', 'multihash']:
+@@ -1207,7 +1207,7 @@
+ @ddt.data('headeronly', 'chkonly', 'multihash')
+ def test_data_with_checksum_but_no_md5_algo(self, prefix):
+ with mock.patch('hashlib.new', mock.MagicMock(
+- side_effect=ValueError('unsupported hash type'))):
++ side_effect=ValueError('unsupported hash algorithm sha384'))):
+ body = self.controller.data(prefix +
+ '-dd57-11e1-af0f-02163e68b1d8',
+ allow_md5_fallback=True)
+diff --git a/glanceclient/v2/images.py b/glanceclient/v2/images.py
+index 3c658fa..6cff610 100644
+--- a/glanceclient/v2/images.py
++++ b/glanceclient/v2/images.py
+@@ -278,7 +278,7 @@
+ meta_hash_value)
+ check_md5sum = False
+ except ValueError as ve:
+- if (str(ve).startswith('unsupported hash type') and
++ if (str(meta_hash_algo) in str(ve) and
+ allow_md5_fallback):
+ check_md5sum = True
+ else:
diff --git a/dev-python/python-glanceclient/python-glanceclient-4.12.0.ebuild b/dev-python/python-glanceclient/python-glanceclient-4.12.0.ebuild
index a82673afcd02..800afebd5fda 100644
--- a/dev-python/python-glanceclient/python-glanceclient-4.12.0.ebuild
+++ b/dev-python/python-glanceclient/python-glanceclient-4.12.0.ebuild
@@ -44,6 +44,11 @@ BDEPEND="
distutils_enable_tests unittest
+PATCHES=(
+ # https://review.opendev.org/c/openstack/python-glanceclient/+/986313
+ "${FILESDIR}/${P}-py315.patch"
+)
+
python_test() {
# functional tests require cloud instance access
eunittest -b glanceclient/tests/unit
diff --git a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
index 6392eaf1aa0b..2fbb1ebe03d7 100644
--- a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
+++ b/dev-python/python-manilaclient/python-manilaclient-6.2.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
diff --git a/dev-python/pywinrm/pywinrm-0.5.0.ebuild b/dev-python/pywinrm/pywinrm-0.5.0.ebuild
index bbe83a95e6d6..a3c5f9b3d789 100644
--- a/dev-python/pywinrm/pywinrm-0.5.0.ebuild
+++ b/dev-python/pywinrm/pywinrm-0.5.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
diff --git a/dev-python/requests-credssp/requests-credssp-2.0.0.ebuild b/dev-python/requests-credssp/requests-credssp-2.0.0.ebuild
index 323e169473d1..7798855c7507 100644
--- a/dev-python/requests-credssp/requests-credssp-2.0.0.ebuild
+++ b/dev-python/requests-credssp/requests-credssp-2.0.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
diff --git a/dev-python/requests-kerberos/requests-kerberos-0.15.0.ebuild b/dev-python/requests-kerberos/requests-kerberos-0.15.0.ebuild
index d539dbd7bab8..10a60ec09b56 100644
--- a/dev-python/requests-kerberos/requests-kerberos-0.15.0.ebuild
+++ b/dev-python/requests-kerberos/requests-kerberos-0.15.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
diff --git a/dev-python/requests-mock/requests-mock-1.12.1.ebuild b/dev-python/requests-mock/requests-mock-1.12.1.ebuild
index 3b78e2d00837..e781ce5c2705 100644
--- a/dev-python/requests-mock/requests-mock-1.12.1.ebuild
+++ b/dev-python/requests-mock/requests-mock-1.12.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
@@ -26,13 +26,13 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
test? (
dev-python/fixtures[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
dev-python/requests-futures[${PYTHON_USEDEP}]
dev-python/testtools[${PYTHON_USEDEP}]
)
"
distutils_enable_sphinx doc/source
+EPYTEST_PLUGINS=( "${PN}" )
distutils_enable_tests pytest
python_prepare_all() {
@@ -49,5 +49,6 @@ python_prepare_all() {
# Disable a test which requires purl (not in the tree)
sed -e "/^import purl$/d" -e "s/test_with_purl/_&/" \
-i tests/test_adapter.py || die
+ sed -i -e 's:assertEquals:assertEqual:' tests/test_*.py || die
distutils-r1_python_prepare_all
}
diff --git a/dev-python/requests-ntlm/requests-ntlm-1.3.0.ebuild b/dev-python/requests-ntlm/requests-ntlm-1.3.0.ebuild
index fdffeec34803..8249d2912101 100644
--- a/dev-python/requests-ntlm/requests-ntlm-1.3.0.ebuild
+++ b/dev-python/requests-ntlm/requests-ntlm-1.3.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
diff --git a/dev-python/requests-oauthlib/files/requests-oauthlib-2.0.0-test.patch b/dev-python/requests-oauthlib/files/requests-oauthlib-2.0.0-test.patch
new file mode 100644
index 000000000000..fd85d16fc0cf
--- /dev/null
+++ b/dev-python/requests-oauthlib/files/requests-oauthlib-2.0.0-test.patch
@@ -0,0 +1,31 @@
+From b1dd93c5d024500b6236dea06734d6e6482c3565 Mon Sep 17 00:00:00 2001
+From: Jonathan Huot <jonathan.huot@gmail.com>
+Date: Thu, 12 Jun 2025 20:06:32 +0200
+Subject: [PATCH] Updated tests to support 3.3.0/changes rel. to expires_at
+
+---
+ tests/test_compliance_fixes.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/test_compliance_fixes.py b/tests/test_compliance_fixes.py
+index c5166bd..9ad6d09 100644
+--- a/tests/test_compliance_fixes.py
++++ b/tests/test_compliance_fixes.py
+@@ -115,7 +115,7 @@ def test_fetch_access_token(self):
+ authorization_response="https://i.b/?code=hello",
+ )
+ # Times should be close
+- approx_expires_at = time.time() + 3600
++ approx_expires_at = round(time.time()) + 3600
+ actual_expires_at = token.pop("expires_at")
+ self.assertAlmostEqual(actual_expires_at, approx_expires_at, places=2)
+
+@@ -289,7 +289,7 @@ def test_fetch_access_token(self):
+ authorization_response="https://i.b/?code=hello",
+ )
+
+- approx_expires_at = time.time() + 86400
++ approx_expires_at = round(time.time()) + 86400
+ actual_expires_at = token.pop("expires_at")
+ self.assertAlmostEqual(actual_expires_at, approx_expires_at, places=2)
+
diff --git a/dev-python/requests-oauthlib/requests-oauthlib-2.0.0.ebuild b/dev-python/requests-oauthlib/requests-oauthlib-2.0.0.ebuild
index 875e3ba59f05..57aba141ce0c 100644
--- a/dev-python/requests-oauthlib/requests-oauthlib-2.0.0.ebuild
+++ b/dev-python/requests-oauthlib/requests-oauthlib-2.0.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
@@ -26,25 +26,21 @@ RDEPEND="
>=dev-python/requests-2.0.0[${PYTHON_USEDEP}]
>=dev-python/oauthlib-3.0.0[${PYTHON_USEDEP}]
"
-BDEPEND="
- test? (
- dev-python/requests-mock[${PYTHON_USEDEP}]
- )
-"
+EPYTEST_PLUGINS=( requests-mock )
distutils_enable_tests pytest
-python_test() {
- local EPYTEST_DESELECT=(
- # Internet access
- tests/test_core.py::OAuth1Test::testCanPostBinaryData
- tests/test_core.py::OAuth1Test::test_content_type_override
- tests/test_core.py::OAuth1Test::test_url_is_native_str
- )
- local EPYTEST_IGNORE=(
- tests/examples
- )
+PATCHES=(
+ # https://github.com/requests/requests-oauthlib/commit/b1dd93c5d024500b6236dea06734d6e6482c3565
+ "${FILESDIR}/${P}-test.patch"
+)
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
+EPYTEST_DESELECT=(
+ # Internet access
+ tests/test_core.py::OAuth1Test::testCanPostBinaryData
+ tests/test_core.py::OAuth1Test::test_content_type_override
+ tests/test_core.py::OAuth1Test::test_url_is_native_str
+)
+EPYTEST_IGNORE=(
+ tests/examples
+)
diff --git a/dev-python/ruamel-yaml/ruamel-yaml-0.19.1.ebuild b/dev-python/ruamel-yaml/ruamel-yaml-0.19.1.ebuild
index 9403bd180d37..868a11e63518 100644
--- a/dev-python/ruamel-yaml/ruamel-yaml-0.19.1.ebuild
+++ b/dev-python/ruamel-yaml/ruamel-yaml-0.19.1.ebuild
@@ -27,17 +27,11 @@ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390
RDEPEND="
dev-python/ruamel-yaml-clibz[${PYTHON_USEDEP}]
- !dev-python/namespace-ruamel
"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
-python_compile() {
- distutils-r1_python_compile
- find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
python_test() {
local EPYTEST_IGNORE=(
# Old PyYAML tests from lib/ require special set-up and are
diff --git a/dev-python/sphinx-basic-ng/sphinx-basic-ng-1.0.0_beta2.ebuild b/dev-python/sphinx-basic-ng/sphinx-basic-ng-1.0.0_beta2.ebuild
index 5257473834cb..71fd3d4081e3 100644
--- a/dev-python/sphinx-basic-ng/sphinx-basic-ng-1.0.0_beta2.ebuild
+++ b/dev-python/sphinx-basic-ng/sphinx-basic-ng-1.0.0_beta2.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
diff --git a/dev-python/sphinxcontrib-apidoc/sphinxcontrib-apidoc-0.6.0.ebuild b/dev-python/sphinxcontrib-apidoc/sphinxcontrib-apidoc-0.6.0.ebuild
index af5b9b9713ea..e5d59af86050 100644
--- a/dev-python/sphinxcontrib-apidoc/sphinxcontrib-apidoc-0.6.0.ebuild
+++ b/dev-python/sphinxcontrib-apidoc/sphinxcontrib-apidoc-0.6.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
@@ -29,13 +29,7 @@ RDEPEND="
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
-python_compile() {
- distutils-r1_python_compile
- find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
python_test() {
- distutils_write_namespace sphinxcontrib
cd "${T}" || die
epytest "${S}"/tests
}
diff --git a/dev-python/tavalidate/tavalidate-0.0.6-r1.ebuild b/dev-python/tavalidate/tavalidate-0.0.6-r1.ebuild
index cc6c65fe1b87..c37c65bc4cf2 100644
--- a/dev-python/tavalidate/tavalidate-0.0.6-r1.ebuild
+++ b/dev-python/tavalidate/tavalidate-0.0.6-r1.ebuild
@@ -23,4 +23,5 @@ RDEPEND="
dev-python/python-box[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/testscenarios/Manifest b/dev-python/testscenarios/Manifest
index cadab344de92..ab659246115d 100644
--- a/dev-python/testscenarios/Manifest
+++ b/dev-python/testscenarios/Manifest
@@ -1,4 +1,2 @@
-DIST testscenarios-0.5.0.tar.gz 20951 BLAKE2B 154915281456aad3353e144ffec8404514622fdeb8d2129ba530d3d5a02814599c2fead9dc25ab4904bad68b2892a435f9cbbcde92503d71477624bbec154f53 SHA512 f08b868babf504482369c5cb945d3e95bca1cc00f92d5013f6898c488051be0c26dc49aaabcef362aea45450a8d041d9826fb6b5c848beec013fb102d6935521
DIST testscenarios-0.6.1.tar.gz 18484 BLAKE2B 0d8d2cb28fbaf2a245efa6bb5c52311ef04ced5910880519d8931fee4022de35d28046c1c10f63bdae34487a13033f75e046abb6290e02ad268c1829d84e933f SHA512 a8220e1f18c3eb6ad55b9bbe61e58b1ead5e730babda2375df5d1648dbcbabe56ddfd62f41d654b28eca605d54e7303799e99fbeef005f3fd66304b7f61cc81c
DIST testscenarios-0.6.1.tar.gz.provenance 9708 BLAKE2B 15bb80ad8cc73ce0f96d1deb4cc7a55a6c4e101c9ec38361f1ac2ef01effcc1e2071f5ed0bd5140e6268b36dac82cdf5a91f3aa890e500df80d13378aa85d202 SHA512 bf004f8b8f33520f3cc71171127c8699470c4850947a35a14d60968b0281d0a537c266cf571588628b426f0a1fcf0bd093509bbe65db40f290c50de73f650ac2
-DIST testscenarios-0.6.tar.gz 14970 BLAKE2B 01e0ee8160ed56da1ef6f00870aff2ac414bb3c7492773656936c9e7c8a0ae5be2bea21fe62fb7cc18809b0177a0d1e60a0fe5c6a4399eed1f08174339e518b7 SHA512 fd83ed0fae6a1d39d829db5616bc54e86b960cf5f049fb472e416e6a49bdbba676bdea543f4396471debe990ba5c6bbf8574964111eea9bc7afed4355c1191c6
diff --git a/dev-python/testscenarios/testscenarios-0.5.0-r3.ebuild b/dev-python/testscenarios/testscenarios-0.5.0-r3.ebuild
deleted file mode 100644
index 2cdb982c68b1..000000000000
--- a/dev-python/testscenarios/testscenarios-0.5.0-r3.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A pyunit extension for dependency injection"
-HOMEPAGE="
- https://launchpad.net/testscenarios/
- https://github.com/testing-cabal/testscenarios/
- https://pypi.org/project/testscenarios/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-
-RDEPEND="
- dev-python/testtools[${PYTHON_USEDEP}]
- >=dev-python/pbr-0.11[${PYTHON_USEDEP}]
-"
-
-# using pytest for tests since unittest loader fails with py3.5+
-BDEPEND="
- >=dev-python/pbr-0.11[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- testscenarios/tests/test_testcase.py
-)
diff --git a/dev-python/testscenarios/testscenarios-0.6.ebuild b/dev-python/testscenarios/testscenarios-0.6.ebuild
deleted file mode 100644
index 407660250e8f..000000000000
--- a/dev-python/testscenarios/testscenarios-0.6.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A pyunit extension for dependency injection"
-HOMEPAGE="
- https://launchpad.net/testscenarios/
- https://github.com/testing-cabal/testscenarios/
- https://pypi.org/project/testscenarios/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/testtools[${PYTHON_USEDEP}]
-"
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- )
-"
-
-python_test() {
- "${EPYTHON}" -m testtools.run -v testscenarios.tests.test_suite ||
- die "Tests failed with ${EPYTHON}"
-}
diff --git a/dev-python/testtools/Manifest b/dev-python/testtools/Manifest
index 9dc319250ddb..0aa5f92580c2 100644
--- a/dev-python/testtools/Manifest
+++ b/dev-python/testtools/Manifest
@@ -1,3 +1,2 @@
-DIST testtools-2.7.2.tar.gz 201430 BLAKE2B d827d8e66c85908f4d16aa0762c3b0a454d374a0d23323fc3c123027f55f0e85f4fea9a24b5d1d0279266af2185f08abbcbbdcb785014b237df45a6448587611 SHA512 5815519d2b72d6b1e9f453c02793c70eb7d3b6580a211fb3708cd6121aed3c6100ceb1e35321f481a63b1f999ede030e43f1ae91d3621faf461c1908db767551
DIST testtools-2.9.1.tar.gz 221377 BLAKE2B 61684837047dc9ec91a412b22f7423c43f19500062571d0b36f821576503537218f5225c963f603feb142e3f1a5766d825a59df8e6a5da12d739372ae7c55b85 SHA512 68530c96756d383575602c6e3b6d33ca19fec4fe35ac6dba4ada4954be969a31414f930572cebbcbe4008fbdd1904537be793acdb5cce8458e36cdcbbfe719e0
DIST testtools-2.9.1.tar.gz.provenance 9604 BLAKE2B 01f82b392b2dd0226fda576aefd788c388ba50c275740f4adeab5ad2decf56a6a628e911bb8db0423ef047bf845325759f8c5c3135abd8146a33e4e699fa92c6 SHA512 5177b6070f4760baffc1644536abea1de55937e797de08e8d499e7ce07053ce8e0c22d996e9401a53e2ebe2461ce0c32e50732cdd9af0a26e40b3e19aac8891e
diff --git a/dev-python/testtools/files/testtools-2.7.2-py314.patch b/dev-python/testtools/files/testtools-2.7.2-py314.patch
deleted file mode 100644
index afce3b2c12ad..000000000000
--- a/dev-python/testtools/files/testtools-2.7.2-py314.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-https://github.com/testing-cabal/testtools/commit/79fa5d41a05c423cf43a65d2b347c7c566bcdfa5
-
-From 79fa5d41a05c423cf43a65d2b347c7c566bcdfa5 Mon Sep 17 00:00:00 2001
-From: Stephen Finucane <stephen@that.guru>
-Date: Fri, 21 Feb 2025 11:14:35 +0000
-Subject: [PATCH] Resolve deprecation warning
-
-See [1] for more info.
-
-[1] https://github.com/python/cpython/issues/79893
-
-Signed-off-by: Stephen Finucane <stephen@that.guru>
----
- testtools/testcase.py | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/testtools/testcase.py b/testtools/testcase.py
-index ad983730..4f4923b3 100644
---- a/testtools/testcase.py
-+++ b/testtools/testcase.py
-@@ -268,8 +268,10 @@ def _reset(self):
-
- def __eq__(self, other):
- eq = getattr(unittest.TestCase, "__eq__", None)
-- if eq is not None and not unittest.TestCase.__eq__(self, other):
-- return False
-+ if eq is not None:
-+ eq_ = unittest.TestCase.__eq__(self, other)
-+ if eq_ is NotImplemented or not eq_:
-+ return False
- return self.__dict__ == getattr(other, "__dict__", None)
-
- # We need to explicitly set this since we're overriding __eq__
-
diff --git a/dev-python/testtools/files/testtools-2.7.2-twisted-fix.patch b/dev-python/testtools/files/testtools-2.7.2-twisted-fix.patch
deleted file mode 100644
index bbf943be60d1..000000000000
--- a/dev-python/testtools/files/testtools-2.7.2-twisted-fix.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 5b8cb6497c7159f593e68de6a13e15f7e78e56e3 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <arkamar@atlas.cz>
-Date: Mon, 1 Jul 2024 10:00:05 +0200
-Subject: [PATCH] Prepare tests for upcoming twisted version
-
-Twisted recently changed behavior of logger on failures [1]. It newly
-logs the `Main loop terminated.` even on exceptions, which breaks two
-test in twistedsupport test suite. This hack attempts to address the
-upcoming issue.
-
-[1] https://github.com/twisted/twisted/pull/12207
-
-Upstream-PR: https://github.com/testing-cabal/testtools/pull/387
-
-diff --git a/testtools/tests/twistedsupport/test_runtest.py b/testtools/tests/twistedsupport/test_runtest.py
-index 4b46cc64..f8faf7c6 100644
---- a/testtools/tests/twistedsupport/test_runtest.py
-+++ b/testtools/tests/twistedsupport/test_runtest.py
-@@ -16,7 +16,6 @@
- Contains,
- ContainsAll,
- ContainsDict,
-- EndsWith,
- Equals,
- Is,
- KeysEqual,
-@@ -749,7 +748,7 @@ def test_something(self):
- test,
- {
- "traceback": Not(Is(None)),
-- "twisted-log": AsText(EndsWith(" foo\n")),
-+ "twisted-log": AsText(Contains(" foo\n")),
- },
- ),
- ("stopTest", test),
-@@ -790,7 +789,8 @@ def test_something(self):
- result = self.make_result()
- runner.run(result)
- self.assertThat(
-- messages, MatchesListwise([ContainsDict({"message": Equals(("foo",))})])
-+ messages[0:1],
-+ MatchesListwise([ContainsDict({"message": Equals(("foo",))})]),
- )
-
- def test_restore_observers(self):
diff --git a/dev-python/testtools/testtools-2.7.2-r1.ebuild b/dev-python/testtools/testtools-2.7.2-r1.ebuild
deleted file mode 100644
index 4abb03a66fca..000000000000
--- a/dev-python/testtools/testtools-2.7.2-r1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Extensions to the Python standard library unit testing framework"
-HOMEPAGE="
- https://github.com/testing-cabal/testtools/
- https://pypi.org/project/testtools/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- >=dev-python/fixtures-2.0.0[${PYTHON_USEDEP}]
- dev-python/testscenarios[${PYTHON_USEDEP}]
- dev-python/testresources[${PYTHON_USEDEP}]
- dev-python/twisted[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.7.2-twisted-fix.patch"
- "${FILESDIR}/${PN}-2.7.2-py314.patch"
-)
-
-distutils_enable_sphinx doc
-
-python_test() {
- cp testtools/tests/__init__.py test_suite.py || die
- if ! has_version "dev-python/twisted[${PYTHON_USEDEP}]"; then
- sed -i -e '/twistedsupport/d' test_suite.py || die
- fi
-
- "${EPYTHON}" -m testtools.run test_suite.test_suite ||
- die "tests failed under ${EPYTHON}"
-}
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index 744af0e6a0a5..e0c503806217 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1 +1,2 @@
DIST tifffile-2026.6.1.gh.tar.gz 418247 BLAKE2B 2c20840bbf901fda3b001638d93887e1821d8aa4325f903f44bfdc65e1e48eef80ea087dec7443a415f8d767859ddb588e7292dd85805e27ae86894e6463ffb1 SHA512 4296d605ce212b065acb288b8a60515f9fcd4135474523eb68261736c1861606969c54f33a75116b6908c4218a6392a0f9cba008c2409e7744ee5a19d2bb767a
+DIST tifffile-2026.7.14.gh.tar.gz 423471 BLAKE2B 14670ce0fc117ef1cc95e6bd161ae5dc68a0a85594aa2b49b77b6d6fe0460fb914536117bcaae61a95d4c2646032359b2be358865273d6119032fcca03ea1950 SHA512 9cb973d885c931afbec1754f50bd121580d1ba9bce8e49b95c122b0fc960f4c76b7664a669aa8a46251d4a82647a41420be85c1ca9400155d7c05042b92208b5
diff --git a/dev-python/tifffile/tifffile-2026.7.14.ebuild b/dev-python/tifffile/tifffile-2026.7.14.ebuild
new file mode 100644
index 000000000000..49630e1bd1b8
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2026.7.14.ebuild
@@ -0,0 +1,56 @@
+# 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_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Read and write TIFF files"
+HOMEPAGE="
+ https://pypi.org/project/tifffile/
+ https://github.com/cgohlke/tifffile/
+ https://www.cgohlke.com/
+"
+SRC_URI="
+ https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-2.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # not marked properly
+ # https://github.com/cgohlke/tifffile/pull/308
+ tests/test_tifffile.py::test_issue_dcp
+ # meaningless and broken on py<3.13
+ # https://github.com/cgohlke/tifffile/pull/309
+ tests/test_tifffile.py::test_gil_enabled
+ )
+
+ local -x SKIP_LARGE=1
+ local -x SKIP_HTTP=1
+
+ epytest
+}
diff --git a/dev-python/twython/twython-3.9.1-r1.ebuild b/dev-python/twython/twython-3.9.1-r1.ebuild
index b0d7741bc9ce..2a62f3dae268 100644
--- a/dev-python/twython/twython-3.9.1-r1.ebuild
+++ b/dev-python/twython/twython-3.9.1-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