summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Manifest.gzbin272944 -> 272950 bytes
-rw-r--r--dev-python/bibtexparser/Manifest2
-rw-r--r--dev-python/bibtexparser/bibtexparser-1.4.2.ebuild30
-rw-r--r--dev-python/boto3/Manifest2
-rw-r--r--dev-python/boto3/boto3-1.35.32.ebuild53
-rw-r--r--dev-python/botocore/Manifest2
-rw-r--r--dev-python/botocore/botocore-1.35.32.ebuild76
-rw-r--r--dev-python/gdb-pt-dump/Manifest4
-rw-r--r--dev-python/gdb-pt-dump/gdb-pt-dump-0.0.0_p20240401.ebuild2
-rw-r--r--dev-python/gdb-pt-dump/gdb-pt-dump-9999.ebuild2
-rw-r--r--dev-python/huawei-lte-api/Manifest2
-rw-r--r--dev-python/huawei-lte-api/huawei-lte-api-1.9.3.ebuild40
-rw-r--r--dev-python/ipython/Manifest2
-rw-r--r--dev-python/ipython/ipython-8.28.0.ebuild161
-rw-r--r--dev-python/parse-type/Manifest2
-rw-r--r--dev-python/parse-type/parse-type-0.6.4.ebuild34
-rw-r--r--dev-python/pycryptodome/Manifest2
-rw-r--r--dev-python/pycryptodome/pycryptodome-3.21.0.ebuild60
-rw-r--r--dev-python/pymongo/Manifest2
-rw-r--r--dev-python/pymongo/pymongo-4.9.2.ebuild228
-rw-r--r--dev-python/qiskit/Manifest2
-rw-r--r--dev-python/qiskit/qiskit-1.2.3.ebuild312
-rw-r--r--dev-python/rpyc/Manifest2
-rw-r--r--dev-python/rpyc/rpyc-6.0.0.ebuild2
-rw-r--r--dev-python/simsimd/Manifest2
-rw-r--r--dev-python/simsimd/simsimd-5.4.4.ebuild64
-rw-r--r--dev-python/sqlglot/Manifest2
-rw-r--r--dev-python/sqlglot/sqlglot-25.24.2.ebuild129
-rw-r--r--dev-python/tomli/Manifest3
-rw-r--r--dev-python/tomli/tomli-2.0.2.ebuild40
30 files changed, 1216 insertions, 48 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index e85a7bc6ab94..15737d3f0216 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/bibtexparser/Manifest b/dev-python/bibtexparser/Manifest
index 50bcb58d61b4..7dc6228b66b0 100644
--- a/dev-python/bibtexparser/Manifest
+++ b/dev-python/bibtexparser/Manifest
@@ -1,3 +1,5 @@
DIST bibtexparser-1.4.1.gh.tar.gz 97146 BLAKE2B 8040532fe2153ff6ec664631a11b4f61548f99198c565bb554d0fe09d1fa54ee368c08be72bf7e86c5b6ca696deb0210496d4772243a05c5c9b28d73f52e6dc5 SHA512 f8e8f911eac38e98362bbbeff5b4af986e426911db9c54e93ec4a4eee1b1ceed630222c1a51454639566a6b5bad60c86a70b882a1c05084927fcbe7315e837ce
+DIST bibtexparser-1.4.2.gh.tar.gz 81042 BLAKE2B 4522e46c371ae66af933ff6edc3cf1ce37336597c815facd8bbc62cc5b976c66bce45563af18f15a62c5ddf8ddda1bfbfa986eb16f21544aafaef3e22883cf4d SHA512 7aa58cb50c42773b8ae6d0448f817e83cc7445b8e65806430df17f9956219f440116cb227825da3423b40a5815921d1e42e407b236f6e917b3713eee5b8a989b
EBUILD bibtexparser-1.4.1.ebuild 642 BLAKE2B 9e19bb33fe34298b935531a441b541831b081c617f8acad8c37c1217fb0ec6801dd0b833bc4017c3e837ee78b4ee86627605a35a21fd53657f0e2b4254179647 SHA512 d1de97a37ce2ed779e99a39f544f4bdea7858880594f8123beb97a28a0d4b2b1774d590ec3e675835f77b2092a624553ac7161e304242239daf204bb7ec04b4d
+EBUILD bibtexparser-1.4.2.ebuild 624 BLAKE2B 07f083f7cfa84096ba27ceeb8a5f0500410f127e91ae8d420d121b71819eb28add56041b82ce6209059539e9a4a4214f115651a52a4b9c78b3d652698c27413e SHA512 5629b4428273272d0c299806caabad319415a0571893cab655325dfe019d11ded740fa13d58854e1ff9d8401f9583b83877d420feef90183bf1ab815f25687ca
MISC metadata.xml 420 BLAKE2B 931e6f1915be7d1b809bd2f59fec9f057fe3f6c6219ae3d5d8103a5e5155d13dc6decfbb5865d7a333247178371adae7f2712d12f0e001badb941d5fb2b8e6e7 SHA512 254ba66a5078b040ff86a77ae890c70f4d49374f2094b67c5046a8acc308901048fe8c46d1eb8d9716f13c0ac6a6c48625aa799837a1c586b2ce450a50704d33
diff --git a/dev-python/bibtexparser/bibtexparser-1.4.2.ebuild b/dev-python/bibtexparser/bibtexparser-1.4.2.ebuild
new file mode 100644
index 000000000000..b32c01f4d19c
--- /dev/null
+++ b/dev-python/bibtexparser/bibtexparser-1.4.2.ebuild
@@ -0,0 +1,30 @@
+# 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_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="A BibTeX parser written in Python"
+HOMEPAGE="
+ https://github.com/sciunto-org/python-bibtexparser/
+ https://pypi.org/project/bibtexparser/
+"
+SRC_URI="
+ https://github.com/sciunto-org/python-bibtexparser/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/python-${P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pylatexenc-2.10[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index b64c116cf430..1782d0cd671a 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,8 +2,10 @@ DIST boto3-1.35.19.gh.tar.gz 861578 BLAKE2B 5011df66763e646768232a65022080ffbe3d
DIST boto3-1.35.24.gh.tar.gz 864653 BLAKE2B e2327ae352d17f0cfabdcca6d7db07e0212ea740c66d8f36baf44d0617cdbfdcb018388fed1deeea37bef5e44edb360f2cb77b41085e7a3308f7d4045b0a4aa3 SHA512 e34b02cf141bd77d92a34dbef266e07f6d45d46aa924e3941dbe09a9562253f375b79a6a4f1e3df248d711341e00367a8519f816b2200353a6262de72a40fba0
DIST boto3-1.35.29.gh.tar.gz 867438 BLAKE2B 7a47e8156bd438e94fe2abf9fa978aa243bf131bf7c9afdafeca7f7ada9b014daea410da82417e95bdd57f14bf5a973429cc7b431ba72088f9f9619c59cf9b93 SHA512 7238f353520768576390651a4a90a389b24205b38ff9c58829ff53b6210fb3a4ad5c27301e5be27bb10ed2017ff29691780102af983e16d0b14a4f9add17ba12
DIST boto3-1.35.31.gh.tar.gz 868424 BLAKE2B 28c352784c8af273f29318b788ed2c29b88e2e2deb248849937f7a33d0a0d11132a8ee571bce18486c60e63c5c2972fa041389f8ea41dda7d18fd7ee21a30fd2 SHA512 2f614c8f0fc9631a7c77889e392c789493e836d195d5210fa5a63d10bc67c8879f06251a006c6d398afd71fc646320e4571060174a277538fcba63930d6183a7
+DIST boto3-1.35.32.gh.tar.gz 869127 BLAKE2B a7a269b71f8a784118d0d9092ef95b9eb8344c6791e37a68d1645bf629f7b724e556dba02fad5685af5dff543a3646dda9005cdf0c7a92b47431dd1ba9ce6d26 SHA512 2cd51232be313b407b4a2b799bdd487242f3e61a9bc63df2d59422ea5b7abb2f9c382b151d17efe0dfed31b1d0cf9719a746fd3c8de314e080e774c1c4951ffc
EBUILD boto3-1.35.19.ebuild 1198 BLAKE2B 99a7fa08055cee13f14557124398df39119bae2e4b684265d4647ad0ec83a502bb422365e3797ff5c0440c4b1c9866ede4c62b1876510178dc2e6a0b05ed8781 SHA512 c020cc5535d63c948dd456d9f4af4e97339cb36dc0bb2b2c53d3da0c8c62737e0846ff71d9f85ca9b2936a8a7bfc43b67c3114f91440e75c9870beaa8997107a
EBUILD boto3-1.35.24.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
EBUILD boto3-1.35.29.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
EBUILD boto3-1.35.31.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
+EBUILD boto3-1.35.32.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
MISC metadata.xml 493 BLAKE2B 7d6324fc877ffe1d20c5369c2af0b09a7028f94d28f1841188913d0d8be7ea699c9d3f92c624992c4c96bd69615d3a1211a2483c76c56b7d3082492e43512523 SHA512 44420d8c03d5986f990b76369edfa8dfd7659b4952db3ad946fd05392ec594628a28745ad888d055d4f074d5214f61fcffafe6c04c4ab54109d45ac0371582bd
diff --git a/dev-python/boto3/boto3-1.35.32.ebuild b/dev-python/boto3/boto3-1.35.32.ebuild
new file mode 100644
index 000000000000..8cba6d95740e
--- /dev/null
+++ b/dev-python/boto3/boto3-1.35.32.ebuild
@@ -0,0 +1,53 @@
+# 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_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~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.10.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 b9b12005cd5d..d1bbad872ea7 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,8 +2,10 @@ DIST botocore-1.35.19.gh.tar.gz 13376459 BLAKE2B ba64ff0dc221782ce23592a6d6a146a
DIST botocore-1.35.24.gh.tar.gz 13406391 BLAKE2B ddc1c456e4358b3e28ca8f6a92230fb843309fd6059eaf909a9fb3de0bd580fb52389173187e0794054b9f1bc21a829f457b80067868c13fd7987fc682acd024 SHA512 7a1e8c1a85e8699a811a41b59cdefcee2457c5dfdf01d54f3048f894869c5c4033287909095bf15304e408c268cf772194655afffff280dbb6fd6c6daac1d8cb
DIST botocore-1.35.29.gh.tar.gz 13404400 BLAKE2B 41dab50dbed91c55df3c74cc3c57bd02a770b37445cf26690d199c62642b2d96d1c56d06cfea58ac23e6fa0826be99c684bd98d5e00e0e7aa8bcc0b599f70bce SHA512 c82c942942c5ad7c0b941bf1e89003730bda68fd9a2f623e8db85690f8157f73517b0ff6b7009cb15461bbff41b7ee713c5ab935cc0eb96ba3ef3e3100e363e5
DIST botocore-1.35.31.gh.tar.gz 13414420 BLAKE2B 942455ccd037fb7cd9142a43cbc316ccc0ff8a7bc55f00096bea11527d2701cb6ac89984faca19793dcdbba5163bba330f1cddbbb9427a411d9db0cf50c9cfba SHA512 972a9f72e2d922f95e7df23ee087787962062dc97b1aa1c7732fac7a4de17d8728bad0f38dfa4dd6963c285acdd10a327044e6aba43b54953d8ab9531619b927
+DIST botocore-1.35.32.gh.tar.gz 13422242 BLAKE2B d1b553be9301b5c9aa674e9aa32d15b69e3fd56eb9d906fb979967a1df6fbf69fac6795dad133bcaf63c8c955d3f234087a7285ba7f603de83f015fc7fcea1fa SHA512 174bed147fc9708e2c1e500276597396a4f63d0417bfeb6058296a9aaeb6f21a56e8bd63d06248641e99f0e38e1dbc5c1a3ce8c17c28e1c3eea8044f58ce0642
EBUILD botocore-1.35.19.ebuild 1665 BLAKE2B 1171f3bdcbe2eada97adf58c2011691cb51300028737903ec51e9fea4d80943dc3e199f4a1671be350ca2cf921e5dbdd4e7c8ca4658261143646cf9c0c82f522 SHA512 db8027472dcb87b167d63ed89910783e104513361b9191f5e2e2928a2904493c22d9629aa206f61206c4f29c6a9c43e8208c57a9b9bf99b031101b915d326674
EBUILD botocore-1.35.24.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
EBUILD botocore-1.35.29.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
EBUILD botocore-1.35.31.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
+EBUILD botocore-1.35.32.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
MISC metadata.xml 499 BLAKE2B e5aaa7da26f200c09adfdf38b68f656bbccbec627cb5d966b280ac2165334e7eec659c89075bcace748f58e2ec3e7d2998e54a688d56ecea2d30653c67dfd35a SHA512 103c554d5dbd967bf9b6e418b3913d9235e7e910d012160909ce0715134ed2e37b06e6a345395f9d16ce08d1cf51f3ce458bce93c6a978fd3dca6610f2acdbd0
diff --git a/dev-python/botocore/botocore-1.35.32.ebuild b/dev-python/botocore/botocore-1.35.32.ebuild
new file mode 100644
index 000000000000..4f1ad852bdc1
--- /dev/null
+++ b/dev-python/botocore/botocore-1.35.32.ebuild
@@ -0,0 +1,76 @@
+# 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_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~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
+ )
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # memory use tests, probably fragile
+ tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/gdb-pt-dump/Manifest b/dev-python/gdb-pt-dump/Manifest
index c41b5cd45f2f..2de5ba113e9b 100644
--- a/dev-python/gdb-pt-dump/Manifest
+++ b/dev-python/gdb-pt-dump/Manifest
@@ -1,6 +1,6 @@
DIST gdb-pt-dump-0.0.0_p20231111.gh.tar.gz 386894 BLAKE2B 31c15a7574ac37e859831e6b17d27ce47bc6aed4d3bb81a01c8492b803cd71ba28379777bd9c221c9f81585811bba4952fb8e5349104ff36e88efe3996715937 SHA512 c94cce47754b634a2fda267f715cdd7957ec0714c4ac96d6b9e20fa4cfdf6c026a3e0b351bf0e041ea0c2dbf253f547ede3d2b13b83c6316ef6222bac0e4b61b
DIST gdb-pt-dump-0.0.0_p20240401.gh.tar.gz 406426 BLAKE2B 9b50d600df72eec81b2d146dc972a2096ce6d8a085b79360dfefc3d45a733e29008ca3986496811532e541deec46d71410191869cd9643c603a3955d683e6ff7 SHA512 bb521868ccfbae8a411bc57e067cdda227b113cb20bc97eefad77a693f66d00d20debbce51f69c8daf86128bbf938cd3304ea97992aa817a608ce65f80173e10
EBUILD gdb-pt-dump-0.0.0_p20231111.ebuild 797 BLAKE2B d7c710ab859b6f86d7a99246c4d956b55df6c31ede7a7148242303e0b3dbe2275198ae2739fda0eb44fd8ce524098aed45801feff42764011d81b8de59f346a4 SHA512 e0491158ab7a4e41000748925df09c282a264624a262170fec3d8e99463a10a316a0483e2bd6957f74a00f0dc6e1bd8ff9f4238a22d49f110038768b0791fb0a
-EBUILD gdb-pt-dump-0.0.0_p20240401.ebuild 797 BLAKE2B 27a1c22dd4534303dd906287f7fb3c0668570407de44c6e50a241d6cde31e8e2570f5bd640dda44d1420ea413dcef1e25eb8c8b6ea8ee31ebe79f7e5fc8ebfe3 SHA512 fe6b35ea992052fe39932cbf76fc0e81b908736ffcc42e0e1a34913ad3e96f548760845e32498f294b45d8b486b58e720eb15851e2a63790ccb12e68314ab8b3
-EBUILD gdb-pt-dump-9999.ebuild 799 BLAKE2B ceffb88994559fe12aeeb77144f909b1156fd069bcbbcc87020cf867938cb4972ff63d5bd61e0e1d8655f9b7f0d8b19021f25815165a77a08d6aefa29c62625f SHA512 32453259953514a17379eaaf491be1ee368a9c8be00f1fb55e72c7aa7b7d8cc624751022ba8acfa5f43f3e65ab43cfb392c3727c9ec39fe10f0a7cd9767d1fb7
+EBUILD gdb-pt-dump-0.0.0_p20240401.ebuild 797 BLAKE2B 65ace558cdc2441560cdf840f8df50df5fef93a12a42614e3b27a18c0438f63bdcb90b7f83c8c0308477faa34c251c09511eb1f7c4f3a2605180dea41531efb4 SHA512 177ad7cdf301a428f013d9eb31cb08447e72571b8d46b5a5f9448c5b8e520e185a24596e9b2cb314538e89786f4ac8834607d2cc8e5f83c5ebf549230ad18a48
+EBUILD gdb-pt-dump-9999.ebuild 799 BLAKE2B 837c0beef91ba463a23e9f45ad3d60ef235a963c074782a0774a4983cc6f4f07ea0cd7b88c8d761204bc745a8727fcc879912a10d8938f32db998e82a1cc3fa2 SHA512 2136293bc70514ccea7a1e07f74d3a0e118c8696bf5971d91c5a0e25be6e2d7bfc1325431f8d7d1b54153a9ae5e28b0e759d4b30337f399231b61e19cad23515
MISC metadata.xml 499 BLAKE2B 73e9944ab68c0e1a1c86b9afc9293d56d59cf7d3c31de8ba6c60c0ddcf26ce5dee238a0a6ead14b6e1a4d1ca675ccfd0f64856689609169b29d115b1f71d7f13 SHA512 d6df7350b7947f9f70a83e8eb9bea4774183bf55697f4e7131330cf11372d5af86d03c70d2a27c689759155c4f276ad36738fb324163cc2a13f4249271d906f6
diff --git a/dev-python/gdb-pt-dump/gdb-pt-dump-0.0.0_p20240401.ebuild b/dev-python/gdb-pt-dump/gdb-pt-dump-0.0.0_p20240401.ebuild
index aaf60c4e2a5a..1c4aff567b0d 100644
--- a/dev-python/gdb-pt-dump/gdb-pt-dump-0.0.0_p20240401.ebuild
+++ b/dev-python/gdb-pt-dump/gdb-pt-dump-0.0.0_p20240401.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=poetry
DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
diff --git a/dev-python/gdb-pt-dump/gdb-pt-dump-9999.ebuild b/dev-python/gdb-pt-dump/gdb-pt-dump-9999.ebuild
index 5bb5e7fcecfd..7cd8fe076032 100644
--- a/dev-python/gdb-pt-dump/gdb-pt-dump-9999.ebuild
+++ b/dev-python/gdb-pt-dump/gdb-pt-dump-9999.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=poetry
DISTUTILS_SINGLE_IMPL=1
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
diff --git a/dev-python/huawei-lte-api/Manifest b/dev-python/huawei-lte-api/Manifest
index bb14a3a4b7ca..2b59be991d54 100644
--- a/dev-python/huawei-lte-api/Manifest
+++ b/dev-python/huawei-lte-api/Manifest
@@ -1,5 +1,3 @@
DIST huawei-lte-api-1.10.gh.tar.gz 43853 BLAKE2B 568da364ecc709716a040a5f6c32f79b028ceca42ffce29949d064115279a4653544df50e30ac07ad873a1e98ba203093fcf000bca65b4b1ea6f4f009217d4c8 SHA512 7ffe128817bf38d60ee5dcbdb6668516a3ab47a02d34868ab9c9cc6b26cfae10c334a779b4ba63f0ec635b834fce46b12409b913f7c9b45a746ff5ba875e1758
-DIST huawei-lte-api-1.9.3.gh.tar.gz 41344 BLAKE2B 3812c2dd5404320eb24bbe6e1e5819effad06641e96289ac279e5fe96add8880d837bf6770816f1bdce553cbf1aad73d370377c7f0713428d6ac46906d88602c SHA512 4f5f00dd416b017422753940ae69a1c24b424692fdf9e6ea29073035d381b5434462b022ebe44bf4d911eafe07f9ff57b8d349bf7140e0f33daba6384a73cd24
EBUILD huawei-lte-api-1.10.ebuild 873 BLAKE2B 2cdae354c7397f587e58925c8b332927680e086ee89aa3572dd8d150e2b73250a831716f6e2aa54dfd04bd35d6ee15e2fdd878341aeb15e964ae4fac6d9a3df4 SHA512 4b7ebcbb2f9aa168886d178d95dbef1a2e62a547856e23a9862b59f7d0f805fa8b6257fa49b554e049bc741530b546d30b7b0e298e006cb4ec248ef35126ce84
-EBUILD huawei-lte-api-1.9.3.ebuild 873 BLAKE2B 2cdae354c7397f587e58925c8b332927680e086ee89aa3572dd8d150e2b73250a831716f6e2aa54dfd04bd35d6ee15e2fdd878341aeb15e964ae4fac6d9a3df4 SHA512 4b7ebcbb2f9aa168886d178d95dbef1a2e62a547856e23a9862b59f7d0f805fa8b6257fa49b554e049bc741530b546d30b7b0e298e006cb4ec248ef35126ce84
MISC metadata.xml 487 BLAKE2B a4aa976286ea3cc4e02227109277faa4506f73a4b7f6c47ef9a318ae5d1c3fe61cc6eeb50ab99c0b10e5edb4ae02101d8e4d6267e7dc8f20520e9259b1d17fd2 SHA512 2ea5ccd73098a9c4d074340c9d6eb433bdaf4530d8fdb899f2a9632c097d2021d9162aa92fb9ffb54eaad2f41050d0323ddc68d0d29ec2f13060e5fe9e26f74d
diff --git a/dev-python/huawei-lte-api/huawei-lte-api-1.9.3.ebuild b/dev-python/huawei-lte-api/huawei-lte-api-1.9.3.ebuild
deleted file mode 100644
index 4315d293fdf2..000000000000
--- a/dev-python/huawei-lte-api/huawei-lte-api-1.9.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( pypy3 python3_{10..13} )
-
-inherit distutils-r1
-
-DESCRIPTION="API For huawei LAN/WAN LTE Modems"
-HOMEPAGE="
- https://github.com/Salamek/huawei-lte-api/
- https://pypi.org/project/huawei-lte-api/
-"
-SRC_URI="
- https://github.com/Salamek/${PN}/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/pycryptodome[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/xmltodict[${PYTHON_USEDEP}]
-"
-
-python_prepare_all() {
- # make cryptodome-friendly
- sed -i -e 's:pycryptodomex:pycryptodome:' setup.py || die
- find -name '*.py' -exec \
- sed -i -e 's:Cryptodome:Crypto:g' {} + || die
-
- distutils-r1_python_prepare_all
-}
-
-distutils_enable_tests pytest
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest
index 84160674054c..1966a56e19cf 100644
--- a/dev-python/ipython/Manifest
+++ b/dev-python/ipython/Manifest
@@ -1,3 +1,5 @@
DIST ipython-8.27.0.tar.gz 5494984 BLAKE2B c896fec5d63bd2c587b218e86dc3be80e125b87c4abb30d5d4b465233a014aa1b94939e293517e1e8eb93ca8098d304872e94a32454f636f6652494e16b4352a SHA512 0bc38bb182fd3342306ed8b9057873eed0554d8cd98ed03be1eb94ff885a39e977d12ceb4eac33fca06229cf7883a7a28f7570f9e698de7554c0533ad094c560
+DIST ipython-8.28.0.tar.gz 5495762 BLAKE2B cd80970486b5c8128fc5f20382cd087ecbe6a1f4566db52030e9825fbd24acbef8b1857dc74592f5fe1f278aabf0b34913e7be53d8851bf6f9cefccc9360662e SHA512 5634b9faf55eec9cf2775587e994b4298ae9ddd6420fbdcc6a9c32c0f9bbe39f5137e6b39a2f5a5c40efa1deba668d81fe39867151480eb4b88f3850d8670719
EBUILD ipython-8.27.0.ebuild 4477 BLAKE2B c7a4c98aaf5fc6772a48b9595938eedd71eb556db714f18687e004b248a2e001f5ec7193bfb5e55bd053aee1c362b22dc657cc2cd35b3a01668a5f0aeb7a020d SHA512 0fd135542966e2764d42040f6cae40b973c9612a09fe00c94c68c3bc7eff19011b51e6cb01bce313b680c02fc1a8da75fc7a1700f28588806f650d79dc54c893
+EBUILD ipython-8.28.0.ebuild 4485 BLAKE2B 6214516524ed7f03aec736210eae7c6e4707bcae549ef37293939932631f902f34af09404ec977fef03aac1d9dfa28f7155f1c2df4c63142a633c5a508a13845 SHA512 38230082df71e81b6df5c5c0f93f9ccaac171236e52b5eb591382a320448c2f7c48a3f44ea5ac63ed3de0632d9d3a247344f00411df27140f2e58e3f877ff5b3
MISC metadata.xml 2802 BLAKE2B 2fb6773ad4ef10d531f978e3ed40f6d99cf1586ec6d7cf2bf7e60fd5d640d082a0946651e0a066993320ffeaace3426066ca24c325926b62125ae91816707128 SHA512 965c3e36e05475d9454af8219b84e080d4c83d775f8a7e20a4951a82246d672c46fd3cb1fff5f8664d0ce8e8fcb846de6f15abc4575db3a6b7d87209194bcecc
diff --git a/dev-python/ipython/ipython-8.28.0.ebuild b/dev-python/ipython/ipython-8.28.0.ebuild
new file mode 100644
index 000000000000..002d16d2e32f
--- /dev/null
+++ b/dev-python/ipython/ipython-8.28.0.ebuild
@@ -0,0 +1,161 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( pypy3 python3_{10..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="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="examples notebook nbconvert qt5 +smp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/decorator[${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/exceptiongroup[${PYTHON_USEDEP}]
+ ' 3.10)
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' 3.10 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/parse-type/Manifest b/dev-python/parse-type/Manifest
index 05baf8b3f11a..334f54538ce7 100644
--- a/dev-python/parse-type/Manifest
+++ b/dev-python/parse-type/Manifest
@@ -1,3 +1,5 @@
DIST parse_type-0.6.3.tar.gz 78224 BLAKE2B 079930e12abbc5e01ad29a92dfd4eabcd4ab80803084875cf63e8812e75ec4d469496e0416c5699da89e8c4da56c1a3ab10a48f9920a926aa6ab988ca52131e9 SHA512 babcc8e47cb1933fcd07e1860b07cdefe2e236c2900b1a3eac7982d32b0320b02647a813d4d20def7df1fab8ba9621d5a5c02fa2147f6fff880d1449f61ef38f
+DIST parse_type-0.6.4.tar.gz 96480 BLAKE2B 04dbee9a4bc132d395b2d20d8cb99ac016dcab65a9eaa29e3f0d6b40700feeda7255aed869a32ef61ffed820ad7b5d2495513c95c0e55ba9759ec9f58d1e933c SHA512 5012ea47f2a9fbdc4962aa11dedef914228f1ec8c88b725374fd434844e4cf22d069016abb49239419188f0455bae9c79eb0259a178e6c292dd8ed8103c2ebe5
EBUILD parse-type-0.6.3.ebuild 683 BLAKE2B 84fcf17fa43c16e4bf3e78f3dd5021b249cdef25680ee20f49513f9dce2588e50edb213d1a742dec579577f535b4f7904aef37ddfe29acb2760914ef88fd5e02 SHA512 3da7b027bd75cd09d0f619a464cbc40fe0db87a208923c58304f0aca474f3ebed2c83aa932b19fcc7230724976ad03539aaf94442c472fa9893bfd8f06aa0071
+EBUILD parse-type-0.6.4.ebuild 742 BLAKE2B ab6fca20d2aa2cd4496523767cbb457305972a305942cdbafdd2c618974a97f7dc67e12416f0324d532c67f8cd8959fc98805e9bb5431e64e5681e47b50c7aaf SHA512 91aa830384fed501faf612e6ff54183506d854f0ca1ad681783ba7e6cc797df2b31a85c2c1be52c8d8a695b4b5ebce6a7bc863b10633466bdec2788cd8f96179
MISC metadata.xml 401 BLAKE2B 38e88a68d1271796b0e160ca4266b0d35c135aebb3ae4c88ea609ebfc2407a2b8cd7332bcb4adc0ffb2188259d4bd41eaf22d53d0eaf1947078fcb253835e6de SHA512 ead81a56944702a5b717e6c1b909cc81ecc68194a08586a52ef5b46b533dd34ecdce1f8da098f6967e705c74cceb92c026b717f96056ac35f70134c8e1e5bfa3
diff --git a/dev-python/parse-type/parse-type-0.6.4.ebuild b/dev-python/parse-type/parse-type-0.6.4.ebuild
new file mode 100644
index 000000000000..96f452af6f11
--- /dev/null
+++ b/dev-python/parse-type/parse-type-0.6.4.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Extension to the parse module"
+HOMEPAGE="https://pypi.org/project/parse-type/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/parse[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+DOCS=( CHANGES.txt README.rst )
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # disable unnecessary html test report and its pytest-html dependency
+ sed -i '/^addopts/,/report.xml$/d' pytest.ini || die
+}
diff --git a/dev-python/pycryptodome/Manifest b/dev-python/pycryptodome/Manifest
index e71dc374769c..7e4c0f93d423 100644
--- a/dev-python/pycryptodome/Manifest
+++ b/dev-python/pycryptodome/Manifest
@@ -1,4 +1,6 @@
AUX pycryptodome-3.10.1-system-libtomcrypt.patch 1729 BLAKE2B 57a2022ef17e0b86e98b085336f5ce815304e326a5a2bd5cc8ff5d33b6efba440505767517b79c2f0bba39ab33f04d7434a3f0ee529b880ff7552aee2805dab5 SHA512 d53677c0ad96f161f9aed14b8f353a8cc12c92f31de9733789f9c4151710376d33e974fd611b763de94c631796d7a57cd8787656e3c1e985696e20537b34760e
DIST pycryptodome-3.20.0.gh.tar.gz 17173888 BLAKE2B 7706a7f512579b4edf080b5074a9f226b2f0ef18a8f1faf74e890cfccff85d0599b4883cd5011a5cc0296b5a10cccce94cb2b948de29d785f6add04e54215a5a SHA512 0d65ccd93f9f78548c04aa3af01cb65b6a39e81bb3dfa4bb08acc5a5a731b17f9c5b07a1d1780739b3f358402a3596b04e446fc7b39345a4c6f03fd5a2de7ff9
+DIST pycryptodome-3.21.0.gh.tar.gz 17464067 BLAKE2B 5fcf62317053ae3d1dddd90bb223e9866944b4c4325ae146c17c48d2345c06c3fc9951dc72c135ec5a61043b7eced92b69c9bc5f43d47e1f512b9c9ce94fa310 SHA512 cfb66b1e53547992b9405bc6a2d90ed3bc3d1857a01ef619069b9d1aa24d809a9d46d8b0d824999588dd6c0de9a5e39db70b572a9954f0ead0dd39f9b7cedbcc
EBUILD pycryptodome-3.20.0.ebuild 1362 BLAKE2B af3957849ac67c97dd06e6c48fdafedccca1437ec2f91fe91cd90a34650fe4e050ed6379dace8ddfd66300e23b9cc7bae2d95fe5e90edfa2d28cfbd5d803d80d SHA512 f38397be9d7c4779775efa81fd965eb20aaa550d34dd4fd8eb26f0b0636bd2678dc1cf943c41cad2adb67b301520461caa6134638741a53fd2d1af9383ca0e7a
+EBUILD pycryptodome-3.21.0.ebuild 1369 BLAKE2B ec99ff795a456aecda59ca92426149ae47e918f2cac87e9b88844d89073e9bbeade94937a865e750f9a8a342342f6018422584b23d6e70f47f0f6bc0e6ffc518 SHA512 63e10aa4093053980b9a11164f4cb2766eeef401246bb34d379c81afb1af774b5505a873d5f7f8c4ce6e74237a611514a6ceb43f18b3cccdf89e1c33e40889e0
MISC metadata.xml 386 BLAKE2B 1ec04c0cb752414f063177e637f1fc3e3c401db0c1f245cb33a3690e25597098b25fb2cd5f3ab99838a8bf8339906e2b23e325af5c7248fd880563c872c6fb60 SHA512 f19e2537c5a985389182860eaa45ae68a37ef1167c4b76b452513987fae6fcfb3534d102a079a003770372bbdb4f1997460c982b355f76d09f2387996e18091b
diff --git a/dev-python/pycryptodome/pycryptodome-3.21.0.ebuild b/dev-python/pycryptodome/pycryptodome-3.21.0.ebuild
new file mode 100644
index 000000000000..e4e2740433f5
--- /dev/null
+++ b/dev-python/pycryptodome/pycryptodome-3.21.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="A self-contained cryptographic library for Python"
+HOMEPAGE="
+ https://www.pycryptodome.org/
+ https://github.com/Legrandin/pycryptodome/
+ https://pypi.org/project/pycryptodome/
+"
+SRC_URI="
+ https://github.com/Legrandin/pycryptodome/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD-2 Unlicense"
+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"
+
+DEPEND="
+ dev-libs/gmp:=
+ >=dev-libs/libtomcrypt-1.18.2-r1:=
+"
+BDEPEND="
+ $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
+"
+RDEPEND="
+ ${DEPEND}
+ ${BDEPEND}
+"
+
+PATCHES=(
+ "${FILESDIR}/pycryptodome-3.10.1-system-libtomcrypt.patch"
+)
+
+python_prepare_all() {
+ # make sure we're unbundling it correctly
+ rm -r src/libtom || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTHONPATH=${S}/test_vectors:${PYTHONPATH}
+ "${EPYTHON}" - <<-EOF || die
+ import sys
+ from Crypto import SelfTest
+ SelfTest.run(verbosity=2, stream=sys.stdout)
+ EOF
+
+ # TODO: run cmake tests from src/test?
+}
diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest
index d52065be518b..7e8a4c15bb46 100644
--- a/dev-python/pymongo/Manifest
+++ b/dev-python/pymongo/Manifest
@@ -3,9 +3,11 @@ DIST mongo-python-driver-4.10.1.gh.tar.gz 1957402 BLAKE2B 66f7c166af7c7467ca7cb2
DIST mongo-python-driver-4.7.2.gh.tar.gz 1548375 BLAKE2B a40dbe153f36cdf2836583aa0116f447d08376ce7980a09d0f21cea37a34ab318e5ff0b34b7fe1721cf7fc5d5443a1dbe0982d59cb941b0da8a4a99abdc7b19d SHA512 1de8bd14301e365eb53252dedaaaf8c9056dd534662543e2a500511e5f5f67a69e1f11a8a8575efdbd8852bb47b632d59762f66024d32973d20dc17c4448b9be
DIST mongo-python-driver-4.8.0.gh.tar.gz 1550149 BLAKE2B 9462480b17f3da54918883fbcb28a4324e6a00a9c2c34b16267ebcd378170f7fd34ec7290f7a0e3c4c38a5f1f803428cb6a0c64a562d956b3a19c37130697012 SHA512 17513a278187424fea1876d288651e385be759f23eebceca8d04a15182b15ffd64956193bb53e4a90e8b2197c2ebbade274737091f5d2e5fb4398539674c41df
DIST mongo-python-driver-4.9.1.gh.tar.gz 1937311 BLAKE2B 9312c7df50f86dad7dd713b34aba0a87dd9f878b115b3c00ae9e0825c883c869f57e0d55d552b1b4bf9715930840a540572b451d296e185085c4c0c707855811 SHA512 e616418c90088bfc328505dea315a225bfcc942fa29dcc348d3b80d0fb329b7e8fe9d6164c0e13a0562e6126535cc7d04c2cf497a39a04071f6db8af3c8ed1f1
+DIST mongo-python-driver-4.9.2.gh.tar.gz 1941838 BLAKE2B 07ba597eae08cd1116e0aa42e5c9e8af0024d69d8ee4acc33cd84a80cd9df77028a2b2bc7a1d6563ca1ebe485851d0483c804bce944dc9f1f5ed48b44fe9ae7a SHA512 40fdb22ef5c602e96f735b948fe61fd1a325f51f264087027d58319eaa382f37638cf1d0dabaaf9c0a4f556698638b26bdc5431c9147a245b7b4e515b7b7aac9
EBUILD pymongo-4.10.0.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
EBUILD pymongo-4.10.1.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
EBUILD pymongo-4.7.2.ebuild 5267 BLAKE2B 1045523964d4f0482bb1fd5c57841684479dae05b9135f873008d41de4163834bbc1d6d0249e183aec0e5f7751ea7740d2dc05ae0ec69048f1b24e5d1f215675 SHA512 3e19264bd6944e334d673ac0303e738dccd61b68e9b9d7e9cdd06eeea811d52cc5206d4e8ff57e88cf928ac5b47cc69a77bd5dc18aab801b2db8dcbe894f4456
EBUILD pymongo-4.8.0.ebuild 5839 BLAKE2B add017703bd0be4c70abe7791ed3cf19453ab63f04d61e0b8139e6f59677ebaf002118b0e055ac23cb4e56c67033326abb16c73d76827698719e10900cebb90e SHA512 6e4ec05b25bfafd953d8254b6ceaf28fa5784cda21af76a9b27329af2a909aca7d43d242514b1b2dfb7db294e43eee17c15ad26bd73ed0c4fcc382e9cc7205c2
EBUILD pymongo-4.9.1.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
+EBUILD pymongo-4.9.2.ebuild 6852 BLAKE2B 8f7f4d5d2f2899a5156b930223e699c9c150bd86521d97a57dfd00a0d4393ecb62a1b818457844c1caf24cc95591853b63427058fc61c924384f174933414db6 SHA512 f79923f2a0e3e64df6fcaa8512cbe417d1f62823de148fe12d6b4a9f3293774d6ed1ff745097c86dcb997f009262452ee2506afecfd63bd6d81428e42fff9c8e
MISC metadata.xml 880 BLAKE2B 024d83cdf3d8cf94cdc98153a6b429550579d494b053becfe5cda0a7a7f3852632d7155e71116a9ab751e6542fe63985755f4eeb147914bc8dbb1e9fac560434 SHA512 c6110fd18fa7f7819299b5de919bfc0ce407d653115d34d297513ce3a4acd2e16399d6f327c61bc5d4ef8aa6776f84750cff37798415ca4bd59c6fd19961d891
diff --git a/dev-python/pymongo/pymongo-4.9.2.ebuild b/dev-python/pymongo/pymongo-4.9.2.ebuild
new file mode 100644
index 000000000000..286a8d403b6a
--- /dev/null
+++ b/dev-python/pymongo/pymongo-4.9.2.ebuild
@@ -0,0 +1,228 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit check-reqs distutils-r1
+
+MY_P=mongo-python-driver-${PV}
+DESCRIPTION="Python driver for MongoDB"
+HOMEPAGE="
+ https://github.com/mongodb/mongo-python-driver/
+ https://pypi.org/project/pymongo/
+"
+SRC_URI="
+ https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc kerberos +native-extensions +test-full"
+
+RDEPEND="
+ <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}]
+ kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ test-full? (
+ >=dev-db/mongodb-2.6.0
+ )
+ )
+"
+
+distutils_enable_sphinx doc
+distutils_enable_tests pytest
+
+reqcheck() {
+ if use test && use test-full; then
+ # During the tests, database size reaches 1.5G.
+ local CHECKREQS_DISK_BUILD=1536M
+
+ check-reqs_${1}
+ fi
+}
+
+pkg_pretend() {
+ reqcheck pkg_pretend
+}
+
+pkg_setup() {
+ reqcheck pkg_setup
+}
+
+src_prepare() {
+ distutils-r1_src_prepare
+ # we do not want hatch-requirements-txt and its ton of NIH deps
+ sed -i -e '/requirements/d' pyproject.toml || die
+}
+
+python_compile() {
+ # causes build errors to be fatal
+ local -x TOX_ENV_NAME=whatever
+ local DISTUTILS_ARGS=()
+ # unconditionally implicitly disabled on pypy3
+ if ! use native-extensions; then
+ export NO_EXT=1
+ else
+ export PYMONGO_C_EXT_MUST_BUILD=1
+ unset NO_EXT
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ rm -rf bson pymongo || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local EPYTEST_DESELECT=(
+ # network-sandbox
+ test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
+ test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging
+ test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning
+ test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs
+ test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg
+ test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver
+ test/test_client.py::ClientUnitTest::test_detected_environment_logging
+ test/test_client.py::ClientUnitTest::test_detected_environment_warning
+ test/test_client.py::TestClient::test_service_name_from_kwargs
+ test/test_client.py::TestClient::test_srv_max_hosts_kwarg
+ test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive
+ test/test_srv_polling.py
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true
+ test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet
+
+ # broken regularly by changes in mypy
+ test/test_typing.py::TestMypyFails::test_mypy_failures
+
+ # fragile to timing? fails because we're getting too many logs
+ test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified
+
+ # hangs?
+ test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks
+ )
+
+ local run_separately=(
+ # need to run some tests separately and then restart mongodb
+ # to prevent it from crashing
+ # https://bugs.gentoo.org/934389
+ # note that this list must not overlap with EPYTEST_DESELECT
+ test/test_bulk.py
+ test/test_change_stream.py
+ test/test_collection.py
+ test/test_crud_unified.py
+ test/test_gridfs.py
+ test/test_gridfs_bucket.py
+ )
+ local run_separately2=(
+ test/test_command_monitoring.py
+ test/test_connection_monitoring.py
+ test/test_cursor.py
+ test/test_database.py
+ test/test_grid_file.py
+ test/test_monitoring.py
+ )
+ local run_separately_async=(
+ test/asynchronous/test_database.py
+ test/asynchronous/test_grid_file.py
+ )
+
+ if ! use test-full; then
+ # .invalid is guaranteed to return NXDOMAIN per RFC 6761
+ local -x DB_IP=mongodb.invalid
+ epytest
+ return
+ fi
+
+ # Yes, we need TCP/IP for that...
+ local -x DB_IP=127.0.0.1
+ local -x DB_PORT=27000
+
+ local dbpath=${TMPDIR}/mongo.db
+ local logpath=${TMPDIR}/mongod.log
+
+ local stage failed=
+ for stage in {1..5}; do
+ # Now, the hard part: we need to find a free port for mongod.
+ # We're just trying to run it random port numbers and check the log
+ # for bind errors. It shall be noted that 'mongod --fork' does not
+ # return failure when it fails to bind.
+
+ mkdir -p "${dbpath}" || die
+ while true; do
+ ebegin "Trying to start mongod on port ${DB_PORT}"
+
+ LC_ALL=C \
+ mongod --dbpath "${dbpath}" --nojournal \
+ --bind_ip ${DB_IP} --port ${DB_PORT} \
+ --unixSocketPrefix "${TMPDIR}" \
+ --logpath "${logpath}" --fork \
+ && sleep 2
+
+ # Now we need to check if the server actually started...
+ if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then
+ # yay!
+ eend 0
+ break
+ elif grep -q 'Address already in use' "${logpath}"; then
+ # ay, someone took our port!
+ eend 1
+ : $(( DB_PORT += 1 ))
+ continue
+ else
+ eend 1
+ eerror "Unable to start mongod for tests. See the server log:"
+ eerror " ${logpath}"
+ die "Unable to start mongod for tests."
+ fi
+ done
+
+ local async=( -p asyncio -m default_async )
+ local def=( -p asyncio -m "default or encryption" )
+ case ${stage} in
+ 1)
+ nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1
+ ;;
+ 2)
+ nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1
+ ;;
+ 3)
+ EPYTEST_DESELECT+=(
+ "${run_separately[@]}"
+ "${run_separately2[@]}"
+ )
+ nonfatal epytest "${def[@]}" || failed=1
+ ;;
+ 4)
+ nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1
+ ;;
+ 5)
+ EPYTEST_DESELECT+=(
+ "${run_separately_async[@]}"
+ )
+ nonfatal epytest "${async[@]}" || failed=1
+ ;;
+ esac
+
+ mongod --dbpath "${dbpath}" --shutdown || die
+ done
+
+ [[ ${failed} ]] && die "Tests fail with ${EPYTHON}"
+
+ rm -rf "${dbpath}" || die
+}
diff --git a/dev-python/qiskit/Manifest b/dev-python/qiskit/Manifest
index aef3b5eeb468..9a409a49b7b2 100644
--- a/dev-python/qiskit/Manifest
+++ b/dev-python/qiskit/Manifest
@@ -114,6 +114,7 @@ DIST pyo3-macros-0.21.2.crate 7920 BLAKE2B 60ceb626fd1ffeca7e81ebc721bb4cfebd99b
DIST pyo3-macros-backend-0.21.2.crate 58088 BLAKE2B 05dd49983c8aeddc47cd94f6cd58f10e41ad6f4ec57006908cde4fe3edbcf6814058d7843a88c9dbeb0824f840ad3509414c52e47fffe5ad4b730f791c9a3f19 SHA512 f8488ba0a68f1ae20d053e2323d065f03b40c24231a50b05205b100e973ae50bc7bb9c25e4d37df56f4cfa73d2001655ce9685078d1017a4a90bd7945c01b833
DIST qiskit-1.2.1.gh.tar.gz 10817246 BLAKE2B 3668a77c3ffb31c6fda468cee9c3e7bc17a8b7d38df15cbfa923c72d780b2834c470ad73a79c4e593a4562138cc55f073bfc1e1b09c850b8ceb375d7c20a6fda SHA512 5abf3c331d5f6399056e266b15db0c2e8c6bc9e364293dbe4e26172e3699b70179e1f8e1f67aaadb7cb987d361515a5d91c6baf52b1f9c63123a8f51ee123209
DIST qiskit-1.2.2.gh.tar.gz 10821163 BLAKE2B 049012f08e11e46569f3c5bda2711d02d1d2d23aaba0ae742c2ebfbf25ecda08ca0799b82bd82e42f80d3548a1f1848f4ce0e9f9c83871e0122d2ade926bc9d7 SHA512 98261820dd0ed5f91eb9d87812b4ea5a23fac3097a28f26736a0035ba6eb59f159b26caee699012cd1c2b306c659c60204619abe923af2f8f11b8c8fab1501db
+DIST qiskit-1.2.3.gh.tar.gz 10823967 BLAKE2B 87af2d26904508c680543aa83d22a8a1f3fb6e9b3ed8c8c08b3862300d79f0ee2d3946a861bf30c6d97d119c5ee9d1879629e4fb7ddf748c607c34fbf2059d98 SHA512 19e87981b4ce0b44dbb3c2dda93050a15e9419bcc9eb6392e3853eec0ff4c6567f819f5649e428e59f0984e4a03a2a59ab491f66464e9db19264f1911b249393
DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
DIST ra_ap_limit-0.0.188.crate 1283 BLAKE2B 265a70d088ed76500cdbefa04d1b2778d54985aa978b806e9ebb016348556559799b8ac889c00aeff51d4ff08f3fa86cd3be3742f5896916edbbda49bca1946e SHA512 01d56844fb4437959e93fc3394d674848eaae3365d271c01ba5ff12fc05d4a1d11eb4145ee89a65eb5ba12db4075e8102ee31df55c569c8ee5ad6d383f9f451a
DIST ra_ap_stdx-0.0.188.crate 16911 BLAKE2B 28e11f1a24412ebc7436bd938efb2f9491e5843e13ebacbdee3bc9451274bd29175855e56d41fc4d4b4c1a7868ab59521c41f718f141f7bc6366678662f010e1 SHA512 c8c2582c69668edee1756fec64197a3d4ff70cb3670b8db590b08050e7042ae6f89a0e1d78fc23fbd1b0338173c87cc9c27b5fd15272f6c17b7393c3b77c5d32
@@ -190,4 +191,5 @@ DIST zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa6586
DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb
EBUILD qiskit-1.2.1.ebuild 7877 BLAKE2B 658e930fde47a2eb267782edfadf729c6229f0236e23624f3ed255088663f228667c11e27b3cdd4243cda049f5ee9772c6a022e4b69d7843987d95a43aee2eb5 SHA512 ce41e0d1859544f5c08f122206ec5ba64770c5af0071d7954cc5343814eac67ca75feab828329f118cef0d75896ccc7a5aaae803fa77595ff6e27c56ebbfc682
EBUILD qiskit-1.2.2.ebuild 7702 BLAKE2B e3ceb4ab5f827fbeb68584f04f51ee4cbfb7b4cf0459c7ad8c489842f61b0a23786e3c10fe2843501bf4275ff178a5425c2a34007620756fdc7fe02ecd416ef2 SHA512 811495ad9dd46054c2edb0cd5915d483cbf0ea186f6c5c8ec17d6f97e2affd3eb8f62974085c4cdb7514d78773f551b83ea942eeff5c5570530c7488a1a17cd0
+EBUILD qiskit-1.2.3.ebuild 7702 BLAKE2B e3ceb4ab5f827fbeb68584f04f51ee4cbfb7b4cf0459c7ad8c489842f61b0a23786e3c10fe2843501bf4275ff178a5425c2a34007620756fdc7fe02ecd416ef2 SHA512 811495ad9dd46054c2edb0cd5915d483cbf0ea186f6c5c8ec17d6f97e2affd3eb8f62974085c4cdb7514d78773f551b83ea942eeff5c5570530c7488a1a17cd0
MISC metadata.xml 1087 BLAKE2B 3b20c74331333cfa3c08d2422ae65ba620ffbc331f9889d5e23a0a64ff169efed37d93df50131862b13dfe7a72cbca5af4c2a916315ea521fc063e57f6bdc198 SHA512 1bd62897d647ee140903ec4732831155683c131ab7c2ebb99bc1ab04b03e805b372b09d25846ec0a0d8bb0dd6a930c234db46c0bdd89f23a0ed376e9402475d2
diff --git a/dev-python/qiskit/qiskit-1.2.3.ebuild b/dev-python/qiskit/qiskit-1.2.3.ebuild
new file mode 100644
index 000000000000..4dd579104bf4
--- /dev/null
+++ b/dev-python/qiskit/qiskit-1.2.3.ebuild
@@ -0,0 +1,312 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+
+CRATES="
+ ahash@0.7.8
+ ahash@0.8.11
+ allocator-api2@0.2.18
+ always-assert@0.1.3
+ approx@0.5.1
+ ariadne@0.3.0
+ autocfg@1.3.0
+ bitflags@1.3.2
+ bitflags@2.6.0
+ block-buffer@0.10.4
+ boolenum@0.1.0
+ bytemuck@1.16.3
+ bytemuck_derive@1.7.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.12
+ crossbeam-channel@0.5.13
+ 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.0
+ equator-macro@0.2.1
+ equator@0.2.2
+ equivalent@1.0.1
+ faer-entity@0.19.0
+ faer-ext@0.2.0
+ faer@0.19.1
+ 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
+ heck@0.4.1
+ hermit-abi@0.3.9
+ indexmap@2.2.6
+ indoc@2.0.5
+ is-terminal@0.4.12
+ itertools@0.10.5
+ itertools@0.11.0
+ itertools@0.13.0
+ jod-thread@0.1.2
+ libc@0.2.155
+ libm@0.2.8
+ lock_api@0.4.12
+ log@0.4.22
+ matrixcompare-core@0.1.0
+ matrixcompare@0.3.0
+ matrixmultiply@0.3.9
+ memchr@2.7.4
+ memoffset@0.9.1
+ miow@0.5.0
+ 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
+ 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.21.0
+ once_cell@1.19.0
+ oq3_lexer@0.6.0
+ oq3_parser@0.6.0
+ oq3_semantics@0.6.0
+ oq3_source_file@0.6.0
+ oq3_syntax@0.6.0
+ parking_lot@0.12.3
+ parking_lot_core@0.9.10
+ paste@1.0.15
+ pest@2.7.11
+ pest_derive@2.7.11
+ pest_generator@2.7.11
+ pest_meta@2.7.11
+ petgraph@0.6.5
+ portable-atomic@1.7.0
+ ppv-lite86@0.2.19
+ priority-queue@2.0.3
+ proc-macro-error-attr@1.0.4
+ proc-macro-error@1.0.4
+ proc-macro2@1.0.86
+ pulp-macro@0.1.1
+ pulp@0.18.21
+ py_literal@0.4.0
+ pyo3-build-config@0.21.2
+ pyo3-ffi@0.21.2
+ pyo3-macros-backend@0.21.2
+ pyo3-macros@0.21.2
+ pyo3@0.21.2
+ quote@1.0.36
+ ra_ap_limit@0.0.188
+ ra_ap_stdx@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
+ redox_syscall@0.5.3
+ rowan@0.15.15
+ rustc-hash@1.1.0
+ rustversion@1.0.17
+ rustworkx-core@0.15.1
+ same-file@1.0.6
+ scopeguard@1.2.0
+ seq-macro@0.3.5
+ serde@1.0.204
+ serde_derive@1.0.204
+ sha2@0.10.8
+ smallvec@1.13.2
+ smol_str@0.2.2
+ syn@1.0.109
+ syn@2.0.72
+ sysctl@0.5.5
+ target-lexicon@0.12.16
+ text-size@1.1.1
+ thiserror-impl@1.0.63
+ thiserror@1.0.63
+ triomphe@0.1.11
+ typenum@1.17.0
+ ucd-trie@0.1.6
+ unicode-ident@1.0.12
+ unicode-properties@0.1.1
+ unicode-width@0.1.13
+ unicode-xid@0.2.4
+ unindent@0.2.3
+ version_check@0.9.5
+ walkdir@2.5.0
+ wasi@0.11.0+wasi-snapshot-preview1
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.8
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ windows-sys@0.42.0
+ windows-sys@0.45.0
+ windows-sys@0.52.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.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/rpyc/Manifest b/dev-python/rpyc/Manifest
index d76cc3832a46..4c8104320a41 100644
--- a/dev-python/rpyc/Manifest
+++ b/dev-python/rpyc/Manifest
@@ -1,4 +1,4 @@
AUX rpyc-5.3.0-no-gevent.patch 1241 BLAKE2B 44b0584b90aa4730998dd9c44430edbb0348f581b930ce1663b4dc7105c6fafccd1d73c2850892ec7898f678bc57de592dcec1af4615778919b97a15fc9d56ca SHA512 d057255548f94c433d2e6f064d9db33caf7909ae17a9eddaabb2f87560f31a6b9e94c0470b78fab7aca15c6c96b6a8c2cf96d92d57d9925d5616c7454f823326
DIST rpyc-6.0.0.gh.tar.gz 1273858 BLAKE2B e55d008dc772be7fd4bae9065a5eabcf5612faf8131e8161e7921eeb84475183c677687ef8606c664003089ae714d4cb403ff6afa26d2695a8fe763d549aab0d SHA512 04b74fa6d4ad944b43c3f3acb6c9029a826da350bffdc59875ec31562bbaa70945e74bedb69778811ce16560ef4f4cfe2579b9c6b52773fe238951fc6328e029
-EBUILD rpyc-6.0.0.ebuild 2049 BLAKE2B ef1c52d37ad4e279f8c0ba8b090c357c5a684466a9838c97b3d65c8581d17608344301249a03a52b8d0d28ea8051828f2bde03d3571c57c4130fa6d36d114989 SHA512 29a52631f1f6fa93006d06663bc6091b29d5e90455b9c999fb6b748ae5d233a79be1fdb688ef0a2623674742a8c722067a5f952757df901b33186c2d3e3cda32
+EBUILD rpyc-6.0.0.ebuild 2049 BLAKE2B 212995fc936c57989b16a911fa9f61a85c30359d2d056e8626145e03ded012fc71b36b27a6b0f46a31f90ff28c1861b803cec9569bf347f93b5170625e034013 SHA512 8fd077e471aff6fdd5e37fed8d9a7490d72a6b515d035d7dbbdd86b36f8b18252e670394fc9916f8a3fa243465f240861c880f0578eccaacbf64b14e65e4ab0e
MISC metadata.xml 654 BLAKE2B 9fa48ba4c923e8a9ca25fcc8a117d19a268bdd33da4ba819e9368c1b098782163ba87763906db232dda7f39e56eb1e5389970b7d01dd41975e9480e5a364c8ee SHA512 e09b18c5214812df6fe48e663e2e9fa796fbeb213994513b0733df6016ef7ee6132681d923824c3ccb80d3863b27ed53fce3f4e46093bab10a51b09db7b79a65
diff --git a/dev-python/rpyc/rpyc-6.0.0.ebuild b/dev-python/rpyc/rpyc-6.0.0.ebuild
index 7c6af49decaf..90447e59c078 100644
--- a/dev-python/rpyc/rpyc-6.0.0.ebuild
+++ b/dev-python/rpyc/rpyc-6.0.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
diff --git a/dev-python/simsimd/Manifest b/dev-python/simsimd/Manifest
index ebb39e522945..862f9922f4f0 100644
--- a/dev-python/simsimd/Manifest
+++ b/dev-python/simsimd/Manifest
@@ -1,7 +1,9 @@
DIST SimSIMD-5.3.0.gh.tar.gz 158052 BLAKE2B 31ef8c66812a53ddeac612dc990ae2181a339369522eb459c9e792641aef3484521352c514fa90795608595ce73b3f7bfe160cf86f318d6910e9544b75d94df4 SHA512 2e8e3e3f00897b3866bc9ee649c060ac3c891365a76be22d6f4c2a9e40755f37be93d713598d18019acf0f5129fab6dadfa68b7b1cbef90c77a9cd60ec18ec4d
DIST SimSIMD-5.4.2.gh.tar.gz 161136 BLAKE2B b5ab3d91fe9361a9982064beded37ccfad806eb9df68f1156ed7530cb40622951cf9b457a8cbb46e5fd21844f60877b4dde7e9627384e8ac75fdf1452383b3f2 SHA512 6b293e530a54b7c59a1e49c3e02dd0306affed762e40838bf3a9e51ea1062d9713d89064dc6f9f9e7e17cd13ad01a48f5d4e59f9615a502dcfa1696275972cec
DIST SimSIMD-5.4.3.gh.tar.gz 161217 BLAKE2B 4f3f6d5d1dcdeef24c9bdb96c35fa8260eb1d32a83dc62f83f6b82f7fa38744d3ea6e94b8ca202a54f80cf6a9d40720cf3efcbe528d70f8d3102fee11ff93688 SHA512 49ed2c6e9566088a9c8a7fc6cd5cf72251cf1f7099677451c194f96e4539a919293000a936ee3b8024e994be3028defa9c2496c69d5eaa57457a9ee8541ab847
+DIST SimSIMD-5.4.4.gh.tar.gz 160825 BLAKE2B b5c82ad45cb5400802d264df407584cc971e6617ab2cd77f503671ae57ee0fd0656e4ac9c881bd9d975591127512222e1fe9d67dda55ca557a32cc3559c28ce0 SHA512 abddc3522f28602c0bfbdcdf3f045b3ffbb88cc9182741333df7a7e6d8fcf523dbd876b30381cdc741b712c42665f65796477ec3c458cdd9ef4ac4e4038b9052
EBUILD simsimd-5.3.0.ebuild 1263 BLAKE2B 2de5583814fbddc5e4837b331ca03296e0d960b997ef03c63cd99174db3863642384fd7c0f1dcd32036c292026bf51947c2de186f67b2775986168e094565d89 SHA512 3da85a757c8e542dbdbae0d46f6aea998a975be97b510849226dfe7004282b7391487178827a941ad24cb3d22499539fc88eae4324a95df0dd69be19a3cf12e9
EBUILD simsimd-5.4.2.ebuild 1263 BLAKE2B 2de5583814fbddc5e4837b331ca03296e0d960b997ef03c63cd99174db3863642384fd7c0f1dcd32036c292026bf51947c2de186f67b2775986168e094565d89 SHA512 3da85a757c8e542dbdbae0d46f6aea998a975be97b510849226dfe7004282b7391487178827a941ad24cb3d22499539fc88eae4324a95df0dd69be19a3cf12e9
EBUILD simsimd-5.4.3.ebuild 1263 BLAKE2B 2de5583814fbddc5e4837b331ca03296e0d960b997ef03c63cd99174db3863642384fd7c0f1dcd32036c292026bf51947c2de186f67b2775986168e094565d89 SHA512 3da85a757c8e542dbdbae0d46f6aea998a975be97b510849226dfe7004282b7391487178827a941ad24cb3d22499539fc88eae4324a95df0dd69be19a3cf12e9
+EBUILD simsimd-5.4.4.ebuild 1263 BLAKE2B 2de5583814fbddc5e4837b331ca03296e0d960b997ef03c63cd99174db3863642384fd7c0f1dcd32036c292026bf51947c2de186f67b2775986168e094565d89 SHA512 3da85a757c8e542dbdbae0d46f6aea998a975be97b510849226dfe7004282b7391487178827a941ad24cb3d22499539fc88eae4324a95df0dd69be19a3cf12e9
MISC metadata.xml 349 BLAKE2B 363881beeefbf65de7e0ab30fe5da642deefc0bbe2aeef0b4c3395a3c570f1043cb3d5e08927536a48597a44d447ff4853a5b15fffa65bbea5533377b0d6e413 SHA512 75756bd2cfb9adbdc59a2f4e3ed29c7d5daf53f427da661a9dbe6b3746ccb8ca031f650a7e505ef817b13c231cb725ca1e6eeb490be39b29e2883ca7d52f0368
diff --git a/dev-python/simsimd/simsimd-5.4.4.ebuild b/dev-python/simsimd/simsimd-5.4.4.ebuild
new file mode 100644
index 000000000000..633192d3f2c5
--- /dev/null
+++ b/dev-python/simsimd/simsimd-5.4.4.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 toolchain-funcs
+
+MY_P=SimSIMD-${PV}
+DESCRIPTION="Fastest SIMD-Accelerated Vector Similarity Functions for x86 and Arm"
+HOMEPAGE="
+ https://github.com/ashvardanian/SimSIMD/
+ https://pypi.org/project/simsimd/
+"
+# no sdist, as of 4.3.1
+# https://github.com/ashvardanian/SimSIMD/issues/113
+SRC_URI="
+ https://github.com/ashvardanian/SimSIMD/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="openmp"
+
+BDEPEND="
+ test? (
+ dev-python/pytest-repeat[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+src_prepare() {
+ sed -i -e '/-O3/d' setup.py || die
+ if ! use openmp; then
+ sed -i -e '/-fopenmp/d' setup.py || die
+ fi
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p repeat python/test.py
+}
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 3c75f4bde01b..2e15a2440740 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -22,6 +22,7 @@ DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c42
DIST sqlglot-25.23.2.tar.gz 19470352 BLAKE2B 6dd198a1de9d5c240cb6040a55f7afa08abd12021c6768242d955ef959db7a04f5de180b675b4f719a00488784e43a49834f9031a7adbfbed1f58cf607e1051a SHA512 b15e08a894458bb8e423f1d6c4c994eda548f8d2248ea4a46873e709bf0ec7830a5bb8fea9d2a7952c6f4522ef1ddff223b8592ee24e00653e52a121bd821d77
DIST sqlglot-25.24.0.tar.gz 19471462 BLAKE2B 3a173667d307830c79a87723697081bf108285ae7c724f8103f373e95efd9c2c68c98603fc8cc92b4a6ef337d741d88ce94daa9ec749cfb820acf0639c932b02 SHA512 dff3253479665a2b887ff5f7514536f8be0f490142c610821145cc5dc80bddcffa3a9daac0e33802b4057d7f1d624bbfb105645f5006458d7e90bc7b72511ec7
DIST sqlglot-25.24.1.tar.gz 19476850 BLAKE2B 69b7f960a06202f4e926eab3bb088fff949a761389d1c43365c3347763bf657ad9f81e6a4767266bc1cb6523dbc9c9acc4395b6e4af60d924dec14534bff7894 SHA512 f5422cd3f01ea77d2c65115a91a2c2e179253cc054a539443122357347d6ecb445f8300bfa8210cea030c9aa6934057966efed9b84499bff1aaef94ee04d40ef
+DIST sqlglot-25.24.2.tar.gz 19479736 BLAKE2B 3f5caa087ddf72090a5aa9a1b8812d05a97dbfacff8b1895580b713dbd6848ba97058a47c0bf28cd216146ec68006b506d68f5084cc0a4ad6b02b8d977d295f9 SHA512 ca053a9db85bf54888f42666c2cd76e5f7de3087534feadf79f18ad9a089a861a98f6bfd3ec84a896d6c08e8ef33ad6aab88d7a331fbdcd60127531b89ca8d24
DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a
DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
@@ -37,4 +38,5 @@ DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d2789
EBUILD sqlglot-25.23.2.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
EBUILD sqlglot-25.24.0.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
EBUILD sqlglot-25.24.1.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
+EBUILD sqlglot-25.24.2.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
MISC metadata.xml 611 BLAKE2B 10bf684677182565c9932d51ed9b3b9c80d376d6db945bd7b0dd0d9a19a85dc0d10cb169ff2048ae5f7f73d0f438d259b6231c13c525b5374ec99377f4ffdd10 SHA512 2b26d0f77962807052b94ad78addcfdce9859042af3be34df267dc6e70b6231dd779563935fd21955cd8646fd0cce3fee8c939387ac8056194a0b777743dd2ae
diff --git a/dev-python/sqlglot/sqlglot-25.24.2.ebuild b/dev-python/sqlglot/sqlglot-25.24.2.ebuild
new file mode 100644
index 000000000000..456b6e98cfce
--- /dev/null
+++ b/dev-python/sqlglot/sqlglot-25.24.2.ebuild
@@ -0,0 +1,129 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+
+CARGO_OPTIONAL=1
+CRATES="
+ autocfg@1.1.0
+ bitflags@1.3.2
+ cfg-if@1.0.0
+ heck@0.4.1
+ indoc@2.0.4
+ libc@0.2.150
+ lock_api@0.4.11
+ memoffset@0.9.0
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ proc-macro2@1.0.70
+ pyo3-build-config@0.20.0
+ pyo3-ffi@0.20.0
+ pyo3-macros-backend@0.20.0
+ pyo3-macros@0.20.0
+ pyo3@0.20.0
+ quote@1.0.33
+ redox_syscall@0.4.1
+ scopeguard@1.2.0
+ smallvec@1.11.2
+ syn@2.0.41
+ target-lexicon@0.12.12
+ unicode-ident@1.0.12
+ unindent@0.2.3
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+"
+
+inherit cargo distutils-r1 pypi optfeature
+
+DESCRIPTION="An easily customizable SQL parser and transpiler"
+HOMEPAGE="
+ https://sqlglot.com/
+ https://github.com/tobymao/sqlglot/
+ https://pypi.org/project/sqlglot/
+"
+SRC_URI+="
+ native-extensions? (
+ ${CARGO_CRATE_URIS}
+ )
+"
+
+LICENSE="MIT"
+LICENSE+=" native-extensions? ("
+# Dependent crate licenses
+LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016"
+LICENSE+=" )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ native-extensions? (
+ ${RUST_DEPEND}
+ dev-util/maturin[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so"
+
+src_unpack() {
+ cargo_src_unpack
+}
+
+src_prepare() {
+ # remove fragile timing check
+ sed -i -e '/assertLessEqual(time\.time/d' tests/test_parser.py || die
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+
+ if use native-extensions; then
+ local DISTUTILS_USE_PEP517=maturin
+ cd sqlglotrs || die
+ distutils-r1_python_compile
+ cd - >/dev/null || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # timing, sigh
+ # https://github.com/tobymao/sqlglot/issues/3961
+ tests/test_generator.py::TestGenerator::test_generate_nested_binary
+ )
+ local EPYTEST_IGNORE=(
+ # Tests require pyspark or duckdb which aren't in the tree.
+ # Pandas would be a requirement normally, but it gets ignored by proxy.
+ "tests/dataframe/integration/test_dataframe.py"
+ "tests/dataframe/integration/test_grouped_data.py"
+ "tests/dataframe/integration/test_session.py"
+ "tests/test_executor.py"
+ "tests/test_optimizer.py"
+ )
+
+ # make sure not to use an earlier installed version
+ local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0)
+ rm -rf sqlglotrs || die
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "simplifying timedelta expressions" dev-python/python-dateutil
+}
diff --git a/dev-python/tomli/Manifest b/dev-python/tomli/Manifest
index c8753fb86f9a..379561afa4a0 100644
--- a/dev-python/tomli/Manifest
+++ b/dev-python/tomli/Manifest
@@ -1,4 +1,7 @@
DIST tomli-2.0.1-py3-none-any.whl.zip 12757 BLAKE2B 0a33773bc0409831aec6ee803ef0ef9d6b6b441213d549184068e218b73d6178d617bc2b58d11db98f0e6284baaf81663723fbc6eb89f7466608f0d89aeb1982 SHA512 b6164b03d3db360093f92e644e87a37a0ce20d63d7e9e271fcafd727f4fdb73ad6b301aaf32b3d2839f6eedbc8ea499dafba7335b8fdfc4667e30ed50c9805b4
DIST tomli-2.0.1.gh.tar.gz 133685 BLAKE2B 0d3a1f4ee4e74eeab6a7e7c3d5e866ce1baf9017136cdc8ce1f6275f8d6d151239e5a00b97b6409872fac0e8558a49120adf16f0ae21f9d92ae630dfd39cd6ff SHA512 a467f8d48cdbd7213bd9b6f85fd48ba142ab7c9656c40bb30785e1c4b37a9e29eaed420f183458ad20112baee8413ebbec87755332795c8f02235d1018c3aa5c
+DIST tomli-2.0.2-py3-none-any.whl.zip 13237 BLAKE2B 642af1b59a2b2bceeee2480208f3680ec699bc9b572bde186ff8c845526e41e2ebc145f78ae4094ae3ee084ebfde561ec635358ff3df9c5609101c96d0b54ded SHA512 ad8278fc99a6913ebb70a618a7cad7acca9737e6ec546c932b4d0c1caddc1e70ef832340a33f2db974235459ff627949308d517b3c3a15b6baf8a4f1b3095e49
+DIST tomli-2.0.2.gh.tar.gz 135227 BLAKE2B 1d61fd26793c4f814ed606a60b85edb388bf97d6fd17c830504971be725c84e9e6e67904170cff305fdb7be8196b56d0cc29dd36f8b202798788f4839ba8ddc6 SHA512 3eeea334d6d225590a9e074685c65d052e2f5d5286ca895ff7e9532d7289f0daa31ae67b5076d803e5adad4f20a9831058a0c4599715f049079904934d3d9c25
EBUILD tomli-2.0.1-r1.ebuild 884 BLAKE2B fa462e0cad48b67e78f91f2d29969903b26e2822300c936b3d2be1e4a10d6d877a1843b51a63d44a804b3ad3710bab5ce1f8b4f4a4f3dac3cb7febb2e6b3bcea SHA512 cc77efe5c1fc79d2e811cd51ed0f699b1f75ddeaa0b15691e5fddd1ad1dfbe9ee0387e17d6e0f0a6a730f4f05a659d90e6f65c3724cf7835679b16a6958f87eb
+EBUILD tomli-2.0.2.ebuild 892 BLAKE2B bd336d4220834682761a9d0908f5824b5f95c0f9536b0c9a0b2aec9ee1ef2802e4593d9343f0aa109ce19b22a7d47880e6123ad4dfddfb69826e3daf8a2f3910 SHA512 860c6bcecd578f905b213523dd31f0b96256e01ffc778ccf5a55af982da407891e6f49ca3e10a71c917925b4e7429dab57a01719a4c0689a1499d01e82cb6a3d
MISC metadata.xml 363 BLAKE2B 2c80a2c2a8959a93e392da0e03303ffdae0a3291624c284f91d747d13983cbc188d8a64f8763ea484f792d5a42e355381034f69fa0acde382779e4ae53ac2154 SHA512 42e8d4b4d1ec773b53e8e119ce6afb74acd64de998c372c6f6ab64f70713dd825420d1e1af83b5f647dc03a917b1904d65f0cd06cbddea47a33a558be2c89562
diff --git a/dev-python/tomli/tomli-2.0.2.ebuild b/dev-python/tomli/tomli-2.0.2.ebuild
new file mode 100644
index 000000000000..2ff54bd4c53d
--- /dev/null
+++ b/dev-python/tomli/tomli-2.0.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=no
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A lil' TOML parser"
+HOMEPAGE="
+ https://pypi.org/project/tomli/
+ https://github.com/hukkin/tomli/
+"
+SRC_URI="
+ https://github.com/hukkin/tomli/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ $(pypi_wheel_url --unpack)
+"
+
+LICENSE="MIT"
+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"
+
+BDEPEND="
+ app-arch/unzip
+"
+
+distutils_enable_tests unittest
+
+python_compile() {
+ python_domodule src/tomli "${WORKDIR}"/*.dist-info
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_optimize
+}