summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-11-22 19:11:44 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-11-22 19:11:44 +0000
commitbeb119f5dff9e8a5f0e100d7908d4914be32d5f1 (patch)
tree586f9b94578991c96916a9e815ad55b6916e8c31 /dev-python
parent39491a71570c7834a7de3db3f408ee182ac998f4 (diff)
downloadbaldeagleos-repo-beb119f5dff9e8a5f0e100d7908d4914be32d5f1.tar.gz
baldeagleos-repo-beb119f5dff9e8a5f0e100d7908d4914be32d5f1.tar.xz
baldeagleos-repo-beb119f5dff9e8a5f0e100d7908d4914be32d5f1.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aws-sam-translator/Manifest1
-rw-r--r--dev-python/aws-sam-translator/aws-sam-translator-1.103.0.ebuild62
-rw-r--r--dev-python/backports-ssl-match-hostname/Manifest1
-rw-r--r--dev-python/backports-ssl-match-hostname/backports-ssl-match-hostname-3.7.0.1.ebuild26
-rw-r--r--dev-python/backports-ssl-match-hostname/metadata.xml10
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.41.2.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.41.2.ebuild67
-rw-r--r--dev-python/brotlicffi/Manifest1
-rw-r--r--dev-python/brotlicffi/brotlicffi-1.2.0.0.ebuild67
-rw-r--r--dev-python/django-tables2/Manifest1
-rw-r--r--dev-python/django-tables2/django-tables2-2.8.0.ebuild49
-rw-r--r--dev-python/exceptiongroup/Manifest2
-rw-r--r--dev-python/exceptiongroup/exceptiongroup-1.3.1.ebuild29
-rw-r--r--dev-python/fake-py/Manifest3
-rw-r--r--dev-python/fake-py/fake-py-0.11.12.ebuild (renamed from dev-python/fake-py/fake-py-0.11.9.ebuild)0
-rw-r--r--dev-python/fake-py/fake-py-0.11.8.ebuild64
-rw-r--r--dev-python/os-service-types/Manifest1
-rw-r--r--dev-python/os-service-types/os-service-types-1.8.2.ebuild36
-rw-r--r--dev-python/psycopg/Manifest1
-rw-r--r--dev-python/psycopg/psycopg-3.2.13.ebuild119
-rw-r--r--dev-python/pyproject-metadata/Manifest2
-rw-r--r--dev-python/pyproject-metadata/pyproject-metadata-0.10.0.ebuild27
-rw-r--r--dev-python/pyside/Manifest2
-rw-r--r--dev-python/pyside/pyside-6.10.1.ebuild (renamed from dev-python/pyside/pyside-6.10.0.ebuild)0
-rw-r--r--dev-python/restructuredtext-lint/Manifest2
-rw-r--r--dev-python/restructuredtext-lint/restructuredtext-lint-1.4.1.ebuild26
-rw-r--r--dev-python/restructuredtext-lint/restructuredtext-lint-2.0.0.ebuild26
-rw-r--r--dev-python/stripe/Manifest1
-rw-r--r--dev-python/stripe/stripe-14.0.1.ebuild91
-rw-r--r--dev-python/tavern/Manifest1
-rw-r--r--dev-python/tavern/tavern-3.0.2.ebuild64
-rw-r--r--dev-python/time-machine/Manifest1
-rw-r--r--dev-python/time-machine/time-machine-3.1.0.ebuild35
-rw-r--r--dev-python/types-psutil/Manifest1
-rw-r--r--dev-python/types-psutil/types-psutil-7.1.1.20251122.ebuild16
-rw-r--r--dev-python/xmlsec/Manifest1
-rw-r--r--dev-python/xmlsec/xmlsec-1.3.17.ebuild60
-rw-r--r--dev-python/zconfig/Manifest1
-rw-r--r--dev-python/zconfig/zconfig-4.3.ebuild41
41 files changed, 889 insertions, 104 deletions
diff --git a/dev-python/aws-sam-translator/Manifest b/dev-python/aws-sam-translator/Manifest
index 0d66f3407cc2..366a2bb714ad 100644
--- a/dev-python/aws-sam-translator/Manifest
+++ b/dev-python/aws-sam-translator/Manifest
@@ -1,2 +1,3 @@
DIST serverless-application-model-1.101.0.gh.tar.gz 6002271 BLAKE2B 726fd5a91a8afa51072e4fe95b941b7bc05805171ea1913626f4ddd82b14ac09509e115672491062cc8247a64ccfa53e8fcc1f2c5c387b38a945219cb0561a9a SHA512 b0063a97966b28f3d189f9607beac8fbdf36af235351630b3e277db81ecae9da326ccc6ce1c1e9e5bb5831a769507747e77cf8f4e4b1d378e63effaa38319e0c
DIST serverless-application-model-1.102.0.gh.tar.gz 6025703 BLAKE2B 1ef7603694263999375a8291d39461abf796433a3eab5178b4a5ee10d8d811b244ffc3e4a4036a47d888220415e84c382afb11b28d180fcc2b6216bda290beb4 SHA512 354c307f45efedb3e3fc7b7df881c147a619c9ab90cf5e34106b60a517def82d1cda669dcdefac39e0be2ec8d47ea40868108c6a97c88cc27baeb9d2e1c5bc2c
+DIST serverless-application-model-1.103.0.gh.tar.gz 6035870 BLAKE2B c6822f8e16639f2a28bafc964420f79617732662b03b9a3af712c043ba143ad6e5b3291732a1a6827a7823a71ae40fd48869574eaa775e77830c40bda59fc6d7 SHA512 fa468c3878a7c74558c75befa50c13aac93bae9af6150a5bb44e8ec3ea3c29a5d51c8d0dc403630f7aa239652b74f6a491fb2a342d58b08356629cf4e4f3afa2
diff --git a/dev-python/aws-sam-translator/aws-sam-translator-1.103.0.ebuild b/dev-python/aws-sam-translator/aws-sam-translator-1.103.0.ebuild
new file mode 100644
index 000000000000..5093c4c1db44
--- /dev/null
+++ b/dev-python/aws-sam-translator/aws-sam-translator-1.103.0.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+# py3.14: https://github.com/aws/serverless-application-model/issues/3831
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+MY_P=serverless-application-model-${PV}
+DESCRIPTION="A library that transform SAM templates into AWS CloudFormation templates"
+HOMEPAGE="
+ https://github.com/aws/serverless-application-model/
+ https://pypi.org/project/aws-sam-translator/
+"
+SRC_URI="
+ https://github.com/aws/serverless-application-model/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/boto3-2[${PYTHON_USEDEP}]
+ >=dev-python/boto3-1.34.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2[${PYTHON_USEDEP}]
+ <dev-python/pydantic-3[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-1.8[${PYTHON_USEDEP}]
+ <dev-python/typing-extensions-5[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.4[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # so much noise...
+ sed -i -e '/log_cli/d' pytest.ini || die
+
+ # deps are installed by ebuild, don't try to reinstall them via pip
+ truncate --size=0 requirements/*.txt || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x AWS_DEFAULT_REGION=us-east-1
+ epytest -o addopts= -o filterwarnings=
+}
diff --git a/dev-python/backports-ssl-match-hostname/Manifest b/dev-python/backports-ssl-match-hostname/Manifest
deleted file mode 100644
index 23990ee86a4a..000000000000
--- a/dev-python/backports-ssl-match-hostname/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST backports.ssl_match_hostname-3.7.0.1.tar.gz 5722 BLAKE2B fcacafd3963070adb3593003244cb5b64ba5dcf3f623afccb689ffa6546b59ac858b60a7c240b3074927974460746e3396e4c61ce61e1aad0c6bbf0b80dc2f61 SHA512 9048ed093dc8a166a80d16a9aa0e06d36ea43ce7d324818608d25b1ef5057b1c66dd3514f9b35ab13bc60b2e5a3de29e690607e928fac2c9df16506759bd14dd
diff --git a/dev-python/backports-ssl-match-hostname/backports-ssl-match-hostname-3.7.0.1.ebuild b/dev-python/backports-ssl-match-hostname/backports-ssl-match-hostname-3.7.0.1.ebuild
deleted file mode 100644
index f2f3733ba981..000000000000
--- a/dev-python/backports-ssl-match-hostname/backports-ssl-match-hostname-3.7.0.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2024 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 pypi distutils-r1
-
-MY_PN=${PN/-/.}
-MY_PN=${MY_PN//-/_}
-DESCRIPTION="The ssl.match_hostname() function from Python 3.7"
-HOMEPAGE="
- https://pypi.org/project/backports.ssl_match_hostname/
-"
-SRC_URI="$(pypi_sdist_url --no-normalize "${MY_PN}" "${PV}")"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="PSF-2"
-SLOT="0"
-KEYWORDS="~amd64 ~riscv ~x86"
-
-python_prepare_all() {
- sed -e 's:from distutils.core:from setuptools:' -i setup.py || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/backports-ssl-match-hostname/metadata.xml b/dev-python/backports-ssl-match-hostname/metadata.xml
deleted file mode 100644
index 0f2e57ded13c..000000000000
--- a/dev-python/backports-ssl-match-hostname/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>chutzpah@gentoo.org</email>
- <name>Patrick McLean</name>
- </maintainer>
-
- <origin>gentoo-staging</origin>
-</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 100223e8dea8..3ea53b400fef 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -8,3 +8,4 @@ DIST boto3-1.40.75.gh.tar.gz 1034002 BLAKE2B 3e2e2c88bd0a8972b044a66cf84be171cca
DIST boto3-1.40.76.gh.tar.gz 1035550 BLAKE2B 0534ec5d892cd74f1a33479f19ade40575bd1ffdca0f05cf383a2fdb04f8c00820ae661de740e927a7913f986b7b85d7a47f707438f6b7fe0e403a480586bea4 SHA512 d3cdf982774d4d1b501658a12ab8708afc34efa975090dbefd6289477b7bfb23e7d1ac0371289fa0511931b9859c29de48c537d5a3bd4217355253bdc00621b3
DIST boto3-1.41.0.gh.tar.gz 1040235 BLAKE2B 115aa019a2e5b8728c4ebb7110238db9e3010ee82b7c21aefb79a4546de745cf27e2572e8124e191e986ab971937c37251cbe443a4d493dcd5f767aa19b10f76 SHA512 6496aa6ff112ec6d8ab4832efe04d57223c70c463e20630cec7136040195d253685b1bc0335565426261e7751727e23edfd0e3f81b10ce0b3706ff63208c1978
DIST boto3-1.41.1.gh.tar.gz 1044057 BLAKE2B 0fe15939087d77ca66a6adf5f4f512eea7dc0f9d276c0f4d9ed43b42b5b79163dc80c306ac1422067bb475aed8a1936a021e033948fea28fbec3c60461938a7b SHA512 ac7ca7fb562ae5b72e17130c3290abb61137ffe8c64b73e2e491c855ed532e5d2c802fb70a92e75cf5a95c258c42e0640e70375dbba4860dccf8342fe6f82d94
+DIST boto3-1.41.2.gh.tar.gz 1047105 BLAKE2B ac62862f9430604d6056e9ee9c0c6747bc8abd000957365e569d20c96f0672c771c628ce0bd1d644aee6149b22792f455b43f58fce987d5ba00acbfbf56bd7f2 SHA512 98209ea6ded6c1018b98106c89b53d2115fad3de26524f7b9efa0c91f1e4435c9ea2d954c21d8666cb427777ade60bb12a36544d9844dc1d79f925c3206a578f
diff --git a/dev-python/boto3/boto3-1.41.2.ebuild b/dev-python/boto3/boto3-1.41.2.ebuild
new file mode 100644
index 000000000000..217620928fd0
--- /dev/null
+++ b/dev-python/boto3/boto3-1.41.2.ebuild
@@ -0,0 +1,53 @@
+# 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_{10..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 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.15.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 ae632847ab77..a34573b7ca59 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -8,3 +8,4 @@ DIST botocore-1.40.75.gh.tar.gz 15307607 BLAKE2B 0529d1f62bb6ac6b730eceb4ed53961
DIST botocore-1.40.76.gh.tar.gz 15329738 BLAKE2B b52289d014878fe6f6ba8053ce84c77fd569819bc5f0b482a3aa1e9f543739e019ef35d530487e0bae33f80e45e302741ab4437e3f1841618fca59caf3d95b03 SHA512 4ce5c91ce346f5317ac0287913926743785388f31f746e05dc6751b3ee8e087382a4f140a46a4df83327e3c18f3f5c88d6e834abe24c35fcc810ba4ee23ec933
DIST botocore-1.41.0.gh.tar.gz 15418409 BLAKE2B 8f6e3de98b80ac158b9989d086ffd64cdc06a4c819864758ca9aa4ac5a97876dbd6fc3cef398602b02f0cbc1453ffd0cdd23f664e10fdb877cf318031f5908f9 SHA512 29da9fa5c4d2fc5c014010b6b186a1aff7c343de97ae905ae084c14046dea3135840ec579085f65072b57bb4a604127d660f97c67bbf89748982bdd856eab48f
DIST botocore-1.41.1.gh.tar.gz 15457246 BLAKE2B 4729105ed3279d506664a5fc2eb89a4d01470ed6cb8dd685232c6d1bfb78b77a3bda7dff83f18d4750697789b5f094839ff95607efb23c52be33549db6f9b520 SHA512 f0c4ba8bd9db6e180d8a8248fd9090f82207e67194c0b7fd62cc1a28d3ba82ef61a5be98220a7138ebc8212a3ee5b72618f55b46f1a4ed2282d33576b1f12192
+DIST botocore-1.41.2.gh.tar.gz 15504253 BLAKE2B 3c3967e3876ec2529ed0fbd192594f963ebc75f27f196188456a3f4999187b92072224da7d0d91d3dba44c109a74eb35229062e61f161d30f5fad69fcd6097ae SHA512 47cbae2cd1c729fbe6ef55ef5ad6102f636dfb62dd4b4011ad8d163dfdd038d94201b49e48847fed4130e5523b0279b921eedcb94ee4611f42e6aa102bb3705f
diff --git a/dev-python/botocore/botocore-1.41.2.ebuild b/dev-python/botocore/botocore-1.41.2.ebuild
new file mode 100644
index 000000000000..ee8074e67dce
--- /dev/null
+++ b/dev-python/botocore/botocore-1.41.2.ebuild
@@ -0,0 +1,67 @@
+# 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_{10..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 ~amd64-linux ~x86-linux"
+
+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/brotlicffi/Manifest b/dev-python/brotlicffi/Manifest
index 8125c9ecdcb3..68fd2098c1d2 100644
--- a/dev-python/brotlicffi/Manifest
+++ b/dev-python/brotlicffi/Manifest
@@ -1,3 +1,4 @@
DIST alice29.txt 152089 BLAKE2B ea900856d3ae0ed2fea1923e557824bd09583f7c1be25aa778a43812d945318e1d911e682e318861979b5a479765b34e15a926d257f883ff2fb0df418ebf9966 SHA512 d93d674d66b227d7b3f4e1b7c35b102c40800e728bff68c7821109e7db7adf2f0b76a67bc9bd53b0202ac8daa0b22145f004dbdc6b59a48a6c8c72061bf1989f
DIST brotli-ed738e842d2fbdf2d6459e39267a633c4a9b2f5d.tar.gz 512305 BLAKE2B b646e4565386870443d006a97a13b295c2c66de448e501f809700c303bb3daf5e4f84a2dacec16c43a534879243e4cda9292072630f13d5f7ca54f2c4372e560 SHA512 f493e7f15ca2804ae8715e48bdc954680f527533e684ec3762a7d49d05890915194289ed948c8cce95644274e1dcab952dcfbc84c0108aaf79f35f20270ffe6a
DIST brotlicffi-1.1.0.0.gh.tar.gz 22736 BLAKE2B 013eec22fcc83da838020c97c4610f80d011a47e6f2c6e35cc1fb062fc0990030349ec59597951003a15c5b4b373aeb91b3caec2a645bba2956e950727b7ae39 SHA512 5b53a2fb8a8a98720e1b9e52816954c2ac478dc31d174aca64b86b86aebb4ffa42e8811117a48ea6bde597846325326624f34178cb0bb1843670e8bdbc742c75
+DIST brotlicffi-1.2.0.0.gh.tar.gz 24494 BLAKE2B 0e7c5ae4434b6ba971538c0e709b96c711728a4dce3c98462ced2275d8f4a8f20b4ecf104b194b41bd95f26b4d2f039143940ce21e421b03bb690fc57e423d21 SHA512 08a02102a0f6cfa480c5897157203084fcd2bf0ad1b33e136aae78184848e25a70b48f555199dab151944139f8ddf72f459936423bd2be69f4f54d2719a934d7
diff --git a/dev-python/brotlicffi/brotlicffi-1.2.0.0.ebuild b/dev-python/brotlicffi/brotlicffi-1.2.0.0.ebuild
new file mode 100644
index 000000000000..73c5e4aa09e1
--- /dev/null
+++ b/dev-python/brotlicffi/brotlicffi-1.2.0.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+# Commit of the Brotli library bundled within brotlipy.
+BROTLI_BUNDLED_COMMIT="ed738e842d2fbdf2d6459e39267a633c4a9b2f5d"
+
+DESCRIPTION="Python binding to the Brotli library"
+HOMEPAGE="
+ https://github.com/python-hyper/brotlicffi/
+ https://pypi.org/project/brotlicffi/
+"
+SRC_URI="
+ https://github.com/python-hyper/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://github.com/google/brotli/archive/${BROTLI_BUNDLED_COMMIT}.tar.gz
+ -> brotli-${BROTLI_BUNDLED_COMMIT}.tar.gz
+ https://github.com/google/brotli/raw/${BROTLI_BUNDLED_COMMIT}/tests/testdata/alice29.txt
+ )
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ app-arch/brotli:=
+"
+BDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.17.0[${PYTHON_USEDEP}]
+ ' 'python*')
+"
+RDEPEND="
+ ${DEPEND}
+ ${BDEPEND}
+"
+
+EPYTEST_PLUGINS=( hypothesis )
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # incompatible with USE_SHARED_BROTLI=1
+ test/test_compatibility.py::test_brotli_version
+)
+
+src_unpack() {
+ default
+ if use test; then
+ mv "brotli-${BROTLI_BUNDLED_COMMIT}"/tests "${S}"/libbrotli/ || die
+ # sigh, google and their stupid .gitattributes
+ cp "${DISTDIR}"/alice29.txt "${S}"/libbrotli/tests/testdata/ || die
+ fi
+}
+
+src_configure() {
+ export USE_SHARED_BROTLI=1
+}
diff --git a/dev-python/django-tables2/Manifest b/dev-python/django-tables2/Manifest
index ba4a87aab888..1adf6d99485b 100644
--- a/dev-python/django-tables2/Manifest
+++ b/dev-python/django-tables2/Manifest
@@ -1 +1,2 @@
DIST django-tables2-2.7.5.gh.tar.gz 432318 BLAKE2B fc762afeba6332f61a48fb4f404e261dd483661b880e7baefe39593f4f0ca34e11326214c8f6b4d4eaa53c425793e6d07c73f039f0366c4e60f9d4b0588d3cde SHA512 b85bba6f1674497036e1c0c1ae5f05c241d951670501f2ca78aa62f1f278b455b9bde04f9f877a9972f92451ea1b296b39052da0da43f624bc270c787441e48a
+DIST django-tables2-2.8.0.gh.tar.gz 432933 BLAKE2B ce5472827b26be9b08e1b62bfb1489944b92789f05bbe2144416ed9c017b4ba1750a16630d1a62e9210fb484a12c5732638867eadcd7ee4b1a2a96cea1de1234 SHA512 d961b9329715a64c4dd77bf97c7b485f55fc7b9bec1f99513ffd877de0c63e02a73130ab807b6e2b255b8e6bcaf1f30b1aac7db503d7f4031ece13618aefd5a1
diff --git a/dev-python/django-tables2/django-tables2-2.8.0.ebuild b/dev-python/django-tables2/django-tables2-2.8.0.ebuild
new file mode 100644
index 000000000000..9e9636def926
--- /dev/null
+++ b/dev-python/django-tables2/django-tables2-2.8.0.ebuild
@@ -0,0 +1,49 @@
+# 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_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Table/data-grid framework for Django"
+HOMEPAGE="
+ https://pypi.org/project/django-tables2/
+ https://github.com/jieter/django-tables2/
+"
+SRC_URI="
+ https://github.com/jieter/django-tables2/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ dev-python/django-filter[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/psycopg:*[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ # these tests require tablib
+ rm tests/test_export.py tests/test_templatetags.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ "${EPYTHON}" manage.py test -v 2 tests || die
+}
diff --git a/dev-python/exceptiongroup/Manifest b/dev-python/exceptiongroup/Manifest
index 057140d5394f..80fdad1d213e 100644
--- a/dev-python/exceptiongroup/Manifest
+++ b/dev-python/exceptiongroup/Manifest
@@ -1 +1,3 @@
DIST exceptiongroup-1.3.0.tar.gz 29749 BLAKE2B 42b449f2de3b42433c96b939e256dfb1d609fcb478724e3b715aebbb46697c9ae99ad08012a2b7a1c23e1e479f315ff8643e0f13bd87d4c369eb2ddf4f388fca SHA512 b8cbdaf7e7199240b931ca37676a2d5c3465e6ed09efcc23fe660c9fd911d5dde092fb66dfa70ec82dc49404e669bbdb5c55b2b26ef816c189e54797b6225833
+DIST exceptiongroup-1.3.1.tar.gz 30371 BLAKE2B 153c53bc2bffd3e1aacb770370daf3aedfa9436791ef63433cc461d80b00ad4832a90608b4a30212e62d6602b2590d3c423fe0b4624ea7f5edc4dfa57966987b SHA512 5252b8be9f86bfda89ca2cc8d5ac31503729f3135cc7fc880919b60d91d50ae1e183ec7afdc1cd0b5007809ddf0f394c3a1ce09c0ef71286a14aad91d1876ca0
+DIST exceptiongroup-1.3.1.tar.gz.provenance 9507 BLAKE2B 6740aabc1b391c2447aa40c76514f93a07c417efbcf6f6b563bb08abb5449cdcd7155d61f9426fe5c9b301ca1239fd6ee08d2f7e91a09ef444ad89dea626693a SHA512 48d3d9185c46d294924599a4b1a501000fb5301f4eeca0a644448b566d4dd82ced84909557c7bdd865845ba9d41ad05cf286bbe0f53fd9268781d78e5aee289d
diff --git a/dev-python/exceptiongroup/exceptiongroup-1.3.1.ebuild b/dev-python/exceptiongroup/exceptiongroup-1.3.1.ebuild
new file mode 100644
index 000000000000..0ef3e12c8334
--- /dev/null
+++ b/dev-python/exceptiongroup/exceptiongroup-1.3.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit_scm
+PYPI_VERIFY_REPO=https://github.com/agronholm/exceptiongroup
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Backport of PEP 654 (exception groups)"
+HOMEPAGE="
+ https://github.com/agronholm/exceptiongroup/
+ https://pypi.org/project/exceptiongroup/
+"
+
+LICENSE="MIT PSF-2.4"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}]
+ ' 3.11 3.12)
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/fake-py/Manifest b/dev-python/fake-py/Manifest
index f339f4b094fa..d80779b7c7ce 100644
--- a/dev-python/fake-py/Manifest
+++ b/dev-python/fake-py/Manifest
@@ -1,3 +1,2 @@
DIST fake.py-0.11.10.gh.tar.gz 118399 BLAKE2B 7bd1d12152c0be9f4e4e7887e3b3ffb372207d464a773acc8bd28035899ff72f6aa82c625fbfd97d4f27c92014db04795efe958d23a431ff7b6ad9ea923023ea SHA512 def8f9dfe89f038c6ff11fc6d40e18c20c5ffa36e3c6a5a3c6f90c08ffd8018b343e455a9763594d3aeb92152c9ac608ed941a75137cb1fc1d1157b2adbbf061
-DIST fake.py-0.11.8.gh.tar.gz 117240 BLAKE2B b5900bd9e51ed0f774cd22202100fbe303de9fcc18a67c8f6a6d03817bdd7a03838443ab759146c0b6429a0fc724d311311d26f64b7bb9cfc0e287a3957dabec SHA512 92d4e0f01ed3e08846e12a5deace2da0cf3bd178359ec7a3b39dab3363a600b2552eb946d1baf94f47ab13b91946a61292d38ae69bafd6a3b269f02528a67675
-DIST fake.py-0.11.9.gh.tar.gz 117622 BLAKE2B 8aa64086da9853a0fb63283f6761a050fa92e605a908aadd384d3dfc73bf4b696193586f111b7206d039bfe947413054315bdf476799ac5f2f6a0a8690447726 SHA512 0961813a3356950f952121e3bc24a4747204498ab6de2e53b890056dedad56e118088d607f43891538f38072c3b437d7d6b573e1ba13760b97b0ce516ad668a1
+DIST fake.py-0.11.12.gh.tar.gz 118743 BLAKE2B fdc764a1d5b87fa84f2a5908f20c3ac1935654aa7afb1e9955ebb60dd8dc087dffa1b2b1349c7725a4e41be75c9d8ee54675b9b44de4839516298999099c35d5 SHA512 667feb1d24e1bd27291e52ff80a345ceb097f417df475c101abb513411457db13dad22aed1ccf745e6d8823d2475037ab52a75e49ad5ffe06aaa00a214a43ac8
diff --git a/dev-python/fake-py/fake-py-0.11.9.ebuild b/dev-python/fake-py/fake-py-0.11.12.ebuild
index a292bf381cd5..a292bf381cd5 100644
--- a/dev-python/fake-py/fake-py-0.11.9.ebuild
+++ b/dev-python/fake-py/fake-py-0.11.12.ebuild
diff --git a/dev-python/fake-py/fake-py-0.11.8.ebuild b/dev-python/fake-py/fake-py-0.11.8.ebuild
deleted file mode 100644
index 29c4f103e707..000000000000
--- a/dev-python/fake-py/fake-py-0.11.8.ebuild
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright 2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=fake.py
-PYTHON_COMPAT=( python3_{10..14} )
-
-inherit distutils-r1
-
-MY_P=${P/-/.}
-DESCRIPTION="Minimalistic, standalone alternative fake data generator with no dependencies"
-HOMEPAGE="
- https://github.com/barseghyanartur/fake.py/
- https://pypi.org/project/fake-py/
-"
-# upstream removed examples (and their tests) from sdist around 0.11.8
-SRC_URI="
- https://github.com/barseghyanartur/fake.py/archive/${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # avoid pytest-codeblock which is another nightmare NIH package
- rm conftest.py || die
-}
-
-python_test() {
- # This package is a mess with tests thrown all over the place,
- # and they need to be run separately because of how messy this is.
-
- local EPYTEST_DESELECT=(
- # fails when started via 'python -m pytest' because of different
- # argparse output
- fake.py::TestCLI::test_no_command
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -o addopts= fake.py
-
- local suite
- for suite in customisation dataclasses hypothesis lazyfuzzy; do
- pushd "examples/${suite}" >/dev/null || die
- epytest -o addopts=
- popd >/dev/null || die
- done
-}
diff --git a/dev-python/os-service-types/Manifest b/dev-python/os-service-types/Manifest
index dbf7a01e9dfe..87bc0e026b26 100644
--- a/dev-python/os-service-types/Manifest
+++ b/dev-python/os-service-types/Manifest
@@ -1,2 +1,3 @@
DIST os_service_types-1.8.0.tar.gz 27279 BLAKE2B 5a310fdcedaed7ef91526b12497fd2ffbaf544b563ef1d775dcb1fde52feb3aa7d6112b3ae1ce91b7a5db2bd4768a016b33a5f49ec713c95cdac77f1d68eb006 SHA512 b25512268c8f66e555acedf8481830163aec63d06c8438ecee1b5ab1ed18136406c74fb1e6661791959d5cb21ef278603b5f49a2d89dddd73c76c445206bd6f2
DIST os_service_types-1.8.1.tar.gz 27348 BLAKE2B 7efa63dd92f5aa7830a9b823f0c14c6e264658b60905d76d8daa3e3b86f21b83927ed96c591350202b7f2d9628fceb52099e6fc1fc70ae2de534de4ebde5b111 SHA512 bca76791c32f54acc81b4aa478850313ff3cdef02ad349b62810f1fdfed18dc9097657a4f9069c9fc97529e819dcf2c8d526fde05801fda7beb919a04f553f62
+DIST os_service_types-1.8.2.tar.gz 27476 BLAKE2B 17084545aa6183822a81a5dfb1bf543dc0457dabb66c54c14038a13e834a7d018eda16833828e16de15cb4daaf4d700979fad6d7a10871effa1ea52ec8ee7e7b SHA512 a7e62855848496b31c784b2e8cb025c4ae4ea4cb47ed55f4ab1a05d5c654e93975ad2334ee8e1a9c12683ebbb224319aa10fd4bb6be0f709e7753e9fa322ef7c
diff --git a/dev-python/os-service-types/os-service-types-1.8.2.ebuild b/dev-python/os-service-types/os-service-types-1.8.2.ebuild
new file mode 100644
index 000000000000..0f861accf14b
--- /dev/null
+++ b/dev-python/os-service-types/os-service-types-1.8.2.ebuild
@@ -0,0 +1,36 @@
+# 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_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A library to handle official service types for OpenStack and it's aliases"
+HOMEPAGE="
+ https://opendev.org/openstack/os-service-types/
+ https://github.com/openstack/os-service-types/
+ https://pypi.org/project/os-service-types/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-6.1.1[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/keystoneauth1-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/psycopg/Manifest b/dev-python/psycopg/Manifest
index 324c6b50e3d2..2ba681400ef9 100644
--- a/dev-python/psycopg/Manifest
+++ b/dev-python/psycopg/Manifest
@@ -1,6 +1,7 @@
DIST psycopg-3.2.10.gh.tar.gz 572879 BLAKE2B 20950385767bdb3d9d1553919424b8a80343f8a611de619da2888197ca2a139e5e2837e0521762d605b17ec3c1ee2bb73088a21709856f32351490588260f37e SHA512 aca15ce2563b3aa03d53c13ecd6a0f3a17e267a6214e899dc7aad8867dc944503c3cd23aec766903cff083df2c860d1c3a888539c684d38444b2a9af4781252a
DIST psycopg-3.2.11.gh.tar.gz 577490 BLAKE2B f0575616ba664335651612fb14328cd99c26680c190d260c4c0742877d04c6316552035ac11b7d9a029f629babe784ad1fc4631ce4ca5f9bd537c93b6cc71266 SHA512 f4385e251895abd46d03f2fba804d80073171a488e3f3363c9f98297b532b8c0570e657b93805acaf969bcaa730f0831fd97f8df14889ced8e48a4f064a8348a
DIST psycopg-3.2.12.gh.tar.gz 582058 BLAKE2B be6732c9d8c0395e8875c0fcd679628b35b0b0454ade4ca7e447fd45b833e5a2617134ea876b01bdab2a0bac44e6074827b12d04039cc097bf8a38dcd3c5a138 SHA512 911d8f246e055b43be273bb9c41c6bda0c4ac55ba5c11cd2c80d2bea54d354893bfee64797bc55a823bb834e6792c31f139ea5e18196bfc6a64273d13f940f8b
+DIST psycopg-3.2.13.gh.tar.gz 585567 BLAKE2B 244c9b51ae88dfafb235c65cec69b556ab624d6185680813548afa704916cabbf12129ba574079a98ee59f3621cf86d5a36aa2f61681b2819dc853043a9966c3 SHA512 db657b2fcf25a7dddcb30db154de97be164e48c9f88d9b7a4407f8e8e4f12d02efd0fb1ff2c3e6d0576d4ec06b8e1442c0dcc1734c88ca3171043060fafef68b
DIST psycopg-3.2.9.gh.tar.gz 565735 BLAKE2B 5b9b16e5e310214bdbf12198a7b8d9d86ed7b7e947a33c7333fe79bca946b76f09c60ea25960d3cf3f99423598a65ce33b53bd6dc10a9c68a930a46068b54fd6 SHA512 3e455852dd19c9639a8ee18773486295ea76f9a16146997be9dd4f3f6350257440e0d8fff9494acb79e95f04e74c0c14ec7968694fe329abeb74edcfb297d4dd
DIST psycopg2-2.9.10.tar.gz 385672 BLAKE2B 4a3ad64f406c427b785ffeb85f6520aa67ed04de2d1749eb22d8275146b71ba451f7c04c9ead401d6f7a273781492cd6a5a36beba68b36b1e5203ee75f7df503 SHA512 d0916f6a645b5e87f89f2463dc22fad78340a85fbff320d099bf429a42557f40d3a4eebdc670768469aef1e9fcee60123767bfe49e1186e8574f95bfd6f46900
DIST psycopg2-2.9.11.tar.gz 379598 BLAKE2B 78608a2b4a9b1db9ba9873ce01b84f898489de8ff6db5522ecc2fa68606b0ef8cdab7f137c86cf840509c9161b329a2efc1e1aadc494b565226099e8651372ab SHA512 44f7b03d958dc62822be8a8c38d738c4016c3a1f860c824158b78ba0a23f04ca63377171b22a14e38b76df868458ede25f29e4643197912adb2f1a1db8c0d5c0
diff --git a/dev-python/psycopg/psycopg-3.2.13.ebuild b/dev-python/psycopg/psycopg-3.2.13.ebuild
new file mode 100644
index 000000000000..cc0258a2a63d
--- /dev/null
+++ b/dev-python/psycopg/psycopg-3.2.13.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2025 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_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="PostgreSQL database adapter for Python"
+HOMEPAGE="
+ https://www.psycopg.org/psycopg3/
+ https://github.com/psycopg/psycopg/
+ https://pypi.org/project/psycopg/
+"
+SRC_URI="
+ https://github.com/psycopg/psycopg/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="+native-extensions"
+
+DEPEND="
+ native-extensions? (
+ >=dev-db/postgresql-8.1:=
+ )
+ !native-extensions? (
+ >=dev-db/postgresql-8.1:*
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/typing-extensions-4.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ test? (
+ >=dev-db/postgresql-8.1[server]
+ >=dev-python/dnspython-2.1[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( anyio )
+distutils_enable_tests pytest
+
+python_compile() {
+ # Python code + ctypes backend
+ cd psycopg || die
+ distutils-r1_python_compile
+
+ # optional C backend
+ if use native-extensions && [[ ${EPYTHON} != pypy3* ]]; then
+ local DISTUTILS_USE_PEP517=standalone
+ cd ../psycopg_c || die
+ distutils-r1_python_compile
+ fi
+ cd .. || die
+}
+
+src_test() {
+ rm -r psycopg{,_c} || die
+
+ initdb -D "${T}"/pgsql || die
+ # TODO: random port
+ pg_ctl -w -D "${T}"/pgsql start \
+ -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" test || die
+
+ local -x PSYCOPG_TEST_DSN="host=${T} dbname=test"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # tests for the psycopg_pool package
+ tests/pool
+ # some broken mypy magic
+ tests/test_module.py::test_version
+ tests/test_module.py::test_version_c
+ tests/test_typing.py
+ tests/crdb/test_typing.py
+ # TODO, relying on undefined ordering in Python?
+ tests/test_dns_srv.py::test_srv
+ # requires pproxy?
+ tests/test_waiting_async.py::test_remote_closed
+ tests/test_waiting.py::test_remote_closed
+ )
+
+ case ${ARCH} in
+ arm|x86)
+ EPYTEST_DESELECT+=(
+ # TODO
+ tests/types/test_numpy.py::test_classes_identities
+ )
+ ;;
+ esac
+
+ local impls=( python )
+ if use native-extensions && [[ ${EPYTHON} != pypy3* ]]; then
+ impls+=( c )
+ fi
+
+ local -x PSYCOPG_IMPL
+ for PSYCOPG_IMPL in "${impls[@]}"; do
+ einfo "Testing with ${PSYCOPG_IMPL} implementation ..."
+ # leak and timing tests are fragile whereas slow tests are slow
+ epytest -k "not leak" \
+ -m "not timing and not slow and not flakey"
+ done
+}
diff --git a/dev-python/pyproject-metadata/Manifest b/dev-python/pyproject-metadata/Manifest
index c3726d17a12b..13368debed83 100644
--- a/dev-python/pyproject-metadata/Manifest
+++ b/dev-python/pyproject-metadata/Manifest
@@ -1 +1,3 @@
+DIST pyproject_metadata-0.10.0.tar.gz 40568 BLAKE2B 2c4280e863aa809a6b2474da48c1207568a76d6ea88ce0c22ee5741557485c12f1f7fe3d4449150b58ef7f2c15de3d91423c7e4bf3c67b700ad9297da7871072 SHA512 78d912dcd0cdb969a543220231822db73da4a7a0dff40587c120484e7596794ee6544a133ae9f4c8f123d7854d0d75fa2ae1f41639544e96964c4cf20a2b5925
+DIST pyproject_metadata-0.10.0.tar.gz.provenance 9321 BLAKE2B ecaf063ed462d6917f4c1906b2e0ab44f7e49f4dd5074f28106138a2eaad33766ce26911162a216f0c0d1770a6272033529e79a7dc884a5537dc966e11377790 SHA512 fcd0c1cbb76b8e0fd9fadd37e2fb1e5dc749b0e81f4a28e6e35c627637a3c304d59d7f15a8b23e2f704f576800f771047b5ace2e3a29afc024bfc3bcc541ecaa
DIST pyproject_metadata-0.9.1.tar.gz 38415 BLAKE2B dced26d0cf326e1efc8029e7de595d3f0be4818cb3c78fcb809fb2888db1b51cb7ee5c45be9fbe7b4a4d6bd15a8c6aad9fb80b135572c62df5cf23531fc140f9 SHA512 df4623d0798d5203e085af3c13107a77c600c70c8e10c3a28c30ee78010e7deebce477b9b24fe91d5990450ba1d9935c55cf2484432caadad2edb3cf58114256
diff --git a/dev-python/pyproject-metadata/pyproject-metadata-0.10.0.ebuild b/dev-python/pyproject-metadata/pyproject-metadata-0.10.0.ebuild
new file mode 100644
index 000000000000..0f151951bb53
--- /dev/null
+++ b/dev-python/pyproject-metadata/pyproject-metadata-0.10.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_VERIFY_REPO=https://github.com/pypa/pyproject-metadata
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="PEP 621 metadata parsing"
+HOMEPAGE="
+ https://github.com/pypa/pyproject-metadata/
+ https://pypi.org/project/pyproject-metadata/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ >=dev-python/packaging-23.2[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/pyside/Manifest b/dev-python/pyside/Manifest
index 1141c5c8688a..b39bfc2972cc 100644
--- a/dev-python/pyside/Manifest
+++ b/dev-python/pyside/Manifest
@@ -1,2 +1,2 @@
-DIST pyside-setup-everywhere-src-6.10.0.tar.xz 17758096 BLAKE2B c627bd68f13e6af1b49f5857fea0d541e8d8fd4ef2577fcd22e80ee93475f19067f1e2fe85a04b786421960ba4eebb9dc9c5cf8f64b89a4a4e65f58cf005196d SHA512 023599df8423a70ff776159ba302e4a72f43f0b3928f088d6cf429a59a229b170d11671527384b17360a03764ef5b70e358a5df985780212ac7edccb8c2609b5
+DIST pyside-setup-everywhere-src-6.10.1.tar.xz 17746968 BLAKE2B c81f838285454731541600dd72bf2c46c993447eb78689267b50233d0417ae5a250e690aa55dfcd6e0d692cee4ccdd4e5c70f2e4cd989545ab3cb91eb8cd81be SHA512 fef31a1d39362d09c8e4c4621090851d42dc4566f2bd813361da64eed8af25a8bd9cf770dea2a26f9e00420ae19eb57ec2f5db11c1d86f39d26b6e8f7ebf6d21
DIST pyside-setup-everywhere-src-6.9.3.tar.xz 16663380 BLAKE2B 10834a35c3de13657256892111e3f54dceeb4fef61618b61672018bbffa007cfac0b602bd39b3ef7a472ba47f9444c7e7cf6d43cb411de0dd26333faa0814e7a SHA512 457a447146a8e5be94940b06172a21cdc9f1407c9c48e6449d410ae3f122002f5970c3841cba6135fb4d889c58a4ed1b648f03b708f9a5cfb9f1cc93cbb9d561
diff --git a/dev-python/pyside/pyside-6.10.0.ebuild b/dev-python/pyside/pyside-6.10.1.ebuild
index 2dce1eb8e112..2dce1eb8e112 100644
--- a/dev-python/pyside/pyside-6.10.0.ebuild
+++ b/dev-python/pyside/pyside-6.10.1.ebuild
diff --git a/dev-python/restructuredtext-lint/Manifest b/dev-python/restructuredtext-lint/Manifest
index a57a6788ba5a..d9aef26d817e 100644
--- a/dev-python/restructuredtext-lint/Manifest
+++ b/dev-python/restructuredtext-lint/Manifest
@@ -1 +1,3 @@
DIST restructuredtext_lint-1.4.0.tar.gz 16723 BLAKE2B 2beaa565391fd1a130f8ef998b140e0ebb4695759a61c0526f066e71c3bd42e981115f267c48d30e19eb45c240907ea71d9f49a03d74e9ce1d4b80a2c0b511c9 SHA512 8e16e2a43cb1e52bb3b4ac60da53130bd4a8d0b823fc95b32e62068bed95728084de3b55820cfcaba70eecaaa93bdf3f956b8bb6c55155115b40c7151ef58a2c
+DIST restructuredtext_lint-1.4.1.tar.gz 17211 BLAKE2B 7a4415ae8119e713283833efe93517e315092fa42cf86ba6a3ef58c314403ee1a449b9f6653ffdb6e59a66b3e06fb9d36ed753fd1af8d6a12ec21717a12bfe97 SHA512 6bfe4db4dcd9764ab9f2ce49a2fbe30e60c461005495be6bba042b3bea5613e11b012e176bc0974c33805f3d7d21f5e95b906736aa8ddd4577f816e19a8d7c79
+DIST restructuredtext_lint-2.0.0.tar.gz 17325 BLAKE2B 52ab50221383c083c1ce7a2decb74bea61568453ea580234ceeaba655c4fc26b0cf39c1b066af16294d9ee565301f2b381daa0ff8ea4005a1bbc1796d8880b40 SHA512 b92f9227167e2cc678cfe20320ebe7a45942417e5da2f3315dabe20d1b3daf96b8345c1d3ec859f52223353590ae909c3b44672a285feef2fd26e9cb3d830dff
diff --git a/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.1.ebuild b/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.1.ebuild
new file mode 100644
index 000000000000..f4ce809006a5
--- /dev/null
+++ b/dev-python/restructuredtext-lint/restructuredtext-lint-1.4.1.ebuild
@@ -0,0 +1,26 @@
+# 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_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Checks PyPI validity of reStructuredText"
+HOMEPAGE="
+ https://github.com/twolfson/restructuredtext-lint/
+ https://pypi.org/project/restructuredtext-lint/
+"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/docutils-0.11[${PYTHON_USEDEP}]
+ <dev-python/docutils-1.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/restructuredtext-lint/restructuredtext-lint-2.0.0.ebuild b/dev-python/restructuredtext-lint/restructuredtext-lint-2.0.0.ebuild
new file mode 100644
index 000000000000..f4ce809006a5
--- /dev/null
+++ b/dev-python/restructuredtext-lint/restructuredtext-lint-2.0.0.ebuild
@@ -0,0 +1,26 @@
+# 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_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Checks PyPI validity of reStructuredText"
+HOMEPAGE="
+ https://github.com/twolfson/restructuredtext-lint/
+ https://pypi.org/project/restructuredtext-lint/
+"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/docutils-0.11[${PYTHON_USEDEP}]
+ <dev-python/docutils-1.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index 4882b971a775..3727774d7d8a 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -2,3 +2,4 @@ DIST stripe-13.0.1.tar.gz 1263853 BLAKE2B f210b2c69afbf5d25b78857f125e5cf28ec618
DIST stripe-13.1.2.tar.gz 1357500 BLAKE2B cc3b56b85f4852813e882e06b18cb0fe522ed252421c58bd2433661d58abb621b8b43ccdb441eac44587f67c5b5e18be773e42e503d58beae8d3a391e04e5b01 SHA512 57eadf645cdbddc91777fae1a97d0e6f612c3d8533201cb2c6110a549a672ac2f27c5346930e4f14345ab07644f6254c367192c1d3d933fe32fc6c8831a50c4a
DIST stripe-13.2.0.tar.gz 1357785 BLAKE2B 5462cd451f111878c4a12019a1e8efd515c25a93d0c10dd0a59ae9fb1d5a94ebfb66dbc3e76f1bf822ff8713fa05027f08974545c08a559486a9cbaec7e4ec97 SHA512 3cb687d6a1f45c0cbdc5ed301f5751d3c2499f8524e03e429aca54d11c4ab8735a9fd81e18b56829c479a3c68dce43dd5c4bd86c82c9d4ed4144dbc4ac2b5bd1
DIST stripe-14.0.0.tar.gz 1362403 BLAKE2B 483df8183dc4c601ff01464a769aa3d1a1fde6868aaa515984fb8357581a2ade3bf31cd385ec362c3a735bd6efadb60d15ce6d191ca8851c4b8b0901a22d76fd SHA512 1a523d1760a60569b13c2345ffdad75d28d64b8d04ace652cb4977498a5837938887825003a6b3311c263bbafb0e6d4396fc241043934e08384280995bc10044
+DIST stripe-14.0.1.tar.gz 1362960 BLAKE2B aaa99435384a99f54cd8d33c73989040e8d20f17e2df9dd11a4d8ba8d0b429d04f8a29887583853c6c7e9b51fea59585ca3fd4ecee9ce5c32d3120d6871fff3f SHA512 0459973952e28fa1706dcca2a14e9b7f844bbd6b37cc4445b603ead34b8b711b3311ec3c0f404beb39041430a5c121f371525d3496998b27cf0328e8b335e355
diff --git a/dev-python/stripe/stripe-14.0.1.ebuild b/dev-python/stripe/stripe-14.0.1.ebuild
new file mode 100644
index 000000000000..5b0096f2ce7b
--- /dev/null
+++ b/dev-python/stripe/stripe-14.0.1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2025 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 pypi
+
+DESCRIPTION="Stripe Python bindings"
+HOMEPAGE="
+ https://github.com/stripe/stripe-python/
+ https://pypi.org/project/stripe/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="telemetry"
+
+RDEPEND="
+ >=dev-python/requests-2.20[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}]
+"
+# please bump dev-util/stripe-mock dep to the latest version on every bump
+BDEPEND="
+ test? (
+ >=dev-util/stripe-mock-0.197.0
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ net-misc/curl
+ )
+"
+
+EPYTEST_PLUGINS=( anyio pytest-mock )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ if ! use telemetry; then
+ sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_http_client.py::TestLiveHTTPClients::test_httpx_request_async_https
+ 'tests/test_integration.py::TestIntegration::test_async_raw_request_timeout[asyncio-aiohttp]'
+ # timing
+ tests/test_integration.py::TestIntegration::test_passes_client_telemetry_when_enabled
+ )
+
+ epytest tests
+}
+
+src_test() {
+ local stripe_mock_port=12111
+ local stripe_mock_max_port=12121
+ local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
+ # Try to start stripe-mock until we find a free port
+ while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do
+ ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
+ stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" &
+ local stripe_mock_pid=${!}
+ sleep 2
+ # Did stripe-mock start?
+ curl --fail -u "sk_test_123:" \
+ "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null
+ eend ${?} "Port ${stripe_mock_port} unavailable"
+ if [[ ${?} -eq 0 ]]; then
+ einfo "stripe-mock running on port ${stripe_mock_port}"
+ break
+ fi
+ (( stripe_mock_port++ ))
+ done
+ if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then
+ eerror "Unable to start stripe-mock for tests"
+ die "Please see the logfile located at: ${stripe_mock_logfile}"
+ fi
+
+ local -x STRIPE_MOCK_PORT=${stripe_mock_port}
+ distutils-r1_src_test
+
+ # Tear down stripe-mock
+ kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
+}
diff --git a/dev-python/tavern/Manifest b/dev-python/tavern/Manifest
index fc931664464a..81fc2f05a74d 100644
--- a/dev-python/tavern/Manifest
+++ b/dev-python/tavern/Manifest
@@ -1,3 +1,4 @@
DIST tavern-2.17.0.gh.tar.gz 243762 BLAKE2B aca42310622fe769ff6a6201c4fd4faa613ff2a73910044d4eed9ab60f3e731e1614e3cea9deee8a47c553f9156462da5312e358fe58b52beb45fe4a60e847e0 SHA512 33f01a13bf87a6015bb0896bb7184ca584da43b1543a620b0577cfe2f7ebc71c550008e0febd0634e9649394322a41ded32e1b482abfd26fe750a2c46a5a0894
DIST tavern-3.0.0.gh.tar.gz 280132 BLAKE2B c99076aaf402a47b904da65d97fb75b3518d5d683492ad3a47b04fae05ed305a3f0ce1841d25b25d96fb06542d020608b05fa3b4a9e53822ce0bf2114f7797f7 SHA512 7c7764bb3fae649969e8dd2ae86103abb31de2ccee7e792ca136be6294df251863da6ab783319a9d2e43219f3a7b34793d17282f3aca59ca7ddbe417b3ded24c
DIST tavern-3.0.1.gh.tar.gz 292514 BLAKE2B 2a2297c09ca39e97d8926cbda681606e5ffa29fe29d7a9c5690f78cc1090304edba8ad813bab28470a8f20d3ad0900c0b88854ee1e450425e3e306bb9c09834b SHA512 1c79899effd4abf148a4c9459fa3994a0b2ad972899d39ab79740951d0fd1671d8905d50e2ba1eeae397a822424db6f090f3ab1207511bd118ae9eecc3045eef
+DIST tavern-3.0.2.gh.tar.gz 292587 BLAKE2B 44433a0ca0407028be85e3e2dfb096852706194752da8c16c540afea11342afe54df78b518eb81a29f43c9dcddaa133ac5707e69227087cb8b454f70e16ac52f SHA512 2453aef71502db88f2d489d7f618324bf63b3b7b9cf80fe2c22dcddf7315c7eb94160f4bfe8d6a359849745596074fdc8fc9eb7ccdc06ad59f9c7d5d0664f650
diff --git a/dev-python/tavern/tavern-3.0.2.ebuild b/dev-python/tavern/tavern-3.0.2.ebuild
new file mode 100644
index 000000000000..66bf5b84b4d4
--- /dev/null
+++ b/dev-python/tavern/tavern-3.0.2.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2025 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="A tool, library, and Pytest plugin for testing RESTful APIs"
+HOMEPAGE="
+ https://github.com/taverntesting/tavern/
+ https://pypi.org/project/tavern/
+"
+SRC_URI="
+ https://github.com/taverntesting/tavern/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/jmespath-1[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4[${PYTHON_USEDEP}]
+ >=dev-python/pyjwt-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/pykwalify-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ >=dev-python/python-box-6[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.22.0[${PYTHON_USEDEP}]
+ >=dev-python/simpleeval-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/faker[${PYTHON_USEDEP}]
+ dev-python/paho-mqtt[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( "${PN}" )
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # requires grpc
+ tests/unit/test_extensions.py::TestGrpcCodes
+ # broken with paho-mqtt-2
+ tests/unit/test_mqtt.py::TestClient::test_context_connection_success
+)
+EPYTEST_IGNORE=(
+ # require grpc*
+ tavern/_plugins/grpc
+ tests/unit/tavern_grpc
+)
+
+src_prepare() {
+ # strip unnecessary pins, upstream doesn't update them a lot
+ sed -i -E -e 's:,?<=?[0-9.]+::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/time-machine/Manifest b/dev-python/time-machine/Manifest
index 2865b664faa4..fa9bbdae7579 100644
--- a/dev-python/time-machine/Manifest
+++ b/dev-python/time-machine/Manifest
@@ -1,3 +1,4 @@
DIST time-machine-2.16.0.gh.tar.gz 30522 BLAKE2B 71b1d2848bd0a72d193b262299976da4aeac3deb52776ebcc855dfc9e6eabc8d9459c123980d7b0b9e29bc2df66193f287a4817ec351ae43994b969731da7bc9 SHA512 19b764cccdff07056a7d42841da576d90037661a9f124e3fbab408bfa61dccf4b51b88a7e0741c87b03e7a8cc3306bb0ed32bd66588e45c9ab7e9d9cb5ba44ae
DIST time-machine-2.19.0.gh.tar.gz 78404 BLAKE2B 3682f71881c6ca619269a827fb6b0bb4af27deef42a128e67784cfbec92f73523463f25341b1afaf92591578d4ec50e75593cba54b663cae120188b35918ce91 SHA512 1efa686a0b647cede3ee20a89bfe03b1be7b97042a3e75939fa26665f8a781c99bc96f98fdbeeedba6e5ca62521f9e7283a82af25e412c17099235e84c64eed6
DIST time-machine-3.0.0.gh.tar.gz 75674 BLAKE2B 5111bf4bc2de87ad94b3bbb017ba4f4877eb5ddd9998110cc49071dbcfe0b966f6e4726a3a5c9192e0ddd79fb7279d2d3ecb2df9d745e6d8186bc473efbfac34 SHA512 ac40d598810124555c68abf5d286e5ae42669294f912fa2967e2088edea1544b11cd9f4f64d60d4ad8c256be0db151b30976baf665d7d1cd6362af6c85a239c4
+DIST time-machine-3.1.0.gh.tar.gz 75765 BLAKE2B e74dd8d06bd7d8a0f1a4df34ae01e4cea0271319c3951b420b5212cb6383addfef8016f9cb4d9a3085ae518e04b98a0d7b5178fec2793c04c5c82560e69572b2 SHA512 4312b82a8e968bdbdab59e81636d489d025e930166466572494ccb47da581b7bd9263a83d0587d023d5ff2f8d46223bdee3811d6b318b2ccd00dea58acdf2d8c
diff --git a/dev-python/time-machine/time-machine-3.1.0.ebuild b/dev-python/time-machine/time-machine-3.1.0.ebuild
new file mode 100644
index 000000000000..07734346dce8
--- /dev/null
+++ b/dev-python/time-machine/time-machine-3.1.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2025 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_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Travel through time in your tests"
+HOMEPAGE="
+ https://github.com/adamchainz/time-machine/
+ https://pypi.org/project/time-machine/
+"
+SRC_URI="
+ https://github.com/adamchainz/time-machine/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/tokenize-rt[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
+distutils_enable_tests pytest
diff --git a/dev-python/types-psutil/Manifest b/dev-python/types-psutil/Manifest
index 1e1d7b186ce8..fc3fcb250d30 100644
--- a/dev-python/types-psutil/Manifest
+++ b/dev-python/types-psutil/Manifest
@@ -2,3 +2,4 @@ DIST types_psutil-7.0.0.20251001.tar.gz 20469 BLAKE2B a0b3563bafe004553e56c2b50b
DIST types_psutil-7.0.0.20251111.tar.gz 20287 BLAKE2B 89843a8d09099344060c19962ec0d0f9b0ce119f82f7b7e264d83259b92acb7581f96af5440514645daad103cdf5fb86587a51f94eb61042fefe7994ea90894b SHA512 25778e2f23544a71df876dc22d40eedfe912e686de54ed520dc4eced95b7817a14c8c8a9d391f52782272f984cfd9ce536ac12d4dc351915bdeaa801aa906909
DIST types_psutil-7.0.0.20251115.tar.gz 21485 BLAKE2B 8c2a745640e1f51e30d64fdc53e82e3ba67b0cc9c3fed3d8a2b673308520ba0cc4cc48a33b8bb31edcfa6d728f47adc8dbc506cfa49b3c578225c6b35a4f8ee5 SHA512 474a109630782f06fc22b6a82088ccaabf81ca854412e8c8297bb0a2eef67ed7e682d27a7b2f51d317fd8d79b588434116322b6cb6e21baf8533f060fbfd8240
DIST types_psutil-7.0.0.20251116.tar.gz 22192 BLAKE2B 65cf2d87db83c15499595325345d766259e4b5a17e101eca73d36e4c547bc8ff2d323283abe5291a3261838993d48ab9211420869869a86d6486082b243cabe4 SHA512 59d954e9ef69c28e9ed82d60c098f6a5274c4dfb973f9a0a45048c44d127fbda68679065e44071dea487e7f1e1a09088764c3c6e78ca8fef9a5d1fc5ede6d0ca
+DIST types_psutil-7.1.1.20251122.tar.gz 22275 BLAKE2B 37780ae12cab65c92cec76211ef74e907b3a026f00f3f67ca4c60e700173f6d16aa74b7d7692020005203ba50dbe9101ce58015b13a3a10ed44516636f370434 SHA512 b3089b3788a38f35434e95c63ce78ecebac27cb3d1c9aa5627c8fc697bf134b9307ae9d4aa1d9aceaa6fe6550d7531dd7445ea36e4fb6cbb6247c6184d6f7c64
diff --git a/dev-python/types-psutil/types-psutil-7.1.1.20251122.ebuild b/dev-python/types-psutil/types-psutil-7.1.1.20251122.ebuild
new file mode 100644
index 000000000000..486007de99f8
--- /dev/null
+++ b/dev-python/types-psutil/types-psutil-7.1.1.20251122.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023-2025 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"
diff --git a/dev-python/xmlsec/Manifest b/dev-python/xmlsec/Manifest
index ffdcb2898cd1..548953fd0093 100644
--- a/dev-python/xmlsec/Manifest
+++ b/dev-python/xmlsec/Manifest
@@ -1 +1,2 @@
DIST python-xmlsec-1.3.16.gh.tar.gz 80406 BLAKE2B 1be23867ae44a108dc0596698b712a4d2c8cff4206a9518cab3960368f5242981b8c4e4ba70b9183c298e5a35d2ab823d926019d7292d0a697e7bd3127f88bcc SHA512 1ed39d613c8c656b8d6898730212a3c990f1ab5b807dfdacc0a1c9db1ffaf79cbcc403e771d19faebdf170de7dc886df5582ee8589b6d0d72e3cb9ddc193012a
+DIST python-xmlsec-1.3.17.gh.tar.gz 81176 BLAKE2B 7f03b3b732751d89ef6c7765190eeb4add26d7f3332465f47e7faaae5007b0ab204c5df7d60fc6886e1cb199757b22a50b89757bf4ad6aba56fd02cce739f5fc SHA512 97404eb61442872f2ae745a5e2789d87227087b8ea47509e51b639b708bd5f4a0eeafb60dd0cecd6d63af740cff0035dd4bd66ae3d5bdd2803bad6e96226de69
diff --git a/dev-python/xmlsec/xmlsec-1.3.17.ebuild b/dev-python/xmlsec/xmlsec-1.3.17.ebuild
new file mode 100644
index 000000000000..ee0c07780ce7
--- /dev/null
+++ b/dev-python/xmlsec/xmlsec-1.3.17.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2021-2025 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_{10..14} )
+
+inherit distutils-r1
+
+MY_P=python-xmlsec-${PV}
+DESCRIPTION="Python bindings for the XML Security Library"
+HOMEPAGE="
+ https://github.com/xmlsec/python-xmlsec/
+ https://pypi.org/project/xmlsec/
+"
+SRC_URI="
+ https://github.com/xmlsec/python-xmlsec/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+DEPEND="
+ dev-libs/libxml2:=
+ dev-libs/xmlsec:=[openssl]
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/lxml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/pkgconfig[${PYTHON_USEDEP}]
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+"
+
+EPYTEST_DESELECT=(
+ # Fragile based on black version?
+ tests/test_type_stubs.py::test_xmlsec_constants_stub
+)
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_configure() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+ export PYXMLSEC_OPTIMIZE_SIZE=
+ if use debug; then
+ # we don't want to use PYXMLSEC_ENABLE_DEBUG envvar,
+ # as it forces -O0
+ export CPPFLAGS="${CPPFLAGS} -DPYXMLSEC_ENABLE_DEBUG=1"
+ fi
+}
diff --git a/dev-python/zconfig/Manifest b/dev-python/zconfig/Manifest
index f4bf8dfac690..e4c222f7b528 100644
--- a/dev-python/zconfig/Manifest
+++ b/dev-python/zconfig/Manifest
@@ -1 +1,2 @@
DIST zconfig-4.2.tar.gz 127198 BLAKE2B a533d39c32280bdc5d4b869b9128444e0a36919100bbf7cbe86bf3cd3a67d9be7d20abd6bca831cedff8e8d3f8af4d412fbd92c0db6b1996e72c19d8d2f79879 SHA512 35cc83c51ecfc894edf7d8f2408f63f0c8f59affebb38bab171cc7a56a46916e2f7dae985f0cc9cde92c85cbe93667e2b91b236f60b418f4551d2e5520220a4b
+DIST zconfig-4.3.tar.gz 128126 BLAKE2B fd2a4f12eb9c6277386a8834065499490e06081e800ac86ab8089c590f6df5f8b76029da289103158af0bb7d39ddc6c92bf015d350b5b7f527b7dd9341868bae SHA512 daf3fdd39bd9baa8c56005e02c72f332a448969fa9d53fcfe8b629dca4d10c785af139bf481b62420561934867aa31efacdf31795fcd86fc11d416c640366f91
diff --git a/dev-python/zconfig/zconfig-4.3.ebuild b/dev-python/zconfig/zconfig-4.3.ebuild
new file mode 100644
index 000000000000..a2fe8a61f5d9
--- /dev/null
+++ b/dev-python/zconfig/zconfig-4.3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="ZConfig"
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Configuration library supporting a hierarchical schema-driven model"
+HOMEPAGE="
+ https://github.com/zopefoundation/ZConfig/
+ https://pypi.org/project/ZConfig/
+"
+
+LICENSE="ZPL"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/manuel[${PYTHON_USEDEP}]
+ dev-python/zope-exceptions[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES.rst README.rst )
+
+distutils_enable_tests unittest
+distutils_enable_sphinx docs \
+ dev-python/sphinxcontrib-programoutput
+
+python_test() {
+ eunittest -s src/ZConfig/tests
+}