summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-02-26 07:25:04 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-02-26 07:25:04 +0000
commitdb4e790879294f244670a7060a0ae59c2f00baf6 (patch)
tree42993c4e9506288688f1c2af33ae51dbc3cb795f /dev-python
parentf1dfb9ba3f1dc1ddfd52782f8e95d6a15c2fce12 (diff)
downloadbaldeagleos-repo-db4e790879294f244670a7060a0ae59c2f00baf6.tar.gz
baldeagleos-repo-db4e790879294f244670a7060a0ae59c2f00baf6.tar.xz
baldeagleos-repo-db4e790879294f244670a7060a0ae59c2f00baf6.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/ansible-compat/Manifest5
-rw-r--r--dev-python/ansible-compat/ansible-compat-25.12.1.ebuild (renamed from dev-python/ansible-compat/ansible-compat-25.11.0.ebuild)8
-rw-r--r--dev-python/ansible-compat/ansible-compat-25.8.2.ebuild66
-rw-r--r--dev-python/bandit/Manifest4
-rw-r--r--dev-python/bandit/bandit-1.9.4.ebuild (renamed from dev-python/bandit/bandit-1.9.1.ebuild)4
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.42.57.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.42.57.ebuild67
-rw-r--r--dev-python/certifi/Manifest2
-rw-r--r--dev-python/certifi/certifi-2026.02.25.ebuild (renamed from dev-python/certifi/certifi-2025.11.12.ebuild)2
-rw-r--r--dev-python/electrum-ecc/Manifest2
-rw-r--r--dev-python/electrum-ecc/electrum-ecc-0.0.7.ebuild (renamed from dev-python/electrum-ecc/electrum-ecc-0.0.5.ebuild)7
-rw-r--r--dev-python/fakeredis/Manifest2
-rw-r--r--dev-python/fakeredis/fakeredis-2.34.1.ebuild98
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/nanobind/Manifest1
-rw-r--r--dev-python/nanobind/nanobind-2.12.0.ebuild63
-rw-r--r--dev-python/nbxmpp/Manifest1
-rw-r--r--dev-python/nbxmpp/nbxmpp-7.1.0.ebuild35
-rw-r--r--dev-python/pallets-sphinx-themes/Manifest2
-rw-r--r--dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.5.0.ebuild28
-rw-r--r--dev-python/pynacl/pynacl-1.6.2.ebuild2
-rw-r--r--dev-python/pytest-check/Manifest2
-rw-r--r--dev-python/pytest-check/pytest-check-2.7.0.ebuild (renamed from dev-python/pytest-check/pytest-check-2.6.0.ebuild)4
-rw-r--r--dev-python/python-ironicclient/Manifest1
-rw-r--r--dev-python/python-ironicclient/python-ironicclient-6.0.0.ebuild48
-rw-r--r--dev-python/python-neutronclient/Manifest1
-rw-r--r--dev-python/python-neutronclient/python-neutronclient-11.8.0.ebuild72
-rw-r--r--dev-python/python-swiftclient/Manifest2
-rw-r--r--dev-python/python-swiftclient/python-swiftclient-4.10.0.ebuild (renamed from dev-python/python-swiftclient/python-swiftclient-4.8.0.ebuild)9
-rw-r--r--dev-python/redis/Manifest1
-rw-r--r--dev-python/redis/redis-7.2.1.ebuild122
-rw-r--r--dev-python/sphinx-autodoc-typehints/Manifest4
-rw-r--r--dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.8.0.ebuild (renamed from dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.6.0.ebuild)6
-rw-r--r--dev-python/stripe/Manifest1
-rw-r--r--dev-python/stripe/stripe-14.4.0.ebuild91
-rw-r--r--dev-python/tempest/Manifest1
-rw-r--r--dev-python/tempest/tempest-46.1.0.ebuild77
-rw-r--r--dev-python/tox/Manifest2
-rw-r--r--dev-python/tox/tox-4.46.3.ebuild91
-rw-r--r--dev-python/translate-toolkit/Manifest1
-rw-r--r--dev-python/translate-toolkit/translate-toolkit-3.19.2.ebuild130
-rw-r--r--dev-python/virtualenv/Manifest2
-rw-r--r--dev-python/virtualenv/virtualenv-20.39.1.ebuild133
48 files changed, 1180 insertions, 104 deletions
diff --git a/dev-python/ansible-compat/Manifest b/dev-python/ansible-compat/Manifest
index 1f8e61eb8806..0270c80628b5 100644
--- a/dev-python/ansible-compat/Manifest
+++ b/dev-python/ansible-compat/Manifest
@@ -1,5 +1,4 @@
-DIST ansible_compat-25.11.0.tar.gz 193024 BLAKE2B d4e802582911f04429823e4f5e66c0fa40a6ebd9c6a8cbaff6a56728ef772bb0ed558584d9b6ffcafa78e7d06070f6574b66cfc75aacd975d7fe9834deb04a5d SHA512 e8af788d69ef9aa532c0b2f5f6401df1c61a4bd1d90e269c8d7d1418048e5f6d78bbc116d704fb875dada7e2389d25b57385dae90af0cbaceeedd37c7d3d9665
-DIST ansible_compat-25.11.0.tar.gz.provenance 9485 BLAKE2B be19bf3dced5710bfd76a09c59ab05029c676a79c09325840f5ce3af98c120578177320ede09f45025279d10ca190d3d3e74d4d18f8633903957be416e30384c SHA512 db70483ecf37cdd29287e7cf5d6a37455537ce40ea0bcca1ad30b48d8eabdd9f384197862b50017a35a829028c1d1c56229e30ebf3b6d0d265d386303c8760db
DIST ansible_compat-25.12.0.tar.gz 193698 BLAKE2B f3eb02d8257a2a3136182d1338359cab0d7c0f2e3a7f77ee26d52e3e3af8105445a3937e836821b4eedaa203f25230625ff0ff779e8c4e78eb8d85a498794be3 SHA512 a2ecf54a3c3324f5be8c10475aca1b528ee186ac402f841be6d7a8ae379019ae3d3486fcec7e433744f9d2053471ae219c0977c93073dc67029cad3f44868229
DIST ansible_compat-25.12.0.tar.gz.provenance 9250 BLAKE2B ebe215a01b27030246fcda815e286d827b8bc148e4c6095a76f233628fbd77512b1f9cbdc88f65998c2431a915b7ccc78b35862e2d23147f6af73d416ef450de SHA512 f6097b1f729c67e5129366a8bd2c79386234622a91108ffe1d5f71a7b7b215e726893ba6237e121e43f9b90970c5b0ad61094fcb8a13eca88c76e95a2eb95a06
-DIST ansible_compat-25.8.2.tar.gz 190581 BLAKE2B a20ebf6b595a8933d02b88c1f9f8efae8e7ffac3378bed3c50fd8fbf74a73663c5406fde7f05f0a923ba7ce75d920f3bf58e347cb7650cec77cb974ed805e45c SHA512 78beb54d3ad65e02e7009834b5690b118c6743274fa5fd31941e63a7f99d3b7ac2fcbce0fa80d45212a6bcf4365628e731cb139a6af14360c0552e9a759d6336
+DIST ansible_compat-25.12.1.tar.gz 214925 BLAKE2B 2ab6caf21cfd8f4a5991822d7371c4f13cd62da87d0a2caaa0d454ad149a93f7fe75954b2d897ab6997018db3390c6e5f8625fecece4a838d797f896f6219af7 SHA512 bce02d153c8ebf93127b347a639c67973b94c706942bbc7c12a63a354275a2f364d3e5852d4b914b3ea13bac291da163087b9e1d37757638e1e2e1363f7c647f
+DIST ansible_compat-25.12.1.tar.gz.provenance 9440 BLAKE2B 388ba058403e64fc20bc03d194b0b233c1c7fbfe77691456f969294105530e7f3f19b97ffe44ff3a2c9b1d07c9be4c0f07ae62b327dc2a528001db989c3fbd67 SHA512 0673c4d928637061fb9a7e1474eb1549b3b7aae173c1ced862e7f8119a816a0786b063915bcf0050ec9d3672ac574bcdae3682f1808755a564a4ff026d12fdb8
diff --git a/dev-python/ansible-compat/ansible-compat-25.11.0.ebuild b/dev-python/ansible-compat/ansible-compat-25.12.1.ebuild
index dd02bf26b825..d1f410256e88 100644
--- a/dev-python/ansible-compat/ansible-compat-25.11.0.ebuild
+++ b/dev-python/ansible-compat/ansible-compat-25.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
@@ -17,13 +17,13 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ~riscv"
+KEYWORDS="~amd64 ~arm64 ~riscv"
RDEPEND="
>=app-admin/ansible-core-2.18.6[${PYTHON_USEDEP}]
>=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-25.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-6.0.2[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
>=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}]
"
BDEPEND="
diff --git a/dev-python/ansible-compat/ansible-compat-25.8.2.ebuild b/dev-python/ansible-compat/ansible-compat-25.8.2.ebuild
deleted file mode 100644
index 081d48976c4e..000000000000
--- a/dev-python/ansible-compat/ansible-compat-25.8.2.ebuild
+++ /dev/null
@@ -1,66 +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_{10..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Contains functions that facilitate working with various versions of Ansible"
-HOMEPAGE="
- https://pypi.org/project/ansible-compat/
- https://github.com/ansible/ansible-compat/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~riscv"
-
-RDEPEND="
- >=app-admin/ansible-core-2.18.6[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-25.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-6.0.2[${PYTHON_USEDEP}]
- >=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}]
-"
-
-EPYTEST_PLUGINS=( pytest-{mock,plus} )
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # remove stupid upstream version block
- sed -i -e 's:2.20.0dev0:0:' src/ansible_compat/prerun.py || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # All these tests attempt to connect to galaxy.ansible.com
- test/test_runtime.py::test_install_collection
- test/test_runtime.py::test_install_collection_dest
- test/test_runtime.py::test_prepare_environment_with_collections
- test/test_runtime.py::test_prerun_reqs_v1
- test/test_runtime.py::test_prerun_reqs_v2
- test/test_runtime.py::test_require_collection_no_cache_dir
- test/test_runtime.py::test_require_collection_wrong_version
- test/test_runtime.py::test_require_collection
- test/test_runtime.py::test_upgrade_collection
- test/test_runtime_example.py::test_runtime
- 'test/test_runtime.py::test_load_plugins[modules]'
- # pip, failing due to internets
- test/test_runtime_scan_path.py::test_scan_sys_path
- test/test_runtime_scan_path.py::test_ro_venv
- # internets?
- test/test_runtime.py::test_runtime_has_playbook
- # TODO
- test/test_prerun.py::test_get_cache_dir_relative
- )
-
- epytest -o addopts=
-}
diff --git a/dev-python/bandit/Manifest b/dev-python/bandit/Manifest
index ee93b6782b68..7accff47731c 100644
--- a/dev-python/bandit/Manifest
+++ b/dev-python/bandit/Manifest
@@ -1,6 +1,6 @@
-DIST bandit-1.9.1.tar.gz 4241552 BLAKE2B 7e1c8ef3982f614d64390d843122de346f0b1c34c70244fb81b59167e028b3b24b0cbab3cf073dcc5ce0442f826d8fcaf4557d9e133fd94551d9f59f34fab75f SHA512 3fbf24e72e20b9a0d222c15b085d7b7f5f0b601999440bc176dff7f08fa382632447aba8a3187fd7627ce12d79176b81a49339032254f26adc6615eaf99548b0
-DIST bandit-1.9.1.tar.gz.provenance 9409 BLAKE2B 88640c263ca3a5583cc0e6b0237949654bb3dbd5906cb38db6c574fd80d2ba3025f9df4aa0c24e509fe93c512e9f2cb3c4f669dc730e7098f1c13c5ed12f5d3c SHA512 f2bb72262590cb1f6d04e79ee1c130580a3b1d74e684da1d21a68c273f6c3a2dc931a9370f9985875ff5f9388591ed10bc0a2b27482988cdc1e1e264511b4eea
DIST bandit-1.9.2.tar.gz 4241659 BLAKE2B 3cfd1e91e8f7e0fbf6bebec67fb205e260d1aa368b127e7a56ebd270223a19a80566d99d2ea69c7968602807bb6b9cedb177e217f622be5d70c85c3d3d460ea3 SHA512 203481137d2ee6179e1d5d8ed140ff21ff002fa1930e92beb58b619f4597b0ad45acdc809963b0826119909b03f86530d3ba5062bd16d9b37f19e6b292807b1d
DIST bandit-1.9.2.tar.gz.provenance 9460 BLAKE2B 9b9e9d556d06f18d637ba1aa1970812df2c186e9e0660246988dc7606c8875752af3e50d22ba9922e5230f42b1fd503f8dde04abbc6a30bc98204ec2dcdcef46 SHA512 5a25899ec0dd68a796ccf665df8476c6c0bea0efc76bdd93d9df934a739a1063bea415b9c16ac4efe46f67a93d8d220cc1b84aeb0d32cb0f1fc5ffe0834601a4
DIST bandit-1.9.3.tar.gz 4242154 BLAKE2B c0c70c8b3217c28d7967b6f01d38e8984aa7233b2539fea5ee69746d3866b48d2fba903aedc29103ed56598496697cf8ff115b5a1567d2816c3b784974e83993 SHA512 4c5844b311953b67bd8fdbd0182c25e5e86317638564969693d5a23aa7fdfaad1c0384db8c269e75dceabb9f304171fc3d0248a8cd54dc4d2219d4814ce669ce
DIST bandit-1.9.3.tar.gz.provenance 9507 BLAKE2B 8dda92bc89850b05b89591d75948f4ff343bed6bd07d12cd9cce6abf70e1cf5b3d8fe00b066449b58d373fff18fed56101a276a9347454d74a8fd8084da8e4a0 SHA512 ec383ed3c307031b2eb9bee7d08cdcf5203aae4d79582d19f49750fee836547f13ff2c4422387e83d384cfe466d761269abafe794ed2213bb5de1ed03c852013
+DIST bandit-1.9.4.tar.gz 4242677 BLAKE2B b854bd8d48f6f386fa5f0ee96a9e2743e517139d6ffe2572f9d28b6521a77d436fd813600e9f6bf26a83738ea8d087dc19fea2167854eca3219182b058220625 SHA512 c7708f63800daaace130c08abae4c131f488baef4b81dde9b05959abfef88d1a28667c3abcbe258cf01e234bb4d5352b5c0d7a9e433d8a9ff58149e5bd48c8fa
+DIST bandit-1.9.4.tar.gz.provenance 9519 BLAKE2B 53bcf99652da020a43afb85dcfff4085881684f67dc62acd10afe712ae6702e640e8f7b58cab7a38c5bfd25745c633871e112e33ef76aece259f55980c0f23de SHA512 b34fa5dedf999ceac07afedafe8df322f3f697fc9494cf0e422d513ead9eadac14842897162f34cce71e0b521815d6be926fe5852fc683c14448b4503b166d1b
diff --git a/dev-python/bandit/bandit-1.9.1.ebuild b/dev-python/bandit/bandit-1.9.4.ebuild
index 9c5eebbb39aa..a0004de474e3 100644
--- a/dev-python/bandit/bandit-1.9.1.ebuild
+++ b/dev-python/bandit/bandit-1.9.4.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
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm64 ~riscv x86"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 2d448cd20cb4..1568f1ae2692 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -13,3 +13,4 @@ DIST boto3-1.42.53.gh.tar.gz 1087318 BLAKE2B af74c567314eaaa3a225632317d63c1df76
DIST boto3-1.42.54.gh.tar.gz 1088047 BLAKE2B 882bb5e1c8b5b3b5539b8536e286e9df4fe71c50f501c3d71d53dfd7826e31648ded9fa805a0a1b04c1292f84a68fe93e438b2f2efc33cf1b64dc76e48445ebe SHA512 69aeadc259fd03326827ec9cc30a27a5b98649a2f6ba4dff5210282d5f5ec6ce4fcad8b1b77001a5275fa31f43b5c4cd9d6c9512093ad93986eb55f14486f937
DIST boto3-1.42.55.gh.tar.gz 1088949 BLAKE2B fee5acfd89f82682e0b508dde5f4bc7dfacf7d47efdf4b7483961d28ccfec0136f0ca19bd693d1ffbf6c5c54c4d33473f500ec844fa7c376f5b3e8f051869db7 SHA512 97e2df1943805519243e84782573c7b8efed9c0ee6c8ba59c886760b8cc846f287b5af17f4a24ade913951b08f0a59b77d29c1d2a92e683d5faf6049b6617334
DIST boto3-1.42.56.gh.tar.gz 1089923 BLAKE2B 47a20b523662bb4d1db0c7c84f54c560ec0cad5c40b526d70aaa21fea3a22b60a38ffe0fcb16c1b3aa33b2ceaa465b818a135470e6aae17a9cc1c8c16187418c SHA512 b3351b1e77a648b5b8adcc9072ca1cc56f6a409648214576b52a4f35092c00a1c47fb8e2f6a3a67db26d46d0e55bc8549ef4a40834a4dc936f23d5373a644cb0
+DIST boto3-1.42.57.gh.tar.gz 1090375 BLAKE2B 1e595744c11b1f0a6ea5f1ce919023706580e7e10d322371286886c7443a2c09bdbe8c79e313f19a2414c4ce1a24cce37c89e9f8ea1c1331320a0103784f7720 SHA512 ab1bd99840c1371ca458cd47a8bc6ecad04abe285cef3fdcf0504be436e7dae20a50b69e5c3215a0ea261bb9860d0faff7c1b6d4bf36d9cec22ae22c540270ec
diff --git a/dev-python/boto3/boto3-1.42.57.ebuild b/dev-python/boto3/boto3-1.42.57.ebuild
new file mode 100644
index 000000000000..6e5f06a012ad
--- /dev/null
+++ b/dev-python/boto3/boto3-1.42.57.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_{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"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.16.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 ea9dac14a25f..1d219c88773d 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -13,3 +13,4 @@ DIST botocore-1.42.53.gh.tar.gz 15805189 BLAKE2B 41192b9714c72f7841c6ad1dc11014c
DIST botocore-1.42.54.gh.tar.gz 15809562 BLAKE2B 555e6c10bb65e5f14fbae4366084ddb5839674feb8ed77586e95b6c2bce76de7422ed92f260640d2dbfddf25b070909f1b2d69c386a2265289c12c19d7e49b8a SHA512 a49078027612182c1cbc9fcbfb5fcf4d99b02ef4278b3d6fde341f3c33d92a00bfd99c4cdf0fa2e359ca8c05789d007815a39e3ee07e9f630880f2bda66ce9fc
DIST botocore-1.42.55.gh.tar.gz 15814283 BLAKE2B b97e4be1a5e14706670742fb706e3d890660f92b7fed773ae3725466483607b5d551d414f92f1bcd5c0439e26ec37a62bd8891a9524fb2408ca094596cc4edb7 SHA512 8676ae2929beca575c58bd78e03eaf89b07fd74edf54194c02a196db4d6963fec42babed5e08e07041b8b0eee9c32d68e8ae0560428b323f4a7f01bf7e7d3bd1
DIST botocore-1.42.56.gh.tar.gz 15829334 BLAKE2B 534b02792685089ede7ce7c9514a4225d1fc78161847bda26b0772ed9aa3a9bedfd9ce20067b1d207af70eb4e028c5ced23146262bfa313af3d4e184db253a0c SHA512 dd0e7bc7703ebe846562a357fb581654c0c678df882399ec8b6d783b01bbac01f638cbd51a891ced08d97f087a240c7f02adc635dc6974d8a3f1392da19e00df
+DIST botocore-1.42.57.gh.tar.gz 15831429 BLAKE2B 894a693b9d4b769011f493fba546fa473ab570dfe3cc31ea4ce4699378295df343f158a9beaadb1724a1b88dce8dd262c29b0dc40f8d0644fd60e98d20a362b6 SHA512 76ebd7f3e442e2b9cde912deeedc15a0d6729413724040b6ef5b490e4dfab4aab9188eb49d5fa84a3535afab67330a827f6f0d51d9c6eac1798c6a6326eeebdd
diff --git a/dev-python/botocore/botocore-1.42.57.ebuild b/dev-python/botocore/botocore-1.42.57.ebuild
new file mode 100644
index 000000000000..f6ce0d9ed8d5
--- /dev/null
+++ b/dev-python/botocore/botocore-1.42.57.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_{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"
+
+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/certifi/Manifest b/dev-python/certifi/Manifest
index 708be7601ceb..ebe6bd587fbe 100644
--- a/dev-python/certifi/Manifest
+++ b/dev-python/certifi/Manifest
@@ -1,2 +1,2 @@
-DIST certifi-2025.11.12.tar.gz 160911 BLAKE2B cb38cffa5c2e50d19eb0fb7114af2621af4dca0f8d3b753dc17aea5571c69178c61b259e619ec7ec848bb531b4ac66222f4465dc57e01601632d18cf2c614e1d SHA512 a76c4a51661551ca51f4eee46730c6b0694f5ea1999c58445f076814329667d4d20a317a3660e872dd8011596a7d113ef063f884625cb07a7fb53ce5c5f6d533
DIST certifi-2026.01.04.tar.gz 154775 BLAKE2B 8bac071f9020a5b5c6b1054a3d0f5f7acf04b7e3082ad4b8686a1ad0e0a87ee1b44673af4a438e7631bf53b76aad203e4acf35b106a84ef5fa7f6558c2253b80 SHA512 14422f1d4d05eaf890573e1fbd00382e41ac938be4fbdd7c45cc4301af82ea34e53b35bc317b14e58afccc716a868e79c45e64da5bf7df3f8d12bb49e2e56d37
+DIST certifi-2026.02.25.tar.gz 155529 BLAKE2B 399a659e5e49a4e286b9d4cc9305f1d2789d3b823b199466da7ca9b7c5615b0cd63f8d73f98a2c2a9169d2931f754189c803d960f3f304f955b7bb31569eaf26 SHA512 8109e9d647680f58f536f037e776e36701556e80c45750da296a77fa3218b57d9c51144c0bf70eb79908d15fbaea61c87f80a26f10f6341474ebd1fe7fbf7dad
diff --git a/dev-python/certifi/certifi-2025.11.12.ebuild b/dev-python/certifi/certifi-2026.02.25.ebuild
index 24c313591875..727e9002808c 100644
--- a/dev-python/certifi/certifi-2025.11.12.ebuild
+++ b/dev-python/certifi/certifi-2026.02.25.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Liguros Authors
+# Copyright 2021-2026 Liguros Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/electrum-ecc/Manifest b/dev-python/electrum-ecc/Manifest
index a18367a8071e..39b065e37321 100644
--- a/dev-python/electrum-ecc/Manifest
+++ b/dev-python/electrum-ecc/Manifest
@@ -1,2 +1,2 @@
-DIST electrum_ecc-0.0.5.tar.gz 2009297 BLAKE2B e67858bb7e30f5e12a37f7adf82242b8fbee4c55724154748b8ab59f12413cc1a6c82a2655765326684cd5c2f1f57de971c5c320c810b27328704bd4a7f8d1b2 SHA512 982afb1a36f25d460413e678ebb4981d5ecca69a148c5d4d7d5f878d534c69b8966e9ac50499742eb5a89a67d2f2855a8887e2f28dd8aa18bc6ded6e1518c5e7
DIST electrum_ecc-0.0.6.tar.gz 2156345 BLAKE2B c252fc1b2446dfcfb52a2ca28f959c439cdf214cbeebb62d20a0da74ee49f7e8b7e324e70f73cb61326fba5c1e68a93593485696d0289bee70080a15dd1aacbf SHA512 f20fecbb361badc920e2919df9e1cbb4d76fc13880c032c2909084177b57ae7a379e926f92fcc1ca8a10d096b12dbf7fd13c955541e642ea782b0c0cb245c738
+DIST electrum_ecc-0.0.7.tar.gz 2162053 BLAKE2B 750350ae0e990842bb677e654cd3ac4e63b39fa2e7294ef026072570eaf8505d2b34c3577eae267b6da26e79ce900bf0f2af9c860254b7029c7966c2cfd647a4 SHA512 936ef40f5d141b05bc2924cb9a2c6cbfded964fc34e224b5bc2a5d58040ba60733ef98ada18415204d3e1403e96c9aa9dc66bbc0531738a98e229a47178c205e
diff --git a/dev-python/electrum-ecc/electrum-ecc-0.0.5.ebuild b/dev-python/electrum-ecc/electrum-ecc-0.0.7.ebuild
index a65c8062c10a..dc016d84d900 100644
--- a/dev-python/electrum-ecc/electrum-ecc-0.0.5.ebuild
+++ b/dev-python/electrum-ecc/electrum-ecc-0.0.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2025 Gentoo Authors
+# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,11 +16,12 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="~amd64 ~x86"
-# check ecc_fast.py for supported SOVERSIONS
+# ecc_fast.py KNOWN_COMPATIBLE_ABI_VERSIONS
RDEPEND="
|| (
+ dev-libs/libsecp256k1:0/6
dev-libs/libsecp256k1:0/5
dev-libs/libsecp256k1:0/2
)
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index a6bb416aa40b..ad44c76f03c1 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -2,3 +2,5 @@ DIST fakeredis-2.33.0.tar.gz 175187 BLAKE2B 6f8e091275bfa20de5188d7a0cbe56b07154
DIST fakeredis-2.33.0.tar.gz.provenance 9622 BLAKE2B ac7f78bc90fd52370c62fdc2699f36a32eaba625313ce83ac344005ab420763af50db1fa126c46af633b54c13abcc397223b270e3ded9a273a6e10f1b0bf011c SHA512 ef6d9bea6db499d3b1048de6aecef4cc3983e92f0d233a9eb1a06d8fe3adba231a8d404379fa1048b4914b5130dd36235419740cd2adc286b900a5870ece92c3
DIST fakeredis-2.34.0.tar.gz 177156 BLAKE2B 69fc2d66cd754489f3dbd08cfce60c8258bdd0a3a321dd41d8beac8ec6b2b58c3e026cea60e9ac1884a12833a0b32596da4a0064bb349f3bb46f4d43207e0686 SHA512 288cb69fe9422a8b712ee88325c2d6b51b4f47648afa005088f2fbd697eb2f29dd491944026f638e44b4e870053ca9c6453961d3b34169dfaf03b03fa2061f08
DIST fakeredis-2.34.0.tar.gz.provenance 9583 BLAKE2B 1cbec38c54698275f25a2a1da50e946c338a35d21459bb1e6bc74094f4a2b858f97f977dd93d9410831efaec2ad2cc9bf30f7e66789eb6cd825239974a23487e SHA512 cc9353033ffcea94bf8a4b10f66573094c57afd261aa9a0a8351a3eb8f6b9066677e14d5961ae919dba7c963002226f3e4cb66c65e251e7129ba07ae89db9561
+DIST fakeredis-2.34.1.tar.gz 177315 BLAKE2B ed0ca71b7feeeb81cb5bd927eb19a4bc3af56ae1de08334c5825dce88af8197dcc946b8cd3d98ac32972f99c47a480c9669b9fb252e66022ff0dfbe8fce0056f SHA512 26b60db9d4d142cbaaaf51085e4efe44380626c9600145ef4b8254a92eec02423a90b0587817d94c6559f046c7d9adbce1fb25a678d00390be91132de192ece3
+DIST fakeredis-2.34.1.tar.gz.provenance 9528 BLAKE2B bd549cae9bb98f5d85879b38f87d4aed02ebd0b79e858eb273ef94b7c68caec221f684766ad107c445219a792ee9cd61a68791b956b90312ee6160899dbf622f SHA512 d93171e6b50361fc3717461e926d05a4c9773f5381d33c7f5ef8eba6630bb0393cbe9ffa3222f91b375576b457fa431e4037b25a75fcfa39c35b1a25050db899
diff --git a/dev-python/fakeredis/fakeredis-2.34.1.ebuild b/dev-python/fakeredis/fakeredis-2.34.1.ebuild
new file mode 100644
index 000000000000..c5aa2105cdcf
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.34.1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/cunla/fakeredis-py
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/redis-4.3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/packaging[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,mock} )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # TODO
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis2]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis3]"
+ "test/test_mixins/test_pubsub_commands.py::test_published_message_to_shard_channel[StrictRedis3]"
+ test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis2]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis3]"
+ "test/test_mixins/test_streams_commands.py::test_xgroup_setid_redis7[StrictRedis2]"
+ "test/test_mixins/test_streams_commands.py::test_xgroup_setid_redis7[StrictRedis3]"
+ # json ext
+ test/test_json/test_json.py
+ test/test_json/test_json_arr_commands.py
+ # unknown command 'evalsha'
+ "test/test_asyncredis.py::test_async_lock[fake_resp2]"
+ "test/test_asyncredis.py::test_async_lock[fake_resp3]"
+ # incompatible with xdist, not worth extra effort
+ test/test_tcp_server/test_connectivity.py
+ # flaky
+ test/test_mixins/test_server_commands.py::test_bgsave
+)
+EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis
+ test/test_hypothesis_joint.py
+ # require valkey package
+ test/test_valkey
+)
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # do not install duplicate license
+ sed -i -e '\@fakeredis/LICENSE@d' pyproject.toml || die
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6390
+
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
+
+python_test() {
+ # we can run "fake" tests in parallel, but "real" seem to share
+ # the same connection
+ epytest -m "not real"
+ EPYTEST_XDIST= epytest -m "real"
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index d12ab8aeaca8..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
-EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9cd8a2a93a8d45bf51fe2324402b175d641762ea591fcb99459427f977a95eccffa6ca4777ca4df39814eea6eac62711567faa654456d32f79023a4685804504 SHA512 d973b85ba1a44389a4275f02a779a93a005f7c2e096467b94b072862e4984d5b42cf33f9821ac68aa5b85b12c98983a90b96049989d8c84497969174b6bb838e
-MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
new file mode 100644
index 000000000000..637368d2f237
--- /dev/null
+++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
@@ -0,0 +1,13 @@
+Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
+
+--- a/setup.py
++++ b/setup.py
+@@ -18,7 +18,7 @@ setup(
+ author_email='michal.danilak@gmail.com',
+ url='https://github.com/Mimino666/langdetect',
+ keywords='language detection library',
+- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
++ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
+ include_package_data=True,
+ install_requires=['six'],
+ license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index 271137de443d..7100f5f39dd8 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,4 +19,6 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
+
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 020e07f2a3dd..c0f74ac187e2 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,11 +2,9 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
</maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/nanobind/Manifest b/dev-python/nanobind/Manifest
index 7f41252ad375..ab909cee904b 100644
--- a/dev-python/nanobind/Manifest
+++ b/dev-python/nanobind/Manifest
@@ -1,2 +1,3 @@
DIST nanobind-2.10.2.gh.tar.gz 931057 BLAKE2B aa682523097c4459142b989557d73d98a44ee58797a2cc1d4e783aeacbe0ba2839b1d8c83f80bce203400f4a88a4ae9862b638976908cd86178a5d132c7f42b4 SHA512 8b9a98f659a2b852946247b5ab415432715e19d7be3932b401f9a9c65c68a0e8e513bc785b77114b1c43c2eb2b932858981156a4b850c8a5160c1bd47f5ac337
DIST nanobind-2.11.0.gh.tar.gz 938321 BLAKE2B f1db75b5a5535e178c04fa5da6874f07b7748b37238c410fb576f28a9405c9615455c6d9cc7ffb44f1745c5f86983c7d43bd0d4fb045795cb73cade0f4bc1508 SHA512 332960486a63803beb1764ae8399c618fa4c8b9224efe685d5e281582f78667fe2607708645ea011eef5ac81b7e31c7f21d7f753a670be9ed557bcada8d53b96
+DIST nanobind-2.12.0.gh.tar.gz 940575 BLAKE2B 8eee3f682ed9139704946946c3d58fd8c0060634aba382d709802e36a9d9798fd932d8933cce53ef019d9149c422bdee68d5d4664c302c84b102bb9deca9027e SHA512 a187f0efae1833b2caeaff41074a3d8fbd866ee1874aac088ffd5daf026aeaa6a73a8943b682bd39ef59b755e36b73a221eaf71343a28351dce0c8f284debdd9
diff --git a/dev-python/nanobind/nanobind-2.12.0.ebuild b/dev-python/nanobind/nanobind-2.12.0.ebuild
new file mode 100644
index 000000000000..66a0a6ed5411
--- /dev/null
+++ b/dev-python/nanobind/nanobind-2.12.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=scikit-build-core
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit cmake distutils-r1
+
+DESCRIPTION="Tiny and efficient C++/Python bindings"
+HOMEPAGE="
+ https://github.com/wjakob/nanobind/
+ https://pypi.org/project/nanobind/
+"
+SRC_URI="
+ https://github.com/wjakob/nanobind/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+DEPEND="
+ >=dev-cpp/robin-map-1.3.0
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ cmake_src_prepare
+ distutils-r1_src_prepare
+}
+
+src_configure() {
+ # XXX: nanobind installs a CMake config file which by default passes -Os
+ # We currently patch around it in dev-python/pyopencl. In future, we
+ # may want to add some override with Gentoo specific environment vars.
+ DISTUTILS_ARGS=(
+ -DNB_CREATE_INSTALL_RULES=ON
+ -DNB_USE_SUBMODULE_DEPS=OFF
+ -DNB_TEST=OFF
+ )
+}
+
+python_test() {
+ local mycmakeargs=(
+ -DNB_CREATE_INSTALL_RULES=OFF
+ -DNB_USE_SUBMODULE_DEPS=OFF
+ -DNB_TEST=ON
+ )
+ cmake_src_configure
+ cmake_src_compile
+
+ cd "${BUILD_DIR}/tests" || die
+ epytest
+}
diff --git a/dev-python/nbxmpp/Manifest b/dev-python/nbxmpp/Manifest
index e91214172f10..e377d67a8e44 100644
--- a/dev-python/nbxmpp/Manifest
+++ b/dev-python/nbxmpp/Manifest
@@ -1,2 +1,3 @@
DIST python-nbxmpp-6.4.0.tar.bz2 157204 BLAKE2B 41ab60bc8b4322773e5c70aeb86ef906a1a19c948512738696b9d83c05b6319605c87d45faa1786207300b5b0849297a3baabb89cf1a3d91bf065348943b3ef2 SHA512 6d097f4f69bd4b905926cec4b1af3d69b3862d0c48045237b3e34d58d33c0769d11d3612a04e6e6d28699f041bed51ecaeabb522599e445d6241431e390d6727
DIST python-nbxmpp-7.0.0.tar.bz2 152387 BLAKE2B fb27d08cea789cfc0c14da1529ae4e55e2db222f71acb08adc70229b6ddfe9d0e204bb061b14a475612682f00fb905ffac71f11563e792194487dfc700cc0590 SHA512 d76fcc6e660aea3196ff75fd439eac883c71d6c841de132aadae1a4e41ec22d0c29b9a064e538ae7395f3b504de34a043d3f890a947ef2e50bd9691fffb4036f
+DIST python-nbxmpp-7.1.0.tar.bz2 153303 BLAKE2B e36f0abf9192381cf39f6c1dc968874d86a790f765567dd6446fd1ef4629e5d6f53265baf16dc6835c441a7c442beafb1305bd8f58b03bd78587520a27f46905 SHA512 165daa854e3f71f59e54159b01bc7799b4aebd1413cec714a9068d178ee182f1f5a8ff2675c5a0d44de948f677cd8b481d13662377d380b53acce3548c24dcd6
diff --git a/dev-python/nbxmpp/nbxmpp-7.1.0.ebuild b/dev-python/nbxmpp/nbxmpp-7.1.0.ebuild
new file mode 100644
index 000000000000..657f16a176d1
--- /dev/null
+++ b/dev-python/nbxmpp/nbxmpp-7.1.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+MY_P=python-nbxmpp-${PV}
+DESCRIPTION="Python library to use Jabber/XMPP networks in a non-blocking way"
+HOMEPAGE="
+ https://dev.gajim.org/gajim/python-nbxmpp/
+ https://pypi.org/project/nbxmpp/
+"
+SRC_URI="
+ https://dev.gajim.org/gajim/python-nbxmpp/-/archive/${PV}/${MY_P}.tar.bz2
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+
+RDEPEND="
+ >=dev-libs/gobject-introspection-1.82.0-r2
+ net-libs/libsoup:3.0[introspection]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/precis-i18n-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pygobject-3.42[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pallets-sphinx-themes/Manifest b/dev-python/pallets-sphinx-themes/Manifest
index 3ea703c83398..de1bfaf011b9 100644
--- a/dev-python/pallets-sphinx-themes/Manifest
+++ b/dev-python/pallets-sphinx-themes/Manifest
@@ -1 +1,3 @@
DIST pallets_sphinx_themes-2.3.0.tar.gz 21029 BLAKE2B 0f0abb334beb70ddb6f6d85164914e6eac3b4e938d085c81a62c8f33a7e6eb8b599dc0b2ff7d164124797cd781e2eb23b0a9ae502a28bf8720c2d5464213cf78 SHA512 9c76ab7e8e2cecaaecab7ccc621bac685b28394d16e4d35d79b8dc7745ceff88cba23b04efeb1faf0b6a987cf173c9fc77364a7306bfe5029e5129fed791b5a8
+DIST pallets_sphinx_themes-2.5.0.tar.gz 216582 BLAKE2B f42861e844c3b9fd98a130010cb96eb6207c4ed45badf44eb47b2524135928e6ff25b70190d6f4284a51e23cbd9c2ad469ce2070868529486197219273741260 SHA512 f5e83335025531e9cdfdf8cd3df6e19a5e78e78fbc4700e75a44c08072a1de8c3673da8325d6239669142d6872ff62dea074f2b3e664d296a61bbdb93be0e8aa
+DIST pallets_sphinx_themes-2.5.0.tar.gz.provenance 9912 BLAKE2B bf4515f575b23d0480b9791cdef1870ea3ca948ab3bef85ceedc88b32864f867ed61be4265687ae9776e8c51698cf9cc5f91c41fea16aad8d07c6d982a7afa7c SHA512 4e05dbfd761345fe0600c2a8217b23455d47080f5f37481b661d92977d088f4c054c32d9f51b9eb9678e06e4e40e83791dae3428be4221389347c0992dc0288a
diff --git a/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.5.0.ebuild b/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.5.0.ebuild
new file mode 100644
index 000000000000..8cb9014a3805
--- /dev/null
+++ b/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.5.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_PN=Pallets-Sphinx-Themes
+PYPI_VERIFY_REPO=https://github.com/pallets/pallets-sphinx-themes
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Sphinx themes for Pallets and related projects"
+HOMEPAGE="
+ https://github.com/pallets/pallets-sphinx-themes/
+ https://pypi.org/project/Pallets-Sphinx-Themes/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-7.3[${PYTHON_USEDEP}]
+ dev-python/sphinx-notfound-page[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/pynacl/pynacl-1.6.2.ebuild b/dev-python/pynacl/pynacl-1.6.2.ebuild
index b1550fe1bec7..5cbe8959aab1 100644
--- a/dev-python/pynacl/pynacl-1.6.2.ebuild
+++ b/dev-python/pynacl/pynacl-1.6.2.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ~ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
DEPEND="
dev-libs/libsodium:=
diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest
index fe13ab1fcb34..71c9f3bf3327 100644
--- a/dev-python/pytest-check/Manifest
+++ b/dev-python/pytest-check/Manifest
@@ -1,2 +1,2 @@
-DIST pytest_check-2.6.0.tar.gz 27882 BLAKE2B 3ce0e52f0951c1d49f73729dcd138be0854a0454ca0739e9ebca8973cb13c56a65890b41e25f0e839426ab16068888b41ab70030b73a028bf8d21a8242b1230e SHA512 387cdb8692fd14a4bafafb0ee0f320a8a18e78250e26448b04b7787ec3f3a7786b2d08eb7fa6beeb13768e9ab5f69adca7066babdb7481cc88e0940f1e9dc618
DIST pytest_check-2.6.2.tar.gz 27988 BLAKE2B f6f3e7b5d49d10bb398d562899954f3b76271859057a8ee292506e6e117c9b54630c44b8037977234f8892b3a9727acdc5b2a7e32930d22ae42d774977f71e60 SHA512 7afd2fd0d578f0e0c027fcd2807a57e0fd8af65a88218e1e09882e06eb5108c4110359af6cc38a004bbad74753735b9f38542bb64cec949ea1138153d5145e42
+DIST pytest_check-2.7.0.tar.gz 30153 BLAKE2B e5248dc993670ddebf92dbaeb12a71ec48128fbf96819e1ffa7705c60f7110d2525a7f758daacb4308ee1c76b3f351637137e4da7e68e60045bf7ca05d4c6a02 SHA512 54c1696d18feec5dee0e6875347266b4dd5cd2e12497cbda944b65c0dcc205c99dabe159462338641bf1abd1791e55fdc0a1943d2eec64ca5e9b5ff812297c26
diff --git a/dev-python/pytest-check/pytest-check-2.6.0.ebuild b/dev-python/pytest-check/pytest-check-2.7.0.ebuild
index 85ad476dcc3e..d2399b155e54 100644
--- a/dev-python/pytest-check/pytest-check-2.6.0.ebuild
+++ b/dev-python/pytest-check/pytest-check-2.7.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
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/python-ironicclient/Manifest b/dev-python/python-ironicclient/Manifest
index 578f577b96e6..fac373a96e0a 100644
--- a/dev-python/python-ironicclient/Manifest
+++ b/dev-python/python-ironicclient/Manifest
@@ -1,2 +1,3 @@
DIST python_ironicclient-5.14.0.tar.gz 226166 BLAKE2B 2dd9160b9c193e8f857125cf5b9d38b879286eb400e0ba7db26b477fd6e8b30f41398b48b6afc0a1f4d5add4ea7334680550163069de07219e41a4070b10af49 SHA512 acd7407916a44fa62e1e450d4cddc987cfc9132a25f195b8ca0aa9af81ed1c4b5cdd6c5cfbc1d1e6e8cf3ac5ae62fa21fc207d186e38da9040cdb8e219de9d1a
DIST python_ironicclient-5.15.0.tar.gz 228639 BLAKE2B fbf49c7adb1c39aea7d1056c4796dfd7f4fa8dd16e860416b3984f7e3462c87bbc5e624c25c821a3f7dd87ab2204d4374ff42c711500aa6814737ff9d8f233fa SHA512 1fbb6787bdc8a1e8c27326b7f9d6bf076fc41d37990d76e9b05d76b81e89a48ff49c0b30e400358a800a227ac60ffedf6707bcf2d15b9682abc97457e0cedfb3
+DIST python_ironicclient-6.0.0.tar.gz 230466 BLAKE2B 31b624c0a0def934d93e38f19d1a111676b761faa5a595648b8e0b062a8007120a595b15db0080961cc4a4f87a103157fa8a74df1d7940b4c78b30cdb5af911a SHA512 59f5196769fb62ee259d32d334aaad74fca77e214dddcbcf1a8fe4ecac93a157147bc4371f708d9ea2769bb1f4787a42fd8fc856afb039011c5a6e415cbb537a
diff --git a/dev-python/python-ironicclient/python-ironicclient-6.0.0.ebuild b/dev-python/python-ironicclient/python-ironicclient-6.0.0.ebuild
new file mode 100644
index 000000000000..3f3818dacfe9
--- /dev/null
+++ b/dev-python/python-ironicclient/python-ironicclient-6.0.0.ebuild
@@ -0,0 +1,48 @@
+# 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_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for the Ironic API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-ironicclient/
+ https://github.com/openstack/python-ironicclient/
+ https://pypi.org/project/python-ironicclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.11.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.18.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/python-neutronclient/Manifest b/dev-python/python-neutronclient/Manifest
index 2d50a5b251c2..a6e9c7a3a02c 100644
--- a/dev-python/python-neutronclient/Manifest
+++ b/dev-python/python-neutronclient/Manifest
@@ -1,2 +1,3 @@
DIST python_neutronclient-11.6.0.tar.gz 212450 BLAKE2B 609610d09a06e227aa2763b107c9e197e60561857f40cb0f3601e42476d11379dc20cd1ce9fd68bed40bdc175f63f50cdf16f56035267daf43cbb7afdb7453e6 SHA512 d8057c2e7983b6de7f254b9b4b0651d71fc2b0475d74de1e6474aba3846a992f338548eebd22fbe2607ae539f813a187bec61a16403836a9c05abdde20e7b627
DIST python_neutronclient-11.7.0.tar.gz 212897 BLAKE2B 18ab9234f8a279a15b9f58bbb80e9b9c32369a529a8fdb90f3be844b13016e990aa640ebfffeebdc12e2012c44b57f987f113641969338f4be6aed4b3d1f47d6 SHA512 9eca1c876fe2925742f14e13dbd40f0620a31ccd109f8aa99a23dbdc3d71069560a466e8a48b1159b439529563d9a079cdb30a0df77034951411e0e3a302fc0d
+DIST python_neutronclient-11.8.0.tar.gz 213135 BLAKE2B fc38678c2e5f922096e84f4c11f4a6bb07ec4dff3caac94d1a858ea29e0e28c934312c0c0ca9fc7534decd5509904a58dc346dd74256152acc7ce72d01fffee6 SHA512 2b83f4cd336190f4872e5dc53a3b0bbdf8736d6e1704c07dac83fc5f218b0b213105067cdbd35e2f1f76062909304da0bf4efd0482f2fe7ab3b2a7cd1fe10143
diff --git a/dev-python/python-neutronclient/python-neutronclient-11.8.0.ebuild b/dev-python/python-neutronclient/python-neutronclient-11.8.0.ebuild
new file mode 100644
index 000000000000..afc2185d09be
--- /dev/null
+++ b/dev-python/python-neutronclient/python-neutronclient-11.8.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack Quantum API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-neutronclient/
+ https://github.com/openstack/python-neutronclient/
+ https://pypi.org/project/python-neutronclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bandit[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ dev-python/oslotest[${PYTHON_USEDEP}]
+ dev-python/python-openstackclient[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/testtools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Needs osprofile
+ rm neutronclient/tests/unit/test_http.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b neutronclient.tests.unit
+}
+
+python_install() {
+ distutils-r1_python_install
+ # stupid stupid stupid
+ local SITEDIR="${D}$(python_get_sitedir)" || die
+ cd "${SITEDIR}" || die
+ local egg=( python_neutronclient*.dist-info )
+ [[ -d ${egg[0]} ]] || die "python_quantumclient*.dist-info not found"
+ ln -s "${egg[0]}" "${egg[0]/neutron/quantum}" || die
+ ln -s neutronclient quantumclient || die
+ ln -s neutron quantumclient/quantum || die
+}
diff --git a/dev-python/python-swiftclient/Manifest b/dev-python/python-swiftclient/Manifest
index 7d059520b63b..a5a23e1e6cb8 100644
--- a/dev-python/python-swiftclient/Manifest
+++ b/dev-python/python-swiftclient/Manifest
@@ -1,2 +1,2 @@
-DIST python_swiftclient-4.8.0.tar.gz 210041 BLAKE2B 3f1d58509dc13219092d01f9063cdeb854406072810bc1fee7a6e0ce3a4e4507feac04f4c9b9c36b1b2f7c64c90a06e8a58a630b1d1373670f5e3a11c47adf60 SHA512 2cf457184b37d1f3236b9d2b5cc86caef9578dd984a75150980c8b046d84ece1f4688aad49f5f1bdb36cd36fc69bdb8565dfdba49387d8eb667aff520af4d14e
+DIST python_swiftclient-4.10.0.tar.gz 210948 BLAKE2B 1548c3087b3e84e511c227f9d4ebdd940710a4a68e83ddc0c5cac49787361d8ea1d6647b75a0b7ae87d7549d6e9a568dbf4bf75ca0f845046f71b7d673290e5f SHA512 ee2918a255eb0d77b1744c1fc1a6abc44082f551c73516b3c09382b518d7367b5850ba97385b71a1dbb76c4c62d86a2b1cd9032de6a43c4288f5a3feacad4379
DIST python_swiftclient-4.9.0.tar.gz 210197 BLAKE2B 8a7b0c797dcf95b1c58e175f2a633d1b9d1ed317dabc7d6ee28155f3da0b2f4c625c49bdf221b044ce4f6c1541356352fbe5b71fbd3040986bbce7c53bfb67cd SHA512 3c40bffd7d0d084b51c467bddf99fdab0e44b7ec97eb953164746481557e60c843e102f95f5d78cf52fcdfd1ed8406b971b05fba139ff5b18dc1f30fde88320b
diff --git a/dev-python/python-swiftclient/python-swiftclient-4.8.0.ebuild b/dev-python/python-swiftclient/python-swiftclient-4.10.0.ebuild
index e1e73e43e5c8..f85b614544cf 100644
--- a/dev-python/python-swiftclient/python-swiftclient-4.8.0.ebuild
+++ b/dev-python/python-swiftclient/python-swiftclient-4.10.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
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm64 x86"
+KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
>=dev-python/requests-2.4.0[${PYTHON_USEDEP}]
@@ -28,12 +28,15 @@ BDEPEND="
>=dev-python/keystoneauth1-3.4.0[${PYTHON_USEDEP}]
>=dev-python/openstacksdk-0.11.0[${PYTHON_USEDEP}]
>=dev-python/python-keystoneclient-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
)
"
distutils_enable_tests unittest
python_prepare_all() {
- sed -e 's/test_password_prompt/_&/' -i test/unit/test_shell.py || die
distutils-r1_python_prepare_all
+
+ sed -e 's/test_password_prompt/_&/' -i test/unit/test_shell.py || die
+ rm -r test/functional || die
}
diff --git a/dev-python/redis/Manifest b/dev-python/redis/Manifest
index 2fe1a2b0b8d0..947db755381d 100644
--- a/dev-python/redis/Manifest
+++ b/dev-python/redis/Manifest
@@ -1,3 +1,4 @@
DIST redis-py-7.1.0.gh.tar.gz 5038766 BLAKE2B 453c2c35303a72f7919208afd5c5891d0b091a44d5177974246bb0b4293f9a909b576e95fd7072cdbc206c534dc9f8f13f729a558ac1d628e6d2213fecfa7632 SHA512 b2a00b43cb04cabbf9c69b3f70d9250a215d1bb9dde8ba50aef27b28e786b70f7e65f684203258c97d7b7d8c9ce1511d404f507a7273cb528f6e3a983bcdb47a
DIST redis-py-7.1.1.gh.tar.gz 5042907 BLAKE2B 311fb245207cff3fc791820e4d8c434e12fc8eb4997b467d8d7e23bdc10185f6bbfe4e6ff776b9e8908646fbb38032b97f7a45439e3779ab435df9644a4d1d1d SHA512 14aea43cfa497fd2f7ceb6452fa4cc82e5e9844310bbaf39aa1221c3f3d42b12adbd069a4c9afce461fd5c4617f7f358345afed6b97135c444e76f9b91a6848e
DIST redis-py-7.2.0.gh.tar.gz 5157622 BLAKE2B 4fd560f2a2a1312508980e3772eea64c686c42dbf669f6254e35402a2c98a713d4dbf44c4d77e49011cf1f6a492867bbff76a0ba2a6cd1a9329db69dd118db4f SHA512 6804493a78cf1e079d94e7ea1eba92ddf9fae5c70830414d2a0d07e9c13889a3d862bb59f2e85bc954156cfe01e9da1a9d6f245f08a678293c9af191ce88898f
+DIST redis-py-7.2.1.gh.tar.gz 5163677 BLAKE2B 1a583893034ec846997330817f526647aea08ab3c008cb9c6a67e62f533a827ac5285fc422fe5f24a5d0d3330a175aa38118909d5f4deec6d7522162894254c5 SHA512 2d69a1994f61af414f99e8a1ead262682d5c7824f8153ce857375b9df7b1195ce5dad753be439098d25b1297f4889413b6021299144bf8e745907ffc29fc4a8a
diff --git a/dev-python/redis/redis-7.2.1.ebuild b/dev-python/redis/redis-7.2.1.ebuild
new file mode 100644
index 000000000000..082b9093ae1f
--- /dev/null
+++ b/dev-python/redis/redis-7.2.1.ebuild
@@ -0,0 +1,122 @@
+# 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_{10..14} )
+
+inherit distutils-r1
+
+MY_P=redis-py-${PV/_beta/b}
+DESCRIPTION="Python client for Redis key-value store"
+HOMEPAGE="
+ https://github.com/redis/redis-py/
+ https://pypi.org/project/redis/
+"
+SRC_URI="
+ https://github.com/redis/redis-py/archive/v${PV/_beta/b}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/xxhash[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,timeout} )
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Flaky test
+ tests/test_pubsub.py::TestPubSubDeadlock::test_pubsub_deadlock
+ tests/test_background.py::TestBackgroundScheduler::test_run_recurring
+ # require extra redis modules that apparently aren't packaged
+ # on Gentoo
+ tests/{,test_asyncio/}test_bloom.py
+ tests/{,test_asyncio/}test_graph.py
+ tests/{,test_asyncio/}test_json.py
+ tests/{,test_asyncio/}test_timeseries.py
+ # apparently available only in "Redis Stack 7.2 RC3 or later"
+ tests/test_commands.py::TestRedisCommands::test_tfunction_load_delete
+ tests/test_commands.py::TestRedisCommands::test_tfunction_list
+ tests/test_commands.py::TestRedisCommands::test_tfcall
+ # TODO
+ tests/test_commands.py::TestRedisCommands::test_lolwut
+ tests/test_commands.py::TestRedisCommands::test_module
+ tests/test_commands.py::TestRedisCommands::test_module_loadex
+ tests/test_commands.py::TestRedisCommands::test_zrank_withscore
+ tests/test_commands.py::TestRedisCommands::test_zrevrank_withscore
+ tests/test_commands.py::TestRedisCommands::test_xinfo_consumers
+ tests/test_asyncio/test_commands.py::TestRedisCommands::test_zrank_withscore
+ tests/test_asyncio/test_commands.py::TestRedisCommands::test_zrevrank_withscore
+ tests/test_asyncio/test_commands.py::TestRedisCommands::test_xinfo_consumers
+ tests/test_asyncio/test_pubsub.py::TestPubSubAutoReconnect::test_reconnect_socket_error[pool-hiredis-listen]
+ # requires sentinel?
+ tests/{,test_asyncio/}test_sentinel.py
+ # require REDIS_ENDPOINTS_CONFIG_PATH, except there's zero documentation
+ # or examples of what this is
+ tests/test_scenario/test_hitless_upgrade.py::TestPushNotifications
+ tests/test_scenario/test_maint_notifications.py::TestPushNotifications
+ # requires opentelemetry (with some unpackaged stuff)
+ tests/test_observability/test_provider.py::TestOTelProviderManagerGetMeterProvider
+ tests/test_observability/test_recorder.py::TestInitConnectionCount
+ tests/test_observability/test_recorder.py::TestInitCSCItems
+ tests/test_observability/test_recorder.py::TestObservableGaugeIntegration
+ )
+ local EPYTEST_IGNORE=(
+ # fails over missing certs, we don't do cluster anyway
+ tests/test_asyncio/test_cluster.py
+ # require redis_entraid
+ tests/test_asyncio/test_credentials.py
+ tests/test_credentials.py
+ # pybreaker
+ tests/test_asyncio/test_multidb
+ tests/test_asyncio/test_scenario
+ tests/test_multidb
+ tests/test_scenario
+ # cluster, not marked properly
+ tests/maint_notifications/test_cluster_maint_notifications_handling.py
+ )
+
+ # TODO: try to run more servers?
+ epytest -m "not redismod and not onlycluster and not replica and not ssl"
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ if has_version ">=dev-db/redis-7"; then
+ local extra_conf="
+ enable-debug-command yes
+ enable-module-command yes
+ "
+ fi
+
+ # Spawn Redis itself for testing purposes
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1 ::1
+ ${extra_conf}
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/sphinx-autodoc-typehints/Manifest b/dev-python/sphinx-autodoc-typehints/Manifest
index 203aec5f4527..0fc6c7dbadb5 100644
--- a/dev-python/sphinx-autodoc-typehints/Manifest
+++ b/dev-python/sphinx-autodoc-typehints/Manifest
@@ -1,8 +1,8 @@
-DIST sphinx_autodoc_typehints-3.6.0.tar.gz 37449 BLAKE2B a12a68cadd0fa053f906576cc590fced7435fb82f28a96da9aebac0ffa00b3686f68414b0596da0b833fc6bdd812b9923776d442e098300a9256bf6d66991a95 SHA512 3872e5ba8a08a741217f64f78de8fab78c11d1fe3cacd4fd0f9f913c0c38704623673833b46d8b18cddef98dbd5d0e14338e1af2efbd2b0f0dfb1cf91bad3ac9
-DIST sphinx_autodoc_typehints-3.6.0.tar.gz.provenance 9592 BLAKE2B dc8454a9d5a65b303261883326f15532cbe0c19f30fe1b0e9903b81f175cb081c1083c52567fdbdfab1af044f20af00b4aab9111fa0132e65450382f42312b54 SHA512 97095cd28aa874c3105f71e56612094fc05aaa997a35c50a008bef70dc312b43a86ff9f349c1060d452b90ad688c781979d2c3005960490e90e952218b37ed8c
DIST sphinx_autodoc_typehints-3.6.2.tar.gz 37574 BLAKE2B b37ce4d527e22b06d49075ff0abce21b7deb0c754cea1b843b9c0f3e0e03c137bb453a17cb9c46a62a5848e195953230b4d367b35b39b3b519073c3d2e1c7d4a SHA512 71232e97f32eb0cee4e8a89d938a904401b4f29411d0106914a7117104002366dd9ef32ac455fbf9503d5185ef0609560e686f9dc01e249b00ffc0a163b36304
DIST sphinx_autodoc_typehints-3.6.2.tar.gz.provenance 9980 BLAKE2B 85c11e72d568b2ae3cdf3d0ba655a1dd2410ed0a8f2c741bdc16242cebfeaf0ade71676b9cd069dc12657af45ca9bf5145841ac220e3470e431ae0b4806c0248 SHA512 3c3ef450a9fcf621d164eee8a522dfff5d16a1feb8ee76921a7a69652bd6ce6d1dad35c4b684f978de7cabcdd4268d480dfdfb1de95251935ece9fe07a92815b
DIST sphinx_autodoc_typehints-3.6.3.tar.gz 38288 BLAKE2B 5275aedbf4199d517be26329e58c24f758a4ede9ac7d0497f3c8d0d7a095cb153eb25e16dd8834209415fbbefd0ebc885c14443c1394e311c6efcdb313eb72b0 SHA512 aa5a198ab3aca789e4c526b58542a0695ed5e1fdf7f53563f7df1fd7d6f9166d30ffa3f71a1f2774497ded137d3556c864133508e385d6f25aeae65cdb384b12
DIST sphinx_autodoc_typehints-3.6.3.tar.gz.provenance 9682 BLAKE2B 6fccc524ada3ba91168ce5587ca568d929dc7782462fc4c61565c74d7def21b85bb402104f3452b47e4c7fbdb065040a50d8d1e5f4e4c855e473572a6f3b951c SHA512 b0fae4c259fe8894d9153fa74b1f7ab48d6493f504a3b584e98a5315b5dd7e1e1d8f6114c44f8c6c34cb8591fb10d1f40565d02f6cd7b586cc1a0821ead4a01d
DIST sphinx_autodoc_typehints-3.7.0.tar.gz 41344 BLAKE2B bb9c2fcdb430792742cedc0d3cc3a507a971ecc1193bc316a4875b413609dd4c01d93c3adf0ffc32d6e0802b7cb289ca30001c67c99ae5e0ace76036e886862b SHA512 60117435e80f511a0d20ce0072cdb4c776424d9cd8cde4fc49982245e5edb3254849308d3951971dcdecd54162a9abf25596e98ffbf35d1a8ef665633ff63b48
DIST sphinx_autodoc_typehints-3.7.0.tar.gz.provenance 9780 BLAKE2B d87012cb873a7818a5a9b2752aae257e09dedb180d9a54c83f979c08f65a7d08c4e8643779e5da349d3818b14caf6baa0aa0ce35d03a6aa403a5ebdba1a48e9c SHA512 fb218bfb892b94bf499d9b9b34b5c015a2c8938af52a1af3ae6ba141b2e23d80683360bb92de7625dfe1910e24e7a5087f9950a1a056726ecd2bb441b283b315
+DIST sphinx_autodoc_typehints-3.8.0.tar.gz 59672 BLAKE2B 05bf3eff2eb1f4a66b151e8d676ebddb081e2d8240c13c50d255d4e3f88cfe284c0cccac8be355a2b850c0341ba8a59aba4ab10c1fdbec5b47bf75e2fdadd84d SHA512 48648be12dce2640531846ccebdec653496f44309ec002411a61ee531efcfea8911fed75edcf95718bb0e5a8b096f9d47b8214b8a4a64f299f94b9e0d552967b
+DIST sphinx_autodoc_typehints-3.8.0.tar.gz.provenance 9964 BLAKE2B b1a4800a4778509bb2af2f3350b4e0213a1f3cc34f3636a9505ec07be7c5eea8d431ffee3796597d4ffbc4218b85f4aff5b4fe1809f7dae25189b6f18faebc6b SHA512 7f630714ab8461ab4449e839d2fabb0633f24490b1c4851600cb94407051e4ad7862870e9b382c4bfb4d8dbc34a080a84ce6abf63c1944d7656ab629d918448b
diff --git a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.6.0.ebuild b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.8.0.ebuild
index d32fe0dcd248..053cc8487d77 100644
--- a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.6.0.ebuild
+++ b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-3.8.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/sphinx-9.0.4[${PYTHON_USEDEP}]
@@ -27,6 +27,8 @@ RDEPEND="
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
test? (
+ >=dev-python/attrs-22[${PYTHON_USEDEP}]
+ >=dev-python/numpydoc-1.8[${PYTHON_USEDEP}]
>=dev-python/sphobjinv-2.3.1[${PYTHON_USEDEP}]
>=dev-python/typing-extensions-4.5[${PYTHON_USEDEP}]
)
@@ -37,5 +39,5 @@ distutils_enable_tests pytest
EPYTEST_DESELECT=(
# Internet
- tests/test_sphinx_autodoc_typehints.py::test_format_annotation
+ tests/test_annotations.py::test_format_annotation
)
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index da878875a701..28699261c8b5 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1,2 +1,3 @@
DIST stripe-14.1.0.tar.gz 1449934 BLAKE2B abfcc3853bbdb645851e41da825c203ba5303b738c657e179525a673e2cb9d39ce8e6b9c2ebdd4eae6c02946c1ff7d0c9fe9207e357200ec457eb788134213f4 SHA512 6178266699a484a5a7a3571826f6c2fd4ccb4c4e5b8cf2b86b2da2857b00df8b575a64c9ae97d9fdd891532f7dc6b90855c58c6bbb6feaf8204231348c9519d5
DIST stripe-14.3.0.tar.gz 1463618 BLAKE2B 6783b412c94089d13dc1efd14eb43bf2cbed93d818a9ab448cdb32bbfed975dd625baf9f51c6be2630c8dcbfe1da9a9520ee14d306e5fa1ddc7b7c4bdff39994 SHA512 85e82cadd82412b2dfee8750b92029ff8ef835d38499913644914e9a765aa57cafa659603fa403ea102149198744a5e769b5e325c653a13bdccaf31a6c94f944
+DIST stripe-14.4.0.tar.gz 1472370 BLAKE2B 5f120bf7f0592d923d8d31ada37d1ba4d7426e61671d7a98fb41bd00783b8f4aefa10434e751f671fc16d3126bad322346e7b0434553775db83ec97b7416be6a SHA512 81198fcfb3b42b82aed612e9b602f2d3e4e3d22529d9d78147e5bc42b0cd91f3042771e56496f4fddb8bf554b1c5f881c8d836f8260d812d676dfa4e941078d7
diff --git a/dev-python/stripe/stripe-14.4.0.ebuild b/dev-python/stripe/stripe-14.4.0.ebuild
new file mode 100644
index 000000000000..eb032ea8ae0e
--- /dev/null
+++ b/dev-python/stripe/stripe-14.4.0.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 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/tempest/Manifest b/dev-python/tempest/Manifest
index b4e1a381d5ee..e392073e73c4 100644
--- a/dev-python/tempest/Manifest
+++ b/dev-python/tempest/Manifest
@@ -1 +1,2 @@
DIST tempest-46.0.0.tar.gz 1172210 BLAKE2B 76ebb5a5914de0cd78b737411ee38df6f349d31f3f253f184bd3ad7bf03db5c5c1139e97758edcf22702249d6a2799b66be09bd69256048397fa18d76b277efd SHA512 d6e6247f3bb4a9b5fc465c0c5d6c64aa7335a417a6614a9ae61e55d6b6a02423ebcab34867427b7b92c749d465374bb82b9915dff4e3748201b0c5e4844f402e
+DIST tempest-46.1.0.tar.gz 1180586 BLAKE2B 1639df90a10382fd4e8cec0684280fabeacb31e35835b3ed8bee553af3b8c2d757e1614fc2482f05215fff9b2a3ed5dc797a59389859cbf79f5b6b49d2023034 SHA512 d0babe574407d6d35c84926ef5adf09ad46b159aafbb4b1ec38a1debf8a4352d3e21bbd6bf5b0917541a646bd1f6061f5d4da748d602a903cf623f2afe6f0634
diff --git a/dev-python/tempest/tempest-46.1.0.ebuild b/dev-python/tempest/tempest-46.1.0.ebuild
new file mode 100644
index 000000000000..5f779ed79bc9
--- /dev/null
+++ b/dev-python/tempest/tempest-46.1.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 multiprocessing pypi
+
+DESCRIPTION="OpenStack Integration Testing"
+HOMEPAGE="
+ https://pypi.org/project/tempest/
+ https://docs.openstack.org/tempest/latest/
+ https://launchpad.net/tempest/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/paramiko-2.7.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
+ >=dev-python/python-subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.21.1[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/defusedxml-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/fasteners-0.16.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.5.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ dev-python/stestr[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ # Small subset of tests, which fail as result of not using specific
+ # testing environment.
+ rm -r tempest/tests/lib/services/volume/v3/ || die
+
+ # remove dep on hacking
+ rm tempest/tests/test_hacking.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+ mv "${BUILD_DIR}"/install/{usr/,}etc || die
+}
+
+python_test() {
+ local -x OS_LOG_CAPTURE=1 OS_STDOUT_CAPTURE=1 OS_STDERR_CAPTURE=1
+ local -x OS_TEST_TIMEOUT=300
+ stestr --test-path ./tempest/tests run --concurrency="$(makeopts_jobs)" ||
+ die "Tests failed for ${EPYTHON}"
+}
diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest
index 68fcaa2eaf16..ea4a15491adb 100644
--- a/dev-python/tox/Manifest
+++ b/dev-python/tox/Manifest
@@ -8,3 +8,5 @@ DIST tox-4.45.0.tar.gz 246134 BLAKE2B 7ee9b9be82cff1db2f3eab812d36544874054a2b7a
DIST tox-4.45.0.tar.gz.provenance 9326 BLAKE2B cfdbb40a5aadaa5ef0f28757eb6bcc6fc9d099fd6cb38f87c86bd7c407d29b3845a16d0b9e0da1196815b7a6ec318c12824c2fb7815926889f4fde3a392086ef SHA512 2331c0af9cdd29311e62fb299a0d0d5adc79115662e398cfffb61596bdf63d96481dd0e95dde7331ff7ea089fc1db8dc34eca47d5cabcbc48384daf92190bb11
DIST tox-4.46.0.tar.gz 249296 BLAKE2B fdc12cff02ec234383221604c03e2d495b7975336e8d9a484da02e4ca6f69a9bf94feb2dac289e79ed2dc0221f0d9d6054bf4eeb7bda5f5e314283211f5f09f2 SHA512 501ca9c3033c65ce2e0a1be6f22d6c96651b9865e471c326020dfa904652f34ae03b58b0d6012ea3e905e5783d1610830168fe4032c0056f22a6b891036a46b1
DIST tox-4.46.0.tar.gz.provenance 9373 BLAKE2B 89756e65dd4ce39994a726735b96022f18bc1643c67d67f8e0a798c7b901182616521c8700ccfea0f1f0d6719932e2dd44b0166f7419bfd3d4ff5523bdb56b86 SHA512 6fd3a70b0fa0a0732e51d0b186e0bb15658751767a992166919b8f68b56c50c106ac56af40206eaa31bb7e3dca5270ba800607cf0fd4961b77892b7f887e4ffd
+DIST tox-4.46.3.tar.gz 250933 BLAKE2B 028c1d2b5035439bbcd3b0b5b33a9c4aaf533e67602a00b4ddc227bff0548cffee54183c1cad4cccdc253eea95bbe179c2625ae2f850cce93b51d8356c54b469 SHA512 a327ed5710ab604096f6978ac6bb6e7fb84f864c96906379f9646ec6295156ede9b787e67684fbfc2c46d8c7e138645a85aeede3ba706b3526d5cceeeb977860
+DIST tox-4.46.3.tar.gz.provenance 9334 BLAKE2B 1bc4a799991d69a42c1ae2fd4edcc92d3f56e0bf0872dc7fa2b8abd4b8760ab25245d1e46932b08c43cdacd31fcda40f58c1fc7029d0bb032622876a6cc7299b SHA512 29b31df2e9928c13859570a5c830d180411f4c826f7e652979d48ee361272079c538c8d5b1ac793b0b03ff5ec3411a1a120afc3b05b513a8be7e703672eba6f3
diff --git a/dev-python/tox/tox-4.46.3.ebuild b/dev-python/tox/tox-4.46.3.ebuild
new file mode 100644
index 000000000000..3d0b3fb74c95
--- /dev/null
+++ b/dev-python/tox/tox-4.46.3.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/tox-dev/tox
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="virtualenv-based automation of test activities"
+HOMEPAGE="
+ https://tox.readthedocs.io/
+ https://github.com/tox-dev/tox/
+ https://pypi.org/project/tox/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/cachetools[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/platformdirs[${PYTHON_USEDEP}]
+ dev-python/pluggy[${PYTHON_USEDEP}]
+ dev-python/pyproject-api[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/distlib[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{mock,rerunfailures,timeout,xdist} )
+# xdist seems to mess up state between successive implementation runs
+distutils_enable_tests pytest
+
+src_prepare() {
+ # upstream lower bounds are meaningless
+ sed -i -e 's:>=[0-9.]*::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # devpi_process is not packaged, and has lots of dependencies
+ cat > "${T}"/devpi_process.py <<-EOF || die
+ def IndexServer(*args, **kwargs): raise NotImplementedError()
+ EOF
+
+ local -x PYTHONPATH=${T}:${PYTHONPATH}
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz
+ tests/tox_env/python/virtual_env/package/test_package_pyproject.py::test_pyproject_installpkg_pep517_envs
+ )
+ local EPYTEST_IGNORE=(
+ # requires devpi*
+ tests/test_provision.py
+ )
+
+ case ${EPYTHON} in
+ python*)
+ local EPYTEST_PLUGINS=( "${EPYTEST_PLUGINS[@]}" time-machine )
+ ;;
+ pypy3*)
+ EPYTEST_DESELECT+=(
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]'
+ )
+ ;;
+ esac
+
+ epytest -o addopts=
+}
diff --git a/dev-python/translate-toolkit/Manifest b/dev-python/translate-toolkit/Manifest
index e233aa36d331..7b3b6b830f35 100644
--- a/dev-python/translate-toolkit/Manifest
+++ b/dev-python/translate-toolkit/Manifest
@@ -2,3 +2,4 @@ DIST translate-3.17.5.gh.tar.gz 1244591 BLAKE2B c8e6cc72e5ff5c324da69d58ed0bd6a6
DIST translate-3.18.0.gh.tar.gz 1263818 BLAKE2B 2c31240428dfcd3af50c9325a22edeed8e14751787dc52497c64d309a77214c18313813432ed68e4a09b6da1c386beca2676bf544f24255c3bb7ad7e0ecd4e8e SHA512 5f8f5bcd4172d46974f312de89360ce3be2d434c3498c28e60c26d6e77ee6c6c7d610fd0c0d4ac7267e3a224db07908a18d53c79025f660148acd532410412f5
DIST translate-3.18.1.gh.tar.gz 1266842 BLAKE2B ee27941987046ee1ac545c360d1d87f68e275dca7c9a5b364f35bf130add441e8c5ac515df0cebedcbdb4a7922913455fe5556c537508cc79410542fd6288588 SHA512 aa006d8a0da390367667e9c1e9583bcd490e21a6d63b6beebe9513ea6c0f404646b306ac28ac6eea1f75929c411e1ab3faa21182c748f9e505c025c57836dcb9
DIST translate-3.19.1.gh.tar.gz 1269545 BLAKE2B 276fe81b651269caa3a2f4f5924dd1e9df80e5e59f5048d5de983bcac3d9e3a00db4b3dc08c352d809fa0d40cf27c012d02519247a9e9c30986c4c61692ca9ee SHA512 fe5e45da1fc05b67dc64ac690072cf7e00603be165995558c1aaa1121f365dc507c73f06407e24bb07e78b9ed645e728b5b9b30e4b5cf8b5d7a692d3dcef737b
+DIST translate-3.19.2.gh.tar.gz 1295748 BLAKE2B a2e010b9316332b945bba95d5d9bf327d7b2a006297509b410794836113306edaa263c61f083b650e772c869fdd1a9d058944379ef7882aca4e362cc3b2ee9ca SHA512 7c50a9d599f0836d8913124637715e0c0b01a4ffc357d4d03a8a8a5a23bb015ae48f508b7fe6aafebfbb06c2c6d679b272d7e740626f3e7e99430dd94b5f55bd
diff --git a/dev-python/translate-toolkit/translate-toolkit-3.19.2.ebuild b/dev-python/translate-toolkit/translate-toolkit-3.19.2.ebuild
new file mode 100644
index 000000000000..74f9adb4cf7c
--- /dev/null
+++ b/dev-python/translate-toolkit/translate-toolkit-3.19.2.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+MY_P=translate-${PV}
+DESCRIPTION="Toolkit to convert between many translation formats"
+HOMEPAGE="
+ https://github.com/translate/translate/
+ https://pypi.org/project/translate-toolkit/
+"
+SRC_URI="
+ https://github.com/translate/translate/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="+html +ical +ini +subtitles +yaml"
+
+RDEPEND="
+ app-text/iso-codes
+ >=dev-python/chardet-3.0.4[${PYTHON_USEDEP}]
+ dev-python/cheroot[${PYTHON_USEDEP}]
+ >=dev-python/levenshtein-0.12.0[${PYTHON_USEDEP}]
+ >=dev-python/lxml-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/mistletoe-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-3[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/tomlkit[${PYTHON_USEDEP}]
+ >=dev-python/unicode-segmentation-rs-0.2.0[${PYTHON_USEDEP}]
+ >=dev-python/wcwidth-0.2.14[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ html? ( dev-python/utidylib[${PYTHON_USEDEP}] )
+ ical? ( dev-python/vobject[${PYTHON_USEDEP}] )
+ ini? ( >=dev-python/iniparse-0.5[${PYTHON_USEDEP}] )
+ subtitles? ( media-video/gaupol[${PYTHON_USEDEP}] )
+ yaml? ( dev-python/pyyaml[${PYTHON_USEDEP}] )
+"
+# Technically, the test suite also has undeclared dependency
+# on dev-python/snapshottest but all the tests using it are broken
+# anyway, so we skip them.
+BDEPEND="
+ test? (
+ dev-python/phply[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # strip unnecessary pins
+ sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
+}
+
+src_test() {
+ # unfortunately, this bad quality package doesn't support XDG_DATA_DIRS
+ # correctly, so we need to reassemble all data files in a single directory
+ local -x XDG_DATA_HOME=${T}/share
+ cp -r translate/share "${T}/" || die
+ cp -r "${ESYSROOT}"/usr/share/gaupol "${XDG_DATA_HOME}"/ || die
+
+ distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Fails with network-sandbox (and even with it off but w/ softer fail)
+ 'tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff'
+ 'tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff'
+ # all tests based on snapshottest are broken and I'm too tired
+ # to figure this out
+ tests/translate/tools/test_pocount.py::test_{cases,output}
+ tests/translate/tools/test_junitmsgfmt.py::test_output
+ )
+ local EPYTEST_IGNORE=(
+ # unpackaged fluent.*
+ tests/translate/storage/test_fluent.py
+ tests/translate/convert/test_fluent2po.py
+ # changes directory and does not change it back, sigh
+ tests/odf_xliff/test_odf_xliff.py
+ )
+
+ if ! has_version "dev-python/iniparse[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ translate/convert/test_ini2po.py
+ translate/convert/test_po2ini.py
+ )
+ fi
+
+ if ! has_version "media-video/gaupol[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ translate/storage/test_subtitles.py
+ )
+ fi
+
+ epytest
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /usr
+ doins -r translate/share
+
+ if ! use html; then
+ rm "${ED}"/usr/bin/{html2po,po2html} || die
+ fi
+ if ! use ical; then
+ rm "${ED}"/usr/bin/{ical2po,po2ical} || die
+ fi
+ if ! use ini; then
+ rm "${ED}"/usr/bin/{ini2po,po2ini} || die
+ fi
+ if ! use subtitles; then
+ rm "${ED}"/usr/bin/{sub2po,po2sub} || die
+ fi
+}
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index a18a635090c0..964be62f3880 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -12,3 +12,5 @@ DIST virtualenv-20.38.0.tar.gz 5864558 BLAKE2B b085b7813b1f29d854842346dcf3c45e3
DIST virtualenv-20.38.0.tar.gz.provenance 9633 BLAKE2B eb7f486f5bf39c05dd73c0c82fa5dfb4ddf74dd560f6566d3c4faf6ab351afe680ee11095f46fb68cb5c80dd5b2a1c461d48fc5c92cbbddc0cbc53efdedff403 SHA512 d821d2a4c406cee74dda97bcaeb61c1de4cce5340b13c17710e0554fda7b46e755f00cd1862a6c436bd40abd49169e5b9b4e0ee619680d979ff048d5f9361d57
DIST virtualenv-20.39.0.tar.gz 5869141 BLAKE2B 382ae1d0cd95e7401cf43f8269c0f81cf171abbab29172a7c2d25d21ad6f1447b8781856b3b8ac26580897b1a1318d47b60bc1bbb5fc321efde9c038ec9d158c SHA512 2efd0675fd0dc7010d5e2dc22cd694a1c9b363eca35ffcae96a5910dd53edfa3ecd505f18ba99279adb672040b9fcc995194028cacc1571340890a3d8a8c533a
DIST virtualenv-20.39.0.tar.gz.provenance 9492 BLAKE2B 177bbccf5bb17e44cf78e4e646f69a321684cac89bf892e5bf5464e636b18a1934cc1bd8d567b10a724dfbbfd344a84a0e7650e4b75042c6fe98e8aa94573584 SHA512 22945883f27ddb456341db8975e55db1481b4055b9fd5b57a7ffb35e2d6fbce8fff9b0e0c0495feeb2044f06f7c604d9ee5c3f17be6fd6527436cfc29a5de436
+DIST virtualenv-20.39.1.tar.gz 5870061 BLAKE2B 30fb2c107616c080935ede0ea2e72e5b70bc184d46d7eb26e08f612f8cc6be26dde2a8c53c8d415b586904749e5dd4bfc5f82ff6c186cdc51815a480e1dbbe80 SHA512 8d8fb281cd55bf60065b4d57e37963a90bf116e46e67eb3688177f40d975da93a558e1ad67b6d7ee8ecfd1a005cd3d4dccc4c50c72569fad221634136a61e23d
+DIST virtualenv-20.39.1.tar.gz.provenance 9445 BLAKE2B 39909e09db2ab5b8fdd9a192943e3e8279a16efd2c55a88dca6c2f76bb86b78d569d6e9a8a6ef8415a6805d42a0967f0862609eb9a59a5ef7bf35dbfb3a55a51 SHA512 6c7f752fc702cfb00005215186fc6062a30f319d5d22457abc7a98ee9fbc8e7e466aa6b0af319ff3a98dde013e98759f16100003012c00e644ae91982ceaf157
diff --git a/dev-python/virtualenv/virtualenv-20.39.1.ebuild b/dev-python/virtualenv/virtualenv-20.39.1.ebuild
new file mode 100644
index 000000000000..99756ea15499
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-20.39.1.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/pypa/virtualenv
+PYTHON_TESTED=( python3_{11..14} pypy3_11 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+ https://virtualenv.pypa.io/en/stable/
+ https://pypi.org/project/virtualenv/
+ https://github.com/pypa/virtualenv/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.24.2[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
+
+ dev-python/ensurepip-pip
+ >=dev-python/ensurepip-setuptools-70.1
+ dev-python/ensurepip-wheel
+"
+# coverage is used somehow magically in virtualenv, maybe it actually
+# tests something useful
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ $(python_gen_cond_dep '
+ dev-python/coverage[${PYTHON_USEDEP}]
+ >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' python3_{11..14})
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
+ ' 'pypy3*')
+ )
+"
+
+src_prepare() {
+ local PATCHES=(
+ # use wheels from ensurepip bundle
+ "${FILESDIR}/${PN}-20.31.1-ensurepip.patch"
+ )
+
+ distutils-r1_src_prepare
+
+ # workaround test failures due to warnings from setuptools-scm, sigh
+ echo '[tool.setuptools_scm]' >> pyproject.toml || die
+
+ # remove useless pins
+ sed -i -e 's:,<[=0-9.]*::' pyproject.toml || die
+
+ # remove bundled wheels
+ rm src/virtualenv/seed/wheels/embed/*.whl || die
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping testing on ${EPYTHON}"
+ return
+ fi
+
+ local EPYTEST_DESELECT=(
+ tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
+ # tests for old wheels with py3.7 support
+ tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke
+ tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support
+ # broken by different wheel versions in ensurepip
+ tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string
+ tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact
+ tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none
+ tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output
+ # hangs on a busy system, sigh
+ tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe
+ # TODO
+ tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions
+ # random resource leaks or xdist
+ tests/unit/test_file_limit.py::test_too_many_open_files
+ # Internet
+ tests/unit/create/test_creator.py::test_create_distutils_cfg
+ )
+ case ${EPYTHON} in
+ pypy3.11)
+ EPYTEST_DESELECT+=(
+ # these don't like the executable called pypy3.11?
+ tests/unit/activation/test_bash.py::test_bash
+ tests/unit/activation/test_fish.py::test_fish
+ tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
+ )
+ ;;
+ esac
+
+ local -x TZ=UTC
+ local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} )
+ if [[ ${EPYTHON} == pypy3* ]]; then
+ EPYTEST_PLUGINS+=( pytest-freezer )
+ else
+ EPYTEST_PLUGINS+=( time-machine )
+ fi
+ local EPYTEST_RERUNS=5
+ local EPYTEST_TIMEOUT=180
+ local EPYTEST_XDIST=1
+ epytest -o addopts=
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ # remove bundled wheels, we're using ensurepip bundle instead
+ find "${ED}" -name '*.whl' -delete || die
+}