summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-03-04 18:57:43 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-03-04 18:57:43 +0000
commit399f932d3550c5185a64583a1cd2f301796d4c7d (patch)
treecc06ee72f668895aaf4204029f0b16f1315a9447 /dev-python
parentf7a82ee5a53607f39c76f174a428e76abcf54cb6 (diff)
downloadbaldeagleos-repo-399f932d3550c5185a64583a1cd2f301796d4c7d.tar.gz
baldeagleos-repo-399f932d3550c5185a64583a1cd2f301796d4c7d.tar.xz
baldeagleos-repo-399f932d3550c5185a64583a1cd2f301796d4c7d.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiohappyeyeballs/Manifest1
-rw-r--r--dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.8.ebuild36
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.37.5.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.37.5.ebuild67
-rw-r--r--dev-python/elementpath/Manifest1
-rw-r--r--dev-python/elementpath/elementpath-4.8.0.ebuild33
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.127.6.ebuild110
-rw-r--r--dev-python/inline-snapshot/Manifest1
-rw-r--r--dev-python/inline-snapshot/inline-snapshot-0.20.4.ebuild62
-rw-r--r--dev-python/ipyparallel/Manifest1
-rw-r--r--dev-python/ipyparallel/files/ipyparallel-9.0.1-pypy3_11.patch43
-rw-r--r--dev-python/ipyparallel/ipyparallel-9.0.1.ebuild96
-rw-r--r--dev-python/ipython-pygments-lexers/ipython-pygments-lexers-1.1.1.ebuild2
-rw-r--r--dev-python/ipython/Manifest1
-rw-r--r--dev-python/ipython/ipython-9.0.0.ebuild2
-rw-r--r--dev-python/ipython/ipython-9.0.1.ebuild159
-rw-r--r--dev-python/mock/Manifest1
-rw-r--r--dev-python/mock/mock-5.2.0.ebuild23
-rw-r--r--dev-python/nbxmpp/Manifest1
-rw-r--r--dev-python/nbxmpp/nbxmpp-6.0.1.ebuild35
-rw-r--r--dev-python/osc-placement/Manifest1
-rw-r--r--dev-python/osc-placement/osc-placement-4.6.0.ebuild50
-rw-r--r--dev-python/pkgcraft/pkgcraft-0.0.11.ebuild4
-rw-r--r--dev-python/proselint/Manifest1
-rw-r--r--dev-python/proselint/proselint-0.14.0.ebuild27
-rw-r--r--dev-python/pymongo/Manifest1
-rw-r--r--dev-python/pymongo/pymongo-4.11.2.ebuild237
-rw-r--r--dev-python/python-barbicanclient/Manifest1
-rw-r--r--dev-python/python-barbicanclient/python-barbicanclient-7.1.0.ebuild34
-rw-r--r--dev-python/python-cinderclient/Manifest1
-rw-r--r--dev-python/python-cinderclient/python-cinderclient-9.7.0.ebuild47
-rw-r--r--dev-python/python-magnumclient/Manifest1
-rw-r--r--dev-python/python-magnumclient/python-magnumclient-4.8.0.ebuild45
-rw-r--r--dev-python/python-octaviaclient/Manifest1
-rw-r--r--dev-python/python-octaviaclient/python-octaviaclient-3.10.0.ebuild46
-rw-r--r--dev-python/qiskit-aer/Manifest2
-rw-r--r--dev-python/qiskit-aer/qiskit-aer-0.16.2.ebuild (renamed from dev-python/qiskit-aer/qiskit-aer-0.16.ebuild)0
-rw-r--r--dev-python/qiskit/Manifest2
-rw-r--r--dev-python/qiskit/qiskit-1.3.2-r1.ebuild310
-rw-r--r--dev-python/qiskit/qiskit-1.3.3.ebuild310
-rw-r--r--dev-python/sqlglot/Manifest2
-rw-r--r--dev-python/sqlglot/sqlglot-26.8.0.ebuild (renamed from dev-python/sqlglot/sqlglot-26.6.0.ebuild)0
-rw-r--r--dev-python/trove-classifiers/Manifest1
-rw-r--r--dev-python/trove-classifiers/trove-classifiers-2025.3.3.18.ebuild42
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.6.4.ebuild170
49 files changed, 1441 insertions, 628 deletions
diff --git a/dev-python/aiohappyeyeballs/Manifest b/dev-python/aiohappyeyeballs/Manifest
index ace94ced7a94..9d706169877f 100644
--- a/dev-python/aiohappyeyeballs/Manifest
+++ b/dev-python/aiohappyeyeballs/Manifest
@@ -1 +1,2 @@
DIST aiohappyeyeballs-2.4.6.gh.tar.gz 72830 BLAKE2B aea6f5e20a2900fb5d498722edc5e1b776552ff4ca84120f2e1acea5478a571ab923d3bca4c58111f5ff0389ddb7f4976f6231b575b7b282e3c45e4adebb9707 SHA512 0098f13604c929998981deaa9ae221f0c5c4c4de46e5063b23e185e1437637b35256ebc91a3f7fdf6b5f9dee6f4be5ff3c215a8ddd34a02a0389c9b49c329c16
+DIST aiohappyeyeballs-2.4.8.gh.tar.gz 73672 BLAKE2B 9f2268f077106007607b3e463b9c86d7264ffb14ac3d27d07a29e919194dc1ba0210cd8d53b25fc2476794cbfa2f5e4cc400d405dc9bef7b3d61a764d5ed28da SHA512 081eb29d6be252170822d86d3de8e15165e461969788d539a20e796dfa34204f4d04e69380873a038e44c87194c61fd394a3bd105102c593a7aa17a4c2c3bd66
diff --git a/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.8.ebuild b/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.8.ebuild
new file mode 100644
index 000000000000..9e041efe827a
--- /dev/null
+++ b/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.8.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Happy Eyeballs for pre-resolved hosts"
+HOMEPAGE="
+ https://pypi.org/project/aiohappyeyeballs/
+ https://github.com/aio-libs/aiohappyeyeballs/
+"
+SRC_URI="
+ https://github.com/aio-libs/aiohappyeyeballs/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ >=dev-python/pytest-asyncio-0.23.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -o addopts=
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 26f4c618943b..b73a8121680d 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,3 +1,4 @@
DIST boto3-1.36.21.gh.tar.gz 901823 BLAKE2B 9659b8f05c90deeeeedc19f8c1bbd777415b778cf33f0ff2945063e64d413da9365f1a7e0dfc6ee159c00785299eece92596ae38d8a5d2bba02fe344ed2a052c SHA512 f13d44519aa9d62ca26cd7731b7b83cb67bc85d649a3fd61756048a5fe9254d4a1af8fae55b546fce692ca35becf5bfea2c25bde2a63c8c8783b064a61814da7
DIST boto3-1.36.26.gh.tar.gz 903988 BLAKE2B f9bb945e9132a7af7bd92ff48e5a99cc89488283c30e2d7d0cbb22d9002bd41c5d5f8a449494d2aa4758648aca3c2e88dad8bebda640af4bba7df64e72ffd2bc SHA512 77a545fd94ed50114db72d7b763e232356e78cda7a2780c12c26b602ed85101218339adf6247ba45e3a8b16c33fb11f5fb34572a37dfeac43dd9322823372cc1
DIST boto3-1.37.4.gh.tar.gz 908620 BLAKE2B ed63365ccd6da9b97715e4110be2b562285a123139a90ddb10c1411d5bd5ba0de9c110177a31f03ecb7e257fd79a0de89a8be97493a83f3207050676f7022e04 SHA512 dbf40cb809ee1d3ef352b97f62c111d113293211226a63298979d8ea14833c83ac2e321714dac349bfe095f75120c2752d08a01c19e51d9b0fc947e27a910005
+DIST boto3-1.37.5.gh.tar.gz 909313 BLAKE2B d31bd1ed08c60f351012a8b3711e43f7e4fb7a8fa76067b6b8026ad4d39ba4edf068a8246815271fa01264db8e9d76e6c08ea973e17676b8adfb79516e52de3f SHA512 f1d18b153b060599d3570bdc068be636dbd59e764d62120c678d6265878bfd9e0334885fa0b578207a6c83d02735161c919ab6d60f0a381245943f26d5d33b68
diff --git a/dev-python/boto3/boto3-1.37.5.ebuild b/dev-python/boto3/boto3-1.37.5.ebuild
new file mode 100644
index 000000000000..dfe05b3d9a81
--- /dev/null
+++ b/dev-python/boto3/boto3-1.37.5.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_{9,10,11,12,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 5363684a9bc7..f3508dce0b79 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,3 +1,4 @@
DIST botocore-1.36.21.gh.tar.gz 14227102 BLAKE2B 66948337c21be8024c64ad5daf35dd5f04493c2f83b4873f6040faf1231d4b491ca6714f96756527b4b0b3ab8d2047cfc5a24188c78d5540b8a9ac8c22a009ee SHA512 3f370bcf80faefc54cfa4fb2e342c58a48bcc529247128571892b5c7c4c0ba74b5a184539a7fb2e85faf9e542698846f991120cc47f40e9aa61f2785b7aa7290
DIST botocore-1.36.26.gh.tar.gz 14281837 BLAKE2B 925ebbca3e415ea7e3388c52e53a6d0a9a1aec001bd579293bfbbba5d756503371a137399d679926d5894f8f4e0fe498a37570dc4c19af99dfa67b4e3d374c3c SHA512 2f2d960a6519efae499acdb704d66a1f329927b30a53900ed035909847ca9a6c1a3b57291e0a0aa153b4bc49a959935b1840ad0d81244f8c2577fd4ba910fcf6
DIST botocore-1.37.4.gh.tar.gz 14291786 BLAKE2B ab55a62f2291e623e61a0ec6712241815279ae6d8f25e678adbf6cf167265d216f44b0eae78f2b66a454253dc4ef977b90c38f1aa329c855b38fa844eaa478b7 SHA512 07921ca8d51ff2afd8a4dafa77b40b5c24afa0351d71dbf68cef716573ba1f695a331634734fb6d9822eee55c91829128dbf215920e3da92ea2b40b727d0a0f6
+DIST botocore-1.37.5.gh.tar.gz 14298752 BLAKE2B 99aade487be0277f66f0df5c4631e36c3972c4b14e7579bebd643044d9d2fb5264764053d5f0cd63b1d72d97c801e2ec185a07b8cea4551eed4978830ba791d6 SHA512 b7fbc9861aefe159ac0023d17fd72d9b2483b219244689a68c8f821debd8ba9420d85b296ef7a0a3ed881f286497722e78e78a43084efd5ddd48650d0d8433f0
diff --git a/dev-python/botocore/botocore-1.37.5.ebuild b/dev-python/botocore/botocore-1.37.5.ebuild
new file mode 100644
index 000000000000..df85ee0d220c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.37.5.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_{9,10,11,12,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/elementpath/Manifest b/dev-python/elementpath/Manifest
index 8bd8ed50485a..0fee38e6dbcb 100644
--- a/dev-python/elementpath/Manifest
+++ b/dev-python/elementpath/Manifest
@@ -1 +1,2 @@
DIST elementpath-4.7.0.tar.gz 357225 BLAKE2B 4f39f27ff6be7ae3b159b1a8c6bbba30dcb2cd4306df0f61c0ec8895faf382a19aed23dd10552224b64b91f99b0efbeaba22901b8ab920ec9f1074472d1a3f47 SHA512 320b7d037247412604be5365d60a8fb9040f2c29b36484d8b8a6894647aad6ba2f903d29d9c2fcbe25de1e075bdc2a879bfdd72b8443481030df6dcebd152e6f
+DIST elementpath-4.8.0.tar.gz 358528 BLAKE2B 95fae0de70c310b68a9ddd8843926abdbddcaa5d54e5e3d7bd3dcba104321ba421d8ef2ab4c16a1d5db3973232d8999e10249c3e8871af42c4b3690f1306396a SHA512 2ff23d7d0dfedc02cb8cb4d8f8151e4b4a4976cbf8ba2fc41f67e1d89778efab20b09ba6fed116f9a10a64dcde3c185e7ee6ffc696e750d37d5bac0695d37396
diff --git a/dev-python/elementpath/elementpath-4.8.0.ebuild b/dev-python/elementpath/elementpath-4.8.0.ebuild
new file mode 100644
index 000000000000..6ea2023b3fa3
--- /dev/null
+++ b/dev-python/elementpath/elementpath-4.8.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="XPath 1.0/2.0 parsers and selectors for ElementTree and lxml"
+HOMEPAGE="
+ https://github.com/sissaschool/elementpath/
+ https://pypi.org/project/elementpath/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ test? (
+ dev-python/lxml[${PYTHON_USEDEP}]
+ >=dev-python/xmlschema-3.3.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # fails for some reason, more fit for upstream testing anyway
+ tests/test_typing.py
+)
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 8cdedddac17e..8ac0338783c5 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -4,3 +4,4 @@ DIST hypothesis-6.127.1.gh.tar.gz 9518068 BLAKE2B 6cbc8aab8d2c952a7ab1ff9180f37e
DIST hypothesis-6.127.2.gh.tar.gz 9518116 BLAKE2B 7a114549226f2bf85bbc211695575881db5b6d099075cb5ae0f076b1339b040ac942a6783721b717fee6cbf0dd404381f82e13779269547d971664758ca1ae37 SHA512 0cad6b5c00152bb67f81df1f00d6f3ba4d047cc0820e6b8a74031af42ed5baca3cf7cfaa53f988782d4ddb61e0465a1625a177dba4f8c46c66b1804ef389674f
DIST hypothesis-6.127.3.gh.tar.gz 9517446 BLAKE2B 3ac2f05b8e740830b7b2edff470c59620969f7b9eecf67666e40256ae7a1100ab2f93a8acf2855287d1066bb9f5254da8cf2672118d90c0f267c34a238461853 SHA512 17083054e990028ee82135645c1f3321823a1bde8f96c4fcd672812ee8b256d7a4a61a3224e651bc2ef8afd165835711943074de339db1233ee0bc3a5906a6c5
DIST hypothesis-6.127.4.gh.tar.gz 9517536 BLAKE2B a57a4eeae5f82d56723deae5af61ce663d14c3598f58213c1c671b8e3439d981333af9d28e41bf88102e292891df02a962a92215bf92ff9475f866d828343317 SHA512 88f4ee4b544b8075e37f3c56f07c02bb8a0aa9f5ceee23009e542f5e61852a5054fca8733c9634b2ae3ace823bb8515c840971e2d22deaad9a0e4d98a0b78fec
+DIST hypothesis-6.127.6.gh.tar.gz 9517645 BLAKE2B 4b66bc36d1289609e6cffd50f4ba3a0144cf9bd87b38c477512c8affccef6d448aed6c4f8e0584e153d9f996ffc13faf278b9f9a7047ed93e10783c7c9a7461c SHA512 63bcaa7d23e577ab0609fd55ef896153349b99a9b312551b47c884e3ac170aa133f61257ff8322bbe9506e3218a0366b1125552875f853250ea240e7a6f28da3
diff --git a/dev-python/hypothesis/hypothesis-6.127.6.ebuild b/dev-python/hypothesis/hypothesis-6.127.6.ebuild
new file mode 100644
index 000000000000..08befcf116e3
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.127.6.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=( python3_{9,10,11,12,13} pypy3 )
+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/inline-snapshot/Manifest b/dev-python/inline-snapshot/Manifest
index 0c8e50452285..60aab065e3b8 100644
--- a/dev-python/inline-snapshot/Manifest
+++ b/dev-python/inline-snapshot/Manifest
@@ -1,2 +1,3 @@
DIST inline_snapshot-0.20.2.tar.gz 91060 BLAKE2B dc5dd87a809727f48a2bb376ffb602517c2acfad8ce8738d443f2dcf863b268b9ef1408771bdbfee6ccbb6d25ea3e8afdf2d690df021de196f30514a57ea0fb2 SHA512 e749efea54bdca1f399aa81335e65ab0e48887de6d4a9aa9905086886bdd44ef31eaf95c75edd5ee1e6ee011e31c450fb077d09f49415653e5c8e19a3ad4a944
DIST inline_snapshot-0.20.3.tar.gz 92067 BLAKE2B 594a6a5cda233f960492b5d076189111095a08b4653271713115b6a44cb84aa4a8f0d160ba1de60a0e6fa6f7b1dadcbef34d93d4c4b7e0ad6139552985637b9f SHA512 62484c27b0c08b10f2ce3648e975bab1b0563aa0bb1c471b7052cf94db266877ad21320f963003db9abdfc26a3987f0578052e129ef7448bdecbb3745247247e
+DIST inline_snapshot-0.20.4.tar.gz 92164 BLAKE2B 5c4b105e94304b4bd508ef3d714b84ce4d1b43eb79193551b17c09291c6f86dedcccd75167a5440e972fe4a656f114ea06e584a5a4690d73349ec5625df10414 SHA512 6296336ab569a3e9022ea32c1d8fafa61319f41fd17cb1ce0f9ce6e319998f58a57f423d31579b269bf06e414cb60f388dd06427e4f9b2037af241c68f3c7262
diff --git a/dev-python/inline-snapshot/inline-snapshot-0.20.4.ebuild b/dev-python/inline-snapshot/inline-snapshot-0.20.4.ebuild
new file mode 100644
index 000000000000..fb85b4885ecd
--- /dev/null
+++ b/dev-python/inline-snapshot/inline-snapshot-0.20.4.ebuild
@@ -0,0 +1,62 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Create and update inline snapshots in your Python tests"
+HOMEPAGE="
+ https://15r10nk.github.io/inline-snapshot/
+ https://github.com/15r10nk/inline-snapshot/
+ https://pypi.org/project/inline-snapshot/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/asttokens-2.0.5[${PYTHON_USEDEP}]
+ >=dev-python/executing-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/rich-13.7.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ dev-python/attrs[${PYTHON_USEDEP}]
+ >=dev-python/black-23.3.0[${PYTHON_USEDEP}]
+ >=dev-python/dirty-equals-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-6.75.5[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/mypy[${PYTHON_USEDEP}]
+ ' 'python*')
+ >=dev-python/pydantic-2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-freezer-0.4.8[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.14.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-subtests-0.11.0[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires pyright
+ 'tests/test_typing.py::test_typing[pyright]'
+ # TODO
+ tests/test_formating.py::test_format_command_fail
+ )
+
+ local -x COLUMNS=80
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=inline_snapshot.pytest_plugin,pytest_freezer,pytest_subtests.plugin,xdist.plugin
+ local -x PYTHONPATH=${S}/src
+ epytest -p pytest_mock
+}
diff --git a/dev-python/ipyparallel/Manifest b/dev-python/ipyparallel/Manifest
index 03d90ba2ee5f..3ea440c50ef5 100644
--- a/dev-python/ipyparallel/Manifest
+++ b/dev-python/ipyparallel/Manifest
@@ -1 +1,2 @@
DIST ipyparallel-9.0.0.tar.gz 4403287 BLAKE2B 18248d6ee1eda409ff5de54ec7dbcdb75ac4a6dbd7af4fee23ec826d4c179e67454c980c6db00d180ddf078bd802a4b6f2e0245c63cf9bd55c99ead1bf1ba044 SHA512 4c89edba0bbad9ce75deaaa1e2486b1c50ca3f7a1a8f3c22b6dadc72f5b1f86958fe8c559e4548c69518494fd51c4ebe65f6019b154c8ffd3ef51eebb9bf1f03
+DIST ipyparallel-9.0.1.tar.gz 4407324 BLAKE2B 9302e0aa6ed790a687fd5d7f3842684d11e73868d9f2f299634d8813735e4d09f0faa873cca45c619f43e6413f269928be3af68bf9c733fd05853918b361e66a SHA512 6359f932a249197610016b3ccc5f86b6e0565e1e2070f5dde72c0e75877f0bc4e038a0cc5cea05c9a068d1e82e923d983470e6db465169527bcb9499cc550d52
diff --git a/dev-python/ipyparallel/files/ipyparallel-9.0.1-pypy3_11.patch b/dev-python/ipyparallel/files/ipyparallel-9.0.1-pypy3_11.patch
new file mode 100644
index 000000000000..9b42735b9be0
--- /dev/null
+++ b/dev-python/ipyparallel/files/ipyparallel-9.0.1-pypy3_11.patch
@@ -0,0 +1,43 @@
+From 1f3299cc4c8f8281ce48222e711393a0cadcb9fa Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Mon, 3 Mar 2025 21:27:08 +0100
+Subject: [PATCH 1/2] Use new serialization code for PyPy3.10+ 7.3.19+
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Enable the new `inspect.signature(types.CodeType)` code path for
+PyPy3.10 7.3.19 and newer, notably including PyPy3.11 that does not work
+with the fallback code anymore. Add a workaround to skip the `magic`
+parameter that does not seem to be exposed (or needed).
+
+With these changes, the serialization tests pass on PyPy3.11 7.3.19,
+as well as most of the test suite.
+
+Fixes #933
+
+Signed-off-by: Michał Górny <mgorny@gentoo.org>
+---
+ ipyparallel/serialize/codeutil.py | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/ipyparallel/serialize/codeutil.py b/ipyparallel/serialize/codeutil.py
+index ca0828a4..66dccc1f 100644
+--- a/ipyparallel/serialize/codeutil.py
++++ b/ipyparallel/serialize/codeutil.py
+@@ -29,11 +29,12 @@ def code_ctor(*args):
+ # pass every supported arg to the code constructor
+ # this should be more forward-compatible
+ # (broken on pypy: https://github.com/ipython/ipyparallel/issues/845)
+-if sys.version_info >= (3, 10) and not hasattr(sys, "pypy_version_info"):
++if sys.version_info >= (3, 10) and getattr(sys, "pypy_version_info", (7, 3, 19)) >= (7, 3, 19):
+ _code_attr_names = tuple(
+ _code_attr_map.get(name, name)
+ for name, param in inspect.signature(types.CodeType).parameters.items()
+- if param.POSITIONAL_ONLY or param.POSITIONAL_OR_KEYWORD
++ if (param.POSITIONAL_ONLY or param.POSITIONAL_OR_KEYWORD)
++ and not (hasattr(sys, "pypy_version_info") and name == "magic")
+ )
+ else:
+ # can't inspect types.CodeType on Python < 3.10
+
diff --git a/dev-python/ipyparallel/ipyparallel-9.0.1.ebuild b/dev-python/ipyparallel/ipyparallel-9.0.1.ebuild
new file mode 100644
index 000000000000..9cb653bf2b21
--- /dev/null
+++ b/dev-python/ipyparallel/ipyparallel-9.0.1.ebuild
@@ -0,0 +1,96 @@
+# 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_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Interactive Parallel Computing with IPython"
+HOMEPAGE="
+ https://ipyparallel.readthedocs.io/
+ https://github.com/ipython/ipyparallel/
+ https://pypi.org/project/ipyparallel/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/decorator[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-25[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5[${PYTHON_USEDEP}]
+ >=dev-python/ipython-5[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-client-7[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
+ <dev-python/ipykernel-7[${PYTHON_USEDEP}]
+ >=dev-python/ipykernel-6.9.1[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/flit-core[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-tornado[${PYTHON_USEDEP}]
+ dev-python/testpath[${PYTHON_USEDEP}]
+ )
+"
+
+# TODO: package myst_parser
+# distutils_enable_sphinx docs/source
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/ipython/ipyparallel/pull/934
+ "${FILESDIR}/${P}-pypy3_11.patch"
+)
+
+src_configure() {
+ export IPP_DISABLE_JS=1
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # we don't run a mongo instance for tests
+ ipyparallel/tests/test_mongodb.py::TestMongoBackend
+ # TODO
+ ipyparallel/tests/test_util.py::test_disambiguate_ip
+ # Gets upset that a timeout _doesn't_ occur, presumably because
+ # we're cranking up too many test timeouts. Oh well.
+ # bug #823458#c3
+ ipyparallel/tests/test_asyncresult.py::AsyncResultTest::test_wait_for_send
+ # We could patch the timeout for these too but they're going to be inherently
+ # fragile anyway based on what they do.
+ ipyparallel/tests/test_client.py::TestClient::test_activate
+ ipyparallel/tests/test_client.py::TestClient::test_lazy_all_targets
+ ipyparallel/tests/test_client.py::TestClient::test_wait_for_engines
+ )
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # pure Python datetime incompatibility? TODO
+ ipyparallel/tests/test_asyncresult.py::TestAsyncResult::test_elapsed_multi
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p tornado
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ # move /usr/etc stuff to /etc
+ mv "${ED}/usr/etc" "${ED}/etc" || die
+}
+
+pkg_postinst() {
+ optfeature "Jupyter Notebook integration" dev-python/notebook
+}
diff --git a/dev-python/ipython-pygments-lexers/ipython-pygments-lexers-1.1.1.ebuild b/dev-python/ipython-pygments-lexers/ipython-pygments-lexers-1.1.1.ebuild
index a10fa06ed832..c7ea73fdfe22 100644
--- a/dev-python/ipython-pygments-lexers/ipython-pygments-lexers-1.1.1.ebuild
+++ b/dev-python/ipython-pygments-lexers/ipython-pygments-lexers-1.1.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~riscv"
+KEYWORDS="~amd64 ~loong ~riscv"
RDEPEND="
dev-python/pygments[${PYTHON_USEDEP}]
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest
index b2cd4c4caeca..ee39c1ccb9de 100644
--- a/dev-python/ipython/Manifest
+++ b/dev-python/ipython/Manifest
@@ -1,3 +1,4 @@
DIST ipython-8.32.0.tar.gz 5507441 BLAKE2B 73ae25982653d484e47d15e16f6d689860186edac57809f4efaa5a2b7a0c20c6c21bc3e759f562d5fb0cddd5dc88c8db4422f66cb03e78c701fe234e8cff9e6b SHA512 920e5aa4be023713c05d9c6b7a1ce0e81abd8829a7fad19adef050d013b9937fcc49ddbf44200ae62f4968b3ea197a0afe87d712873845230f4e0b5858eefdaf
DIST ipython-8.33.0.tar.gz 5508284 BLAKE2B feb808f159a6fe51e86030c0150fce6c428391dfbbd205974c89cfe8af127c22efe3fd3f3ce404a11f5f69c59defa40742f3414168f35e5b6cb7ab6840665fdd SHA512 32777a8993748e559875ed4f522dfeafcace9883bf47596b48a845974ef8d72b3c1070907a3eba72ede8cc7c6be6c9b78a6fc1b27ab0f2a642a0e1f0b9fd35a2
DIST ipython-9.0.0.tar.gz 4364165 BLAKE2B 3835b9e0e6f1d6f64888a9e1d6499137d0316f871f2c330c73226338ffa064e1bff6163eddb5741d1b80a2e858bc08cfb64fb9f7ac59dd22c7d9cf990048ebb3 SHA512 9563e8c6a136e35fc87037662ea3b1d7caeff1fdff2c58ea446b7ac89aa777f900c4a3336a6a6a74d2f95d85ed080c1ea61fa4a9374560d1f0df8f73a2260a14
+DIST ipython-9.0.1.tar.gz 4365847 BLAKE2B 384bf9dfc5dc4a371acb6d52366d0dabada738bed26b6e37f8a4a19f26d885af97dbecfa6a7df638a8c35b9352afda7f6b785d927887a4707ff7bc6318ab009c SHA512 4c50e755516fc7077d2c25a4c53d3bc60af639d25854aed5e2f083975b0cc71d3873cff9d487ad99f3dc0b3d4ad6b4b9a751d99264a6ed6e32bc51d5cff3a792
diff --git a/dev-python/ipython/ipython-9.0.0.ebuild b/dev-python/ipython/ipython-9.0.0.ebuild
index d1f5bde98ce5..4429881b36f8 100644
--- a/dev-python/ipython/ipython-9.0.0.ebuild
+++ b/dev-python/ipython/ipython-9.0.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~riscv"
+KEYWORDS="~amd64 ~loong ~riscv"
IUSE="examples notebook nbconvert qt5 +smp test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/ipython/ipython-9.0.1.ebuild b/dev-python/ipython/ipython-9.0.1.ebuild
new file mode 100644
index 000000000000..4429881b36f8
--- /dev/null
+++ b/dev-python/ipython/ipython-9.0.1.ebuild
@@ -0,0 +1,159 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+PYTHON_REQ_USE='readline(+),sqlite,threads(+)'
+
+inherit distutils-r1 optfeature pypi virtualx
+
+DESCRIPTION="Advanced interactive shell for Python"
+HOMEPAGE="
+ https://ipython.org/
+ https://github.com/ipython/ipython/
+ https://pypi.org/project/ipython/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~riscv"
+IUSE="examples notebook nbconvert qt5 +smp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/ipython-pygments-lexers[${PYTHON_USEDEP}]
+ >=dev-python/jedi-0.16[${PYTHON_USEDEP}]
+ dev-python/matplotlib-inline[${PYTHON_USEDEP}]
+ >=dev-python/pexpect-4.3[${PYTHON_USEDEP}]
+ >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}]
+ <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}]
+ dev-python/stack-data[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' 3.11)
+"
+
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ app-text/dvipng[truetype]
+ >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
+ >=dev-python/matplotlib-3.9[${PYTHON_USEDEP}]
+ dev-python/nbformat[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
+ dev-python/matplotlib-inline[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pickleshare[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/testpath[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+RDEPEND+="
+ nbconvert? (
+ dev-python/nbconvert[${PYTHON_USEDEP}]
+ )
+"
+PDEPEND="
+ $(python_gen_cond_dep '
+ qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] )
+ ' 'python*')
+ $(python_gen_cond_dep '
+ notebook? (
+ dev-python/notebook[${PYTHON_USEDEP}]
+ dev-python/ipywidgets[${PYTHON_USEDEP}]
+ dev-python/widgetsnbextension[${PYTHON_USEDEP}]
+ )
+ ' 3.{10..12})
+ smp? (
+ >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}]
+ )
+"
+
+python_prepare_all() {
+ # Rename the test directory to reduce sys.path pollution
+ # https://github.com/ipython/ipython/issues/12892
+ mv IPython/extensions/{,ipython_}tests || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local -x IPYTHON_TESTING_TIMEOUT_SCALE=20
+ local EPYTEST_DESELECT=(
+ # TODO: looks to be a regression due to a newer dep
+ IPython/core/tests/test_oinspect.py::test_class_signature
+ IPython/core/tests/test_oinspect.py::test_render_signature_long
+ IPython/terminal/tests/test_shortcuts.py::test_modify_shortcut_with_filters
+ )
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # https://github.com/ipython/ipython/issues/14244
+ IPython/lib/tests/test_display.py::TestAudioDataWithoutNumpy
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # docstring mismatch?
+ IPython/core/tests/test_debugger.py::IPython.core.tests.test_debugger.test_ipdb_magics
+ )
+ ;;
+ esac
+
+ # nonfatal implied by virtx
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ nonfatal epytest -p asyncio --asyncio-mode=auto ||
+ die "Tests failed on ${EPYTHON}"
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ # Create ipythonX.Y symlinks.
+ # TODO:
+ # 1. do we want them for pypy? No. pypy has no numpy
+ # 2. handle it in the eclass instead (use _python_ln_rel).
+ # With pypy not an option the dosym becomes unconditional
+ dosym ../lib/python-exec/${EPYTHON}/ipython \
+ /usr/bin/ipython${EPYTHON#python}
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
+
+pkg_postinst() {
+ optfeature "code formatting" dev-python/black
+ optfeature "sympyprinting" dev-python/sympy
+ optfeature "cythonmagic" dev-python/cython
+ optfeature "%lprun magic command" dev-python/line-profiler
+ optfeature "%matplotlib magic command" dev-python/matplotlib-inline
+
+ if use nbconvert; then
+ if ! has_version virtual/pandoc ; then
+ einfo "Node.js will be used to convert notebooks to other formats"
+ einfo "like HTML. Support for that is still experimental. If you"
+ einfo "encounter any problems, please use app-text/pandoc instead."
+ fi
+ fi
+}
diff --git a/dev-python/mock/Manifest b/dev-python/mock/Manifest
index 87e3897664da..e2f4409b0a0a 100644
--- a/dev-python/mock/Manifest
+++ b/dev-python/mock/Manifest
@@ -1 +1,2 @@
DIST mock-5.1.0.tar.gz 80232 BLAKE2B d260551feaf051d4be8c55920345e8fa64c33a42d4a82a2ea5dd5e0077af393ec1c1f37fb0b61e2cb6167a58c8951adeb6c9cc2dc638fc410a2984a3cbae17e1 SHA512 26b7350fddf2eca82b6dfaafc58cacbd4031fd787b1afc463ee13eff778846941120fd89755e4783bfad389f01cfbdd64f2feab5a12ac2bd4ca6407c0f2e973c
+DIST mock-5.2.0.tar.gz 92796 BLAKE2B 2522e59855b517434a1f6222ea7ff930eea9943a9d00b96596519d349fdb07f540e8382b6ac05319a041f464c6cd96863f01f3b7114b2166d13b461a334fab0a SHA512 edf856486e5f8889d676be1eb2c60cd791f4f25057b6b94b54555904133371b3753709b2ab37d032dbbfed7e7106d05c1c24a2c274f378802025495f4352ac12
diff --git a/dev-python/mock/mock-5.2.0.ebuild b/dev-python/mock/mock-5.2.0.ebuild
new file mode 100644
index 000000000000..14b0e46d9540
--- /dev/null
+++ b/dev-python/mock/mock-5.2.0.ebuild
@@ -0,0 +1,23 @@
+# 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Rolling backport of unittest.mock for all Pythons"
+HOMEPAGE="
+ https://github.com/testing-cabal/mock/
+ https://pypi.org/project/mock/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+
+distutils_enable_tests pytest
+
+DOCS=( CHANGELOG.rst README.rst )
diff --git a/dev-python/nbxmpp/Manifest b/dev-python/nbxmpp/Manifest
index 1d0efcac593f..0b6423ba28dd 100644
--- a/dev-python/nbxmpp/Manifest
+++ b/dev-python/nbxmpp/Manifest
@@ -1,3 +1,4 @@
DIST python-nbxmpp-4.5.4.tar.bz2 138170 BLAKE2B 00a4919032dd29828dc735695afe9c0814a8fe2ec765a534257768896d9f27bc3a395275d546ad717bdd16c97161e8f0a8acaf43cdb7bd9404e40bc72f2c3da5 SHA512 fcaedae519d8cd2d52cc65721ab1e743569ba1cf7c29f2db41ed5671ba0f2c5b47f1f6d9521e1614e89e21512a4575c6788316cdb86936f0c4886d54c3831bb3
DIST python-nbxmpp-5.0.4.tar.bz2 143198 BLAKE2B ac27204205ded7e0d20237ee7f70e5f84f8f4ada54951e209a30c59390fe166ef296875e45dd74216a04ba78d35968667d4f126967d97c57dd1533ce4d9edd0e SHA512 a6672b4046c2de596ca92129782574528d14ee75a7982bb32db398628e3901c8e780b8a33fac2710d13367a0990ba21ef148c255fa77dee219c6bbd0c453d935
DIST python-nbxmpp-6.0.0.tar.bz2 151762 BLAKE2B c16fb2b0fe88e0b754fbc7e73d014fc5537a1ebcf7805c0fd83f10c03e23bcc6d5254871045d16dbe1543b4fb36c80ddd07b57dad411561bc9f33facfae6cb1f SHA512 10ef3df594f72d0ba3965544c337973715c9d84114e6568fb6eb7914c74ab253ceefedbd27a7cd80b503b80cb2337787c3bae12dbd10db595953dc94ef060e95
+DIST python-nbxmpp-6.0.1.tar.bz2 151947 BLAKE2B ef2a7267238f6033b1db113a84bb37c2ac38a9b2c9195cb7cee62d138af237f6dacd63cc5b1f27d2e0e6d50d3662a0f2fa2526b7577b469e8c04458fe3110dd9 SHA512 e8952cb7093b9fb9b67b33b5e482675672781f4564582efb3b18e6170fb17d281be9c8a8ebb1522200ba992a5ecc30d75d9695da78c9edbd174149ca786d347b
diff --git a/dev-python/nbxmpp/nbxmpp-6.0.1.ebuild b/dev-python/nbxmpp/nbxmpp-6.0.1.ebuild
new file mode 100644
index 000000000000..1d77a0a33b24
--- /dev/null
+++ b/dev-python/nbxmpp/nbxmpp-6.0.1.ebuild
@@ -0,0 +1,35 @@
+# 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_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+MY_P=python-nbxmpp-${PV}
+DESCRIPTION="Python library to use Jabber/XMPP networks in a non-blocking way"
+HOMEPAGE="
+ https://dev.gajim.org/gajim/python-nbxmpp/
+ https://pypi.org/project/nbxmpp/
+"
+SRC_URI="
+ https://dev.gajim.org/gajim/python-nbxmpp/-/archive/${PV}/${MY_P}.tar.bz2
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv ~x86"
+
+RDEPEND="
+ dev-libs/gobject-introspection
+ net-libs/libsoup:3.0[introspection]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/precis-i18n-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pygobject-3.42[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/osc-placement/Manifest b/dev-python/osc-placement/Manifest
index cd83b4db3734..67ebac5a961f 100644
--- a/dev-python/osc-placement/Manifest
+++ b/dev-python/osc-placement/Manifest
@@ -1 +1,2 @@
DIST osc-placement-4.5.0.tar.gz 59592 BLAKE2B bb5a6445317bcd6fbff41dbffb89a9703aa29cf644a57f4b28006b47050498f0ab10a7811bb6b8945e27d1a455c62182babd6a1cb39faece32eb34d2473fafcf SHA512 07008400d0d5880f533ae17d9951fe927b63340768c2b427b6e2d0d478fa98f11763440d4df5831be121a860bad44ffe79fb0377e062ff7e32fae56dd8321c34
+DIST osc_placement-4.6.0.tar.gz 59637 BLAKE2B 740464abf09d65d9cdf045b07ac9f5f4cefaf1ca45b1e75981608aac52586079511f8c1e4069100e26397526baebd4d54617c647a252fae7f3655941806e92db SHA512 72e50b4b2dc9948e5a1e6fd1bd3c9c6a0fee364c701806f1a5702100c51da93b38a7ff460891c3672bbf7c36d4c0d9f3a7a2e5bfaab578ebc4bf4852592866e6
diff --git a/dev-python/osc-placement/osc-placement-4.6.0.ebuild b/dev-python/osc-placement/osc-placement-4.6.0.ebuild
new file mode 100644
index 000000000000..2f3b21aed3ce
--- /dev/null
+++ b/dev-python/osc-placement/osc-placement-4.6.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pbr
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="OpenStackClient plugin for Placement service"
+HOMEPAGE="
+ https://opendev.org/openstack/osc-placement
+ https://pypi.org/project/python-octaviaclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.37.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/coverage-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/stestr-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-4.2.2[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_IGNORE=(
+ # Require the placement service to be packaged, too
+ osc_placement/tests/functional/test_allocation.py
+ osc_placement/tests/functional/test_allocation_candidate.py
+ osc_placement/tests/functional/test_inventory.py
+ osc_placement/tests/functional/test_resource_class.py
+ osc_placement/tests/functional/test_resource_provider.py
+ osc_placement/tests/functional/test_trait.py
+ osc_placement/tests/functional/test_usage.py
+ osc_placement/tests/functional/test_aggregate.py
+ osc_placement/tests/functional/test_plugin.py
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/pkgcraft/pkgcraft-0.0.11.ebuild b/dev-python/pkgcraft/pkgcraft-0.0.11.ebuild
index 2e0a65610aeb..7b0667bd1f19 100644
--- a/dev-python/pkgcraft/pkgcraft-0.0.11.ebuild
+++ b/dev-python/pkgcraft/pkgcraft-0.0.11.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
@@ -25,7 +25,7 @@ else
SRC_URI="https://github.com/pkgcraft/pkgcraft-python/releases/download/v${PV}/${P/-python}.tar.gz"
S="${WORKDIR}"/${P/-python}
- KEYWORDS="~amd64 ~arm64"
+ KEYWORDS="amd64 ~arm64"
PKGCRAFT_VERSION_MAX="9999"
PKGCRAFT_VERSION_MIN="0.0.16"
diff --git a/dev-python/proselint/Manifest b/dev-python/proselint/Manifest
index c25682dc95dd..4cfa6a3e0803 100644
--- a/dev-python/proselint/Manifest
+++ b/dev-python/proselint/Manifest
@@ -1 +1,2 @@
DIST proselint-0.13.0.tar.gz 96876 BLAKE2B 780d1c217244e7909fb017d4c8fe4061e8328280119694f6e40630393f52bd00498382d3944d598f34751c7afecbcf5f2e76f1e204b073d28cd363452683e91f SHA512 6379c63fba0be8c5944c67ef4d3c0fd4ae4deb0076813531cddcdbc632bb254a4e213f88f07d96679465d740c1936a2b1502f852959a8ac9789ab1b983b8a0ef
+DIST proselint-0.14.0.tar.gz 96741 BLAKE2B 59f8c5778bdc7db4d25a2a6679fd2be8a705327b39a05229c32feaee5037e33ada6898a783a4080935530f8ed9f607e32fc694d515cbe3e5191ae42f69f37c14 SHA512 742d059e5780ed931fdc41d21fc0b8bafceff45c95514316f8c9ba86d44c4cd897d302ae48f3bfa8ee5783b0c8ede3915b4d681806e5cbdfcbecdcd629339942
diff --git a/dev-python/proselint/proselint-0.14.0.ebuild b/dev-python/proselint/proselint-0.14.0.ebuild
new file mode 100644
index 000000000000..23ca3f2e285b
--- /dev/null
+++ b/dev-python/proselint/proselint-0.14.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A linter for prose"
+HOMEPAGE="
+ https://proselint.com
+ https://github.com/amperser/proselint/
+ https://pypi.org/project/proselint/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/click-8.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest
index b6a83d8017d0..41311ce6f027 100644
--- a/dev-python/pymongo/Manifest
+++ b/dev-python/pymongo/Manifest
@@ -1,5 +1,6 @@
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.2.gh.tar.gz 2112201 BLAKE2B 261dcdacab32b516db4f980947dbf73005c9b972186c3720100495707bc96ed21ec4a8b251c1278f9b315d011ba87a6976e0033c768164abf7228efb061d703c SHA512 210a868c8e6dff923b03683e457085d631153bec2b6ddef85407c04c3f4399bb235331e3851b1193d9a2bed46a77f273ccb5ebf0fde437693a141a7a81673ce9
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
diff --git a/dev-python/pymongo/pymongo-4.11.2.ebuild b/dev-python/pymongo/pymongo-4.11.2.ebuild
new file mode 100644
index 000000000000..3423f94e4005
--- /dev/null
+++ b/dev-python/pymongo/pymongo-4.11.2.ebuild
@@ -0,0 +1,237 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+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
+
+ # broken async tests?
+ test/asynchronous/test_encryption.py
+ )
+
+ 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
+ )
+ 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
+ )
+ local run_separately3=(
+ test/test_gridfs_bucket.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 -p asyncio
+ 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..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
+ # 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)
+ nonfatal epytest "${def[@]}" "${run_separately3[@]}" || failed=1
+ ;;
+ 4)
+ EPYTEST_DESELECT+=(
+ "${run_separately[@]}"
+ "${run_separately2[@]}"
+ "${run_separately3[@]}"
+ )
+ nonfatal epytest "${def[@]}" || failed=1
+ ;;
+ 5)
+ nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1
+ ;;
+ 6)
+ 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/python-barbicanclient/Manifest b/dev-python/python-barbicanclient/Manifest
index f86c5c144ba0..9de60475fc0f 100644
--- a/dev-python/python-barbicanclient/Manifest
+++ b/dev-python/python-barbicanclient/Manifest
@@ -1 +1,2 @@
DIST python-barbicanclient-7.0.0.tar.gz 128741 BLAKE2B cc3e81974511cf250238bd1f9823cbf603a53ca13ca3ffd6dab18b01e01c3855f728dc5d34fe5b15f3fbb8ea20bc0d73681f5e24158861b457c1e3dfe9bbdede SHA512 b6ddb6881e1ab70e9a35562b3a12f55ebf6c1b84b61c0324f7e9547f109564f6fffeb3faacb8ef5ae74255c46795d571eae6a2f6bb3043c785018e48e23a7730
+DIST python_barbicanclient-7.1.0.tar.gz 128349 BLAKE2B cbaffd45d1677aa0c1ecdca26c393841a1a5284ac52e612d00a2307dddc3696082209df60b21e710bab3922fc181408f9c357053872f0a7f27ea7fcb8a040095 SHA512 d5850d4c273b3196268117eeed6b65d5c63c1579eea613447bb51de9f4ba7bd24df3f21cf5000d826b8e78dd32f6abf948c2a54c015bbcea9d834e6f367ffd9f
diff --git a/dev-python/python-barbicanclient/python-barbicanclient-7.1.0.ebuild b/dev-python/python-barbicanclient/python-barbicanclient-7.1.0.ebuild
new file mode 100644
index 000000000000..1968727a5838
--- /dev/null
+++ b/dev-python/python-barbicanclient/python-barbicanclient-7.1.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Client library for Barbican API."
+HOMEPAGE="
+ https://opendev.org/openstack/python-barbicanclient
+ https://github.com/openstack/python-barbicanclient/
+ https://pypi.org/project/python-barbicanclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-5.1.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/python-cinderclient/Manifest b/dev-python/python-cinderclient/Manifest
index a86f51cf22e8..9783e9ceee66 100644
--- a/dev-python/python-cinderclient/Manifest
+++ b/dev-python/python-cinderclient/Manifest
@@ -1 +1,2 @@
DIST python-cinderclient-9.6.0.tar.gz 237239 BLAKE2B 34080bcc739db3df9fbf2b45115726df6c435ade39b9d92b8752db06a661db8d6ad92005d1358ae4f0bb313db663bbb1e6e7fc1fde0373941eee39921b22a9b3 SHA512 f2dec3927063c40046c72e090f95f996a16582c09cca8de320fedf80037e4c8dea231c8b48d3fc1ad085b89f43afc413c477e162f231940616f3373d4f86d4ee
+DIST python_cinderclient-9.7.0.tar.gz 236901 BLAKE2B 9cf188fd8960a99dfee68ec943b0e4124a78c2a8d9bc990f8bbe98646886e462e3bdd3449772492d07a1d8697423f57ae06d55daba5ce2ac44205407dc554d3b SHA512 b1a0222b7d67cda221086c469f76dc757905ca2b92645389603b0ba28c1a6b5eedd0049dbc09b6da1fc097e4ab7826c11927c88cf7c314757cdde1826cf55d1c
diff --git a/dev-python/python-cinderclient/python-cinderclient-9.7.0.ebuild b/dev-python/python-cinderclient/python-cinderclient-9.7.0.ebuild
new file mode 100644
index 000000000000..6aa843002894
--- /dev/null
+++ b/dev-python/python-cinderclient/python-cinderclient-9.7.0.ebuild
@@ -0,0 +1,47 @@
+# 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_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack Cinder API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-cinderclient/
+ https://github.com/openstack/python-cinderclient/
+ https://pypi.org/project/python-cinderclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/keystoneauth1-5.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-5.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-5.5.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.25.1[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-3.3.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/pbr[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ddt[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ dev-python/oslo-serialization[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/testtools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b cinderclient/tests/unit
+}
diff --git a/dev-python/python-magnumclient/Manifest b/dev-python/python-magnumclient/Manifest
index 37985f8f4ba5..86fb64b832fe 100644
--- a/dev-python/python-magnumclient/Manifest
+++ b/dev-python/python-magnumclient/Manifest
@@ -1 +1,2 @@
DIST python-magnumclient-4.7.0.tar.gz 107491 BLAKE2B b8f6367ba17b475dbc5fefaec9c032c178dec3140a637f8be9b7cb38bd58017d15e0fa5dc9c41a33dd8d38f9b463f83c1bcfe60b990538c179099d2751e2676e SHA512 2ad3fbfcdd0e8deae6b4741f201ff6930abd77774107d28246307b6b86023441036bd12a542e60a82a6323f4615b0532fb6d8a298b8858b14067cf9c77f4d24d
+DIST python_magnumclient-4.8.0.tar.gz 107489 BLAKE2B e0e0906c7ac2145d7bb4ebe77814b8c4ae2501f270d4eff41ad4705e152d2c16d3bf683484d648010708f1e73125d7129e2678b45be8f7613ba6fa3100e5d0a1 SHA512 176f1491d0039d1504009c45eae5e05441358e23c6cb7afb9e454a51ce23d4b17bd684bccab549402e3db547fdf4074180db0c9b5ab5951bff855795c3930484
diff --git a/dev-python/python-magnumclient/python-magnumclient-4.8.0.ebuild b/dev-python/python-magnumclient/python-magnumclient-4.8.0.ebuild
new file mode 100644
index 000000000000..d09f21c2c5b1
--- /dev/null
+++ b/dev-python/python-magnumclient/python-magnumclient-4.8.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack Magnum API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-magnumclient
+ https://github.com/openstack/python-magnumclient/
+ https://pypi.org/project/python-magnumclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-2.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-octaviaclient/Manifest b/dev-python/python-octaviaclient/Manifest
index e3f5087f9505..67343e113adb 100644
--- a/dev-python/python-octaviaclient/Manifest
+++ b/dev-python/python-octaviaclient/Manifest
@@ -1 +1,2 @@
DIST python-octaviaclient-3.9.0.tar.gz 97191 BLAKE2B 4bf7a25711d6a67ce49c375c4dff8be791bad14d4acdacf57d4ad52cdd6852a9c85a719c626feb3d02deeee46887da80353b7577208f656f515513dd507242ba SHA512 8f5e0ad83c2df75865f26b50b325d5adac6a9797cac5ca5422cf95a85426f0803699f26ea27745e17171f2c56623a5de11e26bd650b9a797d1fdf41dc5c15ab5
+DIST python_octaviaclient-3.10.0.tar.gz 97294 BLAKE2B ca56e662bf0173ad4a922b6fc9f82fbfe7a5cd7488abc2746836db44b6e128e159272a7b9618703aef143c6f50764da5d16cf2142a7730fba9ceb37648c37de6 SHA512 cf867242794e9c79be283915040d5280134da28fa92c4371a9ff94f7c03189e5fe513c5da42cfc9079e3be54234dce868b1770e3869654135a5be159029c7b1c
diff --git a/dev-python/python-octaviaclient/python-octaviaclient-3.10.0.ebuild b/dev-python/python-octaviaclient/python-octaviaclient-3.10.0.ebuild
new file mode 100644
index 000000000000..d78bdeb4e6cf
--- /dev/null
+++ b/dev-python/python-octaviaclient/python-octaviaclient-3.10.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack Octavia API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-octaviaclient
+ https://github.com/openstack/python-octaviaclient/
+ https://pypi.org/project/python-octaviaclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >=dev-python/cliff-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/python-neutronclient-6.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.14.1[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_IGNORE=(
+ # not packaged
+ octaviaclient/tests/unit/test_hacking.py
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/qiskit-aer/Manifest b/dev-python/qiskit-aer/Manifest
index 8f52f78c01f6..caef656804ed 100644
--- a/dev-python/qiskit-aer/Manifest
+++ b/dev-python/qiskit-aer/Manifest
@@ -1,2 +1,2 @@
DIST qiskit-aer-0.16.1.gh.tar.gz 7137732 BLAKE2B 0f522bae3e2d324171bdf0a3bb8f1c99c8c1b9beac4932146dddb51616ad6b47236ffe15d533cdee64dfbd9b48ca5f24f26774e4487d2b3238f02939908b5891 SHA512 31c57ab09fecb5452205d7c8fb550384bf6e24aaa4a9665d37a7833f6353861407136f0c36fe85c8d26c386bb37b16e3298daa2c81c2aec384c69de0d3a87ee6
-DIST qiskit-aer-0.16.gh.tar.gz 7137525 BLAKE2B ddbad1c1c8be51806c5de524327312f8c56fb46f686b3c61b2059770485ff0022fab45faae55f22f2ac37e4cd6e71fd2d2b9c27c945639dc785b6dbb3a33492f SHA512 ef976cc51f0899aeaafd15d8e493925c6c60245a321bc0bf130b8496d003a5b684ce6af4f3caa91fdefe085bba96e957401b7d1aa7e9db3e5fb5d795a0459ad8
+DIST qiskit-aer-0.16.2.gh.tar.gz 7137908 BLAKE2B 5fe314b0dfb36a387e21f85113744b499a38ed8b52c218d8e9d47303325c541616c1cffd3a0514688809ee2949664d45b762f57bde3277abe247e02564370b1b SHA512 2a218b7da34d29b2d8628a7e819b7073bff99c396ecafa5946cc881ef73787744ee2704b33889da77eb8a92acf0ad7e96f81bbf43fc6bd71416a602049d959aa
diff --git a/dev-python/qiskit-aer/qiskit-aer-0.16.ebuild b/dev-python/qiskit-aer/qiskit-aer-0.16.2.ebuild
index 5084b9394159..5084b9394159 100644
--- a/dev-python/qiskit-aer/qiskit-aer-0.16.ebuild
+++ b/dev-python/qiskit-aer/qiskit-aer-0.16.2.ebuild
diff --git a/dev-python/qiskit/Manifest b/dev-python/qiskit/Manifest
index 7bf01a942173..c77337bfacbf 100644
--- a/dev-python/qiskit/Manifest
+++ b/dev-python/qiskit/Manifest
@@ -110,8 +110,6 @@ DIST pyo3-build-config-0.22.6.crate 31369 BLAKE2B a1a72de120c4ac4f23a3faaf9b2e34
DIST pyo3-ffi-0.22.6.crate 69352 BLAKE2B 99eea6ed87001b23fdeb263937bc14be0fadadc1ad77d4fa8834045ba2fc6ba5c0b89f4051916a058b7640be655afe22785b1da42aac8a32d10209b7b37bf810 SHA512 616e51a0eae1207830fe95251d5b62f126daf446bec68ac98cb1b8538aaa59761dbde62d446a9ee205c23453dbd32bd8ecb15e26265ed1fa1e5e2056efd96369
DIST pyo3-macros-0.22.6.crate 8182 BLAKE2B 81998e4f4cb325763e4d3477af05b332e184cabf6391761f850d23508cebcf8d496ce12f747ea241523bb3899886eb20494b076a0651151744bb81d52901a1b4 SHA512 63f7a7b42e099742518c8a3bbc7647e98debb5500d08c39e11e8140fc146e790ab06e005d8d14c89aba79ebc5bf04fe1c92c0e9c5b13421307d3a4682d044179
DIST pyo3-macros-backend-0.22.6.crate 66312 BLAKE2B ec0b11bee1ad2192e8d95cebab0075d6ec5bf628e3344b86fb8e20a6d0bc1f891b56ccfa4622840a609480581f32bd211b9a3d1dd989716cf255efe3fdc89331 SHA512 87463939b5a5674e30e8ca05ae747f652f8679f0c5c85d20967e9910ad853768a769a914580e82e409188fe4add80a3117ccb9da24c250406bc6f76fe4453799
-DIST qiskit-1.3.2.gh.tar.gz 8483402 BLAKE2B e2f191f3231f858ded9c389f952a2207bfea4680be13db6207e9870fb08f2015c483e3fd891a298eaa531635cb7d1027bc10952b0c471dff9b89ed524e6228a3 SHA512 067143cbab3b89a33327fb5350ebd699a12b1be6405d1186fce4767971cb0a59b27e08292d3828a3db40f241a70e96eab2e4ef117dc6b8de9dbfd6be05da1025
-DIST qiskit-1.3.3.gh.tar.gz 8489998 BLAKE2B 723e64f866366b1ef8f860dfb8d392aa1364973f333b9f4345e1e2830b0d8ada7db3d5ed0d75e412c746e05df71fc7501a2d2bd5d202362272663ed759237d47 SHA512 392ccd0ace7822c06324d8723e36211e97d1a5499b6e887b42a610d8d90cb29228e3cb0b7b82dfccb1e9c83c07f33f5b5c539f31874c71300eb524664759a0ef
DIST qiskit-1.4.0.gh.tar.gz 8508849 BLAKE2B 8f7cf0992d6623ae441719339aac48dcbb6f969276da4d76c0e317865f75b9bb0ca76e0feccea8ef297b2306320de47aab05bb07fc6e2cc40ae6f1c6c04bf37f SHA512 c1a74ff98474add76a24a962a39c43a0a7ae44cf5421f846c43a4c39d89e61552cc51ed2769f0badf1c4eb4ee8d6f2be9715041583ad3b359bab9778a309455c
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
DIST ra_ap_limit-0.0.188.crate 1283 BLAKE2B 265a70d088ed76500cdbefa04d1b2778d54985aa978b806e9ebb016348556559799b8ac889c00aeff51d4ff08f3fa86cd3be3742f5896916edbbda49bca1946e SHA512 01d56844fb4437959e93fc3394d674848eaae3365d271c01ba5ff12fc05d4a1d11eb4145ee89a65eb5ba12db4075e8102ee31df55c569c8ee5ad6d383f9f451a
diff --git a/dev-python/qiskit/qiskit-1.3.2-r1.ebuild b/dev-python/qiskit/qiskit-1.3.2-r1.ebuild
deleted file mode 100644
index f198714152b5..000000000000
--- a/dev-python/qiskit/qiskit-1.3.2-r1.ebuild
+++ /dev/null
@@ -1,310 +0,0 @@
-# Copyright 2022-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-CRATES="
- ahash@0.7.8
- ahash@0.8.11
- aho-corasick@1.1.3
- allocator-api2@0.2.20
- approx@0.4.0
- approx@0.5.1
- ariadne@0.3.0
- autocfg@1.4.0
- bitflags@1.3.2
- bitflags@2.6.0
- block-buffer@0.10.4
- boolenum@0.1.0
- bytemuck@1.19.0
- bytemuck_derive@1.8.0
- byteorder@1.5.0
- cfg-if@1.0.0
- coe-rs@0.1.2
- concolor-query@0.3.3
- concolor@0.1.1
- countme@3.0.1
- cov-mark@2.0.0
- cpufeatures@0.2.15
- crossbeam-deque@0.8.5
- crossbeam-epoch@0.9.18
- crossbeam-utils@0.8.20
- crunchy@0.2.2
- crypto-common@0.1.6
- dbgf@0.1.2
- digest@0.10.7
- drop_bomb@0.1.5
- dyn-stack@0.10.0
- either@1.13.0
- enum-as-inner@0.6.1
- equator-macro@0.2.1
- equator-macro@0.4.1
- equator@0.2.2
- equator@0.4.1
- equivalent@1.0.1
- faer-entity@0.19.2
- faer-ext@0.2.0
- faer@0.19.4
- fixedbitset@0.4.2
- gemm-c32@0.18.0
- gemm-c64@0.18.0
- gemm-common@0.18.0
- gemm-f16@0.18.0
- gemm-f32@0.18.0
- gemm-f64@0.18.0
- gemm@0.18.0
- generic-array@0.14.7
- getrandom@0.2.15
- half@2.4.1
- hashbrown@0.12.3
- hashbrown@0.14.5
- hashbrown@0.15.1
- heck@0.5.0
- hermit-abi@0.4.0
- indexmap@2.6.0
- indoc@2.0.5
- is-terminal@0.4.13
- itertools@0.10.5
- itertools@0.11.0
- itertools@0.13.0
- lazy_static@1.5.0
- libc@0.2.162
- libm@0.2.11
- matrixcompare-core@0.1.0
- matrixcompare@0.3.0
- matrixmultiply@0.3.9
- memchr@2.7.4
- memoffset@0.9.1
- nano-gemm-c32@0.1.0
- nano-gemm-c64@0.1.0
- nano-gemm-codegen@0.1.0
- nano-gemm-core@0.1.0
- nano-gemm-f32@0.1.0
- nano-gemm-f64@0.1.0
- nano-gemm@0.1.2
- ndarray@0.15.6
- ndarray_einsum_beta@0.7.0
- npyz@0.8.3
- num-bigint@0.4.6
- num-complex@0.4.6
- num-integer@0.1.46
- num-traits@0.2.19
- numpy@0.22.1
- once_cell@1.20.2
- oq3_lexer@0.7.0
- oq3_parser@0.7.0
- oq3_semantics@0.7.0
- oq3_source_file@0.7.0
- oq3_syntax@0.7.0
- paste@1.0.15
- pest@2.7.14
- pest_derive@2.7.14
- pest_generator@2.7.14
- pest_meta@2.7.14
- petgraph@0.6.5
- portable-atomic@1.9.0
- ppv-lite86@0.2.20
- priority-queue@2.1.1
- proc-macro-error-attr@1.0.4
- proc-macro-error@1.0.4
- proc-macro2@1.0.89
- pulp-macro@0.1.1
- pulp@0.18.22
- py_literal@0.4.0
- 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
- ra_ap_limit@0.0.188
- rand@0.8.5
- rand_chacha@0.3.1
- rand_core@0.6.4
- rand_distr@0.4.3
- rand_pcg@0.3.1
- raw-cpuid@10.7.0
- rawpointer@0.2.1
- rayon-cond@0.3.0
- rayon-core@1.12.1
- rayon@1.10.0
- reborrow@0.5.5
- regex-automata@0.4.9
- regex-syntax@0.8.5
- regex@1.11.1
- rowan@0.15.15
- rustc-hash@1.1.0
- rustiq-core@0.0.10
- rustversion@1.0.18
- rustworkx-core@0.15.1
- same-file@1.0.6
- seq-macro@0.3.5
- serde@1.0.215
- serde_derive@1.0.215
- sha2@0.10.8
- smallvec@1.13.2
- smol_str@0.2.2
- syn@1.0.109
- syn@2.0.87
- sysctl@0.5.5
- target-lexicon@0.12.16
- text-size@1.1.1
- thiserror-impl@1.0.69
- thiserror@1.0.69
- triomphe@0.1.11
- typenum@1.17.0
- ucd-trie@0.1.7
- unicode-ident@1.0.13
- unicode-properties@0.1.3
- unicode-width@0.1.14
- unicode-xid@0.2.6
- unindent@0.2.3
- version_check@0.9.5
- walkdir@2.5.0
- wasi@0.11.0+wasi-snapshot-preview1
- winapi-util@0.1.9
- windows-sys@0.45.0
- windows-sys@0.52.0
- windows-sys@0.59.0
- windows-targets@0.42.2
- windows-targets@0.52.6
- windows_aarch64_gnullvm@0.42.2
- windows_aarch64_gnullvm@0.52.6
- windows_aarch64_msvc@0.42.2
- windows_aarch64_msvc@0.52.6
- windows_i686_gnu@0.42.2
- windows_i686_gnu@0.52.6
- windows_i686_gnullvm@0.52.6
- windows_i686_msvc@0.42.2
- windows_i686_msvc@0.52.6
- windows_x86_64_gnu@0.42.2
- windows_x86_64_gnu@0.52.6
- windows_x86_64_gnullvm@0.42.2
- windows_x86_64_gnullvm@0.52.6
- windows_x86_64_msvc@0.42.2
- windows_x86_64_msvc@0.52.6
- xshell-macros@0.2.6
- xshell@0.2.6
- yansi@0.5.1
- zerocopy-derive@0.7.35
- zerocopy@0.7.35
-"
-
-inherit cargo distutils-r1
-
-MY_P=${P/_}
-DESCRIPTION="An open-source SDK for working with quantum computers"
-HOMEPAGE="
- https://github.com/Qiskit/qiskit/
- https://pypi.org/project/qiskit/
-"
-SRC_URI="
- https://github.com/Qiskit/qiskit/archive/${PV/_}.tar.gz
- -> ${MY_P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 MIT
- Unicode-DFS-2016
- || ( LGPL-3+ MPL-2.0 )
-"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+visualization"
-
-RDEPEND="
- >=dev-python/dill-0.3[${PYTHON_USEDEP}]
- >=dev-python/numpy-1.17[${PYTHON_USEDEP}]
- >=dev-python/python-constraint-1.4[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
- >=dev-python/rustworkx-0.15.0[${PYTHON_USEDEP}]
- >=dev-python/scipy-1.5[${PYTHON_USEDEP}]
- >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
- <dev-python/symengine-0.14[${PYTHON_USEDEP}]
- >=dev-python/symengine-0.11.0[${PYTHON_USEDEP}]
- >=dev-python/sympy-1.3[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/typing-extensions[${PYTHON_USEDEP}]
- ' 3.10)
- visualization? (
- >=dev-python/matplotlib-3.3[${PYTHON_USEDEP}]
- dev-python/pydot[${PYTHON_USEDEP}]
- >=dev-python/pillow-4.2.1[${PYTHON_USEDEP}]
- >=dev-python/pylatexenc-1.4[${PYTHON_USEDEP}]
- >=dev-python/seaborn-0.9.0[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="
- >=dev-python/cython-0.27.1[${PYTHON_USEDEP}]
- test? (
- app-text/poppler[png]
- >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}]
- >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}]
- >=dev-python/networkx-2.2[${PYTHON_USEDEP}]
- >=dev-python/qiskit-aer-0.14[${PYTHON_USEDEP}]
- >=dev-python/scikit-learn-0.20.0[${PYTHON_USEDEP}]
- )
-"
-
-# Files built without CFLAGS/LDFLAGS, acceptable for rust
-QA_FLAGS_IGNORED="
- usr/lib.*/py.*/site-packages/qiskit/_accelerate.*.so
- usr/lib.*/py.*/site-packages/qiskit/_qasm2.*.so
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # strip forcing -Werror from tests that also leaks to other packages
- sed -i -e '/filterwarnings.*error/d' test/utils/base.py || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO
- test/python/circuit/test_equivalence.py::TestEquivalenceLibraryVisualization::test_equivalence_draw
- test/python/quantum_info/operators/symplectic/test_sparse_pauli_op.py::TestSparsePauliOpConversions::test_to_matrix_zero
- test/python/transpiler/test_unitary_synthesis_plugin.py::TestUnitarySynthesisPlugin
- test/python/visualization/test_dag_drawer.py::TestDagDrawer::test_dag_drawer_no_register
- test/python/circuit/test_scheduled_circuit.py::TestScheduledCircuit::test_fail_to_assemble_circuits_with_unbounded_parameters
- test/python/circuit/test_scheduled_circuit.py::TestScheduledCircuit::test_schedule_circuit_in_sec_when_no_one_tells_dt
- test/python/compiler/test_assembler.py::TestCircuitAssembler::test_circuit_with_global_phase
- test/python/compiler/test_assembler.py::TestPulseAssembler::test_assemble_user_rep_time_delay
- # tiny image differences, sigh
- test/python/visualization/test_gate_map.py::TestGateMap::test_plot_error_map_over_100_qubit
- )
-
- local EPYTEST_IGNORE=(
- # Breaks xdist
- test/python/qasm2/test_parse_errors.py
- test/python/transpiler/test_preset_passmanagers.py
- )
-
- case ${EPYTHON} in
- python3.13)
- EPYTEST_DESELECT+=(
- # docstring mismatches
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_meta_lines
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_multiple_entries
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_no_meta_lines
- )
- ;;
- esac
-
- rm -rf qiskit || die
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- # Run the Python test suite rather than everything under test/ which
- # includes the 'randomized' suite. Upstream run that in a separate CI job.
- epytest test/python
-}
diff --git a/dev-python/qiskit/qiskit-1.3.3.ebuild b/dev-python/qiskit/qiskit-1.3.3.ebuild
deleted file mode 100644
index f198714152b5..000000000000
--- a/dev-python/qiskit/qiskit-1.3.3.ebuild
+++ /dev/null
@@ -1,310 +0,0 @@
-# Copyright 2022-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-CRATES="
- ahash@0.7.8
- ahash@0.8.11
- aho-corasick@1.1.3
- allocator-api2@0.2.20
- approx@0.4.0
- approx@0.5.1
- ariadne@0.3.0
- autocfg@1.4.0
- bitflags@1.3.2
- bitflags@2.6.0
- block-buffer@0.10.4
- boolenum@0.1.0
- bytemuck@1.19.0
- bytemuck_derive@1.8.0
- byteorder@1.5.0
- cfg-if@1.0.0
- coe-rs@0.1.2
- concolor-query@0.3.3
- concolor@0.1.1
- countme@3.0.1
- cov-mark@2.0.0
- cpufeatures@0.2.15
- crossbeam-deque@0.8.5
- crossbeam-epoch@0.9.18
- crossbeam-utils@0.8.20
- crunchy@0.2.2
- crypto-common@0.1.6
- dbgf@0.1.2
- digest@0.10.7
- drop_bomb@0.1.5
- dyn-stack@0.10.0
- either@1.13.0
- enum-as-inner@0.6.1
- equator-macro@0.2.1
- equator-macro@0.4.1
- equator@0.2.2
- equator@0.4.1
- equivalent@1.0.1
- faer-entity@0.19.2
- faer-ext@0.2.0
- faer@0.19.4
- fixedbitset@0.4.2
- gemm-c32@0.18.0
- gemm-c64@0.18.0
- gemm-common@0.18.0
- gemm-f16@0.18.0
- gemm-f32@0.18.0
- gemm-f64@0.18.0
- gemm@0.18.0
- generic-array@0.14.7
- getrandom@0.2.15
- half@2.4.1
- hashbrown@0.12.3
- hashbrown@0.14.5
- hashbrown@0.15.1
- heck@0.5.0
- hermit-abi@0.4.0
- indexmap@2.6.0
- indoc@2.0.5
- is-terminal@0.4.13
- itertools@0.10.5
- itertools@0.11.0
- itertools@0.13.0
- lazy_static@1.5.0
- libc@0.2.162
- libm@0.2.11
- matrixcompare-core@0.1.0
- matrixcompare@0.3.0
- matrixmultiply@0.3.9
- memchr@2.7.4
- memoffset@0.9.1
- nano-gemm-c32@0.1.0
- nano-gemm-c64@0.1.0
- nano-gemm-codegen@0.1.0
- nano-gemm-core@0.1.0
- nano-gemm-f32@0.1.0
- nano-gemm-f64@0.1.0
- nano-gemm@0.1.2
- ndarray@0.15.6
- ndarray_einsum_beta@0.7.0
- npyz@0.8.3
- num-bigint@0.4.6
- num-complex@0.4.6
- num-integer@0.1.46
- num-traits@0.2.19
- numpy@0.22.1
- once_cell@1.20.2
- oq3_lexer@0.7.0
- oq3_parser@0.7.0
- oq3_semantics@0.7.0
- oq3_source_file@0.7.0
- oq3_syntax@0.7.0
- paste@1.0.15
- pest@2.7.14
- pest_derive@2.7.14
- pest_generator@2.7.14
- pest_meta@2.7.14
- petgraph@0.6.5
- portable-atomic@1.9.0
- ppv-lite86@0.2.20
- priority-queue@2.1.1
- proc-macro-error-attr@1.0.4
- proc-macro-error@1.0.4
- proc-macro2@1.0.89
- pulp-macro@0.1.1
- pulp@0.18.22
- py_literal@0.4.0
- 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
- ra_ap_limit@0.0.188
- rand@0.8.5
- rand_chacha@0.3.1
- rand_core@0.6.4
- rand_distr@0.4.3
- rand_pcg@0.3.1
- raw-cpuid@10.7.0
- rawpointer@0.2.1
- rayon-cond@0.3.0
- rayon-core@1.12.1
- rayon@1.10.0
- reborrow@0.5.5
- regex-automata@0.4.9
- regex-syntax@0.8.5
- regex@1.11.1
- rowan@0.15.15
- rustc-hash@1.1.0
- rustiq-core@0.0.10
- rustversion@1.0.18
- rustworkx-core@0.15.1
- same-file@1.0.6
- seq-macro@0.3.5
- serde@1.0.215
- serde_derive@1.0.215
- sha2@0.10.8
- smallvec@1.13.2
- smol_str@0.2.2
- syn@1.0.109
- syn@2.0.87
- sysctl@0.5.5
- target-lexicon@0.12.16
- text-size@1.1.1
- thiserror-impl@1.0.69
- thiserror@1.0.69
- triomphe@0.1.11
- typenum@1.17.0
- ucd-trie@0.1.7
- unicode-ident@1.0.13
- unicode-properties@0.1.3
- unicode-width@0.1.14
- unicode-xid@0.2.6
- unindent@0.2.3
- version_check@0.9.5
- walkdir@2.5.0
- wasi@0.11.0+wasi-snapshot-preview1
- winapi-util@0.1.9
- windows-sys@0.45.0
- windows-sys@0.52.0
- windows-sys@0.59.0
- windows-targets@0.42.2
- windows-targets@0.52.6
- windows_aarch64_gnullvm@0.42.2
- windows_aarch64_gnullvm@0.52.6
- windows_aarch64_msvc@0.42.2
- windows_aarch64_msvc@0.52.6
- windows_i686_gnu@0.42.2
- windows_i686_gnu@0.52.6
- windows_i686_gnullvm@0.52.6
- windows_i686_msvc@0.42.2
- windows_i686_msvc@0.52.6
- windows_x86_64_gnu@0.42.2
- windows_x86_64_gnu@0.52.6
- windows_x86_64_gnullvm@0.42.2
- windows_x86_64_gnullvm@0.52.6
- windows_x86_64_msvc@0.42.2
- windows_x86_64_msvc@0.52.6
- xshell-macros@0.2.6
- xshell@0.2.6
- yansi@0.5.1
- zerocopy-derive@0.7.35
- zerocopy@0.7.35
-"
-
-inherit cargo distutils-r1
-
-MY_P=${P/_}
-DESCRIPTION="An open-source SDK for working with quantum computers"
-HOMEPAGE="
- https://github.com/Qiskit/qiskit/
- https://pypi.org/project/qiskit/
-"
-SRC_URI="
- https://github.com/Qiskit/qiskit/archive/${PV/_}.tar.gz
- -> ${MY_P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 MIT
- Unicode-DFS-2016
- || ( LGPL-3+ MPL-2.0 )
-"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+visualization"
-
-RDEPEND="
- >=dev-python/dill-0.3[${PYTHON_USEDEP}]
- >=dev-python/numpy-1.17[${PYTHON_USEDEP}]
- >=dev-python/python-constraint-1.4[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
- >=dev-python/rustworkx-0.15.0[${PYTHON_USEDEP}]
- >=dev-python/scipy-1.5[${PYTHON_USEDEP}]
- >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
- <dev-python/symengine-0.14[${PYTHON_USEDEP}]
- >=dev-python/symengine-0.11.0[${PYTHON_USEDEP}]
- >=dev-python/sympy-1.3[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/typing-extensions[${PYTHON_USEDEP}]
- ' 3.10)
- visualization? (
- >=dev-python/matplotlib-3.3[${PYTHON_USEDEP}]
- dev-python/pydot[${PYTHON_USEDEP}]
- >=dev-python/pillow-4.2.1[${PYTHON_USEDEP}]
- >=dev-python/pylatexenc-1.4[${PYTHON_USEDEP}]
- >=dev-python/seaborn-0.9.0[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="
- >=dev-python/cython-0.27.1[${PYTHON_USEDEP}]
- test? (
- app-text/poppler[png]
- >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}]
- >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}]
- >=dev-python/networkx-2.2[${PYTHON_USEDEP}]
- >=dev-python/qiskit-aer-0.14[${PYTHON_USEDEP}]
- >=dev-python/scikit-learn-0.20.0[${PYTHON_USEDEP}]
- )
-"
-
-# Files built without CFLAGS/LDFLAGS, acceptable for rust
-QA_FLAGS_IGNORED="
- usr/lib.*/py.*/site-packages/qiskit/_accelerate.*.so
- usr/lib.*/py.*/site-packages/qiskit/_qasm2.*.so
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # strip forcing -Werror from tests that also leaks to other packages
- sed -i -e '/filterwarnings.*error/d' test/utils/base.py || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO
- test/python/circuit/test_equivalence.py::TestEquivalenceLibraryVisualization::test_equivalence_draw
- test/python/quantum_info/operators/symplectic/test_sparse_pauli_op.py::TestSparsePauliOpConversions::test_to_matrix_zero
- test/python/transpiler/test_unitary_synthesis_plugin.py::TestUnitarySynthesisPlugin
- test/python/visualization/test_dag_drawer.py::TestDagDrawer::test_dag_drawer_no_register
- test/python/circuit/test_scheduled_circuit.py::TestScheduledCircuit::test_fail_to_assemble_circuits_with_unbounded_parameters
- test/python/circuit/test_scheduled_circuit.py::TestScheduledCircuit::test_schedule_circuit_in_sec_when_no_one_tells_dt
- test/python/compiler/test_assembler.py::TestCircuitAssembler::test_circuit_with_global_phase
- test/python/compiler/test_assembler.py::TestPulseAssembler::test_assemble_user_rep_time_delay
- # tiny image differences, sigh
- test/python/visualization/test_gate_map.py::TestGateMap::test_plot_error_map_over_100_qubit
- )
-
- local EPYTEST_IGNORE=(
- # Breaks xdist
- test/python/qasm2/test_parse_errors.py
- test/python/transpiler/test_preset_passmanagers.py
- )
-
- case ${EPYTHON} in
- python3.13)
- EPYTEST_DESELECT+=(
- # docstring mismatches
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_meta_lines
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_multiple_entries
- test/python/utils/test_deprecation.py::AddDeprecationDocstringTest::test_add_deprecation_docstring_no_meta_lines
- )
- ;;
- esac
-
- rm -rf qiskit || die
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- # Run the Python test suite rather than everything under test/ which
- # includes the 'randomized' suite. Upstream run that in a separate CI job.
- epytest test/python
-}
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index d6601a1e672f..8f2d6cd242a6 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -55,8 +55,8 @@ DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764
DIST serde-1.0.216.crate 79000 BLAKE2B 98c0f5cee2f9212c6b7620d2068665379471ceb7557d1454cab9b1c2120b526ef597fbb642f65440e70f92a4764cad33613b478bacf99138dd5bd51fdbdbee6b SHA512 baabf4c7aac4a540c9ed18b336662087258b71c9cb0e547c8d83a2734818ab2cbbe62f910d812eb61d3d46e653c41a3eebc99b1d679bfc51f95710c71a8ecc20
DIST serde_derive-1.0.216.crate 57674 BLAKE2B 12a9228679c16288c08c8b256707e276aec79f84ac7af0c4cfd1f109500dfea80438df17d798acdd30a9743c753e70093b22bd324217529bac483f257682a3e2 SHA512 80fcb552279ac7562297df878f2f5e9ac09241701f5cf1088fcbf473b638f58cd3092a7930d8937ca0df9a47b9ae1a42d490cd46a275259cd8089fe8f5426469
DIST serde_json-1.0.133.crate 150739 BLAKE2B 7891eb5b8edcc7fd09ab1e15d3881ffdcb629aa39f2bd758c0505700a5f2dfabd85b1b66c3b094268bc1627b346e204c792f4ca61efa76c54ab9cd5744fb0ee2 SHA512 20e65ec87bff319897a141960d13deb5cadcf821209c1ee8799f1dc7f458ce432bc62c16df5bdada1c8d3cc01ff23b8125e8fa0a03545d4614f32efd687dc69f
-DIST sqlglot-26.6.0.tar.gz 5317429 BLAKE2B 5ce8516f9e03c55bed95cbb5f6c8904c1304a161e3809da11ad178c26629fa343be32bdd0418d23fd37826b84f94000e272f5687d85a147b1a9f7c57adad101c SHA512 f600f1c596c02c1668bc1236c5539b4e80f0b5d4a85c1faebd4273cdd08d04ebf6f5bdb2d6885be5eeefcc25d87ed47efd81fd4790f3d82a406bb05932f6a1b4
DIST sqlglot-26.7.0.tar.gz 5322836 BLAKE2B c44996699bb9831e3bba1fbb8ea4eb8c88f47f2e27a30e61143606e576f5ea07d78fd9a180c1f9f13df4a610b9d33fb104ea44f3f50a5fee3886d7efcb10a378 SHA512 40b8a544b87510d5cb098d9ede8c0a00ab2d5a82b3fac816a1377d79377c4daad65b29a04f9dfbcad672d831f1d07104686fba80b29d1591d7922d7c58c66d72
+DIST sqlglot-26.8.0.tar.gz 5325732 BLAKE2B 442247956468c411489d3b8ca4edb094eb5814ea72505897e818880acd656daa2d5192b7e1e4ec468dcada2836f708a16ca042d3c51c96982464c1998ae692cf SHA512 8a67977e346f2c67ce1aafd998720eb1eb2e6a0411c4f78b4455f5936961ff274d0e9553a5c62727698499c9e7d98daee76836d0fc0ccb6b55b472f88cfe6b73
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
diff --git a/dev-python/sqlglot/sqlglot-26.6.0.ebuild b/dev-python/sqlglot/sqlglot-26.8.0.ebuild
index 8807dc7fd20d..8807dc7fd20d 100644
--- a/dev-python/sqlglot/sqlglot-26.6.0.ebuild
+++ b/dev-python/sqlglot/sqlglot-26.8.0.ebuild
diff --git a/dev-python/trove-classifiers/Manifest b/dev-python/trove-classifiers/Manifest
index 3c5fd13424b3..d913240e6ae3 100644
--- a/dev-python/trove-classifiers/Manifest
+++ b/dev-python/trove-classifiers/Manifest
@@ -1,2 +1,3 @@
DIST trove_classifiers-2025.1.15.22.tar.gz 16236 BLAKE2B 23003b48c5f6b919559c3355b9eda56d229c5e19420368200952ab9a81a6ca850c779788ccb3c9340bd08e11f9c1da6ea67ecc180c206216313064881d3469f8 SHA512 460df4327866ea6ef19ea04e9ea4dd746eb733ceafec0db9920b1e6eb1649abfcc914f4e103700072696846c4af4c85003a1ef6323b4605a8f1659126d459503
DIST trove_classifiers-2025.2.18.16.tar.gz 16271 BLAKE2B 99f21fb5a6d40029cb53d2ce0b59c387b012e2538cfab8efb902bc8941499beb4b2ef506662442c5f2a0d2719099858e9bb4c9140514f41a4821436b7eefae30 SHA512 776082bbc7aac7fd4219fe9641261b439394b45ffb7b7f2e639e3f2fe583faa4594dc0113fd3ab3197035fa72c94ab378078023a6534721e640c01e9e5ce249d
+DIST trove_classifiers-2025.3.3.18.tar.gz 16239 BLAKE2B 439b7c7aadae4a2dfb55a065b57853cf5f1f5752072c6e52fcde0ed63bc95a8d17ad9e618983f3302af0bb2b91af5e7db3d076d001008d0c06a62bdf5680facf SHA512 a84ee9e3ff20664b433bd07835e0050fa9cd149d18bbcbd2514abb8f1d056725788c64e37c8863b779070728795f5aa01c0a38b8088082ddc37a10629b9ae492
diff --git a/dev-python/trove-classifiers/trove-classifiers-2025.3.3.18.ebuild b/dev-python/trove-classifiers/trove-classifiers-2025.3.3.18.ebuild
new file mode 100644
index 000000000000..e43d7ad35d9d
--- /dev/null
+++ b/dev-python/trove-classifiers/trove-classifiers-2025.3.3.18.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=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Canonical source for classifiers on PyPI (pypi.org)"
+HOMEPAGE="
+ https://github.com/pypa/trove-classifiers/
+ https://pypi.org/project/trove-classifiers/
+"
+
+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"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "setuptools' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease hatchling bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "trove-classifiers"
+ version = "${PV}"
+ description = "Canonical source for classifiers on PyPI (pypi.org)."
+ EOF
+}
+
+python_test() {
+ epytest
+ "${EPYTHON}" -m tests.lib || die
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 69e66b36d6c8..65dc964c9244 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -7,3 +7,5 @@ DIST uv-0.6.2-crates.tar.xz 54121752 BLAKE2B b1ace1c08ae63fa662d73675eb30818b63d
DIST uv-0.6.2.gh.tar.gz 3720975 BLAKE2B 04e3e9d6cc3a808f5323e7e72584c74078ee74d8636533a42e0027e2abcf98fc73fb2fb8f94dd855773bf046d381a8d928dc3fb3688bcff25df1c848bc3a1496 SHA512 ac193c0de1cd6ae48fd40e05a1c47999bc2cee9ac553d69fe676a78e970e2763c2e9a6f3a84b123701db143534d8597ef4445e255ca74788fef88332e51f092e
DIST uv-0.6.3-crates.tar.xz 54109600 BLAKE2B d73c4b4794626abd044f5f5487f59e5890545b659c9df36956e3da8d28dc7be96119706dc7fcfa693a1d3a023691ea4997e9be6b993fdce64044995f20d9c4ef SHA512 5476c855b8a3c68b2572c837f1841e8563373b133d226117f1dad06599a237b2d34bbe95d0f27d027952ecde26977964027e7d4af25ff29ff28b8afe2bb3e522
DIST uv-0.6.3.gh.tar.gz 3759959 BLAKE2B de5309ab9093193bf1e845089a96408dabfb1af26bc634ac6b5f00aca9a94a709d3a36577642cef8a99a6e38c7ed81df45cf9e803f2508cef9c3efda28e56ecd SHA512 a168528a5af666f2d69e2f8606b8d68e8009dee5b604af83bf9273192e9c07778078a0e8e79f14432e851b62a1af72759a06b85a891ed93f5369daffa01c4807
+DIST uv-0.6.4-crates.tar.xz 60120880 BLAKE2B 67e7cba1df7e8c18e55d7d1a5748db7995c19a8bc4d156b5cdcf8d6af3922ea52279e2351085fd2142806f6692383535dec1d8354c5197d3ed032f768c552dbc SHA512 0f13d3e6e77397ef2db40122736fe4d990003388dc2f2f782b9aea317fb30f30cbb35b1d800b252e84f239fd570208df55f281432e91e546b5edcf82b9a2b68e
+DIST uv-0.6.4.gh.tar.gz 3767634 BLAKE2B 935155f7833c47c149c13c6ebf72e17f54ac27917fe38a2d7fb41637dba2fcd331e1faeb33e3def02194214e1962129b283ec491eb76877011793b629d9d11c7 SHA512 7583da2b68229fe8fbbe5a25e66efbd25feeb6c98c88cb38f5b0b6b891ce71397e63b0ae64c6c845c27c903af77079a2825719dfadaa4201536d8941885a7fc4
diff --git a/dev-python/uv/uv-0.6.4.ebuild b/dev-python/uv/uv-0.6.4.ebuild
new file mode 100644
index 000000000000..ea31a134e1f8
--- /dev/null
+++ b/dev-python/uv/uv-0.6.4.ebuild
@@ -0,0 +1,170 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%'
+ [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
+ [version-ranges]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%/version-ranges'
+)
+
+RUST_MIN_VER="1.83.0"
+
+inherit cargo check-reqs
+
+CRATE_PV=${PV}
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-3.0 Unicode-DFS-2016 ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ !!~dev-python/uv-0.5.0
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+ rust_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+}
+
+src_configure() {
+ local myfeatures=(
+ git
+ pypi
+ python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+ local -x COLUMNS=100
+ local -x PYTHONDONTWRITEBYTECODE=
+ # fix tests failing because of our config
+ local -x XDG_CONFIG_DIRS=${T}
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+
+ insinto /etc/xdg/uv
+ newins - uv.toml <<-EOF || die
+ # These defaults match Fedora, see:
+ # https://src.fedoraproject.org/rpms/uv/pull-request/18
+
+ # By default ("automatic"), uv downloads missing Python versions
+ # automatically and keeps them in the user's home directory.
+ # Disable that to make downloading opt-in, and especially
+ # to avoid unnecessarily fetching custom Python when the distro
+ # package would be preferable. Python builds can still be
+ # downloaded manually via "uv python install".
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-downloads
+ python-downloads = "manual"
+
+ # By default ("managed"), uv always prefers self-installed
+ # Python versions over the system Python, independently
+ # of versions. Since we generally expect users to use that
+ # to install old Python versions not in ::gentoo anymore,
+ # this effectively means that uv would end up preferring very
+ # old Python versions over the newer ones that are provided
+ # by the system. Default to using the system versions to avoid
+ # this counter-intuitive behavior.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-preference
+ python-preference = "system"
+ EOF
+}