summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-13 00:12:52 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-13 00:12:52 +0000
commit965058196f44550f3bc491dd85064071e085b776 (patch)
tree8485c648f0ac19b27204c8b331c3619c93463cce /dev-python
parent0ec1e1dd7867c3dedcbea76c9b6e847d6b388c03 (diff)
gentoo auto-resync : 13:02:2025 - 00:12:52
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Manifest.gzbin274695 -> 274691 bytes
-rw-r--r--dev-python/boto3/Manifest4
-rw-r--r--dev-python/boto3/boto3-1.36.17.ebuild53
-rw-r--r--dev-python/boto3/boto3-1.36.18.ebuild53
-rw-r--r--dev-python/botocore/Manifest4
-rw-r--r--dev-python/botocore/botocore-1.36.17.ebuild67
-rw-r--r--dev-python/botocore/botocore-1.36.18.ebuild67
-rw-r--r--dev-python/clang/Manifest2
-rw-r--r--dev-python/clang/clang-21.0.0_pre20250211.ebuild53
-rw-r--r--dev-python/coverage/Manifest2
-rw-r--r--dev-python/coverage/coverage-7.6.12.ebuild111
-rw-r--r--dev-python/cppy/Manifest2
-rw-r--r--dev-python/cppy/cppy-1.3.1.ebuild28
-rw-r--r--dev-python/cryptography/Manifest8
-rw-r--r--dev-python/cryptography/cryptography-44.0.1.ebuild135
-rw-r--r--dev-python/cython/Manifest2
-rw-r--r--dev-python/cython/cython-3.0.12.ebuild84
-rw-r--r--dev-python/environs/Manifest8
-rw-r--r--dev-python/environs/environs-11.2.1.ebuild39
-rw-r--r--dev-python/environs/environs-12.0.0.ebuild39
-rw-r--r--dev-python/environs/environs-14.1.1.ebuild (renamed from dev-python/environs/environs-14.0.0.ebuild)3
-rw-r--r--dev-python/faker/Manifest4
-rw-r--r--dev-python/faker/faker-35.2.2.ebuild43
-rw-r--r--dev-python/faker/faker-36.1.0.ebuild42
-rw-r--r--dev-python/fakeredis/Manifest2
-rw-r--r--dev-python/fakeredis/fakeredis-2.27.0.ebuild99
-rw-r--r--dev-python/flatbuffers/Manifest2
-rw-r--r--dev-python/flatbuffers/flatbuffers-25.2.10.ebuild46
-rw-r--r--dev-python/griffe/Manifest4
-rw-r--r--dev-python/griffe/griffe-1.5.7.ebuild (renamed from dev-python/griffe/griffe-1.5.5.ebuild)2
-rw-r--r--dev-python/hypothesis/Manifest2
-rw-r--r--dev-python/hypothesis/hypothesis-6.125.3.ebuild110
-rw-r--r--dev-python/josepy/Manifest2
-rw-r--r--dev-python/josepy/josepy-2.0.0.ebuild32
-rw-r--r--dev-python/lit/Manifest2
-rw-r--r--dev-python/lit/lit-21.0.0_pre20250211.ebuild45
-rw-r--r--dev-python/mkdocs-autorefs/Manifest4
-rw-r--r--dev-python/mkdocs-autorefs/mkdocs-autorefs-1.3.1.ebuild (renamed from dev-python/mkdocs-autorefs/mkdocs-autorefs-1.2.0.ebuild)4
-rw-r--r--dev-python/mkdocstrings-python/Manifest6
-rw-r--r--dev-python/mkdocstrings-python/mkdocstrings-python-1.14.7.ebuild (renamed from dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild)0
-rw-r--r--dev-python/mkdocstrings-python/mkdocstrings-python-1.15.0.ebuild51
-rw-r--r--dev-python/pydantic-core/Manifest3
-rw-r--r--dev-python/pydantic-core/pydantic-core-2.28.0.ebuild168
-rw-r--r--dev-python/pydantic/Manifest4
-rw-r--r--dev-python/pydantic/pydantic-2.10.5.ebuild65
-rw-r--r--dev-python/pydantic/pydantic-2.11.0_alpha1.ebuild65
-rw-r--r--dev-python/pyfzf/Manifest2
-rw-r--r--dev-python/pyfzf/pyfzf-0.3.1.ebuild2
-rw-r--r--dev-python/pymediainfo/Manifest4
-rw-r--r--dev-python/pymediainfo/pymediainfo-7.0.0.ebuild34
-rw-r--r--dev-python/pymediainfo/pymediainfo-7.0.1.ebuild34
-rw-r--r--dev-python/pymongo/Manifest8
-rw-r--r--dev-python/pymongo/pymongo-4.11.1.ebuild (renamed from dev-python/pymongo/pymongo-4.10.0.ebuild)21
-rw-r--r--dev-python/pymongo/pymongo-4.9.1.ebuild228
-rw-r--r--dev-python/pymongo/pymongo-4.9.2.ebuild228
-rw-r--r--dev-python/pypy-exe/Manifest4
-rw-r--r--dev-python/pypy-exe/pypy-exe-7.3.18.ebuild2
-rw-r--r--dev-python/pypy3_10-exe/Manifest4
-rw-r--r--dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild2
-rw-r--r--dev-python/pysol-cards/Manifest2
-rw-r--r--dev-python/pysol-cards/pysol-cards-0.18.1.ebuild25
-rw-r--r--dev-python/qtpy/Manifest4
-rw-r--r--dev-python/qtpy/metadata.xml1
-rw-r--r--dev-python/qtpy/qtpy-2.4.3.ebuild184
-rw-r--r--dev-python/recurring-ical-events/Manifest8
-rw-r--r--dev-python/recurring-ical-events/recurring-ical-events-3.3.3.ebuild45
-rw-r--r--dev-python/recurring-ical-events/recurring-ical-events-3.3.4.ebuild45
-rw-r--r--dev-python/recurring-ical-events/recurring-ical-events-3.5.0.ebuild (renamed from dev-python/recurring-ical-events/recurring-ical-events-3.4.0.ebuild)2
-rw-r--r--dev-python/sqlglot/Manifest2
-rw-r--r--dev-python/sqlglot/sqlglot-26.6.0.ebuild177
-rw-r--r--dev-python/virtualenv/Manifest2
-rw-r--r--dev-python/virtualenv/virtualenv-20.29.2.ebuild118
-rw-r--r--dev-python/virtualenvwrapper/Manifest2
-rw-r--r--dev-python/virtualenvwrapper/virtualenvwrapper-6.1.1.ebuild98
-rw-r--r--dev-python/zeroconf/Manifest4
-rw-r--r--dev-python/zeroconf/zeroconf-0.143.1.ebuild60
-rw-r--r--dev-python/zeroconf/zeroconf-0.144.1.ebuild60
77 files changed, 2011 insertions, 972 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 0caa87dbe0ae..530a29b879aa 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 060dd94f4914..f8ed568b9104 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,7 +1,11 @@
DIST boto3-1.36.11.gh.tar.gz 896841 BLAKE2B 092cfaeb6dc6f6d3f523fe4e0b600817e6145a224c2b43b6dd47376d6aa1a586bf3784b2960f4179b271128d20c3edd5b435cabd6e3ddc2330f0b0ad5ce306d9 SHA512 6f17d0b6f67ace0485fbc2d809f013fddd4cf1211eb6c9a1fe0ed7c0bc117aedc9e4b7db4d4570818907db6344b19331d8a7b6246928ed5c5e294b9b5a9504dc
DIST boto3-1.36.16.gh.tar.gz 898785 BLAKE2B fa3de504bb8c58fa5653a3fc3414a333283c04ca800b8d37b310b291e60af96b27c994d2571e4dc0f159c98a41d014000ce7afe020f38da80a2cac49283ba2cc SHA512 6cbbe6cdb505ace41e5e20ff144d1d312d8a53e3c7c2e8d50a981c55e485cdf98ac6711c36cb3697e257aab08e240fa1e731485aec3dd8b74cd5163c489bd61f
+DIST boto3-1.36.17.gh.tar.gz 899108 BLAKE2B 3c1694499e7bc48abf3d8bd8e6c783258798d3600aedfe95299634ef6f848e531bd68010e8e6c2f0dc777dd8b379a40902272e8e623d177891da4e6f4e52156e SHA512 9574ed2b26e95a54f1300c52a9511462676dcdc06d05f216c4e722ec3b8f8d6730b3aaae218d4607fcb87d9a99a83587d76146b3188bc01a5635ac638576178a
+DIST boto3-1.36.18.gh.tar.gz 899576 BLAKE2B 03fb22fa6e34fdb09000ce93078b7d465ede8bca7933b0254544a55dfe036616091b293af71669b0f43a99a5322cf08c0bdc18050fa26ddc148b2d8b885198b1 SHA512 138d7d5c70920a890519aabc50504b9a8210c2a3140daa1b8ebbe9cfebf6699c43a9215b0915625974c66a44d63398f0190072392d98ada25178cfad56627b0f
DIST boto3-1.36.6.gh.tar.gz 925646 BLAKE2B 71db3ff552033c187e19b699d193e4834649b80d2c0dd2ed35496bfef798371f7794e58d445aeeafcc3e4aef50d4dc6e17347b04ae82b4f3b7778a1a5e419daf SHA512 c638903cb3afff4867dbee7295e387f5ce91d9d3d9f37b28c103ead87883377a69fbccfce34850da5c77186ced0bb56f5dc5f4549e84871d10a9134c731d4c36
EBUILD boto3-1.36.11.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
EBUILD boto3-1.36.16.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
+EBUILD boto3-1.36.17.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
+EBUILD boto3-1.36.18.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
EBUILD boto3-1.36.6.ebuild 1205 BLAKE2B ba88d00e8ea05d27260511e6110158d1f305ce8bde0aaf3385814b38f6b977bd8fae2b092659d5765d6c3bcf80cd75fe5f2bea95374a3105c23cdfbf04bd8ec8 SHA512 6cf3155f855f19611a770cf2db452b139af4869a39f2e07d1040a9c45a3cfd13341f3a7eadb2e13da7c38d29492d68307a9e88b62c22704ef15a5c082da651fd
MISC metadata.xml 493 BLAKE2B 7d6324fc877ffe1d20c5369c2af0b09a7028f94d28f1841188913d0d8be7ea699c9d3f92c624992c4c96bd69615d3a1211a2483c76c56b7d3082492e43512523 SHA512 44420d8c03d5986f990b76369edfa8dfd7659b4952db3ad946fd05392ec594628a28745ad888d055d4f074d5214f61fcffafe6c04c4ab54109d45ac0371582bd
diff --git a/dev-python/boto3/boto3-1.36.17.ebuild b/dev-python/boto3/boto3-1.36.17.ebuild
new file mode 100644
index 000000000000..b087a88814e8
--- /dev/null
+++ b/dev-python/boto3/boto3-1.36.17.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..13} )
+
+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.11.0[${PYTHON_USEDEP}]
+"
+
+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() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/boto3/boto3-1.36.18.ebuild b/dev-python/boto3/boto3-1.36.18.ebuild
new file mode 100644
index 000000000000..b087a88814e8
--- /dev/null
+++ b/dev-python/boto3/boto3-1.36.18.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..13} )
+
+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.11.0[${PYTHON_USEDEP}]
+"
+
+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() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 3227c52b7bfc..1d2edfcc9c32 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,7 +1,11 @@
DIST botocore-1.36.11.gh.tar.gz 14197086 BLAKE2B 471c4d4d8433c5ce577b76e3dc70e9cbc0aee52f8c06765c1d965b437e75b44b4d62ea472abf612266ebf718300aca11f39fce90abe5d5811a37bcbe686d09de SHA512 0cf405e0fd7466a631bfbf3c4d0ad46b7c6da787715d9d70362cd5ed869ecfcf26ce7465daec220c9ffb858a1171439088e42a72665726ba5b511ef551cdcf3a
DIST botocore-1.36.16.gh.tar.gz 14211411 BLAKE2B 88ea5860e628985d7643acc430b62ed1a57c0c6a05081e156630bf4090aaf00fa18efd39f3d7914d2eab97b3cb1ac5d355714ccc1a6af3f2e1bec2a6b067e608 SHA512 7c1f66b7835df3fb5fef726762d09eecfc7b1c3cad5df7f6e1d1ec90fd1d7f505243d92c6c4184b0dc15b541c9e3d14d07cc91ce317655d98ad9d74f289e72e6
+DIST botocore-1.36.17.gh.tar.gz 14211225 BLAKE2B e589bc5bdd5d8f350fb281fd4b3367a8c47beebafe3e4c087bfd8919a65e2e1adaab3cb0cb8fff877c813656835a12537e7ffdec8e9daf13841279b3ead58142 SHA512 8f30247d21a01c3cafe8f1ef938207f14a626fe17b7c29a510886014af866d985804f83563be0ac2a7894fbf8a5b6cc78554904e8f5f9f9ca69ecf615a30d613
+DIST botocore-1.36.18.gh.tar.gz 14215558 BLAKE2B b8f142da59626db83ded0c165bd05c312ba98aaebc7eab9217702057ee5876146518e9095dae8443daaae1eadad2a045405fc8a57ae5f04266ec82fe15b3308c SHA512 b3cc042e83db579da5a3d24fbacdbab6df98381d6e34ef0c19d3285669599f023ffccbb235620646ed02c3a7d6ab87cc31d732889cb1bdd797f405c8df292a8a
DIST botocore-1.36.6.gh.tar.gz 14173329 BLAKE2B 1eea293adad312439f2c60e0f73f721fa207439af2918fb5db98304a565e44d33f953f517e5526e865cbf58751892be4a6cc275545f295638109ee4051d2a276 SHA512 bcd1077bfeb5709e8c6224560f7974d70a884310539b531f520b20446aeaf3aa5d9aba6cbd19d75526d34dd7ab68be578f5ece7bddf7986997f9f5bbd5cee905
EBUILD botocore-1.36.11.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
EBUILD botocore-1.36.16.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
+EBUILD botocore-1.36.17.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
+EBUILD botocore-1.36.18.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
EBUILD botocore-1.36.6.ebuild 1484 BLAKE2B e69b432b70d99a29bce6a148a732df49694427d669ea669c64482ec58959f640650b02635f34a613c6a87fed9e4c199cc971b4c811e1ced6db9db1c3e4fc384b SHA512 81c31e65ddea2c9d721e540e6b63c0d76bd7f3f847d06d2cb021bc02449373268cfe08b262db804d1cf65f77bd5bef6fb25cf4a070ee106cd7a231531d6d1130
MISC metadata.xml 499 BLAKE2B e5aaa7da26f200c09adfdf38b68f656bbccbec627cb5d966b280ac2165334e7eec659c89075bcace748f58e2ec3e7d2998e54a688d56ecea2d30653c67dfd35a SHA512 103c554d5dbd967bf9b6e418b3913d9235e7e910d012160909ce0715134ed2e37b06e6a345395f9d16ce08d1cf51f3ce458bce93c6a978fd3dca6610f2acdbd0
diff --git a/dev-python/botocore/botocore-1.36.17.ebuild b/dev-python/botocore/botocore-1.36.17.ebuild
new file mode 100644
index 000000000000..9e1580d45581
--- /dev/null
+++ b/dev-python/botocore/botocore-1.36.17.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..13} )
+
+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_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
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/botocore-1.36.18.ebuild b/dev-python/botocore/botocore-1.36.18.ebuild
new file mode 100644
index 000000000000..9e1580d45581
--- /dev/null
+++ b/dev-python/botocore/botocore-1.36.18.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..13} )
+
+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_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
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/clang/Manifest b/dev-python/clang/Manifest
index ece1e24083b6..5db4d9dad34b 100644
--- a/dev-python/clang/Manifest
+++ b/dev-python/clang/Manifest
@@ -13,6 +13,7 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.gz 226424755 BLAKE2B 642befb8d6923f335d1d68129ebb7357f8ba22e110df494dd956c8097e4e5db4b2a88fcc069ab67184b03558f072c68e002bdaf90eba865e38b1473a0ef29eed SHA512 e9bb4fd31bbad5ec864c662515b5ec2e5511cce975040f9f3cd8f009c92f76077928feae0467fd9519a001a379c857f7539c506953d8d5a9209a9f358f414aac
DIST llvm-project-20.1.0-rc1.src.tar.xz 147144668 BLAKE2B ea4733962f38ea5897c73e91840818921739909c3671749bc8a0b1d2798e5a0815bbe750ade3a2a7414836ab7158754818b2f9370a4ee1bbbd52c96b1e95ef9b SHA512 c23c4b1227b6b0b7c3059358e64a00ee98893236bb1a0a41d7e821bdf2aa8353aea8f9f7b9498899c6807b9b8e2ceb06c3cd62e32fd07a786a319135055541b4
DIST llvm-project-20.1.0-rc1.src.tar.xz.sig 566 BLAKE2B 32eb278ec4ff1bb9d258b584922b0d227f4126a957ba75af44dcaa63b6a12ef73db56d6a86f24244af47803ddf6a243149d784f08137cbea60b49700be537705 SHA512 d7a334326201f8ca78284b33c325f180538667a0401bc30931e790aacc96dd78f6559c45929b6c335d40ef1dbe772738c0ce55d881ae3d7401733778b485408c
+DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b
DIST llvm-project-6f241e36831927e3aea113cfc017c34fdeda340a.tar.gz 227203285 BLAKE2B 8d5e424c1836acc82ea766cd2cef104593c44d197ebeb64f18dbe74b1b5baeb4bc84084f5b68bd87ac36f7df25689dd2522cb6674a97da4f96f4f10f7bae5b06 SHA512 2b6e4bd6445eabfa3ace9b45d20797c7afc23f4553a8938399aeba227e3b8ca6a53a7d7762925a845bfed031c37af692b9c08180fbab80db2f3166940e560077
DIST llvm-project-bfa7edcc6652bdb37d53e0cec64926aab3f280eb.tar.gz 226735989 BLAKE2B 165837dc526e618b44c49d5fa3dceda373452e010a09746bff248903fe77874637d05ab9f5d2f63de7ebce5c14e3b19a131313a4a557adfd20fe9cb93ab60476 SHA512 e9e19176fcf1302727ee34d69eaa820b94959d64ceaf754d8a93ebd5e262cec7fe35e87b08f705b09e42c3ea26b671318eecf10e9137c635b12f481f80fbac23
EBUILD clang-15.0.7.ebuild 1203 BLAKE2B cf84f97fb260baf4ad6fdaeba840b1029f7d8491db85f40a46688e1ab8af050b3f6f7d2e95659bafe90f100c65c1db02e050907ed5023ded5ea72e3c66c32ab3 SHA512 b680e5a1f559f90abace19a911bb524ed1785e4d80e6fe05319cd6908da4b15af060d503c304b138aca9594b2695294a3cf3833062a6c1aadc748932e9d15931
@@ -26,4 +27,5 @@ EBUILD clang-20.1.0_rc1.ebuild 1170 BLAKE2B 02975ed9dfb353f2476703300b67ca5012bb
EBUILD clang-21.0.0.9999.ebuild 1170 BLAKE2B 02975ed9dfb353f2476703300b67ca5012bb81dd8158ebd8c7540556d7adbd5165b6440a90b7d9ccc9e2e79a00df8a62dbdb32ff9f4ef80efdba8bb110d76545 SHA512 dc6681a344f3464984702ddc1c9378ee2a571c1399670dd204c75272a11062729e2d3301fa49c58b46ff1339eb770581325c5445f3373de84852aa0cbe6ec3a2
EBUILD clang-21.0.0_pre20250201.ebuild 1170 BLAKE2B 02975ed9dfb353f2476703300b67ca5012bb81dd8158ebd8c7540556d7adbd5165b6440a90b7d9ccc9e2e79a00df8a62dbdb32ff9f4ef80efdba8bb110d76545 SHA512 dc6681a344f3464984702ddc1c9378ee2a571c1399670dd204c75272a11062729e2d3301fa49c58b46ff1339eb770581325c5445f3373de84852aa0cbe6ec3a2
EBUILD clang-21.0.0_pre20250208.ebuild 1170 BLAKE2B 02975ed9dfb353f2476703300b67ca5012bb81dd8158ebd8c7540556d7adbd5165b6440a90b7d9ccc9e2e79a00df8a62dbdb32ff9f4ef80efdba8bb110d76545 SHA512 dc6681a344f3464984702ddc1c9378ee2a571c1399670dd204c75272a11062729e2d3301fa49c58b46ff1339eb770581325c5445f3373de84852aa0cbe6ec3a2
+EBUILD clang-21.0.0_pre20250211.ebuild 1170 BLAKE2B 02975ed9dfb353f2476703300b67ca5012bb81dd8158ebd8c7540556d7adbd5165b6440a90b7d9ccc9e2e79a00df8a62dbdb32ff9f4ef80efdba8bb110d76545 SHA512 dc6681a344f3464984702ddc1c9378ee2a571c1399670dd204c75272a11062729e2d3301fa49c58b46ff1339eb770581325c5445f3373de84852aa0cbe6ec3a2
MISC metadata.xml 299 BLAKE2B 2feead2cd1b35b3a43335ddd7711f8181b52bc63ee7166608914260c67528add5251349063afbef4f8cf0ec09b2cd4c3ffdd90f2c14ed60bb69ebc03888f6333 SHA512 cd745c54ab18d25bdaff18582105072574103a36cfe7c175ef740f266d00e9fc6f44c332904d23b911c939cf5bdf52973b388923099d8dd5dfef3c283b5cb685
diff --git a/dev-python/clang/clang-21.0.0_pre20250211.ebuild b/dev-python/clang/clang-21.0.0_pre20250211.ebuild
new file mode 100644
index 000000000000..694150a44a53
--- /dev/null
+++ b/dev-python/clang/clang-21.0.0_pre20250211.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit llvm.org python-r1
+
+DESCRIPTION="Python bindings for llvm-core/clang"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# The module is opening libclang.so directly, and doing some blasphemy
+# on top of it.
+DEPEND="
+ >=llvm-core/clang-${PV}:*
+ !llvm-core/llvm:0[clang(-),python(-)]
+ !llvm-core/clang:0[python(-)]
+"
+RDEPEND="
+ ${DEPEND}
+ ${PYTHON_DEPS}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ llvm-core/clang:${LLVM_MAJOR}
+ )
+"
+
+LLVM_COMPONENTS=( clang/bindings/python )
+llvm.org_set_globals
+
+python_test() {
+ # tests rely on results from a specific clang version, so override
+ # the search path
+ local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
+ local -x CLANG_NO_DEFAULT_CONFIG=1
+ "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
+src_test() {
+ python_foreach_impl python_test
+}
+
+src_install() {
+ python_foreach_impl python_domodule clang
+}
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest
index 1498e1b968bb..3a74d09a7816 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1,7 +1,9 @@
DIST coverage-7.6.10.tar.gz 803868 BLAKE2B 88ab379f33ca3056b03020befa56406b3e4d8ce57f9152abddefbf77186dbccd993e855078ea6f61ed2da3d198aab9b63e65fb9db3789a80bb080b1907e9de80 SHA512 3badf42f8f1f1dc19ff7dd7cca7fe57cd738364fea71b1fee52ec7774fbebd2bb241154d2ca06adb6ed87766179bcf0b6eb9a5120af5ec8f3df7b6fd0c27fa02
DIST coverage-7.6.11.tar.gz 805460 BLAKE2B f035dfb27242926727875a806acd6725720d8828de0285cdcdc3aac406395b2648b00c75b206338ff282d0c98e70d2abf4fc13c4a1862317c7fd88c5d83de1b4 SHA512 83ce4fd99900bb4902fc25ecf386e0128f0c073f5c1ce3403149e175d8a55b177209c9413ae33b1ab3d2f6decdd4614f5a5a3c3f36d326cfc0d62c13e64d1250
+DIST coverage-7.6.12.tar.gz 805941 BLAKE2B bebcd2f29706445ac73ca1e1ba7a80b88eb7b71ee0f475ea6fe4d7e2bd535b709af6cc5e1dda9734e9487cdcf8d3b6f24c96eb2e7161a9d8356afe733b162339 SHA512 6f5f089938b0d107796ec7f5eb62047533bb45377612845cc044f44ceb10285252783d5ad1aefde698374d8330c012ff59007d21b00e4cee79c268fac70f6a71
DIST coverage-7.6.9.tar.gz 801710 BLAKE2B ac3a28d939e5ad7af341e8ef6ac2021ce9aad14117a4f6a31ae68432a0d55c2721c0f99a5e4fec40d4f2bf293e1cd549533643d3f1d6dd20997955614c7eb987 SHA512 ee2e3f93dfd723dabe3c88bac888c056f8dabc890d9078c49393d01c21522d946f7f6d50565a978dfc1d5b8009eca612d9a102a86f568689adc85df8478ecb8c
EBUILD coverage-7.6.10.ebuild 2671 BLAKE2B 3a7779c7aaf83dd653f183fcd2a2863e66bc76f07e39b621f7a24cb3c6357911b1009dfcfe11307e9e1b308e9fcc8b8890dfa615d01efcf5eb7c0a40c38310ba SHA512 3cc2d45bd43739c4cb46d68c8534dd1bda229e1c5076694d83d90c2821592bfe871306b7eb17d52fa8e7eee45aa9d4cb0ebbb0e95563a145d9579889e9533c05
EBUILD coverage-7.6.11.ebuild 2833 BLAKE2B bb3b938baf5f0950e3454e7c8aa9c912bd3adbb2406a94aae5bd18fd044e6356fa8b64221b35266612863c4129b48e452098723a2a9b9ee93d29716c6f7b0003 SHA512 44a534c1276e8c5ed5f43ed0ac038cdae5a04e09c42cbbaa5cf6eb9574c88f8d948d003bbc31892c77cd4fdba86fb408e76743579f2e3ca956143eb935dc4b76
+EBUILD coverage-7.6.12.ebuild 2833 BLAKE2B bb3b938baf5f0950e3454e7c8aa9c912bd3adbb2406a94aae5bd18fd044e6356fa8b64221b35266612863c4129b48e452098723a2a9b9ee93d29716c6f7b0003 SHA512 44a534c1276e8c5ed5f43ed0ac038cdae5a04e09c42cbbaa5cf6eb9574c88f8d948d003bbc31892c77cd4fdba86fb408e76743579f2e3ca956143eb935dc4b76
EBUILD coverage-7.6.9.ebuild 2670 BLAKE2B a4af413c7af27de2134da8f07ab089961e1f3926d1f99d1bfbf52f343dd089c782554e9499ede1bd00f9b34c718794a75f474bc76327c79827cd0b01cafd90ac SHA512 d3b3e9e02a29cada83553a9cbd269b786d6e7ff76481c704962d9c3129f7fad59720171492d1278431813d25cc837e3c06c62b82335f0c277d1abc688215cedf
MISC metadata.xml 771 BLAKE2B 38e9680d0851f70050aad987714a9dd2f95178b0bc3d794dc08726c0618d1ea98be32a413ac397f4b222e8a5d8fdc747b7f1677bcfe842bac4080537e85a03a9 SHA512 8c44c40348fe5d416d8b4016fe22cc9ae0b94fbaf181deb79aa737f87271992521b710c1208d0eeb7ef92d96fc8a7daac1ec6feb1ae081a80f13327b5b094064
diff --git a/dev-python/coverage/coverage-7.6.12.ebuild b/dev-python/coverage/coverage-7.6.12.ebuild
new file mode 100644
index 000000000000..bba747e1e72a
--- /dev/null
+++ b/dev-python/coverage/coverage-7.6.12.ebuild
@@ -0,0 +1,111 @@
+# 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..13} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Code coverage measurement for Python"
+HOMEPAGE="
+ https://coverage.readthedocs.io/en/latest/
+ https://github.com/nedbat/coveragepy/
+ https://pypi.org/project/coverage/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="native-extensions"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/addopts/s:-q -n auto::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ if ! use native-extensions; then
+ local -x COVERAGE_DISABLE_EXTENSION=1
+ fi
+
+ distutils-r1_python_compile
+}
+
+test_tracer() {
+ local -x COVERAGE_CORE=${1}
+ einfo " Testing with the ${COVERAGE_CORE} core ..."
+ epytest -p flaky -p hypothesis -p xdist tests
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO: fails because of additional "Terminated" print on SIGTERM
+ tests/test_concurrency.py::SigtermTest::test_sigterm_threading_saves_data
+ # broken because of pytest plugins explicity loaded
+ tests/test_debug.py::ShortStackTest::test_short_stack{,_skip}
+ # these expect specific availability of C extension matching
+ # COVERAGE_CORE (which breaks testing pytracer on CPython)
+ tests/test_cmdline.py::CmdLineStdoutTest::test_version
+ tests/test_debug.py::DebugTraceTest::test_debug_sys_ctracer
+ # mismatch of expected concurrency in error message
+ # TODO: report upstream?
+ tests/test_concurrency.py::ConcurrencyTest::test_greenlet
+ tests/test_concurrency.py::ConcurrencyTest::test_greenlet_simple_code
+ )
+ local EPYTEST_IGNORE=(
+ # pip these days insists on fetching build deps from Internet
+ tests/test_venv.py
+ )
+
+ "${EPYTHON}" igor.py zip_mods || die
+
+ local -x COVERAGE_TESTING=True
+ # TODO: figure out why they can't be imported inside test env
+ local -x COVERAGE_NO_CONTRACTS=1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ local prev_opt=$(shopt -p nullglob)
+ shopt -s nullglob
+ local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so )
+ ${prev_opt}
+
+ if [[ -n ${c_ext} ]]; then
+ cp "${c_ext}" coverage/ || die
+ test_tracer ctrace
+ fi
+
+ test_tracer pytrace
+
+ case ${EPYTHON} in
+ python3.1[01]|pypy3)
+ ;;
+ *)
+ # available since Python 3.12
+ test_tracer sysmon
+ ;;
+ esac
+
+ if [[ -n ${c_ext} ]]; then
+ rm coverage/*.so || die
+ fi
+}
diff --git a/dev-python/cppy/Manifest b/dev-python/cppy/Manifest
index 936d0f8f0056..0db2a5942ec6 100644
--- a/dev-python/cppy/Manifest
+++ b/dev-python/cppy/Manifest
@@ -1,3 +1,5 @@
DIST cppy-1.3.0.tar.gz 18367 BLAKE2B 8b58058d6a2bbc4f350ef71305fb57d94eaead322be756d508aca95b525c284988ef218bf2d84b33d39656ad242d2f5142aa886bd212ef9b2817962393b1792a SHA512 e0beabb70e91af9e10be25e3bb9b1f6838a82995a3741f30b73889f449c5160543bfc4afc02743d2a62fc3483445de0a04b0ed7be51eb308f34cd4582050ad05
+DIST cppy-1.3.1.tar.gz 18699 BLAKE2B 88f0f2c92f1cfddaba816b761e9c7a7203da79f35b552284d3d3ce221bcbff9b47d5a58fcdd99f86902afcb7958ae5bd474488286232b9cb39825cfb5ea610ab SHA512 be5c9ee231958c6cd46a33868ca8aceb11df5648767e3abb7bf2ad9d37f2e7d37fc12966e1ab08bb36ce149be673c54f5bcb4ea82d0aad674b769bb29c287eab
EBUILD cppy-1.3.0.ebuild 631 BLAKE2B 9751b998734ef74dfd8f32f7ff52b870dc3cf6ce03246e7a2881720a9a7b7162f70c0faa1a0f96e9268059f3d47d4fd8355bffcbd314a1ca905d933b1d6b1c71 SHA512 7577d7e66a7083728ae917edf893e17fd72b774bf5a886a766c77e0c988782aad5175e85a6c1800d9b8f6954700adc31272cccdbf5810b13539fe690040bdb33
+EBUILD cppy-1.3.1.ebuild 639 BLAKE2B 5f44f00797a9570861cf3c91e2b2b4a4f6548ebe53dfe38a70db488816d9b7d7e18109fda7a0356fa82da69a1f765c142ab604aa39d4e6e8e8faaec64cd02177 SHA512 fa18c8093fceffd9bab3a7d6a6831e4a85dc725f40f32a335320c58a7071672919d5a510236e2d5efc07d0435b58453ee46af10d8b2b7f06f4a200075d5f1df6
MISC metadata.xml 654 BLAKE2B 5a5c1403296b315e3a56b748ee2e285a834868ffde5511dbba88bd948e3de001848272a63625b26da49497d0e4510e83cf05455bcc3441e798f1b77bda5a74d0 SHA512 8606327c5d5285fa77f14f44bb758a80995ca7b4da44466236ed000ff40b3803066f571734f918d55809ba2cdf42d09ea09ba8b27367a73a1390427d4a200a31
diff --git a/dev-python/cppy/cppy-1.3.1.ebuild b/dev-python/cppy/cppy-1.3.1.ebuild
new file mode 100644
index 000000000000..c912a44178dd
--- /dev/null
+++ b/dev-python/cppy/cppy-1.3.1.ebuild
@@ -0,0 +1,28 @@
+# 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..13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="C++ header library which makes it easier to write Python extension modules"
+HOMEPAGE="
+ https://github.com/nucleic/cppy/
+ https://pypi.org/project/cppy/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ >=dev-python/setuptools-61.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cryptography/Manifest b/dev-python/cryptography/Manifest
index 264f1f9f7c16..e5939f125992 100644
--- a/dev-python/cryptography/Manifest
+++ b/dev-python/cryptography/Manifest
@@ -11,8 +11,10 @@ DIST cc-1.2.1.crate 92731 BLAKE2B c9cb100964834692781ecc3f47972f83adaf27e019ca21
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST cryptography-43.0.3.tar.gz 686989 BLAKE2B 60efc12c020563aa0d229941d237a39e7d7243045433c7c4cf4c57a8f031569d32bfcd0e43316dd9eb3d6dd3b4e6ad8106b7bdca53c2e6c4ebb094391759da66 SHA512 965ecdbdac09ba4cf3d3289cb7f0997bfb9abd61aa663554f27651328e5da1c92edadba521b1bf779e245255e5db3da7ea8092496f845b73278ffcdd91076bbc
DIST cryptography-44.0.0.tar.gz 710657 BLAKE2B fa9d89d143e6dc84d9335cae1a38493616a5ca29ac71811c636fed961eec3311e9cabd08d7187ea05588cb2d0947509ceb028922ac13796e6160aaf991e41523 SHA512 d0aaa2160a31079412ddb7be07fd170c7e54736c315b6fbb6ee5264af0eb90be392ecd1c0e3bfb4ea071c0153ad8f47604bd6b28d4297cd9774dc55647b4e97e
+DIST cryptography-44.0.1.tar.gz 710819 BLAKE2B 8c6b072b4dd59d9c5698ce07da336b51759d0b98421e0767bf92c73bffc7590b1d6ce7288683305b8724755a86df115bcfde8e34dd02bedfc90730f360c01b3d SHA512 f45bebc4e92d140859f4b5c3e505c17f5b607b5fe62eed45dd4df3981d2a20a74c192d885336a47e4f3bc6e1ed785cf3a3430f81ed14fcd89a3c750d4aae10f3
DIST cryptography_vectors-43.0.3.tar.gz 35306415 BLAKE2B daf21d6bc7ba81bac2b38e0459c104117c17c3b5c6d74c3f0ba5c0da961999bc2f0fc0a088e6d3498960de70b2862867c6dd10b6e05db99352c0adc9d65104f8 SHA512 7ffbf439b84ea85a8178f6b41a349c8d3ba6586cf6513a6b13d01f55bc0fa8bb5635de2ee9afd334c5660c60cd2fc286f85b2c9c364b6e85bf4164c32fb6ca7e
DIST cryptography_vectors-44.0.0.tar.gz 35317300 BLAKE2B 3c0fc56d39447f2fbb06ffcaac82aec242e50a0341c9599c64b649ab5cf97fec740db8625269d5130a2bf20b1d34ef84b07ed451f5b221eab1acd0fee076dab1 SHA512 e6c37d7fc78c22292c04e7e6a83a5438baa13a30f724fe8bb7b72e6caf9d75a2130537e75a803c309da00f4ce30dc55a7f737415740741f384953f443c3eaf1c
+DIST cryptography_vectors-44.0.1.tar.gz 35317778 BLAKE2B e6e9b1b2db108aac983ef78fab31ed0ed12257d774d5d4e8fb742dc856543992f66db7c7ac5190f74aa176272b1337131ace70e89d0b0552f26432309c2727f1 SHA512 60d4aefc3aa7d18183993d96e203e7e94f323359a9f0824e9367548a1c33bd96982b6e619310a565290b5d1109e8310127f52c6478b392859788ba27fa6415b9
DIST foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232
DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
@@ -35,14 +37,19 @@ DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6
DIST proc-macro2-1.0.92.crate 52353 BLAKE2B 9aa29fa6f1c56c0392a94a81b4c61953f4d185012cdca37e356817845535da79d7094bf43472ce63109ce479a2fd0cbef4d802afd61daf92c4db303bcac60e7e SHA512 e614f08acc0a7e97ef580479cf5b682378df1ca16f09bfb2296ebb3490a435229dea9d682c621c54ce57e8e1d3b7803eb8ff83c88bd02e07228dba6d02f14aee
DIST pyo3-0.22.2.crate 538342 BLAKE2B faf347695117f9fe0ebe5cd7f6aa1b0dcfe718343875d6c06438046deccc1075f104d2a2413dcda41ae9827bc363aa147057b45968f6634f577a6a4510a4bb8e SHA512 e8bae09059f50ffe477dad44499cedeaf3a734665f0fd8e8bd4b44f48578d21e4bdb8d55ceea00c5a27da750761842ddf89cfcecdecb2e7a4a17ab192259be9c
DIST pyo3-0.23.2.crate 1073639 BLAKE2B 01ddd26a4e347f3b6d7fee215a1894e779167730710373d59712f2119332fcf287d9c0e75d3d28baff8cf5000afb9d0e577947a26bdd8828428d33aa0f8be537 SHA512 b2b40809e1f26978c140b7ca4ecebb661a47fc01cd03fcd5c486076576c9b229de04f15ed55661db4e26545cb29110f1034a185abb623e4bf7fbb69188db335c
+DIST pyo3-0.23.4.crate 1087676 BLAKE2B 2c7d3530460ff687e8f60dcff0fb01465b2a4642043ebdfc927fc3824b9fbce9c4b304250808a85405d21df12d17a1d1ada7bdf8f3563710692f22223e2732f1 SHA512 0015aa75163ad0ec026d185e15c26f59aaad0eb3cc3044b146e5d703bb375fcd838df2044febbd52e6e129dfba81c8249329fc3e4805695274dac7a69eee0651
DIST pyo3-build-config-0.22.2.crate 31225 BLAKE2B c2e6a3d3d23b7f2f51bcbf1214ab20a298a1e62f85c9af3dab1e77b09f20b657b576feefffb18eb49d438f0ffab525b6bcd1086d500601c327ffd4fd24a719ee SHA512 644c82d30bb27051557efcc9789a81380a64e29bc62abf97de88f42c3791dac74228c7a7d09e0d46d14f07c0475f0bc03fac6ed1367b9a616153e8820b94cbc8
DIST pyo3-build-config-0.23.2.crate 32197 BLAKE2B 393c76b1dcb625145673736272d4cb9d96a02df87ddcc385316652f0ff1b5595a34ebe5d789f61888c2fd82de05476c85f781d21018bd99cb630fa634afee203 SHA512 29678272073e896cb0b65efb0eaba40c82977b18efd389597aef8902e32daff51f2609c6be93ecfe0336260446c3186951f770ff449823cdde5a0518a1585c81
+DIST pyo3-build-config-0.23.4.crate 33885 BLAKE2B 7f95a8a9e08d413899ff1fa64af5a52783bad4a7b4db92835464f12bd8565f152497aaeb45d25cc91eed73950abeea30ca4c7495e3b15423ae588b97038beb18 SHA512 b11442609f43d9baab79daf083caf0366987f6ae182239814ad6df6fe4ad31b95132d74f1162fa9428d229bd8c18ef9b696a4c3329b3960fd705d1705fc5e973
DIST pyo3-ffi-0.22.2.crate 67749 BLAKE2B 0a4357d5f4fbcab9717d58b7a80b63a63bc329267d4725136c4eac7c0101095a50e5f840638dde79034e5df99c4f46664cfdc2ad437837643db5d475c5705cb3 SHA512 bf8b83b4790832d99de8c6a61a15a43fc189505dd843011933305f7f93c4f5f4849fb00cc2a6fa410b788645f8ed8c0df61799cf801966a925abb9756b1ab579
DIST pyo3-ffi-0.23.2.crate 74052 BLAKE2B 085c66bae61e6059331813be77a1e4f850c4b8b12ac60b03188f2a009c9f58e062dc3ea2b9e470a480956bb8cbef645f95e53fae2638d59ebf5039aa5d41d504 SHA512 e228e473da98ce0fe4f15cf840ba1f51f66bb6fd103a7c0bb76b3218980c93b45ecf691f712333f4a27a9efc76517a85f6e13d5e9650b774eadebf59a647e493
+DIST pyo3-ffi-0.23.4.crate 74806 BLAKE2B 650784d46347c00f09c010c39e9762f778efc510ad0b99b5ddf30cab18edaba552207339ad44ed4ae6d87ddfcc56fa540a17e3a4cb331905a0988d5ba2dc682a SHA512 c12097292b4620f4fd98d61fde4a0f0c7d423a94d518fa5b1cf759089b066fede6d83e20171acc2aa7bf268de5700c9b59da32131216734626b0fa5cd5651801
DIST pyo3-macros-0.22.2.crate 8136 BLAKE2B 9dc97d2f60581db1b8ddb562dac917069525f297fe2cbb9aff3ed34d5a08ea43c112c9c7a450539da3536d753778b5ca506dd1b18e1d6b8a3649fc098e7af439 SHA512 f4f4f6af8dc3aa4bcc1698661990ab2112391ef9502e9f71d86e35bd10dc4e1be309102ebb1b7b32751817a6033168dc0486fdb16b35c626101e69f0de807a4a
DIST pyo3-macros-0.23.2.crate 8056 BLAKE2B a87c4b8aab972eaf5e9b941db34e18be411bed8b5753d3e2d3f65e4a18723a72e70858bb34e8db949f0c6b748e122fed41e9c78f6c20150077fcc3c4eb0026ba SHA512 dba0b5bd212b6a5f38d6fc93183c8ab80bb53bfa5f03d471897014f2d3d1959804e5fdbc817845c1cef797f314b924d58eff95cfcb848eb98b283e104d24637c
+DIST pyo3-macros-0.23.4.crate 8852 BLAKE2B ba5722fd52e47aa4dc2e89bacd69326bd98943a1670ebeab08a2e9e8070a0975ebbe928a0bce8b53a700b65294fee2b00d2a1e6623a0c48ac15902cdbfcb7a97 SHA512 c36c9005db5a4b48b5fda881130f4e7da8eef46e2c363c395ccca3fe476e0204d98c2a832cd03c787fb37a2664fadd42bf8f47de71eb44d055754ab5766af934
DIST pyo3-macros-backend-0.22.2.crate 65620 BLAKE2B 37fba9ff384373418d3a7341acafb8e33308a64e30026f828693a37c32ab4a74d058f2db84d00467a20f9f267c96fe54c0f154d1ebbae92490e8dfc0d29c042f SHA512 0517080c0d5d4ed8136521fd37aa3a192c2eb8cab58545d8543ee4df9cd0dcea19fe0678d5ab90f05fe3eb0f4a86fc2f07b76f2e12ac1fcf7e7c195c2ffa4fd8
DIST pyo3-macros-backend-0.23.2.crate 70067 BLAKE2B 905c0e6e5ca0c0a91af8386a632cc81f4a9b08a51a22a260188078abf9ee70d60f77e2fc0df09483d8dc6b37cd455a23b7f70f41ee74a2ad9dd0dbef39cc22c2 SHA512 dc3f8780c09c63c0e0d4f26c29a9a4e29e4fc9f14254ac8a942235e480a3f4bfa3bf073d3011e043b6c22e1999d1f68bf7b0fdf212e9edb4bfb2396a97ab0ee1
+DIST pyo3-macros-backend-0.23.4.crate 70912 BLAKE2B a428c732f0b17d9a8f620d0e8d58469f2cba339c8a8307393ce252a7860808e5d50e6bbf711cafd0635c844f4b1d48e57db4dd99ef7b5e3d97d6f760164278e9 SHA512 2fe670fbf35724f489cc82f38d3f7c1e6aa15b087a2674b7a68b562572f9bb00cbb7746cccfcb62d0861a18f6d24c5739273c8302d1662a161142f4a6b532b6f
DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST self_cell-1.0.4.crate 15220 BLAKE2B 9a617058652ab2a2e92434b6eef58a813ce0be5afed9525c4d4c819c25c7cd87aaa12d129c8c4ca9d74c3ea33d81e9dd295f121887070364185b9ab33021544c SHA512 042467e5f3ac0305e2a634df0b9a9379e92b54813e05c3a7652d5327a4a9a784f49e897c968c5c7a87017284d42a889b5420ad18e97ea84183e0283a46dc907a
@@ -57,4 +64,5 @@ DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4
DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
EBUILD cryptography-43.0.3-r1.ebuild 2894 BLAKE2B 47a38f459787a70b102585f50f8bf7f44336f0b8637ae72a6b6966c7e1be6b307ee9e95eb8821703b8472ca5253d63b7ab7a604cbd17e24530c49964e5099fc7 SHA512 a25365071307e4cba513d8055642eaef6eebf936efe7b3d3d99c6c830862ad76258bc8775930ecabecad7d1a4b43e32a7657c4120b3b23789410439a9293b426
EBUILD cryptography-44.0.0.ebuild 2917 BLAKE2B f5e0e9495b7ae497b74e8d2e370fe56fc9cacb1455612d405cb9b303eaa4cdf9c1d57aaf5228fe4441cea81aaec0e4047794d2cb1605d749d5dd69c77a879427 SHA512 62bbef981a99fe323ebdf1cb6743d3aa1919ee32af70d81298e72a75c581b3353533fd7ee9b4463fdafe511be5948fb65415ec79f3eb9efae546075320207e48
+EBUILD cryptography-44.0.1.ebuild 2923 BLAKE2B 3a0257efcc857cab2e4b79079be4fd141c91b1e92be0182c18b6948db9fc3ce8ae4a37eda7b95a9f991d4954ddebe28628e1f62773a0737cbcb4b8ff5c29da95 SHA512 665893ddad6f0812d76171d44f492b2d9edc910abdc6b09c796eae0b80ecfc880edd1405a18588eab8acffc949df8aa54f9fc1d0c028f36d4e32937fdaa72d88
MISC metadata.xml 464 BLAKE2B 96c0bd97b83c9718910d129260402fdc37e88a96ac6002c8f6dd19fb21d6daf31211b83ff7423036811e27954811ebdc810c8328f18c620682bd9428f42ba1f9 SHA512 2f36a186bb195a8cbafe1d8dd6630fadf0ea56b22906ebaf3c90954adb8b66e1017f599169e2b1ca386e1113c1a6b834fff90f2bec527bed53f62985120732d6
diff --git a/dev-python/cryptography/cryptography-44.0.1.ebuild b/dev-python/cryptography/cryptography-44.0.1.ebuild
new file mode 100644
index 000000000000..202cbda6084a
--- /dev/null
+++ b/dev-python/cryptography/cryptography-44.0.1.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CARGO_OPTIONAL=yes
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+CRATES="
+ asn1@0.20.0
+ asn1_derive@0.20.0
+ autocfg@1.4.0
+ base64@0.22.1
+ bitflags@2.6.0
+ cc@1.2.1
+ cfg-if@1.0.0
+ foreign-types-shared@0.1.1
+ foreign-types@0.3.2
+ heck@0.5.0
+ indoc@2.0.5
+ itoa@1.0.14
+ libc@0.2.166
+ memoffset@0.9.1
+ once_cell@1.20.2
+ openssl-macros@0.1.1
+ openssl-sys@0.9.104
+ openssl@0.10.68
+ pem@3.0.4
+ pkg-config@0.3.31
+ portable-atomic@1.10.0
+ proc-macro2@1.0.92
+ pyo3-build-config@0.23.4
+ pyo3-ffi@0.23.4
+ pyo3-macros-backend@0.23.4
+ pyo3-macros@0.23.4
+ pyo3@0.23.4
+ quote@1.0.37
+ self_cell@1.0.4
+ shlex@1.3.0
+ syn@2.0.89
+ target-lexicon@0.12.16
+ unicode-ident@1.0.14
+ unindent@0.2.3
+ vcpkg@0.2.15
+"
+
+inherit cargo distutils-r1 flag-o-matic multiprocessing pypi
+
+VEC_P=cryptography_vectors-$(ver_cut 1-3)
+DESCRIPTION="Library providing cryptographic recipes and primitives"
+HOMEPAGE="
+ https://github.com/pyca/cryptography/
+ https://pypi.org/project/cryptography/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+ test? (
+ $(pypi_sdist_url cryptography_vectors "$(ver_cut 1-3)")
+ )
+"
+
+LICENSE="|| ( Apache-2.0 BSD ) PSF-2"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-libs/openssl-1.0.2o-r6:0=
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.8:=[${PYTHON_USEDEP}]
+ ' 'python*')
+"
+DEPEND="
+ ${RDEPEND}
+"
+
+BDEPEND="
+ ${RUST_DEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-1.11.4[${PYTHON_USEDEP}]
+ dev-python/iso8601[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/pyasn1-modules[${PYTHON_USEDEP}]
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+# Files built without CFLAGS/LDFLAGS, acceptable for rust
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/cryptography/hazmat/bindings/_rust.*.so"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ cargo_src_unpack
+}
+
+src_prepare() {
+ default
+
+ sed -i -e 's:--benchmark-disable::' pyproject.toml || die
+
+ # work around availability macros not supported in GCC (yet)
+ if [[ ${CHOST} == *-darwin* ]] ; then
+ local darwinok=0
+ if [[ ${CHOST##*-darwin} -ge 16 ]] ; then
+ darwinok=1
+ fi
+ sed -i -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \
+ src/_cffi_src/openssl/src/osrandom_engine.c || die
+ fi
+}
+
+python_configure_all() {
+ filter-lto # bug #903908
+
+ export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
+}
+
+python_test() {
+ local -x PYTHONPATH="${PYTHONPATH}:${WORKDIR}/cryptography_vectors-${PV}"
+ local EPYTEST_IGNORE=(
+ tests/bench
+ )
+ epytest -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest
index e5a3c5de33eb..1c1f4e47e202 100644
--- a/dev-python/cython/Manifest
+++ b/dev-python/cython/Manifest
@@ -2,5 +2,7 @@ AUX cython-0.29.22-spawn-multiprocessing.patch 963 BLAKE2B ebbc3f6f4fa88e7e08232
AUX cython-0.29.23-pythran-parallel-install.patch 874 BLAKE2B 39286ee98427260ce6ec077a750e0a1412445343fd11be9d96d8ab65b7d9789c5f1864cb9a1b3565ee3f51e117ecc854ebacc39dc32917fc72f36340c2d7f0a1 SHA512 8b78755288d3f165d962a5a1be9492d609a8e3dab10197b271c84ed0c4b7006053038e68f18bbb4204e6acba83e3f72ffeabf57ffa03f4a08f28b65db3cfd854
AUX cython-0.29.23-test_exceptions-py310.patch 656 BLAKE2B 6c650c85d01b8bf367528d144cd967fa9def94634e35763e2e7a1c3e5afa2b01d0c84694024dde6e45577eee223f6464b5f88ab971d207d35892edf347a0c08f SHA512 d8f7f770a0b3303552deec0e7d3f9258de1edcd384f4b2c3881634fd21ce847a3d974e9142d1ed2fbe3a549e65292c6690be3a36ab4de52d0593d9831dc2f7ce
DIST cython-3.0.11.gh.tar.gz 2775463 BLAKE2B f5f53c328a1b48b04548f1ee7be3988451d2a8e339b785285e2d973e63b37dabc6021f32ba1691ae8dbe9ee7706a5feda399b071b4893a3be4fe4afcd608f46b SHA512 8f7982af5be1db1072b1090257a9d487dc341d79522f442f4608303d18b388349a7d586ec74e66fbffd0ce88c00ca622202729907fe7cefef71828cfd3f68fe6
+DIST cython-3.0.12.gh.tar.gz 2777066 BLAKE2B 3e2730b7b0ef90ba6a7d4a510dbaa24b7c966d68c397196727b6d63b435c6775aa818a7d1b741819a7940ad44cadbc83be4aa48117b2dcf7bd844f4c9bc268bc SHA512 bbf2cc662b846cf5ff9b686046ec210ea9d3893482e2b5a2696d2ad44f12facd15075b168a3eb6d1f4ea799786f676868eab2593451bceb2937aec2cb1aea99e
EBUILD cython-3.0.11.ebuild 2007 BLAKE2B aa528d44b15e92bc746eb29387aea7dde61401fe8328b1cb405fbeb1e0676f11c49a09cf4cf7ee3eb2b5c47542045e06214aeb5d28b088bb05d49ac7b03ef7bf SHA512 ed9a1faffa38775384595260ea77fcd2fd613c74c75f66d4dab354979187d30305df7b9f7ff6af17fc8eb97ef47325669c3a2e3dfb4317bb27f368196cc833e9
+EBUILD cython-3.0.12.ebuild 2015 BLAKE2B c3c91ad5c0a478aa79cf3fc2386a99b6b831839d7a59ffe9cba74d9a4ed929b9724c0435cf172ce7ea3ba85e9966b5d35400f2c9aba38c6f5001abfb77bc8b38 SHA512 8a34fccf05e40ad529ee9bf19ba63bcbae33fa530b86a2fec889feede6248f877141a14aa4e9ccde889cc55af66d23c183c7a4468696da2501193f54215e64e8
MISC metadata.xml 606 BLAKE2B 1ee3fc75852383aa0618afeb7521c3ae0e95b518c85b2c58ff958905092cf68017d313a09d25031a50b649f9dd1b452e751036f2552df9d91447baaeff0a8f0b SHA512 b7917c2e417cee9e59c8011246f7223f5095c87f0294ea140dbfc8fda0b09cf61c9f055380a9d3f74a07e71bb49d75f219d6224ea95f1f4d4b451e5688c13f78
diff --git a/dev-python/cython/cython-3.0.12.ebuild b/dev-python/cython/cython-3.0.12.ebuild
new file mode 100644
index 000000000000..95207449b493
--- /dev/null
+++ b/dev-python/cython/cython-3.0.12.ebuild
@@ -0,0 +1,84 @@
+# 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_TESTED=( python3_{10..12} )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" pypy3 python3_13 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 multiprocessing toolchain-funcs
+
+MY_P=${P/_rc/rc}
+DESCRIPTION="A Python to C compiler"
+HOMEPAGE="
+ https://cython.org/
+ https://github.com/cython/cython/
+ https://pypi.org/project/Cython/
+"
+SRC_URI="
+ https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ <dev-python/numpy-2[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
+ "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
+ "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
+)
+
+distutils_enable_sphinx docs \
+ dev-python/jinja2 \
+ dev-python/sphinx-issues \
+ dev-python/sphinx-tabs
+
+python_compile() {
+ # Python gets confused when it is in sys.path before build.
+ local -x PYTHONPATH=
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ # Needed to avoid confusing cache tests
+ unset CYTHON_FORCE_REGEN
+
+ tc-export CC
+ # https://github.com/cython/cython/issues/1911
+ local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
+ "${PYTHON}" runtests.py \
+ -vv \
+ -j "$(makeopts_jobs)" \
+ --work-dir "${BUILD_DIR}"/tests \
+ --no-examples \
+ --no-code-style \
+ || die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/environs/Manifest b/dev-python/environs/Manifest
index e6c70de8029a..5ad1cbcb8994 100644
--- a/dev-python/environs/Manifest
+++ b/dev-python/environs/Manifest
@@ -1,9 +1,5 @@
-DIST environs-11.2.1.gh.tar.gz 25595 BLAKE2B 478818c964625965200b154ef9412a1d94ac9f78d507be0ebd378117613e7c7f8163c9db58225220ef9cde68367f973999a9914f13db6bdee02c83e9ee924518 SHA512 cd859e86b4308047ad661f3fa12788a117f70686e3f5dc7f55e876c9de38c6d2b75f208b488b99f3c9189080e8ebb45385fea45421d55e9b2f9a22ba4a3fbd86
-DIST environs-12.0.0.gh.tar.gz 26281 BLAKE2B d663ede5220bc3d1b6f3a1da5b2b8500bfc98d134bf9ec00a81796fb1619c98e96b2336e474dee2d17e6b541fd97bcd916dcdb5d19509a76f6af28e2bf26b691 SHA512 30622788d787516408cb9a6548124475a752fb37284f880c534763007c736daf0c666c8e8c773cbb078da7ac3ba5b271aaf28d3d7842afb6da630bddf5233623
-DIST environs-14.0.0.gh.tar.gz 28247 BLAKE2B fe1fcc78940840f67c8cb38d9f7c10d03e1c91b5f94943eaee1a603bfbb8bccbc46bed003913fb64a62b49ab40bfbe806ea0c21dc74926d48b2d58a8e96886fa SHA512 5caddf4ee09cc2e6acbad93d7f40b7d6fe9f241454a96ae33da2467858b7a53bc03132e702d87c6f9731f2b600a559135da6ac033de7ccd1b0623402ccdfbc4c
DIST environs-14.1.0.gh.tar.gz 28783 BLAKE2B b93711edaa4b9d2a3353e3a06e9baf545716dd96da6f3288825fef15306d793c4b18d0401698c86cddd2813d723e188a7be6570940eec49171f81d1f6dea071f SHA512 26cc7a920b4d9a6d7d7c7f1c729e688767a03de8e439483c99020a0a838d9c52dc3f5d0e78db6b910cc087580efb42ce3cd8e3be32e69a889abd40d0fb1a9fd9
-EBUILD environs-11.2.1.ebuild 846 BLAKE2B b45e14c6b4165893eb20884587a81ecd4d9fd3fcf0333cfdaf7dcbd1371c0c7c576b2f1de64d81b3e1e5c00733d2c9ae56e9abee3501bb26df04813345a75763 SHA512 66cc6946c287dcaddfc5b71c63e475e62bb1701d750a83b97debe69a26ec655bbf9ae943d08972ee530e8b0fd1cfdcfad81affc596dca9b4db57dffe2ec11f90
-EBUILD environs-12.0.0.ebuild 846 BLAKE2B 074c0f3836f04b2427333c7d012f9e90ac5ca6cae19f492bef2a3bc684dafe556b05f1c3a58a06068b3a46eb240288e423d5562a50408e6b3cffb7024f57eed1 SHA512 88cf2c62903698b9944e23f424cdf341d0124f35e7810ef27e4ff08ce05d58cfa6b44cb5bb23451581fbc33b0859c0aaaa55a00a79570fffc883c5a7b476bf9c
-EBUILD environs-14.0.0.ebuild 929 BLAKE2B 6c733684aac235af3f195742dd7d05aaee65372f89b4316cb26130f794ee417c5deca2ee21c5ec0dda57aea47b51cf6522656b5dc0600943a86f6279080e2f95 SHA512 4045c9febc12abc8ce6dcb93f39806d0c9bcecc0e9290ed70895a9eece5f312215a6d9638d5857fd615354af8a1bc3cf1c96f72cc6a3e6d3f483061f40c73a8d
+DIST environs-14.1.1.gh.tar.gz 44987 BLAKE2B d409fdb38faa65b45e4ec147acfc6050eb9a9993cf93bc90939ffdc33421b44aa522cd397767d0d41370b994f914741e9ee6af24095c72321e7875f5c88440c1 SHA512 fdbbd25304200db383705fc7940a9ec6e9ed851c7fbb57a3af08ebec8d825a6d2e3c5ecaa13adcdfe5405e49da67104f600003c05b75e9758a7a15cca14e4d5d
EBUILD environs-14.1.0.ebuild 1015 BLAKE2B 5af73efa3548c39a17483fe6a1131fcc1c0b923d153218ce1b9a878bc7f3e0d4025bf01c5963f41a8286200a43aaf52b413bd2d0310e3af62389e7709a2afc78 SHA512 d002060880688edd57e3fc5d5c4473d8fe63948bf04d2f5d9f705855675694a0be672619c5f7e07efe2764fcb0ca473d62ed7c38d8b0dbc4e89983181ccae09b
+EBUILD environs-14.1.1.ebuild 1015 BLAKE2B 5af73efa3548c39a17483fe6a1131fcc1c0b923d153218ce1b9a878bc7f3e0d4025bf01c5963f41a8286200a43aaf52b413bd2d0310e3af62389e7709a2afc78 SHA512 d002060880688edd57e3fc5d5c4473d8fe63948bf04d2f5d9f705855675694a0be672619c5f7e07efe2764fcb0ca473d62ed7c38d8b0dbc4e89983181ccae09b
MISC metadata.xml 496 BLAKE2B a44f919cfe291f826a91438c9170dff83d39a184a192cd6208cc91eb50596a739d94335345f7289b8afd667a24b491fea5c9387721dd160031deb6ad5cf1aa6e SHA512 a3744511fce7b1a29b682ea7d384eef72bf08ef599ae88f01c9b4485abb1abe89f5731c40cadbe724cf8ac63726199128bb51e88c5c770196ed6a4326233f520
diff --git a/dev-python/environs/environs-11.2.1.ebuild b/dev-python/environs/environs-11.2.1.ebuild
deleted file mode 100644
index 28662b82e90f..000000000000
--- a/dev-python/environs/environs-11.2.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python library for simplified environment variable parsing"
-HOMEPAGE="
- https://github.com/sloria/environs/
- https://pypi.org/project/environs/
-"
-SRC_URI="
- https://github.com/sloria/environs/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-RDEPEND="
- dev-python/python-dotenv[${PYTHON_USEDEP}]
- >=dev-python/marshmallow-3.13.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/django-cache-url[${PYTHON_USEDEP}]
- dev-python/dj-database-url[${PYTHON_USEDEP}]
- dev-python/dj-email-url[${PYTHON_USEDEP}]
- )
-"
-
-DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
-
-distutils_enable_tests pytest
diff --git a/dev-python/environs/environs-12.0.0.ebuild b/dev-python/environs/environs-12.0.0.ebuild
deleted file mode 100644
index e3b002adda80..000000000000
--- a/dev-python/environs/environs-12.0.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 2021-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python library for simplified environment variable parsing"
-HOMEPAGE="
- https://github.com/sloria/environs/
- https://pypi.org/project/environs/
-"
-SRC_URI="
- https://github.com/sloria/environs/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-RDEPEND="
- dev-python/python-dotenv[${PYTHON_USEDEP}]
- >=dev-python/marshmallow-3.13.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/django-cache-url[${PYTHON_USEDEP}]
- dev-python/dj-database-url[${PYTHON_USEDEP}]
- dev-python/dj-email-url[${PYTHON_USEDEP}]
- )
-"
-
-DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
-
-distutils_enable_tests pytest
diff --git a/dev-python/environs/environs-14.0.0.ebuild b/dev-python/environs/environs-14.1.1.ebuild
index d45b0ac5d9c6..b72b45079c97 100644
--- a/dev-python/environs/environs-14.0.0.ebuild
+++ b/dev-python/environs/environs-14.1.1.ebuild
@@ -31,6 +31,9 @@ RDEPEND="
"
BDEPEND="
test? (
+ $(python_gen_cond_dep '
+ dev-python/backports-strenum[${PYTHON_USEDEP}]
+ ' 3.10)
dev-python/django-cache-url[${PYTHON_USEDEP}]
dev-python/dj-database-url[${PYTHON_USEDEP}]
dev-python/dj-email-url[${PYTHON_USEDEP}]
diff --git a/dev-python/faker/Manifest b/dev-python/faker/Manifest
index 54eddf347c48..abc5371fdfd5 100644
--- a/dev-python/faker/Manifest
+++ b/dev-python/faker/Manifest
@@ -1,5 +1,9 @@
DIST faker-35.0.0.tar.gz 1855098 BLAKE2B 38429e14ccca4e315b562903e218ceb3942818da34229da59adca51afeec837a8877ed902de7624bbf057c2cf7a838edfec78b45cd7157855ab05b5fca868c84 SHA512 8f9744f1e935218ce7a25b93288357fd4767c3079ed2a44e9613a666984e737e1f8ee615680cc9722ba83e448843a581adc0d84cf41085a195c2eefac9eda9c9
DIST faker-35.2.0.tar.gz 1874908 BLAKE2B ded1ef4e9afec3395e78ebcf28c7c5f428a46873f9fc4b75681eb045315c35fcd682c83cf04fa09ad91feacb828e6cea429de51ae53264fb8ec4b9e4ef36b922 SHA512 70e5f8165c740596952245b2635c9c88efef894f4e86fa352f7bee08eeaf44c6f0050c9ccd435cdde76f9e24b84957db9d4a1601cc12f1d3f30519c7391975df
+DIST faker-35.2.2.tar.gz 1874955 BLAKE2B 4ff2e056cd1fbdd7c70af2efbd0757005fbe7aa1f73233bcb2f41fcae6ad5b85ab6732602afe0bf671799d48ae97069a462e3d3a174d17497155c2d5c29b8a57 SHA512 91f5dc3e7930b1192fed2d13f98e36eac8698411dda2ff5dc471c273aa415d41959f5d18826b888296ef87d6ca07513ec68b4bee7828e2934ab2ff349055063b
+DIST faker-36.1.0.tar.gz 1874804 BLAKE2B ea004f4d3a03c430f16ce53aeb3124838240f86a99576fb2dec8e4746e01d03f22b0e0b4c50eb9f7664dca0ab7fd3495d500f5e77dcdec06c02b01e5a2806fee SHA512 c2dea115c589171bb727405dbba6a19631f3751557445172a51d0e62f2b417f4800b367fe6538d73fa04503b28df2a7721d47074d6910c9e7e9b9f74d5bc9b21
EBUILD faker-35.0.0.ebuild 1008 BLAKE2B b1e5daf871473d353ba63639cc19c28e6a62d63bdb7d118f180d477b9bd39d86e8e5e8ba8087f370ad1f6cda9ca89792b5b239c4ab8c17d0fc7fc3954290abfa SHA512 c2fb9bb8cb232425b07d0cf441d083df38b73e600bce860c1246da55a67db1974f80c30e8f045312c4179df9cd89f79279a9fb8bf299aab28d26fdc349bc1541
EBUILD faker-35.2.0.ebuild 1015 BLAKE2B 0010aac368c7c89b55a7bc1058e0639596c55be800975a80635cb102c7c8c66e94ae74b2257444985b404fd2e50dc6e3fe31453bc9c5cc47e4d7c1dc2e585d5a SHA512 7924dff75757fac609b9b78689689715585cad26e0fee717aef93251f70281231242f45bac956c368274fc7c93cab70369618b78df200ddb0992bb066f71ee74
+EBUILD faker-35.2.2.ebuild 1015 BLAKE2B 0010aac368c7c89b55a7bc1058e0639596c55be800975a80635cb102c7c8c66e94ae74b2257444985b404fd2e50dc6e3fe31453bc9c5cc47e4d7c1dc2e585d5a SHA512 7924dff75757fac609b9b78689689715585cad26e0fee717aef93251f70281231242f45bac956c368274fc7c93cab70369618b78df200ddb0992bb066f71ee74
+EBUILD faker-36.1.0.ebuild 950 BLAKE2B f42531dc97b64cc2779eaa5fa400200fc4bd3a8412df36bec15b487c0a7538f3b8f2cb56c044187775c88eebaf2eccdf581d8e198caa60d03e21b11f73fc0dd7 SHA512 043dd900697b4d83fd7b21e9df1861767d7eacacb02005bd60e0f74241506895139c966deeec0b08b155f1a2c4829bbf5d20ae7b8e089017f5e7fbee3e77ae36
MISC metadata.xml 498 BLAKE2B c9b7885dc7d34f2263068624a6b07ac6f1ec8078cc11abb6137612ba57edffefc48dae2708284aa83ecc941ebb2d3b8a87a143648e404a0683e75bb6c078f4e2 SHA512 0b385bbbfbb026803526e43c6c43965ff75f42d3ab133603708b187686aac29de508856e5e8ae7622a66b99032efa97f95c21625e10d074c858d8aff7446a312
diff --git a/dev-python/faker/faker-35.2.2.ebuild b/dev-python/faker/faker-35.2.2.ebuild
new file mode 100644
index 000000000000..b0c932d87fbe
--- /dev/null
+++ b/dev-python/faker/faker-35.2.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+# note: tests are flaky with xdist
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+ epytest --exclusive-faker-session tests/pytest/session_overrides
+}
diff --git a/dev-python/faker/faker-36.1.0.ebuild b/dev-python/faker/faker-36.1.0.ebuild
new file mode 100644
index 000000000000..b5ada5bebc9a
--- /dev/null
+++ b/dev-python/faker/faker-36.1.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/tzdata[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+# note: tests are flaky with xdist
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+ epytest --exclusive-faker-session tests/pytest/session_overrides
+}
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index 8da39357ad38..68463dc0169b 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1,3 +1,5 @@
DIST fakeredis-2.26.2.tar.gz 150563 BLAKE2B 3def1db25e1bfe2bcc23dd0788963f57245c01d0e1810d6c36dac5186fc8024956cbb6be09667792ce5c55f015cce1f7fd12a2fe5c32a0eb8e305519bfa301fe SHA512 2316cdf555367103a83b36b52ebc1295918fe43ab158c0d9fa28fe8d159fe7d79f3b575c754ca4efde57007e88e1bd39b1dd4a8a8f6ef80ca034c615ce5031c0
+DIST fakeredis-2.27.0.tar.gz 157510 BLAKE2B aa427ce2bc0880aeea6fcb063cb98ff60caf600cae8b21c902a1d9193dd14d7a5f0daa7a3114c92d8eedeef84c936dba326c68e054a6c1dd775209d9055a88f3 SHA512 2fd33ca8e0a95e381cef5794beb009a20c9cf21c03954e86c56e634f00ea959615dc6021265f76c14236f219ee1bf606fbd43d46ab1db5dc3426b1c610020728
EBUILD fakeredis-2.26.2.ebuild 2561 BLAKE2B a7b37e40966b2e72466a7a620c0ba3d38464e139c69ca55f212b4578e68da1d2672d71c523c005a405f256d90e96e1200549cbe62243c7912fa94829ad1b25fb SHA512 ec6a1b3d73c9b241d9b2513004a88b90579bb6b144a84982347eb79ec0b443c2cebf8e1c487ad33b0ab58d60fa41925f05b5d6f8d0c0d13245d99d2f15fbb78d
+EBUILD fakeredis-2.27.0.ebuild 2650 BLAKE2B 2d44b3010f4cd240b09dfa6d18d536ca107ef7a11260c0b0a12fe718fd6a42f5d1a22c0448979eaf2131d027c456f7e77f3f7094769ed2c9889ccb7eb3388a12 SHA512 af26c84ba2c0d48d05521d3cc82ac1dbc9e0b233232365ff4380492aa5a1741a344ba5271e7ed10feb3011133758f7ed74eead5f8e0643751003c8436aabda1d
MISC metadata.xml 373 BLAKE2B 1de33db59658e6190cd0346be58208cae6c9143a52f49dc289e68aaa0d860b5bd68dfb54f2e0b005f60a67f5caa430e2ce94fc69e64bd27e1bbebb07ad29e602 SHA512 24bfcf4919363fef45c182b6de66221e580ee0e9e99ce46e91b767655dc0b6f8a9fa6c3512ba84d1040698c43a0b6a853ad8d63c1ee5fbc00a1d192defb24db5
diff --git a/dev-python/fakeredis/fakeredis-2.27.0.ebuild b/dev-python/fakeredis/fakeredis-2.27.0.ebuild
new file mode 100644
index 000000000000..9508f6092275
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.27.0.ebuild
@@ -0,0 +1,99 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+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/packaging[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.3[${PYTHON_USEDEP}]
+ <dev-python/sortedcontainers-3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # https://github.com/cunla/fakeredis-py/issues/320
+ sed -i -e '/LICENSE/d' pyproject.toml || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # also lupa
+ test/test_aioredis2.py::test_failed_script_error
+ # TODO
+ "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
+ "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]"
+ test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ # new redis-server?
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis]"
+ # json ext
+ test/test_json/test_json.py
+ test/test_json/test_json_arr_commands.py
+ # tdigest ext?
+ 'test/test_mixins/test_server_commands.py::test_command[FakeStrictRedis]'
+ # hexpire ext?
+ 'test/test_mixins/test_acl_commands.py::test_acl_cat[StrictRedis]'
+ )
+ local EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis.py
+ )
+ local args=(
+ # tests requiring lupa (lua support)
+ -k 'not test_eval and not test_lua and not test_script'
+ )
+ # Note: this package is not xdist-friendly
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p pytest_mock "${args[@]}"
+}
+
+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
+}
diff --git a/dev-python/flatbuffers/Manifest b/dev-python/flatbuffers/Manifest
index 94b6ecc77356..0666c7766305 100644
--- a/dev-python/flatbuffers/Manifest
+++ b/dev-python/flatbuffers/Manifest
@@ -1,4 +1,6 @@
AUX flatbuffers-24.3.25-numpy-2.patch 2623 BLAKE2B 8a5df9dc31b4b1e46a8fe4b5bdce363ddadf96bbe36561ad1f1d51d5b402948194c838e7a2fa8ef77a49a79f6809f2c0606292fe4bfb1f97fa6bad2250da240e SHA512 f02957a07928be1845b258a85e1983ca2799e1838c9b57957841f05c4de13da8b5c50cb7c5584c104e3a9b8dcc35fe4d36fb393e363b79b25c97d8a45ea16b4a
DIST flatbuffers-25.1.24.gh.tar.gz 2430616 BLAKE2B 36e74e8ed537e363edc74cdf7b58a9ae39f0f2d587ee2ac14f4bf14b22bb77b8f63b1c682d44c20be895cbf399f41fb194796c3598d0550c7bfe0f4b9ff90c43 SHA512 48694fa20e41ffefd2ee264f570e96516853da0bce66c3e29b40e66baa62fdc4e38642de395307e4503743e7e2034654211d3866406be2d44dc582b61dfc25f7
+DIST flatbuffers-25.2.10.gh.tar.gz 2299918 BLAKE2B f12b32fca1a15349aaba142907d2d66caa55bb73862b969b226d0356f7f68fbba74c9c3f643a944813c370cacf81735b6c80d054a70b8b442519f9c485bbd10d SHA512 7e6ae36b37c9fd322456312504156c8241852e07a2a23de6805eb2328b61b9f42b839d04b839f9d97623195721308437a1163a25071ca2af0d00a6417da74822
EBUILD flatbuffers-25.1.24.ebuild 970 BLAKE2B e627ec31b1665b711b5ead682e1a9e28b51d2cd7a6545b75b23ec93f9f3eb6670a531ec153d02880ed65e40e2e5413656d1e101e9b1b147a79258dd897d5e084 SHA512 5ce91cc6e98b5de8e1793e0df5998ff5ef436f85a11ce99dc1732fb3580282de34792032faa61834c0155718d84203eb863142b3ad916159e1dafbce158de10b
+EBUILD flatbuffers-25.2.10.ebuild 974 BLAKE2B 1564463db04b8574395c3fd9c98d80a75a4e5d90ef908ab0e2a85b6a4cf7130aa26cb5d447ed3fdc3798ca538627a0c5394ab951470c92802992c9ae26334001 SHA512 339ec07fe3ef97704a73189a3e9dfb2fa346ecaeb286cc17ec16b2a36b52d090175d8d6b2b4947dbc3ec4aec9adbc8a8fee732c782ae6050d8a76db02aa52019
MISC metadata.xml 397 BLAKE2B 2407f1c42b05c20ddeaf0ddce303c24604be89323c35c68a0770b221f44c4fe9e0c6580e7d5f9e50d3e263f81b26935c250e45634279285ebf2c5d327220122b SHA512 635f3e14f3aa038bf8b2b7bf321e48fe4496048a11b337bab0589bab924135f8b1d216329d9326ba214e1db202ed390722345c69e3260327c2e103f5feb7fa31
diff --git a/dev-python/flatbuffers/flatbuffers-25.2.10.ebuild b/dev-python/flatbuffers/flatbuffers-25.2.10.ebuild
new file mode 100644
index 000000000000..32ce725a5a38
--- /dev/null
+++ b/dev-python/flatbuffers/flatbuffers-25.2.10.ebuild
@@ -0,0 +1,46 @@
+# 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..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="RFC 7049 - Concise Binary Object Representation"
+HOMEPAGE="
+ https://github.com/google/flatbuffers/
+ https://pypi.org/project/flatbuffers/
+"
+SRC_URI="
+ https://github.com/google/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/${P}/python
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ cd "${WORKDIR}/${P}" || die
+ eapply "${FILESDIR}/${PN}-24.3.25-numpy-2.patch"
+ cd "${S}" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ cd "${WORKDIR}/${P}/tests" || die
+ # zeroes means without benchmarks
+ "${EPYTHON}" py_test.py 0 0 0 0 false || die
+ "${EPYTHON}" py_flexbuffers_test.py -v || die
+}
diff --git a/dev-python/griffe/Manifest b/dev-python/griffe/Manifest
index 7b5a0f572f36..9fd574888dac 100644
--- a/dev-python/griffe/Manifest
+++ b/dev-python/griffe/Manifest
@@ -1,5 +1,5 @@
-DIST griffe-1.5.5.gh.tar.gz 393243 BLAKE2B a365cd210d3c11ea3e327bd38298a81b4849f0f902db949c84a4e745766753191df461cf6309abd0c3f3bc340f9cc5303484549acd7c3666595bfec600835f9d SHA512 49757656dd7ddbcb648329fb92d21742c69d13ebe49e725d70c945726833236f128851434a0095d725e4e74624473bc86948094d2d86bc898296bd860569b6cc
DIST griffe-1.5.6.gh.tar.gz 393058 BLAKE2B f1c425e2f256e14e19e1b9c0e93e46d3fdcc79c82285c2163cacafc2dc0ff326805222f7097f28d7690ffbbd248733603387b3db16c068d581979bc18447fa11 SHA512 a65ed6569503e4b2b57bd7779e3f8b3d46266cf4c0dceeddf6b60db6479d417bb9527a99968e2913b153e45ed9f060d47c2497863daac6b413c10baf95756590
-EBUILD griffe-1.5.5.ebuild 1096 BLAKE2B abc282edeea6efa118dfa029f7e91ec6c02ab1cdd25ecd6f4643dc41cf2444a6e3b3f2a4119bdc94c6f2cd03a4d91f595d19d00cb3975588001c7d2d5408728d SHA512 410dbdcbf3f716f858fc7427022d9435a39bc450346774f61881366946fb9be99ff98598eccfd0586cfe96add38bebcaf2967c09a8bc910cc52d08e62462853f
+DIST griffe-1.5.7.gh.tar.gz 393455 BLAKE2B d294a62e131ce5276c52e3f11adef5081c10131156cdb3c112761569d3776091e1c1dfea445252cc3595572baf1caab416ff510d89f84a4511d147f1aa36b762 SHA512 cfea773780a645f92f8ad32b0f2e682561f63cf3082f2e24bd1f944f1a907b35db15883cb7df726d34e03373e73fe5e855f3d00a455cc01cac265bced822b4ed
EBUILD griffe-1.5.6.ebuild 1096 BLAKE2B abc282edeea6efa118dfa029f7e91ec6c02ab1cdd25ecd6f4643dc41cf2444a6e3b3f2a4119bdc94c6f2cd03a4d91f595d19d00cb3975588001c7d2d5408728d SHA512 410dbdcbf3f716f858fc7427022d9435a39bc450346774f61881366946fb9be99ff98598eccfd0586cfe96add38bebcaf2967c09a8bc910cc52d08e62462853f
+EBUILD griffe-1.5.7.ebuild 1105 BLAKE2B 470bcc736e908e622f81ce62ecf3b5fb0f69321d7271b9b1546ab75b0d21714f233031469637b6a1a74ced244f5e3c092a2521c8bb9d5a854badefda1a1d26d1 SHA512 f434e32d0340513f07098164923ca2a5058567e4601bb0e2a1772f7a1da4f85733997ce5e81b5e7dfe78d9ebc12bc044f9faa5518d3411e79705bc77f55cd49c
MISC metadata.xml 393 BLAKE2B f207ed2887879f849db9133aac5b82d507a5c6fc3fed0b931dd0aec5ec8d48991731a15825c7b51d82f1f148c2f6818e3102e963d3342aa248bd475d4b29a692 SHA512 b541674c9f9bf9e356d46de91673e384f50ade9b6f19b0218f03b6e307dde88df2d0078f202bc0a77e18b0d91e89cb6d36ffdac23689ef35306167619404dc01
diff --git a/dev-python/griffe/griffe-1.5.5.ebuild b/dev-python/griffe/griffe-1.5.7.ebuild
index b90f3d687486..9b75031cdcd0 100644
--- a/dev-python/griffe/griffe-1.5.5.ebuild
+++ b/dev-python/griffe/griffe-1.5.7.ebuild
@@ -33,7 +33,7 @@ RDEPEND="
BDEPEND="
test? (
>=dev-python/jsonschema-4.17[${PYTHON_USEDEP}]
- dev-python/mkdocstrings[${PYTHON_USEDEP}]
+ >=dev-python/mkdocstrings-0.28.0[${PYTHON_USEDEP}]
>=dev-python/pytest-xdist-2.4[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 6498a3ceafb9..87aaba2d38cb 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -1,7 +1,9 @@
DIST hypothesis-6.124.3.gh.tar.gz 9510786 BLAKE2B d4104ce7cbe009ce1e0d2d6fa04db8d5dda2db08f8dcdaea90d4a111cbcf71db53214a5b06a69ca40715a0999970e45293aad754dcfbd06c1a6e4e04700aee83 SHA512 898567b6e32b619892292c07e95ca57f671e9fcc6925dd560285147491fba72df5fe5c41a3642d3910961ef569cbce8790ea1100359e674f08f5b24522073184
DIST hypothesis-6.124.9.gh.tar.gz 9507981 BLAKE2B 469448e2c97b0a798293d53d2ae1ea328c61c94245245b989a33a3520a903dbb6a4a468192dc7837dfe75bde5d9a010ffb7d4b8f16c7c8462bab8da4f183f310 SHA512 0c0f48a88a748d4bf1fc0763b4e464166536d4d16461f06a2090a2f5f54464730fff8eb7892ff60584c2135853aab7a56253db83dfd90a8e679fa3f37d4fb6a9
DIST hypothesis-6.125.2.gh.tar.gz 9508767 BLAKE2B 2f356f9678c1c8a56dcc66c5f96fee3426860e541e30c52b9108769fbb4112f9f4d8c77a9b9acef045a52749dd9325155fa8790c023f05dbf58608531ec0f89e SHA512 c953eef644a3c3239c2d0ace3eb6c02c7c48bb37d8fba6c6429720c7ab4b42fd76f6e42ee94f543db8d224bfb6912ed5e64feb181c24207a403e307364618843
+DIST hypothesis-6.125.3.gh.tar.gz 9508904 BLAKE2B ce056b2b8d0532ae77ec3e7de68fbe472a86c676250577a9e73c20231d4db781935daacd4c7fbc0b426affc7db74eb92e530b61094d4c3520a14e5823ce5fd9f SHA512 9bef825197660a2d27654c4e0f8923bdaff30ad0a9e2c436bdc5e6e55e2df283c9497c2611e4e3e27b86b6ecccf232eb17f8cbde49e6fb28c4c64368009e6ae2
EBUILD hypothesis-6.124.3.ebuild 2622 BLAKE2B df55cc343dec022a974b612e246553b8e99f95b445de919b38ff05839c0211e82703de7e52c2b86c348a34e740ab922edec47a04d66e8709ef31d6442daa937f SHA512 3e4c5188f836adac8679af690b621753b8f6f0e98f85837a26697b7d540598307c4e675044a557ec07240d6b46cb3f23791e77682bebf27d1a3a83f0b21590ab
EBUILD hypothesis-6.124.9.ebuild 2630 BLAKE2B 8b1352e3d2404bb112fb09c368d7df301ca18bdaa4d74a9f8afc624f1975bd8ab89720f08cfdc04e5cbf1123184aca86903821202d8515b40177b247e365053f SHA512 bb6f24f5ec5694c53856521aff3dada20f263a2d57ce899c227ab250d7f7983493130d8d8ed75300d5f4ef1160103e3e35172febc4c885e6c5a42254eeb79987
EBUILD hypothesis-6.125.2.ebuild 2630 BLAKE2B 8b1352e3d2404bb112fb09c368d7df301ca18bdaa4d74a9f8afc624f1975bd8ab89720f08cfdc04e5cbf1123184aca86903821202d8515b40177b247e365053f SHA512 bb6f24f5ec5694c53856521aff3dada20f263a2d57ce899c227ab250d7f7983493130d8d8ed75300d5f4ef1160103e3e35172febc4c885e6c5a42254eeb79987
+EBUILD hypothesis-6.125.3.ebuild 2771 BLAKE2B bc9963d80f9890b3501eb0da055fd620d9fe0c8040a6be05638fac4a252081d38e664d26b21cc7326284d466d749ca616c99d8989c445248e2c9bac4edd4bea0 SHA512 187db8ee4b0650c2dcfead5d4145edfc1bcf7373729ae96da5dc34e50ce1d20099971d3e7ec52e6f4aaab7c13380b28aa3638105c8747e1aa54d0e25b5135966
MISC metadata.xml 492 BLAKE2B c9e9bbd59af55d1f47e5b7a86933c02b47f832122d03eaca56bd3ec9476cf260d91d4fd2da5068845d4525b7cc9f702b515e8d6a0dffa7923f5898cfd44e12a1 SHA512 166b33d6ac887f52d54fb9d556102038c00650a597d2de1c3aad3f8b5e136e9b6b7db31f05f3379435e4c5f943156d5839d78fc95461af411037a3162ea6705e
diff --git a/dev-python/hypothesis/hypothesis-6.125.3.ebuild b/dev-python/hypothesis/hypothesis-6.125.3.ebuild
new file mode 100644
index 000000000000..3ab9d7ec9403
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.125.3.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_COMPAT=( "${CLI_COMPAT[@]}" )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ ' 3.9 3.10)
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin
+ local -x HYPOTHESIS_NO_PLUGINS=1
+
+ # NB: paths need to be relative to pytest.ini,
+ # i.e. start with hypothesis-python/
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # failing due to warnings from numpy/cython
+ hypothesis-python/tests/pytest/test_fixtures.py::test_given_plus_overridden_fixture
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # TODO
+ 'hypothesis-python/tests/cover/test_reflection.py::test_clean_source[case-5]'
+ )
+ ;;
+ esac
+
+ epytest -o filterwarnings= -p rerunfailures --reruns=5 \
+ tests/cover tests/pytest tests/quality
+}
+
+src_install() {
+ local HAD_CLI=
+
+ distutils-r1_src_install
+
+ if [[ ! ${HAD_CLI} ]]; then
+ rm -r "${ED}/usr/bin" || die
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ HAD_CLI=1
+ else
+ rm -r "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/josepy/Manifest b/dev-python/josepy/Manifest
index ea86d94abede..43d95b721b2a 100644
--- a/dev-python/josepy/Manifest
+++ b/dev-python/josepy/Manifest
@@ -1,3 +1,5 @@
DIST josepy-1.15.0.tar.gz 59310 BLAKE2B e47d6cc49d482a60d3856cbe81ca44770019f91e8de416f63162600e0024e635fa3a3b2f1bbb3b16d0273ab4673d89d4c186ed67bac2017bf0b43992613a3802 SHA512 92799e9230f64e7ef37c749cb68c293d1b97e2e14c94e045564e45402ff3363af4cca95a7bbf599821cf7ad9317ca31add6868d3bdb3699ee9c171b415a02e48
+DIST josepy-2.0.0.tar.gz 55767 BLAKE2B 7e8692f209a3fc8eebdbf9e8a92b7065d9ff08121490abe5e61a85efeef3cc5a55ae547d28bbbfcd31faa81293e1abbaa90dfadfb3d3c08b82ba9958c4556df7 SHA512 fa1e255cd5f75b352faa0e25e530a5620af09c518cd1570f9bdc7cb5520fea119279577e95f7fe72bc2bc6f0b543411d2fffb0d639c961094fe311c0bbca1fef
EBUILD josepy-1.15.0.ebuild 727 BLAKE2B 2337d1c4a954a0965ef9aa129f1acb0add376c00412035a1adf0f04cc1407ed956aff6af6171ab26d9bd79292a208eb4c8763bded4bd1199d874e3a17083271e SHA512 c34a8851ecb4628a2d4dfd0f02f7eefafe11d98ae35761f85a8e3b379d963572ce9c64e0e7a933318f51352892f890a02aeaa5f8c1e0fa7833bd2aedee67d19f
+EBUILD josepy-2.0.0.ebuild 684 BLAKE2B 37279a0a8a0a218add9737df3e061ef6c50e069c488098910c3dc152c38741f154574013e5e5c42a19fdaf74fc4cd391abdb71c869e0da0b4851a569b8a16ea7 SHA512 c27875da1fe63990d7fb6f16220fd5512ae16bc8d632f568dea1d71d65a4eafff9cf6d6317ca956e0540ebf259ba31c505293df3479e9ded1b35a4136c7e3ad9
MISC metadata.xml 720 BLAKE2B bfe4668c6be6fcd57f41af649d31ebe5e4d96db8a0d851ca9c8365f42f1752e820f7dcd04da9ab974f8e9c99ab443bc7b516005ca510f4dac9390616b9135269 SHA512 be0b55bee1d51c91cda3893a2751ac9e8440b61c106daa9223ac6ecb3cd20e06b41dbad892e0e647e899a7a1eef1e985f29ea9a355a8c0d50524f599aec3cc88
diff --git a/dev-python/josepy/josepy-2.0.0.ebuild b/dev-python/josepy/josepy-2.0.0.ebuild
new file mode 100644
index 000000000000..33d53ff6e135
--- /dev/null
+++ b/dev-python/josepy/josepy-2.0.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="JOSE protocol implementation in Python"
+HOMEPAGE="
+ https://github.com/certbot/josepy/
+ https://pypi.org/project/josepy/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-1.5[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # I haven't seen a single switch to poetry without major bugs yet...
+ sed -i -e 's:^include:exclude:' pyproject.toml || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest
index 9cb54a4ab072..1d13667d279e 100644
--- a/dev-python/lit/Manifest
+++ b/dev-python/lit/Manifest
@@ -13,6 +13,7 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-1f26ac10ca1bef40a80be8f81a6f109713bc586f.tar.gz 226424755 BLAKE2B 642befb8d6923f335d1d68129ebb7357f8ba22e110df494dd956c8097e4e5db4b2a88fcc069ab67184b03558f072c68e002bdaf90eba865e38b1473a0ef29eed SHA512 e9bb4fd31bbad5ec864c662515b5ec2e5511cce975040f9f3cd8f009c92f76077928feae0467fd9519a001a379c857f7539c506953d8d5a9209a9f358f414aac
DIST llvm-project-20.1.0-rc1.src.tar.xz 147144668 BLAKE2B ea4733962f38ea5897c73e91840818921739909c3671749bc8a0b1d2798e5a0815bbe750ade3a2a7414836ab7158754818b2f9370a4ee1bbbd52c96b1e95ef9b SHA512 c23c4b1227b6b0b7c3059358e64a00ee98893236bb1a0a41d7e821bdf2aa8353aea8f9f7b9498899c6807b9b8e2ceb06c3cd62e32fd07a786a319135055541b4
DIST llvm-project-20.1.0-rc1.src.tar.xz.sig 566 BLAKE2B 32eb278ec4ff1bb9d258b584922b0d227f4126a957ba75af44dcaa63b6a12ef73db56d6a86f24244af47803ddf6a243149d784f08137cbea60b49700be537705 SHA512 d7a334326201f8ca78284b33c325f180538667a0401bc30931e790aacc96dd78f6559c45929b6c335d40ef1dbe772738c0ce55d881ae3d7401733778b485408c
+DIST llvm-project-2cd8207b26ea4269630feba661f68554d7ae3c15.tar.gz 227261597 BLAKE2B 51ce992b651fcf08b7fd520420040803b59f1260947953325400c50bec576c418b162d8ae2d2307e70b885b1185c302a97409bcfe48cdb14b8e1384f4e2dfa9e SHA512 a41749943508ea4a18b47c4e947917b5268544e64372c0c3347f9ab8172a2c229d8b1d813d1e842be1b98aedd624524857ed3bb23fe98ad5f36e7a71581abb4b
DIST llvm-project-6f241e36831927e3aea113cfc017c34fdeda340a.tar.gz 227203285 BLAKE2B 8d5e424c1836acc82ea766cd2cef104593c44d197ebeb64f18dbe74b1b5baeb4bc84084f5b68bd87ac36f7df25689dd2522cb6674a97da4f96f4f10f7bae5b06 SHA512 2b6e4bd6445eabfa3ace9b45d20797c7afc23f4553a8938399aeba227e3b8ca6a53a7d7762925a845bfed031c37af692b9c08180fbab80db2f3166940e560077
DIST llvm-project-bfa7edcc6652bdb37d53e0cec64926aab3f280eb.tar.gz 226735989 BLAKE2B 165837dc526e618b44c49d5fa3dceda373452e010a09746bff248903fe77874637d05ab9f5d2f63de7ebce5c14e3b19a131313a4a557adfd20fe9cb93ab60476 SHA512 e9e19176fcf1302727ee34d69eaa820b94959d64ceaf754d8a93ebd5e262cec7fe35e87b08f705b09e42c3ea26b671318eecf10e9137c635b12f481f80fbac23
EBUILD lit-15.0.7.ebuild 914 BLAKE2B 84b2d09fb6babb142fe747be241c7a66156ac6fd222d1cf0e9a8e8ac4cfa0602840d3a8bbe0335995ba89f5c4b87d28894fc2a89bc0a894e53b8d0027c9a9a17 SHA512 11fe0b56f6d92f6d4755edbd724f3cc489d2460c55840ec1911bbbfadbc8ac661f41f2830b3399858d361caca106ff8bd5fecf02a13698d0e5093b37f972db80
@@ -26,4 +27,5 @@ EBUILD lit-20.1.0_rc1.ebuild 961 BLAKE2B 011aefa40e4fb39da08a33390910fd4115a7eeb
EBUILD lit-21.0.0.9999.ebuild 961 BLAKE2B 011aefa40e4fb39da08a33390910fd4115a7eeb681dcd60a5aae7bbafa3d9bfe52b02eb3d6ab06a8cf2e3f5ba39cd0c1d6caef17210d3c256cf40539f2e6c1a7 SHA512 ee2428960413d2baf441674de3f585cb41af0b37da6cd0d14391fddd641e716a7a22592891c9b75ea26d88589beaaf670b44af6b0a20951b2d672dd99b9eef63
EBUILD lit-21.0.0_pre20250201.ebuild 961 BLAKE2B 011aefa40e4fb39da08a33390910fd4115a7eeb681dcd60a5aae7bbafa3d9bfe52b02eb3d6ab06a8cf2e3f5ba39cd0c1d6caef17210d3c256cf40539f2e6c1a7 SHA512 ee2428960413d2baf441674de3f585cb41af0b37da6cd0d14391fddd641e716a7a22592891c9b75ea26d88589beaaf670b44af6b0a20951b2d672dd99b9eef63
EBUILD lit-21.0.0_pre20250208.ebuild 961 BLAKE2B 011aefa40e4fb39da08a33390910fd4115a7eeb681dcd60a5aae7bbafa3d9bfe52b02eb3d6ab06a8cf2e3f5ba39cd0c1d6caef17210d3c256cf40539f2e6c1a7 SHA512 ee2428960413d2baf441674de3f585cb41af0b37da6cd0d14391fddd641e716a7a22592891c9b75ea26d88589beaaf670b44af6b0a20951b2d672dd99b9eef63
+EBUILD lit-21.0.0_pre20250211.ebuild 961 BLAKE2B 011aefa40e4fb39da08a33390910fd4115a7eeb681dcd60a5aae7bbafa3d9bfe52b02eb3d6ab06a8cf2e3f5ba39cd0c1d6caef17210d3c256cf40539f2e6c1a7 SHA512 ee2428960413d2baf441674de3f585cb41af0b37da6cd0d14391fddd641e716a7a22592891c9b75ea26d88589beaaf670b44af6b0a20951b2d672dd99b9eef63
MISC metadata.xml 340 BLAKE2B c9ca851e49b4ab48c015686e983ec988f60c34ed0af77abd7bc03d046002f79f74b9b463ecb97db89f2230c1593af7acdaf6651fc51fed4aa92a459d07aabf18 SHA512 3fe8262ce6b971364162fbdbac3b02bf02f0a64896c8a2564e2a2998bd6e6bc74463bf9104e3f4ffaa9f5c1a16c877fc864b8a4f056ca0022f741799bc00f217
diff --git a/dev-python/lit/lit-21.0.0_pre20250211.ebuild b/dev-python/lit/lit-21.0.0_pre20250211.ebuild
new file mode 100644
index 000000000000..3dfabbc0d46e
--- /dev/null
+++ b/dev-python/lit/lit-21.0.0_pre20250211.ebuild
@@ -0,0 +1,45 @@
+# 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..13} )
+
+inherit distutils-r1 llvm.org
+
+DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Tests require 'FileCheck' and 'not' utilities (from llvm)
+BDEPEND="
+ test? (
+ dev-python/psutil[${PYTHON_USEDEP}]
+ llvm-core/llvm
+ )
+"
+
+LLVM_COMPONENTS=( llvm/utils/lit )
+llvm.org_set_globals
+
+# TODO: move the manpage generation here (from llvm-core/llvm)
+
+src_prepare() {
+ # flaky test
+ # https://github.com/llvm/llvm-project/issues/72022
+ rm tests/progress-bar.py || die
+
+ cd "${WORKDIR}" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x LIT_PRESERVES_TMP=1
+ local litflags=$(get_lit_flags)
+ ./lit.py ${litflags//;/ } tests || die
+}
diff --git a/dev-python/mkdocs-autorefs/Manifest b/dev-python/mkdocs-autorefs/Manifest
index c8b31f57a793..0e8eb93f8d29 100644
--- a/dev-python/mkdocs-autorefs/Manifest
+++ b/dev-python/mkdocs-autorefs/Manifest
@@ -1,5 +1,5 @@
-DIST mkdocs_autorefs-1.2.0.tar.gz 40262 BLAKE2B 5f066c3a3b917eeba7c45c013ecf3067f4b669fd1a74b4471dfb1df20c2eab67909e99470822a986b0632b97ab81d9cb8db67e32816721beafbc7d2f02a3b881 SHA512 f0be27246af229a3d0b5daf33083dba0ddb604ded1624fb28fe1f5f2d120669975948e620ee4f3dcde48af83199fe1cfb96e37db74ff60825bc018206fb1ce17
DIST mkdocs_autorefs-1.3.0.tar.gz 42597 BLAKE2B a07555f714578b2a88d98ed4201542a23fd0ed4f5b686cefe9571cf876e02c5f949fb92d2f02ac6e13d4d234afcc648bc52078b4ad18c2f372b1a5f9d719cf68 SHA512 a140f4ce6fa2e2b5a6174b7ad808ee300819d5edf4e8b421faa09de8bfaaaa450d04aa9c9bc3d1aeea4cf27fccdfdb04a504f4101e7e1200c6a62111e036912d
-EBUILD mkdocs-autorefs-1.2.0.ebuild 776 BLAKE2B 433325fd3b54cc98a6f4fea7ced7a5cf538c4ea095978e7ba1624fc675d51f9b09f19b69d5ad42b0f9cd67e7fdc53b17440d76457633d3fef224d35c1249279b SHA512 72a059443afc76ce78577f90974afd94ee5220f0f46ac3f5b36130143f3794a3b6607ab7f08534681e4aca6cfb08c90da867d7ee405d92348d6089242b1039c8
+DIST mkdocs_autorefs-1.3.1.tar.gz 2056416 BLAKE2B d66e83103b7380c5f3d3496e418b8f42c85c1f4d02f65f0c2bb0a8808cdf3ead3470fa627175c82fb097de3cd059c27be082e5fe9ae7e808843c1622d0f894e5 SHA512 a21b98d8ce4b5e5157bf8cd5416ac19ebcca5234342b3d0b9d3983a95de3e14c347670654cccc81d8971d06bdebafb3536aeef1ea156d3c73235dc917d841b20
EBUILD mkdocs-autorefs-1.3.0.ebuild 776 BLAKE2B a96735065c87971e472e82b53ce80637bb2b977bec6bb08e7263d63e3434c79c7e415880f64dfb2f246fbf9e533bdb0a04877488c898b25996f67f4874c2d936 SHA512 6019543e77cf2e94ffdbdbc225f443bf0d904031c653abce66c46f4bf97efc46bfd951b863d0a1f20d6ff5f53a3496916a9a30de02b7762dac4f03c2bd6e259a
+EBUILD mkdocs-autorefs-1.3.1.ebuild 777 BLAKE2B 9134b84fb2b7b2f93d4c71073938c1e9a1ab4ca1cd6435822e4778019effe5007d5a2f6a2d1de0523c31d4698f9dc181fbf27a3b0a60764d9e8a41a3329daec5 SHA512 8ed41b7ce47164ab45ad47bb05e21679e5fb918320ebd71af8c08b2668fd627942547a2489b06a3b49c920d3f64aa67ea46a0345c955679ea97f6a845e1cfe42
MISC metadata.xml 404 BLAKE2B 1e2acd4d6b7e4c577e28c4663d9515f07b4e9ffc335f24983470b6c8c229da988f8c3786f1acc74ae49664bd3ad8423b933a823a98834706459521f16d0b2a68 SHA512 633bc49f6524e54421eb515d8c558cb4b0c8ddf1e6dac89546ce4caa1fc9c17741adc033f2e22f5729347d321a5a02498c89b0487981e31c1b1246543c8a63c8
diff --git a/dev-python/mkdocs-autorefs/mkdocs-autorefs-1.2.0.ebuild b/dev-python/mkdocs-autorefs/mkdocs-autorefs-1.3.1.ebuild
index 97383ef46311..6f7d287cbe34 100644
--- a/dev-python/mkdocs-autorefs/mkdocs-autorefs-1.2.0.ebuild
+++ b/dev-python/mkdocs-autorefs/mkdocs-autorefs-1.3.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -27,7 +27,7 @@ RDEPEND="
BDEPEND="
test? (
>=dev-python/pygments-2.16[${PYTHON_USEDEP}]
- >=dev-python/pymdown-extensions-10.0[${PYTHON_USEDEP}]
+ >=dev-python/pymdown-extensions-10.14[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/mkdocstrings-python/Manifest b/dev-python/mkdocstrings-python/Manifest
index 81bd375a48ad..d7aa77c71620 100644
--- a/dev-python/mkdocstrings-python/Manifest
+++ b/dev-python/mkdocstrings-python/Manifest
@@ -1,5 +1,7 @@
-DIST mkdocstrings_python-1.14.5.tar.gz 421738 BLAKE2B db34876db6c15438141ad845eef72ff0dd4c352bb177342c5a49cf9bb77ab8e61189ca7f3bf85f0ad3756857ca7e446474b95b099d2172cf8f010451ce6f0ebf SHA512 a33e6a3e0fb7b3564d5bcb48575f58d956a570dac4e3f6b34f7b1c85c724573efd6034da1425403a1aed62257a278a11b5bc214fa18c8642ebf42d9614e9e70d
DIST mkdocstrings_python-1.14.6.tar.gz 422060 BLAKE2B d5bfae63338b282ec88c70abce944ab6a866ac0fbf444de741f2dd84be6b6c5f37c22cca6fcf187dba773378f6fd518150c0e56a1dfcf0b6852706c7a9729323 SHA512 cfd8612827c7fd1329d7692c666f1e9925e71e2be0ab221b2c5f5f92bc7e4e3f1e2c0dc244a9162df36b8bdd9f8e8d0ddd0bb70fa53bf0c3f294e72a18faec26
-EBUILD mkdocstrings-python-1.14.5.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
+DIST mkdocstrings_python-1.14.7.tar.gz 422162 BLAKE2B 7e1468baf7e53a71da406a62c3903dc937c3036321ec27448219ce6f338bf5a164c273694da229282d1c32655b3ac35b679f7c9bc3d168f97859f1bbeffa986c SHA512 e5e8db2c7c155a005e34732aa42574b5c62b229077193e6d02106c81d672398f8e3cd1cdb80532f545bec23db0390e8c920a1b2dcd2dec404deea35853d54829
+DIST mkdocstrings_python-1.15.0.tar.gz 422613 BLAKE2B f1b73e627f9bc4b49635d8681046b6b2ec43fd8b3213ec42f9d88a90a4c49cfe414bb44352dfe2f8fc7b77a0189dfe3f0b6120730d31d42c5d5d1a3813fff61d SHA512 0b007404d6d9e2d81946908e3e91451c1fa51e73ce5eb056ffb8d61e9163cbf9fb23bc16e45f409d9a16053ebc76a9403f46feb8ea5f068740bd7fa239bc8607
EBUILD mkdocstrings-python-1.14.6.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
+EBUILD mkdocstrings-python-1.14.7.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
+EBUILD mkdocstrings-python-1.15.0.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
MISC metadata.xml 406 BLAKE2B c453b318ec32906f8b4917e9fcf9e82e632b780435d6617195590757dc8e08505dd29a05e8009808a040460ae322048801077aca8b41c8e07d093c4177befd39 SHA512 c56a8b222d22b5e4e8f396a96abddba840c4288b01958e261e3eb554830e88f424d840b839b7f6180f2f64c74cde9e2e3e8c70cdbbb8d4cc84ac161007064059
diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.7.ebuild
index ac1edc64eb1e..ac1edc64eb1e 100644
--- a/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild
+++ b/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.7.ebuild
diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.15.0.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.15.0.ebuild
new file mode 100644
index 000000000000..ac1edc64eb1e
--- /dev/null
+++ b/dev-python/mkdocstrings-python/mkdocstrings-python-1.15.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python handler for dev-python/mkdocstrings"
+HOMEPAGE="
+ https://mkdocstrings.github.io/python/
+ https://github.com/mkdocstrings/python/
+ https://pypi.org/project/mkdocstrings-python/
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/griffe-0.49[${PYTHON_USEDEP}]
+ >=dev-python/mkdocstrings-0.28[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-autorefs-1.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ >=dev-python/beautifulsoup4-4.12.3[${PYTHON_USEDEP}]
+ >=dev-python/inline-snapshot-0.18[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export PDM_BUILD_SCM_VERSION=${PV}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # "None" meaning particular formatter not installed
+ "tests/test_rendering.py::test_format_code[None-print('Hello')]"
+ "tests/test_rendering.py::test_format_code[None-aaaaa(bbbbb, ccccc=1) + ddddd.eeeee[ffff] or {ggggg: hhhhh, iiiii: jjjjj}]"
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p inline_snapshot
+}
diff --git a/dev-python/pydantic-core/Manifest b/dev-python/pydantic-core/Manifest
index 66ea8e7cb795..0c00e6f4559f 100644
--- a/dev-python/pydantic-core/Manifest
+++ b/dev-python/pydantic-core/Manifest
@@ -50,7 +50,6 @@ DIST portable-atomic-1.6.0.crate 140689 BLAKE2B c91d06e04a87c9a207233d8a850859aa
DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6a3885a6269740a23359b41bb4099ac2484565d3b2b0936261689ca525785ac620c766997234fd8d0f409e80e5ea3 SHA512 1cdb7e22a35ae231d880c9420784c9acf97bda2db258b3d34aae5061dc1858449defe19a49e12c6a4173906aa72a4115059ac2db0fc760205fd2ab8b5b414434
DIST pydantic_core-2.23.4.tar.gz 402156 BLAKE2B af899e149693907542296b5b4fa5f982d2dca5c090331703212aabbbce0a8e0badca3947affa9e42998949ebd18b1ffc2ad9904b47e130bbe7e90150c32bc527 SHA512 c7c9a303ff3c751108622f804f812f3793ad93a95e560b0d6b0a866c3bd41ed7bfdbcd87483f37ad3849969c72adde24083d1a9015ebd610847a7fa6d4068e24
DIST pydantic_core-2.27.2.tar.gz 413443 BLAKE2B 2755ba694b17894ff89704203c275315dc6a600e5e89965f24800ff032802168a9fa5bbb26e9714dae42f645e34e0ac32191415fae04bd53a8d04c41f1d3e2c4 SHA512 4e0bc0137463d3a76bb584da76751916ddaa18383efbe15a303880649df67de22c67a8a6e5f889c76292c4557914811d942fd3373dad65b63d9fb1f84f34ce3e
-DIST pydantic_core-2.28.0.tar.gz 414268 BLAKE2B 2ab1ae77ca8e602b2aca847c6869c0b3d7031d98673e088309432295b6b4bcfa03325593d9ebd5ea7acd2aa407cfd356261b2940112f0bdc5265e854c0aaf18f SHA512 5bd10741110d50039377b0a66e0487a148f447303c446691187b7f4b3026c8646f333137f089aee76f492b73f571f5c96135a58bbb3b64aa7c8ab3022521b796
DIST pydantic_core-2.29.0.tar.gz 417255 BLAKE2B 0803d8fa6bc731b8c58184228abf015ab6608ffdf351cd6bb8bf78ed2da0b2af14899a2c4ed4a29132a1ba2c2a67bdb3519e13ea857ef6a8a1576d7661c8f03a SHA512 a41ada88f70b04362edc3e95fe34c71814291f5eec4260193fa6be69f219ae52cd60ffc55dae9c7b43c75afc107a114e400c4a3fc697520e57ed39c0b8794560
DIST pyo3-0.22.2.crate 538342 BLAKE2B faf347695117f9fe0ebe5cd7f6aa1b0dcfe718343875d6c06438046deccc1075f104d2a2413dcda41ae9827bc363aa147057b45968f6634f577a6a4510a4bb8e SHA512 e8bae09059f50ffe477dad44499cedeaf3a734665f0fd8e8bd4b44f48578d21e4bdb8d55ceea00c5a27da750761842ddf89cfcecdecb2e7a4a17ab192259be9c
DIST pyo3-0.22.6.crate 546746 BLAKE2B 2a6f8c5ce2ee96e1812177a11c5fad7e15f3a73d9e30850edf0855b13db6cc95427e186883b4aae25a2d2466d3fe82f56180a39f3e6e0a54bb0a3ef78d495400 SHA512 d746007eae22f5b7bbf173759c61cbd2aa893898d88b8be5680a0237deec4d113246edf5f62fbbec3579ad4bd7307499b94b887ec306112ffe3df5190fe70e44
@@ -87,7 +86,6 @@ DIST serde_derive-1.0.214.crate 56630 BLAKE2B c284561109e5d60e103f1bb421e4da48f3
DIST serde_derive-1.0.217.crate 57749 BLAKE2B 63b4930122d80d64492ba2718630513012202e42bbaa74510729ee66a0e72b8a1ad123784b479697ba562db43868f4bddfdf5e94bb3d744cd68a547471ba40aa SHA512 31020f4533d04b31ae125580a3c5093fad36438d324e2d9b063923aa8c125c654102ae7fbc3b3df892bb41db6b321962a23e0a37950e080055d715d15b18af76
DIST serde_json-1.0.128.crate 149520 BLAKE2B 246eb865f64a0f161b79f3d4f783dbadbc930c4a19edb6c0fe8f0c6145c7c47be4b692d3e084b1b500820ece8e94214820978cf898926dd805bd431fb411bbc9 SHA512 9e6290d3a6a971b3c37bbc97097b8179e64c655779b43c7b75303a35ef7030f5401b3a5f62cbc95a7bd5f42ecbefb0b469234d78a76c8c1597726d8e08908a7d
DIST serde_json-1.0.132.crate 150549 BLAKE2B a49aef7737fad2e6f6ec79cb6da00c734e7de7ef16be321846d1f6229534b58e15ceb0f6306eeae6f85bf07431d82959c0a56ed1394d21a67b65c8c48e971f3f SHA512 9d157ce7d705fee8245569e7c577310782b69675a6e459f21904544b824a1ca5c9b445d17419fee438dfeb6fcc35343ba14e022043fffade0210b6d2c1b5795e
-DIST serde_json-1.0.134.crate 154351 BLAKE2B 546f8ffe9373444e8c9e81910476da281dcef10498dceabc8bec9f9063c55f4a9033b83586a09b0f410369515882c37712a2bd75ff1fff05815d904f37386124 SHA512 ab6323799bf19da8ec6e6c428370d37cd230192b45ef54d2c65c7d83907b2dde71d51650e44f1fcca1084e75e0e195e97b28437f53a331bf48effed3d59b58a5
DIST serde_json-1.0.138.crate 154769 BLAKE2B 42f146a688dda70f3afad1a6ff989823f2e2cf4037c2a4d019b87155c7e37d86f649f2a54b373b787ac9021e42ac3be5fc27ea975b62e08865802afb993196bc SHA512 31678f1289301d65a088b305726c4fa6b5cd17b01527abc8dd7fc09720c98b2e86bebd5b20d7e9e7b7e41c42829db3a7e705172eca20d0c333e6c09131e1fe09
DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
DIST speedate-0.14.4.crate 33077 BLAKE2B 001a3329e90cf3dc5d8c4db870c3b5339e189190c8b7a89c262bb19efec02c9e42eeba0dd5d12a940a6fb3f8b10385aa05a72ea6f98230c989c68e0be4fe8959 SHA512 13ff498cb0885ecbe7a6fef96c48bca166a560598206b16b003e1237eafc525a0cbb6b401d060b4431a50a9638df88b7ae6834d8980f6474aea88cfc827ec329
@@ -129,6 +127,5 @@ DIST zerovec-0.10.4.crate 126398 BLAKE2B b078784d6f178bbb9de1c3c1b6c7ef996f00bdd
DIST zerovec-derive-0.10.3.crate 19438 BLAKE2B 9f7df8a4e4a0b62ab25aed967b26509db4bcc5d5b10b3bd73305099a4c49a60be8921484ced1a34d9b7ae30ffa5abe789686f432416a8f1cfc07de1db1dff594 SHA512 caefbffeb35265db9f74933bf07109d57f0da48156cafd4f330af78a5c7eb9ab0831a80789ad4fb119875ebc6cfd7e3de68c9984b77dca5151f9be41f1ae6e09
EBUILD pydantic-core-2.23.4-r1.ebuild 3490 BLAKE2B 96ba2a7936efbbfe0657376db51e9cc58d722bcac72f8b858dbf84bdcee7b5dfc3bc14641a570ac243213ef38c07b68055986c0796e03702eee75329c9628cbc SHA512 2e8b491fef446bf256a909a09409a581b65745e38633bff28083532d250d86f0e2ee7e4a45774d35063be53dcf5319fa5bf7b9819930af88008c3dff87926d3b
EBUILD pydantic-core-2.27.2.ebuild 3540 BLAKE2B 52044421e8b818ccd9be4da548b57634b894bc728bf03a310d3c44dbfab7db6db2c7d2c1fe44137e01d607dc97344e3df505af75bcacd741f15c2632e8cf8be2 SHA512 7cc2c49a990b37cd2b7e0b3e007b4ba2d1620e187190710570035c46d8a65b0d52a7aee8869f50229e9c0e9cc0cee063c55c9bb4c2785f8d5dde47cb45eb800d
-EBUILD pydantic-core-2.28.0.ebuild 3567 BLAKE2B 016e8255af1f4220d492d5604418df54e7433198ee69ce85e76b75c437c13ddb94fb364ba0105afb2ee52f4a4ef4f7aa66f7a06ced17fd13b6735142cc5da781 SHA512 31cd97b7b8a0eb0f627c7d91cac13f62d023ae9179c5c86ea39c9ff7020cb5168a424aba5eec1309405fabf3bc9581b2d506565cd1b49f25b6e517d8a8b5b66e
EBUILD pydantic-core-2.29.0.ebuild 3579 BLAKE2B 772f5c239a6a5643732bde7aa7dbec3cd03df09fb1d52180ea33ede272a78ce2bc13ccb37fe11914abc687c9de2e767a6af234f2e7a8d889e5858e7b4f043698 SHA512 6fc0d7207c53da719c57642d2edcf68f128177e1be738a69924bd741b2a1e201c1437c119bbff108b654916d54c96c7c5a7a368c7a5a3643f08d1d57cdccd438
MISC metadata.xml 379 BLAKE2B ac0fa1abd0aac6436f234dfbfdb1517cdef2f7636c019a16257619d1a1a95a31b67061daa6606b47b68332d03bd213fa9bf67017b0e4af9733a26ab4828cf206 SHA512 7e3b5785628be025efc5360924e31a5a5becab941c9db255357b966dd5d3aca733e96485e92e78533bcde95379c59c36a601d4b407550c5ff1c649f09c3a21a6
diff --git a/dev-python/pydantic-core/pydantic-core-2.28.0.ebuild b/dev-python/pydantic-core/pydantic-core-2.28.0.ebuild
deleted file mode 100644
index d7d6b90b2ea3..000000000000
--- a/dev-python/pydantic-core/pydantic-core-2.28.0.ebuild
+++ /dev/null
@@ -1,168 +0,0 @@
-# Copyright 2023-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=maturin
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-CRATES="
- ahash@0.8.11
- aho-corasick@1.1.3
- autocfg@1.3.0
- base64@0.22.1
- bitvec@1.0.1
- cc@1.0.101
- cfg-if@1.0.0
- displaydoc@0.2.5
- enum_dispatch@0.3.13
- equivalent@1.0.1
- form_urlencoded@1.2.1
- funty@2.0.0
- getrandom@0.2.15
- hashbrown@0.14.5
- heck@0.5.0
- hex@0.4.3
- icu_collections@1.5.0
- icu_locid@1.5.0
- icu_locid_transform@1.5.0
- icu_locid_transform_data@1.5.0
- icu_normalizer@1.5.0
- icu_normalizer_data@1.5.0
- icu_properties@1.5.1
- icu_properties_data@1.5.0
- icu_provider@1.5.0
- icu_provider_macros@1.5.0
- idna@0.5.0
- idna@1.0.3
- idna_adapter@1.2.0
- indexmap@2.2.6
- indoc@2.0.5
- itoa@1.0.11
- jiter@0.8.2
- lexical-parse-float@0.8.5
- lexical-parse-integer@0.8.6
- lexical-util@0.8.5
- libc@0.2.155
- litemap@0.7.3
- memchr@2.7.4
- memoffset@0.9.1
- num-bigint@0.4.6
- num-integer@0.1.46
- num-traits@0.2.19
- once_cell@1.19.0
- percent-encoding@2.3.1
- portable-atomic@1.6.0
- proc-macro2@1.0.86
- pyo3-build-config@0.23.4
- pyo3-ffi@0.23.4
- pyo3-macros-backend@0.23.4
- pyo3-macros@0.23.4
- pyo3@0.23.4
- python3-dll-a@0.2.12
- quote@1.0.36
- radium@0.7.0
- regex-automata@0.4.8
- regex-syntax@0.8.5
- regex@1.11.1
- rustversion@1.0.17
- ryu@1.0.18
- serde@1.0.217
- serde_derive@1.0.217
- serde_json@1.0.134
- smallvec@1.13.2
- speedate@0.15.0
- stable_deref_trait@1.2.0
- static_assertions@1.1.0
- strum@0.26.3
- strum_macros@0.26.4
- syn@2.0.82
- synstructure@0.13.1
- tap@1.0.1
- target-lexicon@0.12.14
- tinystr@0.7.6
- tinyvec@1.6.1
- tinyvec_macros@0.1.1
- unicode-bidi@0.3.15
- unicode-ident@1.0.12
- unicode-normalization@0.1.23
- unindent@0.2.3
- url@2.5.2
- utf16_iter@1.0.5
- utf8_iter@1.0.4
- uuid@1.11.0
- version_check@0.9.5
- wasi@0.11.0+wasi-snapshot-preview1
- write16@1.0.0
- writeable@0.5.5
- wyz@0.5.1
- yoke-derive@0.7.4
- yoke@0.7.4
- zerocopy-derive@0.7.34
- zerocopy@0.7.34
- zerofrom-derive@0.1.4
- zerofrom@0.1.4
- zerovec-derive@0.10.3
- zerovec@0.10.4
-"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Core validation logic for pydantic written in Rust"
-HOMEPAGE="
- https://github.com/pydantic/pydantic-core/
- https://pypi.org/project/pydantic-core/
-"
-SRC_URI+="
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="MIT"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 Unicode-DFS-2016
- || ( Apache-2.0 Boost-1.0 )
-"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-RDEPEND="
- >=dev-python/typing-extensions-4.7.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/dirty-equals-0.5.0[${PYTHON_USEDEP}]
- >=dev-python/hypothesis-6.63.0[${PYTHON_USEDEP}]
- >=dev-python/inline-snapshot-0.13.3[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.10.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-timeout-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/pydantic-1.10.4[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/pydantic_core/_pydantic_core.*.so"
-
-src_prepare() {
- sed -i -e '/--benchmark/d' pyproject.toml || die
- sed -i -e '/^strip/d' Cargo.toml || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- tests/benchmarks
- )
- local EPYTEST_DESELECT=(
- # TODO: recursion till segfault
- tests/serializers/test_functions.py::test_recursive_call
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- rm -rf pydantic_core || die
- # tests link to libpython, so they fail to link on pypy3
- [[ ${EPYTHON} != pypy3 ]] && cargo_src_test
- epytest -p pytest_mock -p timeout -o xfail_strict=False
-}
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest
index d6661093484d..c2274f0b066b 100644
--- a/dev-python/pydantic/Manifest
+++ b/dev-python/pydantic/Manifest
@@ -1,13 +1,9 @@
DIST pydantic-2.10.4.tar.gz 762094 BLAKE2B 0d9f3534df4ae05b2724788944776d0ac95329cfe48d59627e71b4769c7813410d0c64f0d7ca96e28aec8e403b2507873673b87acb230bb12ad5d4f304eb76ca SHA512 1c7bfcc214195d8db0cadbdb177da3e2e3ea596d695360036b0a268410711a780f9a88df622016d9bb6d39596f20e01bebc4cf38bdbe5dc987cb80fbb14aeb56
-DIST pydantic-2.10.5.tar.gz 761287 BLAKE2B f34b8a358a5a0e3839097a47b492eff7e6cea96eb6a77e1623ad1da90b4d13118f4b2c68b076ead91df450d85dfbcab1daebe77c6bdfa1ff9e4a49febf0dc0d1 SHA512 0e8ab6786c94b13fe155501cc1cba357bcf69b40413383415fd7e0b6fcaf5a818aa1efcc67a837c1c3c2315eb8b7b26c3af4b03c3f8a57ff3694955f792d2964
DIST pydantic-2.10.6.tar.gz 761681 BLAKE2B 1ddb057cd40f50d09dc870aae937bc4d5d41529601c26b84bbd5223d75adca43e14e779ef40ef88dbeab3dc66ae960b662a3244ffa38bf8718d6f9d50b966aed SHA512 69c5cdfb9047875497cf2ac0107f0aaa8d1d91a354d514277e913cc13081e1a76f72a154b50339c95240c82d2a262f4b8dcf71c1e5762449bd344054dba449ce
-DIST pydantic-2.11.0a1.tar.gz 766922 BLAKE2B 51bb09c9bb919798aefccba78e4b366d68a4a5b1a8c347c341debbef2ec0725c4cdebd231336144d57936bf11a3ff1a3722992151af207b62d18c9be9ed79f16 SHA512 f5a34793c6db0e105b935b217cb5ca2f0b64c78ba033f642fff92434adaf4903d0f388dadb5cf09e9122029f4484c11b5cc5744ef6a92716eb2d5d379076db3c
DIST pydantic-2.11.0a2.tar.gz 768863 BLAKE2B 2da69490f8dc711e3835a902789cce9fac9a6eba5d827bd8efa7ea8498a5661dd31a17734408d693d78a0b0588170302c76905228aa05dd771a62f581862971c SHA512 9ad26a85c659b5b5d76c1ff7b9267c641deb91b5f3f4c6f65e1ef4035dc73599e300c03b76770ec958847f89040e38bdad87f4119c585d159e95920805c826b7
DIST pydantic-2.9.2.tar.gz 769917 BLAKE2B 4e34fda6a9e8e8331278d0b7d0c2dfd61bde637c126fa6dabf78a09c6ef993f84dc8df6af421c8fb6d69c8e1c387a40e4bcd38cbe02f5ac521c6c70821735763 SHA512 2aace9e79a98bd94e5dc626736a245051912a11fdce36013d2ad2f96b266052386a3e12b259dca30ddc38b63c6b00b5bcc9cd5e80f7805de4d8701064f0982aa
EBUILD pydantic-2.10.4.ebuild 1581 BLAKE2B 22d5bde2779d0f92fcf3237ba1a979ff3ebf7489a4ed784e39bbd0499095f2fa47c45e5b350449854a79bc6a35c68b7fa2b6dbe04d6e56ba791540c974aaf9ff SHA512 fc6b0aa9842ab4597beddaf5dbfad2441305268d35dd52f4559839a60d6e2aec051bb68de5f87bf0de022ce1ac1be0d7290cda7a583cfd9684406cedd1c6217a
-EBUILD pydantic-2.10.5.ebuild 1582 BLAKE2B 6bf8184a8d4b1494d9be2d37db768b5f1a8c783540cf484b65f3b05c0ee915c7674bad1b4cbde9bb8e0c758afeb935857ce47545274264f30f4e9f27da3acfd5 SHA512 90e250040f8806bc762e33a9a2c59e2875ada47a170036d13216133834f873656f42e3e0e753213623ca1c4942a49acb35b8ca045d26f03c28964e368cb647b3
EBUILD pydantic-2.10.6.ebuild 1582 BLAKE2B 6bf8184a8d4b1494d9be2d37db768b5f1a8c783540cf484b65f3b05c0ee915c7674bad1b4cbde9bb8e0c758afeb935857ce47545274264f30f4e9f27da3acfd5 SHA512 90e250040f8806bc762e33a9a2c59e2875ada47a170036d13216133834f873656f42e3e0e753213623ca1c4942a49acb35b8ca045d26f03c28964e368cb647b3
-EBUILD pydantic-2.11.0_alpha1.ebuild 1588 BLAKE2B 6ccf70da486b2cf0aab197d1080eea006bbee18aebc34f231eae0dd1e50f02cc0cf6bec535e38d2c623c29f3434399a8dc66fefe3aea70c188634807e32db20c SHA512 00fe7cd64523eed243da78c542b474fb2f7e1563877024b3a350ac17a36c9380d18655ddfbad8c42b00f16ed5da91f7a5a8a9db982bcd15306e5bcb051b258b1
EBUILD pydantic-2.11.0_alpha2.ebuild 1588 BLAKE2B f1bf271d816afa48302aebc1c9057645a0006cf53b3d860a20760392c1d8b28c89aa7faa52ef46e1c50266ea6c3c2096b8ecb37c94eb469294b05aee2ba67a9a SHA512 f6df44ce63dd41624aac4d54e434c246c561065b16cbfa3b480d7ecb123408edbf726f7721cf26ff22b5ab6c93c40cc084117bb76fed59dd3a76cf8c1d070bd9
EBUILD pydantic-2.9.2.ebuild 1551 BLAKE2B 4a3c9004e0379420593e3ad7c5f7bafe05c44ad7a4ccc9059ddb645e6fdd7520a374524e411192c7952f271a74ca0e92368c1703825bb6b56d4725f10dbbba3c SHA512 e58dc0fd143b45684ef1bd168e29c096e70d69917e45245f79a8f9d3f112371c82cb2bac15d117c7cca70bb73ea98e0b67d3ce7ed99f7332e16c2f91886d568a
MISC metadata.xml 550 BLAKE2B ca3a62e01a928ac12964e9a8f291073465c66951082b68cb408a8dec48eeab226c1955782fbb6c82d95c495a790b7d5b84b8f69ab7d3b0acfd2883d3ad2d8e5e SHA512 247144ea1634fd80f8ec461fcb2f8e7383b65185426d0df283ec5345d7612abc3ceee7b6d0df7a3ba858ba8483884507fb443b75cd812bab8d0e6a8293cbb855
diff --git a/dev-python/pydantic/pydantic-2.10.5.ebuild b/dev-python/pydantic/pydantic-2.10.5.ebuild
deleted file mode 100644
index b9a8ac8466fd..000000000000
--- a/dev-python/pydantic/pydantic-2.10.5.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Data parsing and validation using Python type hints"
-HOMEPAGE="
- https://github.com/pydantic/pydantic/
- https://pypi.org/project/pydantic/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-RDEPEND="
- >=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}]
- ~dev-python/pydantic-core-2.27.2[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}]
- dev-python/tzdata[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
- test? (
- dev-python/cloudpickle[${PYTHON_USEDEP}]
- dev-python/dirty-equals[${PYTHON_USEDEP}]
- >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/faker-18.13.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- sed -i -e '/benchmark/d' pyproject.toml || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local EPYTEST_DESELECT=()
- local EPYTEST_IGNORE=(
- # require pytest-examples
- tests/test_docs.py
- # benchmarks
- tests/benchmarks
- )
-
- if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then
- EPYTEST_IGNORE+=(
- tests/test_pickle.py
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -p pytest_mock
-}
diff --git a/dev-python/pydantic/pydantic-2.11.0_alpha1.ebuild b/dev-python/pydantic/pydantic-2.11.0_alpha1.ebuild
deleted file mode 100644
index 9a9f5395ebe8..000000000000
--- a/dev-python/pydantic/pydantic-2.11.0_alpha1.ebuild
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Data parsing and validation using Python type hints"
-HOMEPAGE="
- https://github.com/pydantic/pydantic/
- https://pypi.org/project/pydantic/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-RDEPEND="
- >=dev-python/annotated-types-0.6.0[${PYTHON_USEDEP}]
- ~dev-python/pydantic-core-2.28.0[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}]
- dev-python/tzdata[${PYTHON_USEDEP}]
-"
-BDEPEND="
- >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
- test? (
- dev-python/cloudpickle[${PYTHON_USEDEP}]
- dev-python/dirty-equals[${PYTHON_USEDEP}]
- >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/faker-18.13.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- sed -i -e '/benchmark/d' pyproject.toml || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- local EPYTEST_DESELECT=()
- local EPYTEST_IGNORE=(
- # require pytest-examples
- tests/test_docs.py
- # benchmarks
- tests/benchmarks
- )
-
- if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then
- EPYTEST_IGNORE+=(
- tests/test_pickle.py
- )
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -p pytest_mock
-}
diff --git a/dev-python/pyfzf/Manifest b/dev-python/pyfzf/Manifest
index 51f1ab237763..532f613ef63e 100644
--- a/dev-python/pyfzf/Manifest
+++ b/dev-python/pyfzf/Manifest
@@ -1,3 +1,3 @@
DIST pyfzf-0.3.1.tar.gz 3652 BLAKE2B b9d9d0ca781147c70723cde40f236fb339c09d25cfd5086a212df7dffeb433bd962e34b5ee6904384d9620e08b0b75de75949ba3b779982aee8fbac4eafa876f SHA512 9c3240ea791123080291eba7ca3f4bf4978aff49fac4cdc9156c4198598a0440248cd9878c15dd939052c6a7decd0cf043f4648ec496ac1b8e3a41dffad5cd24
-EBUILD pyfzf-0.3.1.ebuild 396 BLAKE2B 0bbf23901e2b64c2e99cea88cafd11e0d1e5ac39d278b90cc15d2b545d867e81533f0310ac08ad7756f77747edcff88c1ddfa8d61f7085a86b2b18155a76f573 SHA512 cafb1c21a15237edc70c726c063436d170cce6091bf3a2f01fb00039404e3babe34d5495509a70cc2cdef841dfdc9b3ac8bb9e7f746a51796b6f14fd6a535714
+EBUILD pyfzf-0.3.1.ebuild 401 BLAKE2B 6c21bdb78338138acc4ec41fb2e58b799bfe8881b8f005c67b11b290fcd2c0fd91597e5918188f6aad53d82fb0e0cd9562861feb6b48dc93adf3f8fbfcc0f0b7 SHA512 2d9ff8365eed4a04c3ed840e10b81a28932f0f024f2ab0e52406dc37312f651d662436a1035d45dd7fa7c1886a32a51fe27afe92801cd7336d926c774d4e990f
MISC metadata.xml 528 BLAKE2B c1f287552f6aaecc751037e3354c1836d14751018f5f742cfd27fa0f8ecbdda4ac9984492786f73b3397f4b22d270674811d2e50c91a2c7f6589a3eb29c3b132 SHA512 7d79cc9109dfa05459b65efbb86324159be453f68ba8b1bcf9fac17fb80c70ca4b06cfbfc91f8586be21c36abba8563442b2564f1f97a265bfb66c0879bd5d8c
diff --git a/dev-python/pyfzf/pyfzf-0.3.1.ebuild b/dev-python/pyfzf/pyfzf-0.3.1.ebuild
index c59065e13fc0..cb9bd49a5864 100644
--- a/dev-python/pyfzf/pyfzf-0.3.1.ebuild
+++ b/dev-python/pyfzf/pyfzf-0.3.1.ebuild
@@ -16,6 +16,6 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="app-shells/fzf"
diff --git a/dev-python/pymediainfo/Manifest b/dev-python/pymediainfo/Manifest
index b7cdae9af5bf..07407f29509a 100644
--- a/dev-python/pymediainfo/Manifest
+++ b/dev-python/pymediainfo/Manifest
@@ -1,3 +1,7 @@
DIST pymediainfo-6.1.0.tar.gz 446466 BLAKE2B 66a2863439cd2df7e5ad8be07a377b8201048aed4f6b4efb2289f316a184ebbc5376ce4e437e05819906a49eb40d49039f8e17654470cd1539fdfdb6496b3b71 SHA512 2c32134f42794a7228591d96e2cbe64b30693b671ded4e386b08eb6d571459e4a06d551d3c169dd340f560cf5ec7f86f6cd73fc135e4404614c22ed452273783
+DIST pymediainfo-7.0.0.tar.gz 437822 BLAKE2B 13cb89a2c3491420ce2ebb1a3dd327baa6c28a0c4f70c02c09542431235b3ee488985c19b6ea1d1ac811b1d0af0c94b235d3150d3485e1163fca720d45b4431f SHA512 ed2e336430497ca24d6057e209fef3803052cd3abff5ab9cb3993a6370035a732ccb1798ecc83d6b0fe3318b10f02555c668f68a418bde2187995b15859ccf2a
+DIST pymediainfo-7.0.1.tar.gz 441563 BLAKE2B c2cb59c8d0c4fe90ef33e3f1cd4a55fa42341213abe399841e1b008b9854861cff1459b17f766ca54bf8ac632d9159029bcbf74283abaa63c8150246b7b6be23 SHA512 73ad42192faf3baf78158f8bad216d306dc37830d64e48d801d133119433a79269fef667430588b94a7625df1541a66e5b6a36239a7820b675b06481e107ab70
EBUILD pymediainfo-6.1.0.ebuild 749 BLAKE2B 3d13b12d11fce9982d0a55e36eff5963187311dd67a5868ee234b76816f1b47948e40e6c5026e6a96f48df5fc07473c5618d7e314d084d10376ea1470315b82e SHA512 d4bf58825768a2e730f5aae04391cc9f5d50e4c13b8c32eea2bb9fd911fa25d56db7cf16cabe9ccbf64888aaefe524df6792dd9160f5a3e20857eaf8ace08a0f
+EBUILD pymediainfo-7.0.0.ebuild 756 BLAKE2B 4280ef336d0d9921a4f125c3298ff6bafc1be20bcbda34cf57981e67ca0c7925a3f794f714277986e493ab84c7dbf55c3ec4ee6a2b59adfe81d22dce268f2c89 SHA512 ca74600569e950cdf98801dcc00eeb3c31961011f7d30024d1e8aa795324e88a9ab0e3d364d6e8b25f724bc8a3fc59e1d91293a7f88c286919c3882f0bc4269e
+EBUILD pymediainfo-7.0.1.ebuild 779 BLAKE2B 024feb09c19153689e18361a9b9c5707b571862121883ae103bb0e3f176e2e3277f9a8a7c047820d9631db9199f8f8d44b7c15ed1f1255432ed5fb9a09d83956 SHA512 e3ed92c3921f88637b6e195baefb1e66b08dc1b042b5d9f8b6ce1a6e981408167671dcc5f647b497f5a7d168f434e355d649e711a3f4e3eef4e63dc052b5f015
MISC metadata.xml 491 BLAKE2B c204e000d175f22b70686247e5db4b7cf791489785aaa72099676a554791c555ad3c60892229b12c35b84d1a382b9adfa54eef6cc20bd5cc63ea536c05995032 SHA512 507cc75dc66e7d23846f0a295ac0a21110f9164fb0a5b70f3f7a71420796fd1f35ffb587a84952634e1cef6df322db4abf0eba50976033fd0159d92f54e10357
diff --git a/dev-python/pymediainfo/pymediainfo-7.0.0.ebuild b/dev-python/pymediainfo/pymediainfo-7.0.0.ebuild
new file mode 100644
index 000000000000..34d866894255
--- /dev/null
+++ b/dev-python/pymediainfo/pymediainfo-7.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python wrapper for the MediaInfo library"
+HOMEPAGE="
+ https://github.com/sbraz/pymediainfo/
+ https://pypi.org/project/pymediainfo/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ media-libs/libmediainfo
+"
+# tests/test_pymediainfo.py::MediaInfoURLTest::test_parse_url requires libmediainfo with curl support
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ media-libs/libmediainfo[curl]
+ )
+"
+
+distutils_enable_sphinx docs dev-python/alabaster
+distutils_enable_tests pytest
diff --git a/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild b/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild
new file mode 100644
index 000000000000..7349b521daed
--- /dev/null
+++ b/dev-python/pymediainfo/pymediainfo-7.0.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python wrapper for the MediaInfo library"
+HOMEPAGE="
+ https://github.com/sbraz/pymediainfo/
+ https://pypi.org/project/pymediainfo/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ media-libs/libmediainfo
+"
+# tests/test_pymediainfo.py::MediaInfoURLTest::test_parse_url requires libmediainfo with curl support
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ media-libs/libmediainfo[curl]
+ )
+"
+
+distutils_enable_sphinx docs dev-python/alabaster dev-python/myst-parser
+distutils_enable_tests pytest
diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest
index 697ab191ab78..7686f1506e37 100644
--- a/dev-python/pymongo/Manifest
+++ b/dev-python/pymongo/Manifest
@@ -1,15 +1,11 @@
-DIST mongo-python-driver-4.10.0.gh.tar.gz 1948389 BLAKE2B 19429aad69baa013226a4b36de5c654fe074bdb39a462d588a1a4298a35fd8bbf941d8189dbe632e25619fb691a960c98988e205e82796ec1572d2dc63379b2d SHA512 3153e97ad6e749a35d071ef91eb870be76d75f404526e5275cc5ab19470f09a8450debba519cb10bd79191d1b1dd8cfc04882b1d7ef4898471b14bf131fa8c83
DIST mongo-python-driver-4.10.1.gh.tar.gz 1957402 BLAKE2B 66f7c166af7c7467ca7cb20266d313e453ab485516c17e8eda5a4771b4818778c00ad314e7bd5868a95f2045f879a73617f64549db634257f1abbc7a9a095181 SHA512 200bda479cd951beef6234a15120a043b4399cadd8ef2fda69bfcd6904e1e0e43d179626092dc81d89f48806768bf8147c55108c91620920f5544f712bf3be51
+DIST mongo-python-driver-4.11.1.gh.tar.gz 2111810 BLAKE2B 120168770b1f4a61f7f6327bb7b933e1bf848871ed7a6cb152837a95b438b17236e6b10b1fe54fc29a0791d8ad785033b2d726129dae69e9403ff5b1e3c2b929 SHA512 64f7d2baa90c23f3b5d91192cc4bcc6d3199f81b6b2844c19a1059779a5e6681a45e65872452230b6c1c8c193749324eb30af75f080f8830f9642f575da80bf9
DIST mongo-python-driver-4.11.gh.tar.gz 2111008 BLAKE2B 0f65410b5eead108dec0016c23c3e004251ab2db04f3a7b2a31a8757abdddf526cea695400c8cdf2bb4f7fc8c711ee4d2e5f883d0db8b309843a71e194e75016 SHA512 454109e9c9da8fec6785f50e34dfe253f9fd1a82d69cadd5c0366590c6ca6aeac180f16a0e011f855e72c6a949a0cf06f477c7396d4c9f4da6f936646a5d8c20
DIST mongo-python-driver-4.7.2.gh.tar.gz 1548375 BLAKE2B a40dbe153f36cdf2836583aa0116f447d08376ce7980a09d0f21cea37a34ab318e5ff0b34b7fe1721cf7fc5d5443a1dbe0982d59cb941b0da8a4a99abdc7b19d SHA512 1de8bd14301e365eb53252dedaaaf8c9056dd534662543e2a500511e5f5f67a69e1f11a8a8575efdbd8852bb47b632d59762f66024d32973d20dc17c4448b9be
DIST mongo-python-driver-4.8.0.gh.tar.gz 1550149 BLAKE2B 9462480b17f3da54918883fbcb28a4324e6a00a9c2c34b16267ebcd378170f7fd34ec7290f7a0e3c4c38a5f1f803428cb6a0c64a562d956b3a19c37130697012 SHA512 17513a278187424fea1876d288651e385be759f23eebceca8d04a15182b15ffd64956193bb53e4a90e8b2197c2ebbade274737091f5d2e5fb4398539674c41df
-DIST mongo-python-driver-4.9.1.gh.tar.gz 1937311 BLAKE2B 9312c7df50f86dad7dd713b34aba0a87dd9f878b115b3c00ae9e0825c883c869f57e0d55d552b1b4bf9715930840a540572b451d296e185085c4c0c707855811 SHA512 e616418c90088bfc328505dea315a225bfcc942fa29dcc348d3b80d0fb329b7e8fe9d6164c0e13a0562e6126535cc7d04c2cf497a39a04071f6db8af3c8ed1f1
-DIST mongo-python-driver-4.9.2.gh.tar.gz 1941838 BLAKE2B 07ba597eae08cd1116e0aa42e5c9e8af0024d69d8ee4acc33cd84a80cd9df77028a2b2bc7a1d6563ca1ebe485851d0483c804bce944dc9f1f5ed48b44fe9ae7a SHA512 40fdb22ef5c602e96f735b948fe61fd1a325f51f264087027d58319eaa382f37638cf1d0dabaaf9c0a4f556698638b26bdc5431c9147a245b7b4e515b7b7aac9
-EBUILD pymongo-4.10.0.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
EBUILD pymongo-4.10.1.ebuild 6858 BLAKE2B adade6fd0fca5a17b98aa90f9d1c914cfa61a2cd9b303ed30e561a83bd53f0cadac92847b401de039b3cf38f2d5b33bb4583c0ec3c88b13b2fd42bcdae35a043 SHA512 7be791293a29b142b6513cc6ee50f25311c87cbba5a937c09f0dfd8f4a1d4bdb050f603bb5b90c39ff723b105100c45566f432c33ca95324b609d77a6e269cd4
+EBUILD pymongo-4.11.1.ebuild 7066 BLAKE2B b4c5eb835af74e39f51f546d9abdce407336137d15469f4efd79637dbf03cd406991ad9225a7156b9afa9de3e81303aa8c76e920a1c8be7dc3468d6d63c559b2 SHA512 2c0a4b8b674c9fc337220c035369f1e4406ba15addcd8e48f8f127bb75fc88d5d0ef11ba4319a4428e549ced43d18db07f84e45349b8b69931a690d50943f499
EBUILD pymongo-4.11.ebuild 7066 BLAKE2B b4c5eb835af74e39f51f546d9abdce407336137d15469f4efd79637dbf03cd406991ad9225a7156b9afa9de3e81303aa8c76e920a1c8be7dc3468d6d63c559b2 SHA512 2c0a4b8b674c9fc337220c035369f1e4406ba15addcd8e48f8f127bb75fc88d5d0ef11ba4319a4428e549ced43d18db07f84e45349b8b69931a690d50943f499
EBUILD pymongo-4.7.2.ebuild 5267 BLAKE2B 1045523964d4f0482bb1fd5c57841684479dae05b9135f873008d41de4163834bbc1d6d0249e183aec0e5f7751ea7740d2dc05ae0ec69048f1b24e5d1f215675 SHA512 3e19264bd6944e334d673ac0303e738dccd61b68e9b9d7e9cdd06eeea811d52cc5206d4e8ff57e88cf928ac5b47cc69a77bd5dc18aab801b2db8dcbe894f4456
EBUILD pymongo-4.8.0.ebuild 5839 BLAKE2B add017703bd0be4c70abe7791ed3cf19453ab63f04d61e0b8139e6f59677ebaf002118b0e055ac23cb4e56c67033326abb16c73d76827698719e10900cebb90e SHA512 6e4ec05b25bfafd953d8254b6ceaf28fa5784cda21af76a9b27329af2a909aca7d43d242514b1b2dfb7db294e43eee17c15ad26bd73ed0c4fcc382e9cc7205c2
-EBUILD pymongo-4.9.1.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
-EBUILD pymongo-4.9.2.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
MISC metadata.xml 880 BLAKE2B 024d83cdf3d8cf94cdc98153a6b429550579d494b053becfe5cda0a7a7f3852632d7155e71116a9ab751e6542fe63985755f4eeb147914bc8dbb1e9fac560434 SHA512 c6110fd18fa7f7819299b5de919bfc0ce407d653115d34d297513ce3a4acd2e16399d6f327c61bc5d4ef8aa6776f84750cff37798415ca4bd59c6fd19961d891
diff --git a/dev-python/pymongo/pymongo-4.10.0.ebuild b/dev-python/pymongo/pymongo-4.11.1.ebuild
index 286a8d403b6a..05670517ffe8 100644
--- a/dev-python/pymongo/pymongo-4.10.0.ebuild
+++ b/dev-python/pymongo/pymongo-4.11.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -115,6 +115,9 @@ python_test() {
# hangs?
test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks
+
+ # broken async tests?
+ test/asynchronous/test_encryption.py
)
local run_separately=(
@@ -127,7 +130,6 @@ python_test() {
test/test_collection.py
test/test_crud_unified.py
test/test_gridfs.py
- test/test_gridfs_bucket.py
)
local run_separately2=(
test/test_command_monitoring.py
@@ -135,6 +137,9 @@ python_test() {
test/test_cursor.py
test/test_database.py
test/test_grid_file.py
+ )
+ local run_separately3=(
+ test/test_gridfs_bucket.py
test/test_monitoring.py
)
local run_separately_async=(
@@ -145,7 +150,7 @@ python_test() {
if ! use test-full; then
# .invalid is guaranteed to return NXDOMAIN per RFC 6761
local -x DB_IP=mongodb.invalid
- epytest
+ epytest -p asyncio
return
fi
@@ -157,7 +162,7 @@ python_test() {
local logpath=${TMPDIR}/mongod.log
local stage failed=
- for stage in {1..5}; do
+ for stage in {1..6}; do
# Now, the hard part: we need to find a free port for mongod.
# We're just trying to run it random port numbers and check the log
# for bind errors. It shall be noted that 'mongod --fork' does not
@@ -202,16 +207,20 @@ python_test() {
nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1
;;
3)
+ nonfatal epytest "${def[@]}" "${run_separately3[@]}" || failed=1
+ ;;
+ 4)
EPYTEST_DESELECT+=(
"${run_separately[@]}"
"${run_separately2[@]}"
+ "${run_separately3[@]}"
)
nonfatal epytest "${def[@]}" || failed=1
;;
- 4)
+ 5)
nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1
;;
- 5)
+ 6)
EPYTEST_DESELECT+=(
"${run_separately_async[@]}"
)
diff --git a/dev-python/pymongo/pymongo-4.9.1.ebuild b/dev-python/pymongo/pymongo-4.9.1.ebuild
deleted file mode 100644
index 286a8d403b6a..000000000000
--- a/dev-python/pymongo/pymongo-4.9.1.ebuild
+++ /dev/null
@@ -1,228 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit check-reqs distutils-r1
-
-MY_P=mongo-python-driver-${PV}
-DESCRIPTION="Python driver for MongoDB"
-HOMEPAGE="
- https://github.com/mongodb/mongo-python-driver/
- https://pypi.org/project/pymongo/
-"
-SRC_URI="
- https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc kerberos +native-extensions +test-full"
-
-RDEPEND="
- <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}]
- kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] )
-"
-BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- test-full? (
- >=dev-db/mongodb-2.6.0
- )
- )
-"
-
-distutils_enable_sphinx doc
-distutils_enable_tests pytest
-
-reqcheck() {
- if use test && use test-full; then
- # During the tests, database size reaches 1.5G.
- local CHECKREQS_DISK_BUILD=1536M
-
- check-reqs_${1}
- fi
-}
-
-pkg_pretend() {
- reqcheck pkg_pretend
-}
-
-pkg_setup() {
- reqcheck pkg_setup
-}
-
-src_prepare() {
- distutils-r1_src_prepare
- # we do not want hatch-requirements-txt and its ton of NIH deps
- sed -i -e '/requirements/d' pyproject.toml || die
-}
-
-python_compile() {
- # causes build errors to be fatal
- local -x TOX_ENV_NAME=whatever
- local DISTUTILS_ARGS=()
- # unconditionally implicitly disabled on pypy3
- if ! use native-extensions; then
- export NO_EXT=1
- else
- export PYMONGO_C_EXT_MUST_BUILD=1
- unset NO_EXT
- fi
-
- distutils-r1_python_compile
-}
-
-python_test() {
- rm -rf bson pymongo || die
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local EPYTEST_DESELECT=(
- # network-sandbox
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning
- test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs
- test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg
- test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
- test/test_client.py::ClientUnitTest::test_detected_environment_logging
- test/test_client.py::ClientUnitTest::test_detected_environment_warning
- test/test_client.py::TestClient::test_service_name_from_kwargs
- test/test_client.py::TestClient::test_srv_max_hosts_kwarg
- test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive
- test/test_srv_polling.py
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet
-
- # broken regularly by changes in mypy
- test/test_typing.py::TestMypyFails::test_mypy_failures
-
- # fragile to timing? fails because we're getting too many logs
- test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified
-
- # hangs?
- test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks
- )
-
- local run_separately=(
- # need to run some tests separately and then restart mongodb
- # to prevent it from crashing
- # https://bugs.gentoo.org/934389
- # note that this list must not overlap with EPYTEST_DESELECT
- test/test_bulk.py
- test/test_change_stream.py
- test/test_collection.py
- test/test_crud_unified.py
- test/test_gridfs.py
- test/test_gridfs_bucket.py
- )
- local run_separately2=(
- test/test_command_monitoring.py
- test/test_connection_monitoring.py
- test/test_cursor.py
- test/test_database.py
- test/test_grid_file.py
- test/test_monitoring.py
- )
- local run_separately_async=(
- test/asynchronous/test_database.py
- test/asynchronous/test_grid_file.py
- )
-
- if ! use test-full; then
- # .invalid is guaranteed to return NXDOMAIN per RFC 6761
- local -x DB_IP=mongodb.invalid
- epytest
- return
- fi
-
- # Yes, we need TCP/IP for that...
- local -x DB_IP=127.0.0.1
- local -x DB_PORT=27000
-
- local dbpath=${TMPDIR}/mongo.db
- local logpath=${TMPDIR}/mongod.log
-
- local stage failed=
- for stage in {1..5}; do
- # Now, the hard part: we need to find a free port for mongod.
- # We're just trying to run it random port numbers and check the log
- # for bind errors. It shall be noted that 'mongod --fork' does not
- # return failure when it fails to bind.
-
- mkdir -p "${dbpath}" || die
- while true; do
- ebegin "Trying to start mongod on port ${DB_PORT}"
-
- LC_ALL=C \
- mongod --dbpath "${dbpath}" --nojournal \
- --bind_ip ${DB_IP} --port ${DB_PORT} \
- --unixSocketPrefix "${TMPDIR}" \
- --logpath "${logpath}" --fork \
- && sleep 2
-
- # Now we need to check if the server actually started...
- if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then
- # yay!
- eend 0
- break
- elif grep -q 'Address already in use' "${logpath}"; then
- # ay, someone took our port!
- eend 1
- : $(( DB_PORT += 1 ))
- continue
- else
- eend 1
- eerror "Unable to start mongod for tests. See the server log:"
- eerror " ${logpath}"
- die "Unable to start mongod for tests."
- fi
- done
-
- local async=( -p asyncio -m default_async )
- local def=( -p asyncio -m "default or encryption" )
- case ${stage} in
- 1)
- nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1
- ;;
- 2)
- nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1
- ;;
- 3)
- EPYTEST_DESELECT+=(
- "${run_separately[@]}"
- "${run_separately2[@]}"
- )
- nonfatal epytest "${def[@]}" || failed=1
- ;;
- 4)
- nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1
- ;;
- 5)
- EPYTEST_DESELECT+=(
- "${run_separately_async[@]}"
- )
- nonfatal epytest "${async[@]}" || failed=1
- ;;
- esac
-
- mongod --dbpath "${dbpath}" --shutdown || die
- done
-
- [[ ${failed} ]] && die "Tests fail with ${EPYTHON}"
-
- rm -rf "${dbpath}" || die
-}
diff --git a/dev-python/pymongo/pymongo-4.9.2.ebuild b/dev-python/pymongo/pymongo-4.9.2.ebuild
deleted file mode 100644
index 286a8d403b6a..000000000000
--- a/dev-python/pymongo/pymongo-4.9.2.ebuild
+++ /dev/null
@@ -1,228 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit check-reqs distutils-r1
-
-MY_P=mongo-python-driver-${PV}
-DESCRIPTION="Python driver for MongoDB"
-HOMEPAGE="
- https://github.com/mongodb/mongo-python-driver/
- https://pypi.org/project/pymongo/
-"
-SRC_URI="
- https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="doc kerberos +native-extensions +test-full"
-
-RDEPEND="
- <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}]
- kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] )
-"
-BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- test-full? (
- >=dev-db/mongodb-2.6.0
- )
- )
-"
-
-distutils_enable_sphinx doc
-distutils_enable_tests pytest
-
-reqcheck() {
- if use test && use test-full; then
- # During the tests, database size reaches 1.5G.
- local CHECKREQS_DISK_BUILD=1536M
-
- check-reqs_${1}
- fi
-}
-
-pkg_pretend() {
- reqcheck pkg_pretend
-}
-
-pkg_setup() {
- reqcheck pkg_setup
-}
-
-src_prepare() {
- distutils-r1_src_prepare
- # we do not want hatch-requirements-txt and its ton of NIH deps
- sed -i -e '/requirements/d' pyproject.toml || die
-}
-
-python_compile() {
- # causes build errors to be fatal
- local -x TOX_ENV_NAME=whatever
- local DISTUTILS_ARGS=()
- # unconditionally implicitly disabled on pypy3
- if ! use native-extensions; then
- export NO_EXT=1
- else
- export PYMONGO_C_EXT_MUST_BUILD=1
- unset NO_EXT
- fi
-
- distutils-r1_python_compile
-}
-
-python_test() {
- rm -rf bson pymongo || die
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local EPYTEST_DESELECT=(
- # network-sandbox
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging
- test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning
- test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs
- test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg
- test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
- test/test_client.py::ClientUnitTest::test_detected_environment_logging
- test/test_client.py::ClientUnitTest::test_detected_environment_warning
- test/test_client.py::TestClient::test_service_name_from_kwargs
- test/test_client.py::TestClient::test_srv_max_hosts_kwarg
- test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive
- test/test_srv_polling.py
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true
- test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet
-
- # broken regularly by changes in mypy
- test/test_typing.py::TestMypyFails::test_mypy_failures
-
- # fragile to timing? fails because we're getting too many logs
- test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified
-
- # hangs?
- test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks
- )
-
- local run_separately=(
- # need to run some tests separately and then restart mongodb
- # to prevent it from crashing
- # https://bugs.gentoo.org/934389
- # note that this list must not overlap with EPYTEST_DESELECT
- test/test_bulk.py
- test/test_change_stream.py
- test/test_collection.py
- test/test_crud_unified.py
- test/test_gridfs.py
- test/test_gridfs_bucket.py
- )
- local run_separately2=(
- test/test_command_monitoring.py
- test/test_connection_monitoring.py
- test/test_cursor.py
- test/test_database.py
- test/test_grid_file.py
- test/test_monitoring.py
- )
- local run_separately_async=(
- test/asynchronous/test_database.py
- test/asynchronous/test_grid_file.py
- )
-
- if ! use test-full; then
- # .invalid is guaranteed to return NXDOMAIN per RFC 6761
- local -x DB_IP=mongodb.invalid
- epytest
- return
- fi
-
- # Yes, we need TCP/IP for that...
- local -x DB_IP=127.0.0.1
- local -x DB_PORT=27000
-
- local dbpath=${TMPDIR}/mongo.db
- local logpath=${TMPDIR}/mongod.log
-
- local stage failed=
- for stage in {1..5}; do
- # Now, the hard part: we need to find a free port for mongod.
- # We're just trying to run it random port numbers and check the log
- # for bind errors. It shall be noted that 'mongod --fork' does not
- # return failure when it fails to bind.
-
- mkdir -p "${dbpath}" || die
- while true; do
- ebegin "Trying to start mongod on port ${DB_PORT}"
-
- LC_ALL=C \
- mongod --dbpath "${dbpath}" --nojournal \
- --bind_ip ${DB_IP} --port ${DB_PORT} \
- --unixSocketPrefix "${TMPDIR}" \
- --logpath "${logpath}" --fork \
- && sleep 2
-
- # Now we need to check if the server actually started...
- if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then
- # yay!
- eend 0
- break
- elif grep -q 'Address already in use' "${logpath}"; then
- # ay, someone took our port!
- eend 1
- : $(( DB_PORT += 1 ))
- continue
- else
- eend 1
- eerror "Unable to start mongod for tests. See the server log:"
- eerror " ${logpath}"
- die "Unable to start mongod for tests."
- fi
- done
-
- local async=( -p asyncio -m default_async )
- local def=( -p asyncio -m "default or encryption" )
- case ${stage} in
- 1)
- nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1
- ;;
- 2)
- nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1
- ;;
- 3)
- EPYTEST_DESELECT+=(
- "${run_separately[@]}"
- "${run_separately2[@]}"
- )
- nonfatal epytest "${def[@]}" || failed=1
- ;;
- 4)
- nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1
- ;;
- 5)
- EPYTEST_DESELECT+=(
- "${run_separately_async[@]}"
- )
- nonfatal epytest "${async[@]}" || failed=1
- ;;
- esac
-
- mongod --dbpath "${dbpath}" --shutdown || die
- done
-
- [[ ${failed} ]] && die "Tests fail with ${EPYTHON}"
-
- rm -rf "${dbpath}" || die
-}
diff --git a/dev-python/pypy-exe/Manifest b/dev-python/pypy-exe/Manifest
index 58e83b4b0d47..fb59d3a20bf4 100644
--- a/dev-python/pypy-exe/Manifest
+++ b/dev-python/pypy-exe/Manifest
@@ -1,7 +1,7 @@
DIST pypy2.7-gentoo-patches-7.3.17.tar.xz 5324 BLAKE2B 866f172a6df6f0e94a98c611b37ae58635623e33a47619a5e44658d3908337a3f9029ff7de6997f760c3f1679fc83bfc6ddfb66852c492a581b3336b5eec3ed2 SHA512 6ce5266d0748f3c18a5546aa2bd8479ecb45923eb7df8a140a195e7f7b44999b9167ffdd44f7fd789ddd3a62cd77cb917863b0144180a1127befce1f290e650a
-DIST pypy2.7-gentoo-patches-7.3.18.tar.xz 6220 BLAKE2B 1df2c5bab94c4b12c2ecd82d01c94bb6a7f9b04d7f495e5e7f0152dcf01abcef062b751a4b1f44ab5acfb2a6cb919e610609ecacd3d4745d62ab5feaf03f7ed1 SHA512 d40ba911c963d377b96458639cb731ea47051c44915473f3763a2d52343a11e17f4513d368e4104f024239d31c93457b5e4aa8a9392175eb323afcc3ce9efe2a
+DIST pypy2.7-gentoo-patches-7.3.18-r1.tar.xz 6828 BLAKE2B 5cd46392d2a7a32335cd52ceaee6f1689d2007576e61787d5e8af00de016b055a172a074004e15179eb3a31f67089e09e6886eac1a88c0993ab131c711effb53 SHA512 80b2d7825458458ad1c3d45be3403494e0487afb5392c7c49adcdc3d663169860c05189ab00a842e9cb59a69fc71050d84fccd65bad9b294370d31ed532f95d6
DIST pypy2.7-v7.3.17-src.tar.bz2 19907140 BLAKE2B de62ebc4e8102867effdecddca64c19c40458b112a6a56ac0c95247047b9f5437a5da68dffb51c14c21bce463c2ca489c6e6a4f86e8cc597b57df2eca707081e SHA512 82b2b9dbf0ea32c405ddc53d98a3a7a153f494d286e8719a0c40960168aadc0f49c3b313416488338f7f51c8fdb58120de41b1d47a8c8eda7db6d4ec4273b4eb
DIST pypy2.7-v7.3.18-src.tar.bz2 21007839 BLAKE2B 51a9b85ab644ffd142f2570e96f6376c8e75f5bd4882382f11f65f5b816e27305aadac8f9ee1634903845263376e8c718da3bf9c018e213163cdeadbe70bfa35 SHA512 f49763073a67292a780c7f078d90210e08cd1e68168fb4997ee1dccb2a84395dbe650dcfb4af5d1cb07249c5d4abc2c63ffe7c078be9fabcce92bcb4626254ac
EBUILD pypy-exe-7.3.17.ebuild 4246 BLAKE2B 9fc8fd37f445265302992af62acd47045c25fd8b8c42f13bb0eb62db8316140fe703f00a48b35bde393ffc9864d4010b15feea4b930a389c859583870eea95d4 SHA512 4061dd868cc6507966c615140cccf6ec98284c52b1daa26a22ba98101374d7215be0da0de88ba492a28f0002e2dff1a038dbd6e42a80476ecc144dbcc5678e2f
-EBUILD pypy-exe-7.3.18.ebuild 4248 BLAKE2B f6411461dc66c2247e463822c773534504c282a1f12830b7c58330c3143579db47487da6c55f7022a901abbe5a0e97c138634accb46ba91a088a6c0e7e1d8c6b SHA512 df1275109aaadeb8ccf1c8186197860ea5e05e9deb6a6b14f7f3102254cec0531757237dbdbfce8008600f6b82ebf7a4f8235324dcd76af78a36e95790437280
+EBUILD pypy-exe-7.3.18.ebuild 4251 BLAKE2B 92fb1b21417a7e917a7eff240ed9699cdf81dad5cf5162a0a7585ee2bd25517e99e9e78df79c2cb43b54f8e62fdb9cb01b080db4baf159c80297aca22c4416bd SHA512 f60644f845d2c697f1ef924aa7b0e2b47d61da37ecde0fd9de2f2b2490f5fe894bf967faf6b8a1b6985796c15189bb9516ac1a0f1f580e55091eb53572d11796
MISC metadata.xml 572 BLAKE2B cfcd1422ec312338fd876bc4747a962ac3c4bd06e28a3891489b065fba4c7be2daa6955f51e8136d9b8cf7b68bb7eb887b6f419ee9fd626ebd6db204acb7995d SHA512 c79250d47e3d5c99c2c903bfc185449cc41f88e2b923b8eae1401e83c0f23fa1a12ad85f50b6e25844e805e543ae897ccf43185a1bdf9f992dff765249e55bc1
diff --git a/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild
index 09f9c50bd2e6..a015fb13ecc1 100644
--- a/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild
+++ b/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild
@@ -7,7 +7,7 @@ inherit check-reqs pax-utils toolchain-funcs
PYPY_PV=${PV%_p*}
MY_P=pypy2.7-v${PYPY_PV/_}
-PATCHSET="pypy2.7-gentoo-patches-${PV/_}"
+PATCHSET="pypy2.7-gentoo-patches-${PV/_}-r1"
DESCRIPTION="PyPy executable (build from source)"
HOMEPAGE="
diff --git a/dev-python/pypy3_10-exe/Manifest b/dev-python/pypy3_10-exe/Manifest
index 91925cb54704..59c50e37dbb9 100644
--- a/dev-python/pypy3_10-exe/Manifest
+++ b/dev-python/pypy3_10-exe/Manifest
@@ -1,7 +1,7 @@
DIST pypy3.10-gentoo-patches-7.3.17.tar.xz 10340 BLAKE2B a9d7dc6a578dc50339574b2fcfff19e390293adfc8412592e4683fdd3ff415ed8da3ff809b00037659a6e218dc0b26efead7a2ae3c54b2c3487222144d5d9633 SHA512 b192685cc100cfb723492d29e89a522bb4ff041c78cbdfd170414e19713cf2a21c39ab8d4e1e9ca47da2559b2fed6df14f1122f96bc50dd117550c357046889a
-DIST pypy3.10-gentoo-patches-7.3.18-r1.tar.xz 6184 BLAKE2B 3df1f3dea0902a02ee7982797fb68becad99ffec56bb5d29ca779c23bf5f9db3edb31f95410ad0b2e8401dfe8493e74bdaf4065d2acd78ce1af0b79a3fbb8b30 SHA512 fbc65781047bc8de8cdd9cacb7f6a06abe0a49ee70c6f675ff1b472378a49883be08ab465a49df4363c472f1876471213ef1f5621a6c25534f9fbbdd645cf29b
+DIST pypy3.10-gentoo-patches-7.3.18-r2.tar.xz 6760 BLAKE2B dca4c423a0789042b548dfc117502adcd272b9617910295fb39b1a452ae03f3f100c4516b63a71d043a3fede8df69f4ede6e83a58c2a19eafab86cc1361f6790 SHA512 0c8ff0e896b082dfeff0aa57bac1070f3485cafb43b888cae6d53fd220aa2438ae1cb8292dd34ee64f67bf5e50d52b2c6bf8f7304b61c1861accf7fbb2824d86
DIST pypy3.10-v7.3.17-src.tar.bz2 23350562 BLAKE2B 0a7a091976b352de61057f238fa386f767dd4d2fbcdcc0b4376066c20c2ad35d3818fa6e9e163ab5fd341856802e8ad1e2891decf5948c13cdb26726cd42019e SHA512 46e30845bbc73cf56f5033a24d3583253ce198522f3a28ae4e789884063ba167d401fc08ae7fc8c7769feed9cd942a8ab38961c8b8794d7fae8f9955479faa96
DIST pypy3.10-v7.3.18-src.tar.bz2 24535433 BLAKE2B 2e5ab213db5cd118076fa3b0bd601818a2a4973134b78ce28056182d635b91719159e6be47cd596407b7cc545b0be957db21322dde0fbba1b1d167e5c6cd80c4 SHA512 8eb3bd618d04f4529b5869549c9208bfe465b5aae6240abe8b252681c16b44ba3d1b2c77ea4dc607a8738479c47e4a1c92f3ead7705b476167790b33c85a3b0f
EBUILD pypy3_10-exe-7.3.17.ebuild 2977 BLAKE2B fca7077d416fc007a84066aaa40ad9a4b66fc9bd91c362b86b7407cc302b01d90b3a6254ccf0d4503d153343c559cbf590c6c1dae60486abf64956339e87017f SHA512 da33e0ebe8d67e5c9063182b55217e05e05563f12a7eac1efd9e55302559e8c5d6ac66ee19bdcbcf7acab6c446af6df2adbac82bc34624360cf27ad2fcd542b9
-EBUILD pypy3_10-exe-7.3.18.ebuild 2982 BLAKE2B a2bd56e4607412ca3c28a46bd18c1c38fe25163d0555424dcb6fabec0726eb9e7725cd92cf3102c9618a2cde5a1abaa6495969c681dc3bf4803e08d7bfeabf72 SHA512 6b56b5ec7ffe20c8b9d7b293e3115229cb1c50ca2ec3aacb90afe11a0c16d76d268e7cec5b910ca156676458e273800ca611228377f0aaf1022998833823cdd6
+EBUILD pypy3_10-exe-7.3.18.ebuild 2982 BLAKE2B c14aa8eb38699eb4cc95f9876074ffc9e2456a85dba89265272ea0c8fd45773202838ac77133744330a692e1f1dfd76362f47271413c161947eb2cd940931dcd SHA512 cea3577e992163bd713219b4b18175b9f1c4379ae1ff4acd09c189f03550a596dcbc6d84a90ad7dedab164a28401a34250f7ad0535d62d2472fcb947c0f70ff2
MISC metadata.xml 572 BLAKE2B cfcd1422ec312338fd876bc4747a962ac3c4bd06e28a3891489b065fba4c7be2daa6955f51e8136d9b8cf7b68bb7eb887b6f419ee9fd626ebd6db204acb7995d SHA512 c79250d47e3d5c99c2c903bfc185449cc41f88e2b923b8eae1401e83c0f23fa1a12ad85f50b6e25844e805e543ae897ccf43185a1bdf9f992dff765249e55bc1
diff --git a/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild
index c944f484d5d4..67a0a336a02d 100644
--- a/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild
+++ b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild
@@ -8,7 +8,7 @@ inherit check-reqs flag-o-matic pax-utils toolchain-funcs
PYPY_PV=${PV%_p*}
PYVER=3.10
MY_P="pypy${PYVER}-v${PYPY_PV/_}"
-PATCHSET="pypy${PYVER}-gentoo-patches-${PV}-r1"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV}-r2"
DESCRIPTION="PyPy3.10 executable (build from source)"
HOMEPAGE="
diff --git a/dev-python/pysol-cards/Manifest b/dev-python/pysol-cards/Manifest
index fa1259c6e04c..bc39be1da912 100644
--- a/dev-python/pysol-cards/Manifest
+++ b/dev-python/pysol-cards/Manifest
@@ -1,3 +1,5 @@
DIST pysol_cards-0.18.0.tar.gz 18103 BLAKE2B a74af33d566255f40234f3f22f8232c3bc60438a27fbd8144d85da7984d660616ac19474036a29ddc361afd4b61b2ca8835331729fdd0cb8fb312ae3e990dbf5 SHA512 baf2a5db425d1e687a336f8dd7b15b25be82e8dbb4c02f00f882fdb915fcf81c03ad1f39d22d5177b1429cc709baa47463cab39c55576df135534f5f87f31665
+DIST pysol_cards-0.18.1.tar.gz 17975 BLAKE2B 59da03e8944bc94da9f775041b26928fa77af8f7472ae6ed189ac56a583a9b1c6ae419ada7c8118f5b5a6914f4adf94e4664bf2ad67a436e60c1516b29e96ef5 SHA512 aa38a05f6c2f0b9f1b59b1972c6e9fee20050013b8a9238248ba717cb42354c55d194a71cdd6a77462096938fb413c43c002aa2c1d0ca91e3e931ee60de5b791
EBUILD pysol-cards-0.18.0.ebuild 489 BLAKE2B 8987169d82ecfccd93f1727af2fa7fbd527a86fb68248eb9c4a9ba37136e4c563f5a57c1ed25a78bcafe0b06628c6cb3e21273df81373ef258189cfcff5982ad SHA512 162d86bd2b270603f9d6212df9c5d8e8dac17482026960677fdebdf351fd65981f16d7f31f319fb3ad7dc64b74bc008a4018be7d31e6fcb31c5cf9230eeba7d3
+EBUILD pysol-cards-0.18.1.ebuild 492 BLAKE2B 5c186d87d0b3436f98c26e92471695a9d782d4c64196ace1d8b25b20f1625086afc987a8e78b38295ecd42dac53dae66e56470129f91ec380fd34abd395b773a SHA512 bb47f81d69003019a33cec96c6232ea7b4e53a15ad7bb6ba8b39dae635a8595bb5f9cc1450dad8122ddccfe2fef8ddac5138fc27384e98718728fed3689b26cd
MISC metadata.xml 474 BLAKE2B 47398a90962b1059e1d2725f7b20dbc10586cee53ab27eff6a9d0c8d93cde1b103580494a38aad77a3ae04c7f7a95bcbe52722ce18476a77994e49cb64076e58 SHA512 b8cba71875a546d130fbc94e3a76a3e0dd27552ce14de46a8b6bd79f12584b59ea8e9354fadd272c4e21ac9df7f43e9c1db9087338acfbed3dc680a6d812ffa6
diff --git a/dev-python/pysol-cards/pysol-cards-0.18.1.ebuild b/dev-python/pysol-cards/pysol-cards-0.18.1.ebuild
new file mode 100644
index 000000000000..af853bcb25b3
--- /dev/null
+++ b/dev-python/pysol-cards/pysol-cards-0.18.1.ebuild
@@ -0,0 +1,25 @@
+# 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..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Deal PySol FreeCell cards"
+HOMEPAGE="
+ https://github.com/shlomif/pysol_cards/
+ https://pypi.org/project/pysol-cards/
+"
+
+LICENSE="Apache-2.0 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest -s tests
+}
diff --git a/dev-python/qtpy/Manifest b/dev-python/qtpy/Manifest
index f1e767393027..979fb4ed1c30 100644
--- a/dev-python/qtpy/Manifest
+++ b/dev-python/qtpy/Manifest
@@ -1,4 +1,6 @@
DIST qtpy-2.4.2.tar.gz 66849 BLAKE2B 1eb362e797950d6c1406fb02bb3047ca7f8fdecd2b75371ab34f39601c9bdebce33336e3809c0d35dca31673c88d1734721a6dfdfb65f2ce20729445c4a4ca27 SHA512 2f9a0e1a4839c8dca23b4364900a12c2bd00f518353785a41eb6bd62fdc469670457f18224e1150a5a216ff5d0c4e799c3a1711ff7703ea07fadd655538fa37a
+DIST qtpy-2.4.3.tar.gz 66982 BLAKE2B 92596eaac7be55feaecbfe2fad388ac3a7a5e55763dc794be2a70c081b311843f5dadb03dba06df6711c32ba9c68f18f54c35921b3ba6e2f02f20922ed89455a SHA512 9a12d9e7a8651309807d578e07075d1bd44a7e72b84b7761e80e80b115a492c9369d842a3cca32a438070d9fde2564d9a69d7a2470e9331d81b11469e2c9808a
EBUILD qtpy-2.4.2-r1.ebuild 6271 BLAKE2B 9bfa2a96e7fde10e49e3c3ad69b6bbfecb91dde5bfc3e02fde4769901151f66cad3e7689b92d067ed7aecb69f245b229516e13c860153e530f7f737070f98076 SHA512 0976c21c23cb3c7ef840cc3b2a067ad95602373e493a8b3356f3d3626710e68c4ba4b7512488320b3e35e59e8f8d9b4b4c7861d1c1cb2413915b638582a8e1ac
EBUILD qtpy-2.4.2.ebuild 7595 BLAKE2B d7a58026eb6b312a2aae3b5187f8ab07640623002deadabe9bdde3d7d81bc88a2af77e04698c791327d093193fda2924871fa1d72ac081914939de0758e25b6d SHA512 aad71f94a683aa4e11180797a6f5cb367cf89b61a7dd23c2788ae6bbdc52a2a6317477e702d58eda2c1febce6fe53e1092b855fa20d782a5b5c46454985e54c9
-MISC metadata.xml 3021 BLAKE2B 0e8ae3c83ed9b91a202c684b769c9277f3e67957e534b18a9bad173bb749f021f794ee610d9ea9c58b7556d0c2e176e57c55c2e8d08396a65b9b30388e431889 SHA512 16bc446e4f9eb0f78f91e368a457c5a276000435ce9e8ada9135a8eb47b8bb97c0934b83450d110db4ea76445fd9089fa24a43a65759f0fc0db6a68eca086ba2
+EBUILD qtpy-2.4.3.ebuild 6330 BLAKE2B 1e2854b4f5b614c8f672b09c7c846a2db8ba520814f3b0fa11e4d361f444d757d2dc1ad9e7d7495eba8958ae79fad1c64c68ab75ffaf02897faee87be3e47e73 SHA512 b79ce8b82cd132f9103ab91338d8c8a28351a079249bb36e694c87bce3ed6cd211332562fe60a11194fee8035268ade7412a4c8427547c0f87a781f37e722d02
+MISC metadata.xml 3089 BLAKE2B d7b38abc29fdd333308dac5f588de6a84f35f1b8f64df18952d8524295ede947cb83ae5ff083bae4af4caf9883463ced682fe83b6f9b654e2da773c2b94548b9 SHA512 825ba4cf6b13703370cf4377cd71478df42cc8bce91b68ad7a6084b286cbd0ba9ec9a20025f848ecfdaeb97298724ffd563b20e0268c050e3817c7ec589c8c5e
diff --git a/dev-python/qtpy/metadata.xml b/dev-python/qtpy/metadata.xml
index efd532e34547..fe0e7db3605b 100644
--- a/dev-python/qtpy/metadata.xml
+++ b/dev-python/qtpy/metadata.xml
@@ -32,6 +32,7 @@
<flag name="quick">Build bindings for the QtQuick</flag>
<flag name="quick3d">Build bindings for the QtQuick3D</flag>
<flag name="remoteobjects">Pull in bindings for the QtRemoteObjects module</flag>
+ <flag name="scxml">Pull in bindings for the QtScXml module</flag>
<flag name="sensors">Pull in bindings for the QtSensors module</flag>
<flag name="serialport">Pull in bindings for the QtSerialPort module</flag>
<flag name="spatialaudio">Pull in bindings for the QtSpatialAudio module</flag>
diff --git a/dev-python/qtpy/qtpy-2.4.3.ebuild b/dev-python/qtpy/qtpy-2.4.3.ebuild
new file mode 100644
index 000000000000..3870257452f8
--- /dev/null
+++ b/dev-python/qtpy/qtpy-2.4.3.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=QtPy
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 virtualx pypi
+
+DESCRIPTION="Abstraction layer on top of PyQt and PySide with additional custom QWidgets"
+HOMEPAGE="
+ https://github.com/spyder-ide/qtpy/
+ https://pypi.org/project/QtPy/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+_IUSE_QT_MODULES="
+ bluetooth dbus designer +gui help multimedia +network nfc opengl pdfium
+ positioning printsupport qml quick quick3d remoteobjects scxml sensors
+ serialport spatialaudio speech +sql svg testlib vulkan webchannel
+ webengine websockets +widgets +xml
+"
+IUSE="+pyqt6 pyside6 ${_IUSE_QT_MODULES}"
+unset _IUSE_QT_MODULES
+
+REQUIRED_USE="|| ( pyqt6 pyside6 )"
+
+# These flags are currently *not* common to the PySide2/6 and PyQt5/6 ebuilds
+# Disable them for now, please check periodically if this is still up to date.
+# 3d? ( pyside6 only )
+# charts? ( pyside6 only )
+# concurrent? ( pyside6 only )
+# httpserver? ( pyside6 only )
+# uitools? ( pyside6 only )
+# location? ( pyside6 only)
+# network-auth? ( pyside6 only )
+
+# WARNING: the obvious solution of using || for PyQt5/pyside2 is not going
+# to work. The package only checks whether PyQt5/pyside2 is installed, it does
+# not verify whether they have the necessary modules (i.e. satisfy the USE dep).
+#
+# Webengine is a special case, because PyQt6 provides this in a separate package
+# while PySide6 ships it in the same package.
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ pyqt6? (
+ dev-python/pyqt6[${PYTHON_USEDEP}]
+ dev-python/pyqt6[bluetooth?,dbus?,designer?,gui?,help?,multimedia?]
+ dev-python/pyqt6[network?,nfc?,opengl?,pdfium?,positioning?]
+ dev-python/pyqt6[printsupport?,qml?,quick?,quick3d?,remoteobjects?]
+ dev-python/pyqt6[scxml(-)?,sensors?,serialport?,spatialaudio?,speech?]
+ dev-python/pyqt6[sql?,svg?,testlib?,vulkan?,webchannel?,websockets?]
+ dev-python/pyqt6[widgets?,xml?]
+ webengine? ( dev-python/pyqt6-webengine[${PYTHON_USEDEP},widgets?,quick?] )
+
+ )
+ pyside6? (
+ dev-python/pyside:6[${PYTHON_USEDEP},core(+)]
+ dev-python/pyside:6[bluetooth?,dbus?,designer?,gui?,help?,multimedia?]
+ dev-python/pyside:6[network?,nfc?,opengl?,pdfium?,positioning?]
+ dev-python/pyside:6[printsupport?,qml?,quick?,quick3d?,remoteobjects(-)?]
+ dev-python/pyside:6[scxml?,sensors?,serialport?,spatialaudio?,speech?]
+ dev-python/pyside:6[sql?,svg?,testlib?,vulkan(+)?,webchannel?,webengine?]
+ dev-python/pyside:6[websockets?,widgets?,xml?]
+ )
+"
+
+# The QtPy testsuite skips tests for bindings that are not installed, so here we
+# ensure that everything is available and all tests are run. Note that not
+# all flags are available in PyQt5/PySide2, so some tests are still skipped.
+BDEPEND="
+ test? (
+ dev-python/pytest-qt[${PYTHON_USEDEP}]
+ pyqt6? (
+ dev-python/pyqt6[${PYTHON_USEDEP}]
+ dev-python/pyqt6[bluetooth,dbus,designer,gui,help,multimedia]
+ dev-python/pyqt6[network,nfc,opengl,pdfium,positioning,printsupport]
+ dev-python/pyqt6[qml,quick,quick3d,scxml(-),sensors,serialport]
+ dev-python/pyqt6[spatialaudio,speech,sql,svg,testlib,webchannel]
+ dev-python/pyqt6[vulkan(-),websockets,widgets,xml]
+ dev-python/pyqt6-webengine[${PYTHON_USEDEP},widgets,quick]
+ dev-qt/qtbase:6[sqlite]
+ )
+ pyside6? (
+ dev-python/pyside:6[${PYTHON_USEDEP},core(+)]
+ dev-python/pyside:6[3d,bluetooth,charts,concurrent,dbus,designer,gui]
+ dev-python/pyside:6[help,location,multimedia,network,network-auth]
+ dev-python/pyside:6[nfc,opengl,pdfium,positioning,printsupport,qml]
+ dev-python/pyside:6[quick,quick3d,scxml,sensors,serialport]
+ dev-python/pyside:6[spatialaudio,speech,sql,svg,testlib,vulkan(+)]
+ dev-python/pyside:6[webchannel,webengine,websockets,widgets,xml]
+ dev-qt/qtbase:6[sqlite]
+ )
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -i -e 's:--cov=qtpy --cov-report=term-missing::' pytest.ini || die
+ # Disable Qt for Python implementations that are not selected
+
+ # Always disable PyQt5
+ sed \
+ -e '/from PyQt5.QtCore import/,/)/c\ \ \ \ \ \ \ \ raise ImportError #/' \
+ -e '/if "PyQt5" in sys.modules:/,/"pyqt5"/c\' \
+ -i qtpy/__init__.py || die
+
+ # We need to ensure the first option is an 'if' not 'elif'
+ sed -e 's/elif "PySide2" in sys.modules:/if "PySide2" in sys.modules:/g' \
+ -i qtpy/__init__.py || die
+
+ # Always disable PySide2
+ sed \
+ -e "s/from PySide2 import/raise ImportError #/" \
+ -e "s/from PySide2.QtCore import/raise ImportError #/" \
+ -e '/if "PySide2" in sys.modules:/,/"pyside2"/c\' \
+ -i qtpy/__init__.py || die
+
+ sed \
+ -e 's/elif "PyQt6" in sys.modules:/if "PyQt6" in sys.modules:/g' \
+ -i qtpy/__init__.py || die
+
+ if ! use pyqt6; then
+ sed \
+ -e '/from PyQt6.QtCore import/,/)/c\ \ \ \ \ \ \ \ raise ImportError #/' \
+ -e '/if "PyQt6" in sys.modules:/,/"pyqt6"/c\' \
+ -i qtpy/__init__.py || die
+
+ sed \
+ -e 's/elif "PySide6" in sys.modules:/if "PySide6" in sys.modules:/g' \
+ -i qtpy/__init__.py || die
+ fi
+ if ! use pyside6; then
+ sed \
+ -e "s/from PySide6 import/raise ImportError #/" \
+ -e "s/from PySide6.QtCore import/raise ImportError #/" \
+ -e '/if "PySide6" in sys.modules:/,/"pyside6"/c\' \
+ -i qtpy/__init__.py || die
+ fi
+}
+
+python_test() {
+ local -x QT_API
+ local -a EPYTEST_DESELECT
+ local other
+
+ # Test for each enabled Qt4Python target.
+ # Deselect the other targets, their test fails if we specify QT_API
+ # or if we have disabled their corresponding inherit in __init__.py above
+ for QT_API in PyQt6 PySide6; do
+ if use "${QT_API,,}"; then
+ EPYTEST_DESELECT=()
+ for other in PyQt{5,6} PySide{2,6}; do
+ if [[ ${QT_API} != ${other} ]]; then
+ EPYTEST_DESELECT+=(
+ "qtpy/tests/test_main.py::test_qt_api_environ[${other}]"
+ )
+ fi
+ done
+
+ einfo "Testing with ${EPYTHON} and QT_API=${QT_API}"
+ nonfatal epytest -o addopts= ||
+ die -n "Tests failed with ${EPYTHON} and QT_API=${QT_API}" ||
+ return 1
+ fi
+ done
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+pkg_postinst() {
+ elog "When multiple Qt4Python targets are enabled QtPy will default to"
+ elog "the first enabled target in this order: PyQt6 PySide6."
+ elog "This can be overridden with the QT_API environment variable."
+}
diff --git a/dev-python/recurring-ical-events/Manifest b/dev-python/recurring-ical-events/Manifest
index b8d0653a1438..a48aeb0a2632 100644
--- a/dev-python/recurring-ical-events/Manifest
+++ b/dev-python/recurring-ical-events/Manifest
@@ -1,9 +1,5 @@
-DIST python-recurring-ical-events-3.3.3.gh.tar.gz 479005 BLAKE2B eca43a5892ffd3bc7b6b8e6c0d7d5c84d588894b2cc2d8a592d3753bd5c3158b3b0b4ac31932aa39e20c08789d72688b724cc128d53454b4a6c6e90e2dbd16ca SHA512 1b92383252c5497ff49adad5a2b5d2bb866dd72ccfd31621c305f5ec96baa5db9ca656f32787e34d9f551837cf9da769443fa017775a0d0042f6607fd138c7ef
-DIST python-recurring-ical-events-3.3.4.gh.tar.gz 479042 BLAKE2B cabd8679c362aa78f3f9a600d0518724dd4cabd4b813990147858dcb2659a14e5d947c8e1a2d4e681bf535387160a02e59bb816d6376ba9ba085b04718b5b1da SHA512 fcbc8faad94f34cdced49a9d7452aca61242241e45a591ce76334eb7b29a680e7bcd11f0b03c9037d43b3b4784fe641b032b48f714ee406d80ff43eec5208558
-DIST python-recurring-ical-events-3.4.0.gh.tar.gz 511539 BLAKE2B b451debd28dfa0e629dc7386841968bc3457d5dffe418aa2da10a7637956eb5975dd1d507701931cb9c95bb1f4d39deec452270c4d4f7a7758374af1a2fb46c7 SHA512 5031e902327b3b29806e65c24c059ec7e2a167f7ca96e6c79b639ddc67cbc526b569d822a1c9d9b625b08c8bde22f04b4cfc756bfed355c913de3a64db24ccc9
DIST python-recurring-ical-events-3.4.1.gh.tar.gz 511709 BLAKE2B 30d0c8894b723d4e2a824840837d5f966fbfcf9b525e98e28993d8bfa5aad4f9a8042e1484339afeb8a966381cc4df92335cb7d13e31baaeb85e22e5e5fc6a1f SHA512 fbad8bf7878a0806fba6c11cfb644f2aecd99b3bab63194137effc4730b81b18aa9a8b3bc48c4442d083515e8a41fc392afbe64f15b5d597fd24079c80e02ff6
-EBUILD recurring-ical-events-3.3.3.ebuild 1057 BLAKE2B 375d2636f97352af3d9785d46d533874ca39245fadb6c7baf79d3e2a9b3aa8febd6bf86f0b52ea1a20db79ceba13d04147f3e1ebb3951ca3a75af32cb859e75f SHA512 4e57efd1780d5d83572ade222bd30998455ef6408c335569f47778ce5cd066b16080973e76c21959416b6b27237dc0e6598227d5b1866584a6fc1019868c2e11
-EBUILD recurring-ical-events-3.3.4.ebuild 1053 BLAKE2B 848c08dde45f26cbf4a7fe87961f69954d3c986722c63716a89ed9ee2c1335c243a120809ffda4a74d4549a40596b619dd89bdab96bd625ad24d50308eb0681b SHA512 0dc529db57e19bdf4eb6514b6e932bbc207fc422c09f50cf5c011c08f4dbc1ac3797578eb7d378ad88d8aebf9c4511a68c53abade68bfea8ad5ba055d91fe4ff
-EBUILD recurring-ical-events-3.4.0.ebuild 1053 BLAKE2B 00a5b3acee8adb4e5671a6933715f1a02dab7c25e7b3fad42accc633d11902e728edbc1459abeb835377d63ea4b603708883b70e042acf0916e200a0a7cdefa9 SHA512 6741f394d6f190af1cadc8929ed97c23f9a9a61d3cd1c828488f293bef51135651962c7983dc6b79f3e1227321c0cf42aa01990f5f85a9d9140cd5abae4ccadb
+DIST python-recurring-ical-events-3.5.0.gh.tar.gz 519274 BLAKE2B 153c65210a4bcbc3fad9140c9f8c19c0391a2da8e3e4bf712ea341d822486f9d56704966cdbcdfa432dc01edac730dd97c1bf55b2338c4d28925f63a5ce98f6f SHA512 7f3e96ddb23c677d947608610955bef9f1eec91372b5dca66b6e085b304f17252f31458e5c0c62dd20e2a3f654e0ffcbf7473359901223a82695e506ba0bd0c7
EBUILD recurring-ical-events-3.4.1.ebuild 1053 BLAKE2B e4aea09850a049767bb9c6ae4290333b321de4f80997dbff4bd6f7334f0439c78eb2ce511a0b772ab2674c4a4a2f4eeedbdb72926c2209ff4de39f54c617c3c4 SHA512 1ff214da4633bfd24e8a223e990a17d29b5c3d455b091c1fd46584478d7747b164025d2385dc7a124c835532902478fe4c138c8d427023e3c8ceb019dacb934b
+EBUILD recurring-ical-events-3.5.0.ebuild 1053 BLAKE2B e4aea09850a049767bb9c6ae4290333b321de4f80997dbff4bd6f7334f0439c78eb2ce511a0b772ab2674c4a4a2f4eeedbdb72926c2209ff4de39f54c617c3c4 SHA512 1ff214da4633bfd24e8a223e990a17d29b5c3d455b091c1fd46584478d7747b164025d2385dc7a124c835532902478fe4c138c8d427023e3c8ceb019dacb934b
MISC metadata.xml 431 BLAKE2B 19ac0f0a385fb9b0524bf641831fbe3c02f35f3ada35922b297563f871cb8e745404e04d18d9f7428ef5b3cca27f5205f4a7f99e85e2a3da18542a19574f04de SHA512 35283cfbd447b3ec9d0d97ec7c11580db012ee60076b12ba733962d58896203a162ece04a9015eca8cc556f28fac307fc9ddeb27c3ea9cb9c8b2d6df0cf93a50
diff --git a/dev-python/recurring-ical-events/recurring-ical-events-3.3.3.ebuild b/dev-python/recurring-ical-events/recurring-ical-events-3.3.3.ebuild
deleted file mode 100644
index 61966884487f..000000000000
--- a/dev-python/recurring-ical-events/recurring-ical-events-3.3.3.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit distutils-r1
-
-MY_P=python-${P}
-DESCRIPTION="Repeat ICalendar events by RRULE, RDATE and EXDATE"
-HOMEPAGE="
- https://github.com/niccokunzmann/python-recurring-ical-events/
- https://pypi.org/project/recurring-ical-events/
-"
-SRC_URI="
- https://github.com/niccokunzmann/python-recurring-ical-events/archive/v${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="LGPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- <dev-python/icalendar-7[${PYTHON_USEDEP}]
- >=dev-python/icalendar-5.0.9[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
- <dev-python/x-wr-timezone-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/x-wr-timezone-1.0.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/icalendar-6[${PYTHON_USEDEP}]
- >=dev-python/pytz-2023.3[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_IGNORE=(
- test/test_readme.py
-)
diff --git a/dev-python/recurring-ical-events/recurring-ical-events-3.3.4.ebuild b/dev-python/recurring-ical-events/recurring-ical-events-3.3.4.ebuild
deleted file mode 100644
index 4d17f9a7ab05..000000000000
--- a/dev-python/recurring-ical-events/recurring-ical-events-3.3.4.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..13} )
-
-inherit distutils-r1
-
-MY_P=python-${P}
-DESCRIPTION="Repeat ICalendar events by RRULE, RDATE and EXDATE"
-HOMEPAGE="
- https://github.com/niccokunzmann/python-recurring-ical-events/
- https://pypi.org/project/recurring-ical-events/
-"
-SRC_URI="
- https://github.com/niccokunzmann/python-recurring-ical-events/archive/v${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="LGPL-3+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- <dev-python/icalendar-7[${PYTHON_USEDEP}]
- >=dev-python/icalendar-5.0.9[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
- <dev-python/x-wr-timezone-3[${PYTHON_USEDEP}]
- >=dev-python/x-wr-timezone-1.0.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/icalendar-6[${PYTHON_USEDEP}]
- >=dev-python/pytz-2023.3[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_IGNORE=(
- test/test_readme.py
-)
diff --git a/dev-python/recurring-ical-events/recurring-ical-events-3.4.0.ebuild b/dev-python/recurring-ical-events/recurring-ical-events-3.5.0.ebuild
index 36ea67595b61..178daa312f14 100644
--- a/dev-python/recurring-ical-events/recurring-ical-events-3.4.0.ebuild
+++ b/dev-python/recurring-ical-events/recurring-ical-events-3.5.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023-2024 Gentoo Authors
+# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 931f4d32fc2a..666a93ff9844 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -58,6 +58,7 @@ DIST serde_json-1.0.133.crate 150739 BLAKE2B 7891eb5b8edcc7fd09ab1e15d3881ffdcb6
DIST sqlglot-26.3.8.tar.gz 19957402 BLAKE2B c4dd2a2f64c7b8fa537d0d81b0915b0b2c044ae4cb1e6da8824cdb43e116313d61f93ddb3c0faaac83b6f624d595573c55686d0dd2cc103f716eab2f564e2ec6 SHA512 d1853353d60674a91d13cebcc3329d227fa7c998e2cfd689a3de77bea4fe5b1bd86dc167f790c929a1617b882962060bc84d923fc6f93f0356145438dcb8433c
DIST sqlglot-26.3.9.tar.gz 5311903 BLAKE2B 0637f47170c53b22a8672b4d35a16b5d22c696a1568b22b0474d9075b82534c18f54a66b06010a426ff8121be64934041871d97f78c5a1951ad200849ab5c5a0 SHA512 3fb7ba3a0fe583837a7aed0f18a66eefa06fa193f0f97484eca60fc13bb2700c27b7dd1b4d0a54d64adf8ea2b4009057a091534b5d52aa36a5d499c861e2b2a8
DIST sqlglot-26.4.1.tar.gz 5315460 BLAKE2B d96c6927f24ba10cff61c4a56542fe689c372e10e2af5c05829e856bf36ead667e56a37b5c8fcacbeaa3c08f302e8ec0f78a2896c7ee659ff419e8b023cf6e0a SHA512 0a17247b060a4d631799aa23e5722eb2b40676a1482207b0a9c5ee3c88b965e31e79b10855c174a918f4e2f32bde1b37dcbf45511d7814446a1fa1405f59e0d8
+DIST sqlglot-26.6.0.tar.gz 5317429 BLAKE2B 5ce8516f9e03c55bed95cbb5f6c8904c1304a161e3809da11ad178c26629fa343be32bdd0418d23fd37826b84f94000e272f5687d85a147b1a9f7c57adad101c SHA512 f600f1c596c02c1668bc1236c5539b4e80f0b5d4a85c1faebd4273cdd08d04ebf6f5bdb2d6885be5eeefcc25d87ed47efd81fd4790f3d82a406bb05932f6a1b4
DIST syn-2.0.87.crate 278076 BLAKE2B 93385f64103fdb482bec34c7912474ae7a5935948715e6eb9a54907e0db5c39f089f6cd393bab33c935c59a1bbb0f4099431f206343811c1a450554d96a35756 SHA512 bcfff545d6dfefd81e09f8f30a86bdd85759b3a7d4093ef3365ed02718e10dbd604c52b94c9d7fa955d339fdc5b6c079940c6f345b5a48c52b5c8607794ca6f2
DIST target-lexicon-0.12.16.crate 26488 BLAKE2B e7950e4a302059a1bfc9bc15618a3c1b971a17cffae117a6e8f5f63a0d82fd2bd02680301d15338612d5426d349dd24cfee30ee787a15a7d3187f2a6825e69ce SHA512 092639957c4a0391560b6442b31c47159c04d12e971010f730a6ec9cb5389e4be903ef3d7daa06db95e64dc78b6970731fb647179ebaad2b12e9ed5e9b24da27
DIST tinytemplate-1.2.1.crate 26490 BLAKE2B af39d96f33f63238e455a4e38fde1d1730fd9661ae68be7b05df6ef9d2ab1a04db1332cc4ec9deb6da3a8e22b124df81b0fa8916d8491b808742bb733c8e48be SHA512 0cc080057e096f0796e72004343e1a8332c2e8a12e43f6ade150ebf632e9c29c7ad04de0b940cd57df81efdc4d07a6607da9b86a30d8383e39ac3d7be185edb9
@@ -85,4 +86,5 @@ DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cac
EBUILD sqlglot-26.3.8.ebuild 3641 BLAKE2B 8d1848b9605a9125dbbdf7dfdc70f2deea6d15ed54cd4c173681d43247ae4c1a6693872bac6863c192573bf72efc4b267cf3caeebdd6779a79bfee456c4c5238 SHA512 12a927f528e20c29e75ac3aca17e43705851464571883b7534294d3a285af04237f6d310aa2a248bc856d5e7364c891713e134fb82e785c7f8443ff871e37d89
EBUILD sqlglot-26.3.9.ebuild 3641 BLAKE2B 8d1848b9605a9125dbbdf7dfdc70f2deea6d15ed54cd4c173681d43247ae4c1a6693872bac6863c192573bf72efc4b267cf3caeebdd6779a79bfee456c4c5238 SHA512 12a927f528e20c29e75ac3aca17e43705851464571883b7534294d3a285af04237f6d310aa2a248bc856d5e7364c891713e134fb82e785c7f8443ff871e37d89
EBUILD sqlglot-26.4.1.ebuild 3641 BLAKE2B 8d1848b9605a9125dbbdf7dfdc70f2deea6d15ed54cd4c173681d43247ae4c1a6693872bac6863c192573bf72efc4b267cf3caeebdd6779a79bfee456c4c5238 SHA512 12a927f528e20c29e75ac3aca17e43705851464571883b7534294d3a285af04237f6d310aa2a248bc856d5e7364c891713e134fb82e785c7f8443ff871e37d89
+EBUILD sqlglot-26.6.0.ebuild 3641 BLAKE2B 8d1848b9605a9125dbbdf7dfdc70f2deea6d15ed54cd4c173681d43247ae4c1a6693872bac6863c192573bf72efc4b267cf3caeebdd6779a79bfee456c4c5238 SHA512 12a927f528e20c29e75ac3aca17e43705851464571883b7534294d3a285af04237f6d310aa2a248bc856d5e7364c891713e134fb82e785c7f8443ff871e37d89
MISC metadata.xml 611 BLAKE2B 10bf684677182565c9932d51ed9b3b9c80d376d6db945bd7b0dd0d9a19a85dc0d10cb169ff2048ae5f7f73d0f438d259b6231c13c525b5374ec99377f4ffdd10 SHA512 2b26d0f77962807052b94ad78addcfdce9859042af3be34df267dc6e70b6231dd779563935fd21955cd8646fd0cce3fee8c939387ac8056194a0b777743dd2ae
diff --git a/dev-python/sqlglot/sqlglot-26.6.0.ebuild b/dev-python/sqlglot/sqlglot-26.6.0.ebuild
new file mode 100644
index 000000000000..f66889c1ac68
--- /dev/null
+++ b/dev-python/sqlglot/sqlglot-26.6.0.ebuild
@@ -0,0 +1,177 @@
+# Copyright 2023-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..13} )
+
+CARGO_OPTIONAL=1
+CRATES="
+ aho-corasick@1.1.3
+ anes@0.1.6
+ anstyle@1.0.10
+ autocfg@1.1.0
+ bumpalo@3.16.0
+ cast@0.3.0
+ cfg-if@1.0.0
+ ciborium-io@0.2.2
+ ciborium-ll@0.2.2
+ ciborium@0.2.2
+ clap@4.5.23
+ clap_builder@4.5.23
+ clap_lex@0.7.4
+ criterion-plot@0.5.0
+ criterion@0.5.1
+ crossbeam-deque@0.8.6
+ crossbeam-epoch@0.9.18
+ crossbeam-utils@0.8.21
+ crunchy@0.2.2
+ either@1.13.0
+ half@2.4.1
+ heck@0.5.0
+ hermit-abi@0.4.0
+ indoc@2.0.4
+ is-terminal@0.4.13
+ itertools@0.10.5
+ itoa@1.0.14
+ js-sys@0.3.76
+ libc@0.2.169
+ log@0.4.22
+ memchr@2.7.4
+ memoffset@0.9.0
+ num-traits@0.2.19
+ once_cell@1.19.0
+ oorandom@11.1.4
+ plotters-backend@0.3.7
+ plotters-svg@0.3.7
+ plotters@0.3.7
+ portable-atomic@1.9.0
+ proc-macro2@1.0.89
+ pyo3-build-config@0.22.6
+ pyo3-ffi@0.22.6
+ pyo3-macros-backend@0.22.6
+ pyo3-macros@0.22.6
+ pyo3@0.22.6
+ quote@1.0.37
+ rayon-core@1.12.1
+ rayon@1.10.0
+ regex-automata@0.4.9
+ regex-syntax@0.8.5
+ regex@1.11.1
+ rustc-hash@2.1.0
+ ryu@1.0.18
+ same-file@1.0.6
+ serde@1.0.216
+ serde_derive@1.0.216
+ serde_json@1.0.133
+ syn@2.0.87
+ target-lexicon@0.12.16
+ tinytemplate@1.2.1
+ unicode-ident@1.0.12
+ unindent@0.2.3
+ walkdir@2.5.0
+ wasm-bindgen-backend@0.2.99
+ wasm-bindgen-macro-support@0.2.99
+ wasm-bindgen-macro@0.2.99
+ wasm-bindgen-shared@0.2.99
+ wasm-bindgen@0.2.99
+ web-sys@0.3.76
+ winapi-util@0.1.9
+ windows-sys@0.52.0
+ windows-sys@0.59.0
+ windows-targets@0.52.6
+ windows_aarch64_gnullvm@0.52.6
+ windows_aarch64_msvc@0.52.6
+ windows_i686_gnu@0.52.6
+ windows_i686_gnullvm@0.52.6
+ windows_i686_msvc@0.52.6
+ windows_x86_64_gnu@0.52.6
+ windows_x86_64_gnullvm@0.52.6
+ windows_x86_64_msvc@0.52.6
+"
+
+inherit cargo distutils-r1 pypi optfeature
+
+DESCRIPTION="An easily customizable SQL parser and transpiler"
+HOMEPAGE="
+ https://sqlglot.com/
+ https://github.com/tobymao/sqlglot/
+ https://pypi.org/project/sqlglot/
+"
+SRC_URI+="
+ native-extensions? (
+ ${CARGO_CRATE_URIS}
+ )
+"
+
+LICENSE="MIT"
+LICENSE+=" native-extensions? ("
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016
+"
+LICENSE+=" )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ native-extensions? (
+ ${RUST_DEPEND}
+ dev-util/maturin[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
+
+pkg_setup() {
+ use native-extensions && rust_pkg_setup
+}
+
+src_unpack() {
+ cargo_src_unpack
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ if use native-extensions; then
+ local DISTUTILS_USE_PEP517=maturin
+ cd sqlglotrs || die
+ distutils-r1_python_compile
+ cd - >/dev/null || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # timing, sigh
+ # https://github.com/tobymao/sqlglot/issues/3961
+ tests/test_generator.py::TestGenerator::test_generate_nested_binary
+ )
+ local EPYTEST_IGNORE=(
+ # Tests require pyspark or duckdb which aren't in the tree.
+ # Pandas would be a requirement normally, but it gets ignored by proxy.
+ "tests/dataframe/integration/test_dataframe.py"
+ "tests/dataframe/integration/test_grouped_data.py"
+ "tests/dataframe/integration/test_session.py"
+ "tests/test_executor.py"
+ "tests/test_optimizer.py"
+ )
+
+ # make sure not to use an earlier installed version
+ local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
+ rm -rf sqlglotrs || die
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "simplifying timedelta expressions" dev-python/python-dateutil
+}
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index e6f278fd4f75..deedba518997 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -1,4 +1,6 @@
AUX virtualenv-20.26.3-ensurepip.patch 1231 BLAKE2B e70cb1a5f8dc8ccf6e08fce67aa3485c0f584937d8e7b693f0d0859d6ec9d9b16bf1492b9abe96d4c8c8eb12814eaa54f76ed8e318f3871ee956189ce08b3dff SHA512 86c98d7ce4a9ea073c72cd103cbce66ed720794fa4fa2b68ac19382e3c4f53303613aed80a6984a68cab513cb198d648c5c6f103308eacb3c7306b72e4321129
DIST virtualenv-20.29.1.tar.gz 7658028 BLAKE2B b03008966fdeb0f7e72525ae5612a17721b9e5cbfb1e95f7a0b1d9677dfc8d3036e86623724a722ea5571f32bb7a43a7af0ec530fba3fa4e96b5215b5ee06e66 SHA512 94a2c9ce13cb98bf1df6f2e0a9db0e1acacf4667fb9609ad39d8ae7a6529818c0b1597b463262b0ea9a492684d9af027fa0ac9c1bb499e862ab587786b3b9511
+DIST virtualenv-20.29.2.tar.gz 4320272 BLAKE2B 3a00c2be2a511968020df74eb5da6ee03cafb3942ac70b23ce598840d2c21db57ba190dac0d30fade915e379fca98db1c53a0c4dbafec457e817957bb736cde4 SHA512 9c455e38fcf1eb2e8ca053df35c86c04dae6c32a55e5ba057de1f1713f5f2a8ad0fa597e4409409646d6d3b3f020058f9955a2888756ac3e6af91e37efcf8c91
EBUILD virtualenv-20.29.1.ebuild 3420 BLAKE2B 792192a5c3a267215cc9b2e13c367811aa7e75f7be7e5b9d33e80431ac7276076c6c67c47ea96ce93aa4db6633fdb142881d22521e92dc364003bc7ed2a40c9d SHA512 066e75569689fb184f902878bc102020ebaa38efc617ab5a7613958ef2dab4cda34ed50076e23e15b0e4ea4702264bdbe4dbe7eb15193cccc4a704ecba0d8c14
+EBUILD virtualenv-20.29.2.ebuild 3428 BLAKE2B 20469ae687e98bc832c49748c93c4c0ec43af8caedff983a3036000c861d4c76ddbb0d3558f772ee6a71f736f55277a7b5cbbd76675b63ed88c732a3c20b33ac SHA512 20b24b2135301fbea99864189620e7fba222d7ade11afa37d56939946c4b08879aebd5d779bcbd18057b3dc9a942f0b4d891daf511410819867d73ff343abd6a
MISC metadata.xml 406 BLAKE2B 97fee04c2662c5c36b6e16538284def46eb2454424770f42edf2567ed804ca15c4e969c714c57573f897b0946246577ab6e35204ed1f3f1735713d8ab5d24667 SHA512 356d42db463b63a3b3a55c1e98eb661de0a10aa6a5fde4f8b3f888ec73020c6679e86efd8dbb0b3e4a5a720af95e658612ba460fe548e081a90beec75fb9c1b2
diff --git a/dev-python/virtualenv/virtualenv-20.29.2.ebuild b/dev-python/virtualenv/virtualenv-20.29.2.ebuild
new file mode 100644
index 000000000000..8af728153afa
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-20.29.2.ebuild
@@ -0,0 +1,118 @@
+# 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..13} pypy3 )
+
+inherit distutils-r1 multiprocessing 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"
+
+RDEPEND="
+ >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3.12.2[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
+
+ dev-python/ensurepip-pip
+ dev-python/ensurepip-setuptools
+ 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? (
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
+ ' pypy3)
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python3*')
+ dev-python/wheel[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_TIMEOUT=180
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ # use wheels from ensurepip bundle
+ "${FILESDIR}/${PN}-20.26.3-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() {
+ 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
+ )
+ case ${EPYTHON} in
+ python3.1[23])
+ EPYTEST_DESELECT+=(
+ tests/unit/create/via_global_ref/test_build_c_ext.py
+ )
+ ;&
+ python3.11)
+ EPYTEST_DESELECT+=(
+ # TODO
+ tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x TZ=UTC
+ local plugins=( -p flaky -p pytest_mock )
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ plugins+=( -p freezer )
+ else
+ plugins+=( -p time_machine )
+ fi
+ epytest "${plugins[@]}" -p xdist -n "$(makeopts_jobs)" --dist=worksteal
+}
+
+src_install() {
+ distutils-r1_src_install
+
+ # remove bundled wheels, we're using ensurepip bundle instead
+ find "${ED}" -name '*.whl' -delete || die
+}
diff --git a/dev-python/virtualenvwrapper/Manifest b/dev-python/virtualenvwrapper/Manifest
index 31ef16fe82f0..7b49fa944ce0 100644
--- a/dev-python/virtualenvwrapper/Manifest
+++ b/dev-python/virtualenvwrapper/Manifest
@@ -1,5 +1,7 @@
AUX virtualenvwrapper-4.8.4_p20230121-override-default-python-executable.patch 905 BLAKE2B e3dc59287d4fa4efe5427c77690853136a3d52abf58ae3f8931755c846f6f81beb5d04338d9a587a1281ef7ef9b99616c95d2c355df3481141a13d843dc4cb79 SHA512 b5827d93420d33767e6931ebb7ab6337baa186848e270eff4bfe2f31d98e550647754c7b466290a8fee666acd8a0f5b4d4a962af8834c43349b448f569ba15d9
AUX virtualenvwrapper-6.0.0-remove-use-of-which.patch 4163 BLAKE2B 18b55822ef7fdf9da462fa35a0bc9a40ff99617dc0a0df1d29dd93b0ae1ba77c598f5458eb1ccf1f9fb86503e23d332db224fe59acd1af6b692a88bdffd5944f SHA512 e7749734d9a58841eff2019e89d36c5f1c2c8a2138b088584da5eec30cce2ee4e94fdbeae802d6d9d883076863d967eb0096f84b2bbb3180ac7cfa9936945fb7
DIST virtualenvwrapper-6.1.0.tar.gz 95880 BLAKE2B 86d37682148ee132f9be5c4554de3c770c0f1c3055441bbce080d94da6fa83fc138a15c4c7edbb525e0c303c3c2ba5c1b1ee23260ea5bafaab157b3699b39b87 SHA512 78e09956132862fbf1caf53cb6c9375aa3718685f72d8f3fb61e402e6b26e8568d5b3a3ed18142b14f3b2691f89e6f912782e813d8139dc71ceb7e47bde8d0b0
+DIST virtualenvwrapper-6.1.1.tar.gz 95964 BLAKE2B 722fee78cdadbde77e03b22458f1591e9540ef12cd7deb14ecfa8abf1b030d16f8548b31297832eaf843d5b1db8453c239ff42162d66a74490339ab77e8ccc37 SHA512 1d2095c79f3679a4068418fe6e740771334bf0be44961dc5a50ac4848c83b5af046fc6125497177b864603efc4f2a0aacc912185129b8eb510dc4dcdef661853
EBUILD virtualenvwrapper-6.1.0.ebuild 1795 BLAKE2B 0352ecb5c59f8371c431da8b4fbc665f29b5dd51e6d57befc03695acb071cd750c3a1ddca243d791367ba85f8ab36cc6dc90e0c8131a4057fffe282839c6eefd SHA512 7462480c8f1e79d0526869bfc80936c3a2cc0a7847c89c3bfcbba771aca92ca0bd1f2d0d0fe85c47bd58a410ec9554547f5e2ba2ff51f6a20e8a1c5087e0186b
+EBUILD virtualenvwrapper-6.1.1.ebuild 2770 BLAKE2B 951cfaa3c8de51ca5ab55677b4bcb08b392b1c95beddecbafd50b99feebeee944ea3d0940e13724a9855149ec34aac98248bc0a4a0f971e6207fd19bafe040f4 SHA512 d6d899eec6ecf3a7663d3fe9e9cae7be8037f1d657745515dc77f318009cc80031c0e41bdd45f9c2593916a623e53342aa95427d6a2d3e2c8f740d705f613888
MISC metadata.xml 732 BLAKE2B fa857378ea2001e084a9d00d5ccc65644cc4e3ade62c04ff7dfeec4cf7df245bd700833aec1f5f430d780be5adb8fb594300e43a113b232fa83a3cfd2fa0cb15 SHA512 935796e3055e0104328dab877ca92e579770d6748053e464f6ce3563ea49022eaeae322c5c9cb026e9c3f42089c89ae06c0a2e755d124c71e05768cbbefdda44
diff --git a/dev-python/virtualenvwrapper/virtualenvwrapper-6.1.1.ebuild b/dev-python/virtualenvwrapper/virtualenvwrapper-6.1.1.ebuild
new file mode 100644
index 000000000000..348f62c23963
--- /dev/null
+++ b/dev-python/virtualenvwrapper/virtualenvwrapper-6.1.1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_SINGLE_IMPL=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Set of extensions to Ian Bicking's virtualenv tool"
+HOMEPAGE="
+ https://github.com/python-virtualenvwrapper/virtualenvwrapper/
+ https://pypi.org/project/virtualenvwrapper/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/stevedore[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ dev-python/virtualenv-clone[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ ')
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/pip[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/virtualenvwrapper-6.0.0-remove-use-of-which.patch"
+ "${FILESDIR}/virtualenvwrapper-4.8.4_p20230121-override-default-python-executable.patch"
+)
+
+src_prepare() {
+ default
+
+ # specify default python interpeter to align with PYTHON_SINGLE_TARGET
+ sed -i -e "s:@@GENTOO_PYTHON_EXECUTABLE@@:${PYTHON}:" virtualenvwrapper.sh || die
+
+ # remove tests which require an internet connection + bug #936086
+ rm tests/test_mkvirtualenv_install.sh || die
+ rm tests/test_mkvirtualenv_requirements.sh || die
+ sed -i -e '/test_new_env_activated () {/,/}/ d' tests/test_cp.sh || die
+ sed -i -e '/test_wipeenv () {/,/}/ d' tests/test_wipeenv.sh || die
+
+ # remove tests which require functional git repos with remotes
+ sed -i -e '/test_wipeenv_\(pip_e\|develop\) () {/,/}/ d' tests/test_wipeenv.sh || die
+}
+
+python_test() {
+ # tests have unusual expectations
+ local -x HOME="${HOME%/}"
+ local -x USER="${USER}"
+ local -x USING_TOX=1
+
+ # Make sure that users env doesn't leak to tests
+ unset VIRTUALENVWRAPPER_SCRIPT
+ unset _VIRTUALENVWRAPPER_API
+
+ local old_path="${PATH}"
+
+ # Tests are based on how upstream tox handles it
+
+ cp -a "${BUILD_DIR}"/{install/usr,test_bash} || die
+ local -x VIRTUAL_ENV="${BUILD_DIR}/test_bash"
+ touch "${VIRTUAL_ENV}"/bin/activate || die # silence warning
+
+ local -x PATH="${VIRTUAL_ENV}/bin:${old_path}"
+ local -x SHELL="/bin/bash"
+ local -x test_shell_opts=
+
+ bash ./tests/run_tests "${VIRTUAL_ENV}" || die "Tests failed under ${EPYTHON} with bash"
+
+ if has_version app-shells/zsh; then
+ cp -a "${BUILD_DIR}"/{install/usr,test_zsh} || die
+ local -x VIRTUAL_ENV="${BUILD_DIR}/test_zsh"
+ touch "${VIRTUAL_ENV}"/bin/activate || die # silence warning
+
+ local -x PATH="${VIRTUAL_ENV}/bin:${old_path}"
+ local -x SHELL="/bin/zsh"
+ local -x test_shell_opts="-o shwordsplit"
+
+ zsh -o shwordsplit ./tests/run_tests "${VIRTUAL_ENV}" || die "Tests failed under ${EPYTHON} with zsh"
+ fi
+}
diff --git a/dev-python/zeroconf/Manifest b/dev-python/zeroconf/Manifest
index 8af3446c8380..dd257752719c 100644
--- a/dev-python/zeroconf/Manifest
+++ b/dev-python/zeroconf/Manifest
@@ -1,7 +1,11 @@
DIST zeroconf-0.140.1.tar.gz 240320 BLAKE2B 70d10656f8a79a837d24901ceffb106ff86c805f922569aef48aa4e7b94f0f88e80c48085a282d3a928a863509309593f8f6457d6a0b0608eb0143c5dd56c7aa SHA512 b92c25dad0e313f72870da54d0f9f9f96c889130f23eba2946702fb95c82757a40f96285771568074d78346f67f9e366ef0e488256a669daf602971919f48ab1
DIST zeroconf-0.142.0.tar.gz 159412 BLAKE2B 78b1d7e50e9a37571743942c614e8d5b65761f8be1deb5394aca65d4d82e9b607d20ea41322df6bb20d0efc35e1464b01ad5c734e386e7d550d9d4b980452d74 SHA512 754679a6bc5d9175012a0299786f1aad0e199cc06b47ee2a4c3b4f94cbabb7a61037b6541564e7c9ce26b867abb9a31fc6ae3ef1b1ca1d5ba225f000dc2bba5d
DIST zeroconf-0.143.0.tar.gz 159481 BLAKE2B 3c73c85a86180b21766bae0a9ba9ebce89109f28e7f0e103c703a988bd604cf714e93bd9b52d50c76143745b99ce14a9fa8ff968f8391da066cb1782f93f41ad SHA512 11bbff2b045cea94588f8c1aadc2f53f82632c48d8fbabccc4fdd71f25e178fb9f5fe6d5016b5c389f396155a23b1749f39d89015af243d84c83afdcee4323b8
+DIST zeroconf-0.143.1.tar.gz 160017 BLAKE2B 6ca7c3c72f747703c2d12aa1547c1007bca77ba288e915e5dc56f77c21117158792e5ebb0829d016058889592e45139ee80af3f57d71ff333e5523834062d0e3 SHA512 16efd961a5c06264006ef6c39afbff49cce09812a31b392b3fa56c9f14cb4ea011ab6c1cac9934ad5e466e1430154f70693ea2160ec6d319e3a4a516005b90dd
+DIST zeroconf-0.144.1.tar.gz 160109 BLAKE2B c0dc535665fa46ee143c09b35f380f6898c16a844d2e7c3c233bd0ea1b0c0f1f551daf05dd220f4d7ce6478f65d5bb8a1dbda2d845744e9fe46b6138008c98f7 SHA512 3ad3827c5bd834ce4fc9b6a1349c34b0ede562da327f87fba17905b697a001271c55569e4a1ee8857c088a96a18e1a0782836a7ec2ff3c36982ae57f805e72c8
EBUILD zeroconf-0.140.1.ebuild 1455 BLAKE2B 09e93d5b2d5ffe19a9fdbc53f2814ae7ebf8a7f79b2c9078aed530aab5ac8416582760ed2e754aa8c1158d3533d7f1d89a69aa462bcb609ceb0c7bd20536b42e SHA512 9af8834e908ac2465ce4e10fbe5c542b7593b8db73110dc80e57325f6f07ff164f1862e43f071db4150404ac45b69ec3a9bae98c3b5288e1eec77ee2d500d7a0
EBUILD zeroconf-0.142.0.ebuild 1458 BLAKE2B af857ad50cf4ce26308debf10956204b92f3d5b2ed02800bcbb7087d09b786f439c2bee2ed0c96498c6a0004c64b190e4e9f5cac0d44d2d706f7873738e377d7 SHA512 eca5204f09273bbe6ea322d07bdbba7e46f59ddf7fc7925dec6eb85074af7118c5eb01230f839578943fe955a19dc641ca65d8d90fd5afd80c774a0116055069
EBUILD zeroconf-0.143.0.ebuild 1371 BLAKE2B 1a6073f245ac0adaca2175adb38c3bfbfd3e15e4004b0ab277ecca4e9cbb47a15c4cbfddada68ceb6f0712c341783884ee2d184d21b959a83e83ee5e043b7394 SHA512 c993d50db1fecaf86cdfbbced3bf2c21b968e6f41fd05dbb423e0177529b7971b5e5b02177681535bf4fd33bfa7fe5293ba65629a24226336cd141857dcc6169
+EBUILD zeroconf-0.143.1.ebuild 1524 BLAKE2B 11feb0eaec1c4f7e8cd91b1253585a4c741f5fc880618cde9fe8b28d7b292a797c884a8e38c93659c24fd2919ccf8f5640d8fda7306bb30c5b0cb3b92384af05 SHA512 9f90c7b05212c39af8300e680a26adfcff77d1f3b060ee9f60794f5f0a9bea5e56114f90f661c4416a078ab1acb145f57a2f5fd53ab168adfabc6ee625ba8b3b
+EBUILD zeroconf-0.144.1.ebuild 1524 BLAKE2B 11feb0eaec1c4f7e8cd91b1253585a4c741f5fc880618cde9fe8b28d7b292a797c884a8e38c93659c24fd2919ccf8f5640d8fda7306bb30c5b0cb3b92384af05 SHA512 9f90c7b05212c39af8300e680a26adfcff77d1f3b060ee9f60794f5f0a9bea5e56114f90f661c4416a078ab1acb145f57a2f5fd53ab168adfabc6ee625ba8b3b
MISC metadata.xml 395 BLAKE2B e1ce7a8fbd6d50fd59fbce671a535a3af2fde79dcc98f146c4e361759e61ce6d7e4e241866262fcd78744c673212d1946830c3d7628956b498a98d0af36d4c3d SHA512 544cb62da7212926b63c4e19467fc3e3f7c8210320a8096dc913a846d392e9a09c2b9860312f88effc8ad7a54e0329149a68012b08c674663af5779957e037f9
diff --git a/dev-python/zeroconf/zeroconf-0.143.1.ebuild b/dev-python/zeroconf/zeroconf-0.143.1.ebuild
new file mode 100644
index 000000000000..8ab627f86158
--- /dev/null
+++ b/dev-python/zeroconf/zeroconf-0.143.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure Python Multicast DNS Service Discovery Library (Bonjour/Avahi compatible)"
+HOMEPAGE="
+ https://github.com/python-zeroconf/python-zeroconf/
+ https://pypi.org/project/zeroconf/
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/ifaddr-0.1.7[${PYTHON_USEDEP}]
+"
+# the build system uses custom build script that uses distutils to build
+# C extensions, sigh
+BDEPEND="
+ >=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-65.6.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export REQUIRE_CYTHON=1
+
+python_test() {
+ local -x SKIP_IPV6=1
+ local EPYTEST_DESELECT=(
+ # network
+ tests/test_core.py::Framework::test_close_multiple_times
+ tests/test_core.py::Framework::test_launch_and_close
+ tests/test_core.py::Framework::test_launch_and_close_context_manager
+
+ # fragile to timeouts (?)
+ tests/services/test_browser.py::test_service_browser_expire_callbacks
+ tests/utils/test_asyncio.py::test_run_coro_with_timeout
+
+ # randomly broken by a leftover thread?
+ tests/test_circular_imports.py::test_circular_imports
+ )
+ local EPYTEST_IGNORE=(
+ tests/benchmarks
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o addopts= -p asyncio
+}
diff --git a/dev-python/zeroconf/zeroconf-0.144.1.ebuild b/dev-python/zeroconf/zeroconf-0.144.1.ebuild
new file mode 100644
index 000000000000..8ab627f86158
--- /dev/null
+++ b/dev-python/zeroconf/zeroconf-0.144.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure Python Multicast DNS Service Discovery Library (Bonjour/Avahi compatible)"
+HOMEPAGE="
+ https://github.com/python-zeroconf/python-zeroconf/
+ https://pypi.org/project/zeroconf/
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/ifaddr-0.1.7[${PYTHON_USEDEP}]
+"
+# the build system uses custom build script that uses distutils to build
+# C extensions, sigh
+BDEPEND="
+ >=dev-python/cython-3.0.8[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-65.6.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export REQUIRE_CYTHON=1
+
+python_test() {
+ local -x SKIP_IPV6=1
+ local EPYTEST_DESELECT=(
+ # network
+ tests/test_core.py::Framework::test_close_multiple_times
+ tests/test_core.py::Framework::test_launch_and_close
+ tests/test_core.py::Framework::test_launch_and_close_context_manager
+
+ # fragile to timeouts (?)
+ tests/services/test_browser.py::test_service_browser_expire_callbacks
+ tests/utils/test_asyncio.py::test_run_coro_with_timeout
+
+ # randomly broken by a leftover thread?
+ tests/test_circular_imports.py::test_circular_imports
+ )
+ local EPYTEST_IGNORE=(
+ tests/benchmarks
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o addopts= -p asyncio
+}