summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-30.0.0.ebuild41
-rw-r--r--dev-python/Faker/Manifest2
-rw-r--r--dev-python/Manifest.gzbin271508 -> 271541 bytes
-rw-r--r--dev-python/aiocache/Manifest2
-rw-r--r--dev-python/aiocache/aiocache-0.12.3.ebuild70
-rw-r--r--dev-python/antlr4-python3-runtime/Manifest2
-rw-r--r--dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.13.2.ebuild2
-rw-r--r--dev-python/beartype/Manifest2
-rw-r--r--dev-python/beartype/beartype-0.19.0.ebuild40
-rw-r--r--dev-python/boto3/Manifest2
-rw-r--r--dev-python/boto3/boto3-1.35.27.ebuild53
-rw-r--r--dev-python/botocore/Manifest2
-rw-r--r--dev-python/botocore/botocore-1.35.27.ebuild76
-rw-r--r--dev-python/makefun/Manifest2
-rw-r--r--dev-python/makefun/makefun-1.15.6.ebuild25
-rw-r--r--dev-python/mkdocs-material/Manifest4
-rw-r--r--dev-python/mkdocs-material/mkdocs-material-9.5.37.ebuild67
-rw-r--r--dev-python/mkdocs-material/mkdocs-material-9.5.38.ebuild67
-rw-r--r--dev-python/moto/Manifest2
-rw-r--r--dev-python/moto/moto-5.0.15.ebuild2
-rw-r--r--dev-python/opt-einsum/Manifest2
-rw-r--r--dev-python/opt-einsum/opt-einsum-3.4.0.ebuild29
-rw-r--r--dev-python/phonenumbers/Manifest2
-rw-r--r--dev-python/phonenumbers/phonenumbers-8.13.46.ebuild39
-rw-r--r--dev-python/prompt-toolkit/Manifest2
-rw-r--r--dev-python/prompt-toolkit/prompt-toolkit-3.0.48.ebuild30
-rw-r--r--dev-python/puremagic/Manifest2
-rw-r--r--dev-python/puremagic/puremagic-1.28.ebuild32
-rw-r--r--dev-python/pydot/Manifest2
-rw-r--r--dev-python/pydot/pydot-3.0.2.ebuild38
-rw-r--r--dev-python/pymdown-extensions/Manifest2
-rw-r--r--dev-python/pymdown-extensions/pymdown-extensions-10.10.2.ebuild37
-rw-r--r--dev-python/pytest-bdd/Manifest2
-rw-r--r--dev-python/pytest-bdd/pytest-bdd-7.3.0.ebuild4
-rw-r--r--dev-python/python-socks/Manifest2
-rw-r--r--dev-python/python-socks/python-socks-2.5.2.ebuild48
-rw-r--r--dev-python/sphinx-autoapi/Manifest6
-rw-r--r--dev-python/sphinx-autoapi/sphinx-autoapi-3.2.1.ebuild50
-rw-r--r--dev-python/sphinx-autoapi/sphinx-autoapi-3.3.2.ebuild (renamed from dev-python/sphinx-autoapi/sphinx-autoapi-3.3.0.ebuild)0
-rw-r--r--dev-python/sqlglot/Manifest2
-rw-r--r--dev-python/sqlglot/sqlglot-25.23.2.ebuild129
-rw-r--r--dev-python/starlette/Manifest2
-rw-r--r--dev-python/starlette/starlette-0.39.1.ebuild56
-rw-r--r--dev-python/tempest/Manifest2
-rw-r--r--dev-python/tempest/tempest-41.0.0.ebuild75
45 files changed, 995 insertions, 63 deletions
diff --git a/dev-python/Faker/Faker-30.0.0.ebuild b/dev-python/Faker/Faker-30.0.0.ebuild
new file mode 100644
index 000000000000..7dd2e7763f07
--- /dev/null
+++ b/dev-python/Faker/Faker-30.0.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022-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 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+# note: tests are flaky with xdist
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+ epytest --exclusive-faker-session tests/pytest/session_overrides
+}
diff --git a/dev-python/Faker/Manifest b/dev-python/Faker/Manifest
index 06a484d81808..f86baa681eea 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,5 +1,7 @@
DIST faker-28.4.1.tar.gz 1794640 BLAKE2B 96a2f16b1d1906c1ae5263f8a2e782417fa6fb8062881d3700bf31b25892f27c612ebb64be925548c848e75e2e90d5761cc20a7b7bdb74119c95dfe3e5b871e5 SHA512 376b8e97ef654477ba549f0de50ef02979bf2595051f1a41b353a44bb734aa75171afa633ea76d3f02cf72f84dd12d268e28a4baba55fcb728fb4cd988b57e6a
DIST faker-29.0.0.tar.gz 1795098 BLAKE2B 96f6ee6166cc4dde4c6c8e1be2ac9cc1f529c5afe371cbb75c264777fdb390aa6dfaf199e6671b9f3e4658937c7fc0953aa31e548d3ea2e7ae948d8e2ced8e7c SHA512 09f46d2693b611277312cd39a5a6b7a40271c7136fd42c8a02c6d55ab10caeddb8d614db81ea76bc37879b21c6bb53297b04b7169410da7d6d183cb1406f60d9
+DIST faker-30.0.0.tar.gz 1795010 BLAKE2B 01e93e39bb22db8220400d28f92ad08f4f1f971b7023cd76c6ae5b965800c6f44a0d67d22b48c4ced732b89efa8b7290e94b1a163f164c3f67d1e830174cba4e SHA512 21bd8d4d2ada7c579cad16ed019bce1187427dd1c5806bc97d055ca9e6a2477bbd2fd5861dc60bb1961ff6613fedabdff9cb59b453434fc80bbb52b336b78f89
EBUILD Faker-28.4.1.ebuild 945 BLAKE2B ff465988fb90fef2a5c5332ea40d3df26077ca0ef937a00392609a212d303a9292afdb38684e66d7043e3f1c855b34b7a4d7aac58b4216c542c9a6bcdc9e2e4e SHA512 379311c4d16fcbf97a2a621b90d4fc5ba359c249059f0c3e11c1f0e60a3c7d25b8c8223c8d65c54f5fd534c76806c296e225e948545e8d05c1ff054f3d5b7625
EBUILD Faker-29.0.0.ebuild 952 BLAKE2B d916f38dead48afe6a35c9055acdd8a4061901973f8b4bb587d2b6403ecae168880479fa7232cf6140909952b647ca6b298663f84a8f11ab4a52f6c857a1425b SHA512 edeac7681eed700656317e357ebb2f44a4671ef1d523dc101be73c96bdb6978d7656e40fe61ae6a085b584fe55a03d38a41fbef9f63aeec766233e7a4845c324
+EBUILD Faker-30.0.0.ebuild 952 BLAKE2B d916f38dead48afe6a35c9055acdd8a4061901973f8b4bb587d2b6403ecae168880479fa7232cf6140909952b647ca6b298663f84a8f11ab4a52f6c857a1425b SHA512 edeac7681eed700656317e357ebb2f44a4671ef1d523dc101be73c96bdb6978d7656e40fe61ae6a085b584fe55a03d38a41fbef9f63aeec766233e7a4845c324
MISC metadata.xml 498 BLAKE2B c9b7885dc7d34f2263068624a6b07ac6f1ec8078cc11abb6137612ba57edffefc48dae2708284aa83ecc941ebb2d3b8a87a143648e404a0683e75bb6c078f4e2 SHA512 0b385bbbfbb026803526e43c6c43965ff75f42d3ab133603708b187686aac29de508856e5e8ae7622a66b99032efa97f95c21625e10d074c858d8aff7446a312
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 69b328250939..2b84018a7c6b 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/aiocache/Manifest b/dev-python/aiocache/Manifest
index 4d3bdaadc4d4..b673aa6e86fd 100644
--- a/dev-python/aiocache/Manifest
+++ b/dev-python/aiocache/Manifest
@@ -1,3 +1,5 @@
DIST aiocache-0.12.2.tar.gz 131851 BLAKE2B a8467ec12321248f7673245c427567d2c8ef345a6a34694618fce0969e186de47097d64c3b94cbf047a281a1ed09889075862d9770f7787daaf9469f245b2493 SHA512 ce57e3fdbd428e8a8a94a45e5196e339d40f4fffa49851c3486b264e6344d72fe39407bd958a97baa7af06433c08a0e9d6a7ae44eff515dfc40012804ac876f2
+DIST aiocache-0.12.3.tar.gz 132196 BLAKE2B 281c3d107f6a925ee80f49004c908d982829f4609a0bea8cff5932f76b908b11db7feb969daa2b92da6483cb5cf1d60c79fb0c9fd67d379a1e2f77e609a48b39 SHA512 f1caabcc994564255dcef7db31b337c487b4f6add1f9c3256a49e43a1d35210e72e3fcc6ca5e535c92a5d9ea7fed0dfca55d495b0dafae5fa68ffea8e1d9ebc3
EBUILD aiocache-0.12.2.ebuild 1593 BLAKE2B f8b0de8dfcc942f400ebaa5434a37d7022a3b31e33a77ac554e009afcd4e955cca1873d90541a932de54e2eb0cbbc3c4d4e1afc47c371dccacad9bd838a35096 SHA512 430f02fb73a669d9884b729d8e1495db19801ad40c76c3937b15bf7a8c4fe5c9628d7e8ebac75dd154da959eb7a2e0e0a0fbb3fd758ae0806492e6e60fded6d6
+EBUILD aiocache-0.12.3.ebuild 1593 BLAKE2B f8b0de8dfcc942f400ebaa5434a37d7022a3b31e33a77ac554e009afcd4e955cca1873d90541a932de54e2eb0cbbc3c4d4e1afc47c371dccacad9bd838a35096 SHA512 430f02fb73a669d9884b729d8e1495db19801ad40c76c3937b15bf7a8c4fe5c9628d7e8ebac75dd154da959eb7a2e0e0a0fbb3fd758ae0806492e6e60fded6d6
MISC metadata.xml 500 BLAKE2B f74a5803ae517ae0b4ed0a9d20093403c5366dead8cc2f77fe5655ffbb1022e4837aa7020bda5f6df75bced1a84adbbfdd2260310944c4874ef2862f261d7a27 SHA512 4d94698017e3953641cfd3687b2ba1bceffe25e47875aa34da0db5ce73a225aa3f58a72d33534d2e683162bc2cb5b74b2c2705b6a7956a3f76b918b6d1ad8923
diff --git a/dev-python/aiocache/aiocache-0.12.3.ebuild b/dev-python/aiocache/aiocache-0.12.3.ebuild
new file mode 100644
index 000000000000..dd4566086e0c
--- /dev/null
+++ b/dev-python/aiocache/aiocache-0.12.3.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+# py3.13: https://github.com/aio-libs/aiocache/issues/863
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Asyncio cache manager"
+HOMEPAGE="
+ https://github.com/aio-libs/aiocache/
+ https://pypi.org/project/aiocache/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/marshmallow[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.5.5[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # broken by newer dev-python/redis (?), removed upstream
+ tests/ut/backends/test_redis.py::TestRedisBackend::test_close
+ )
+ local EPYTEST_IGNORE=(
+ # benchmarks
+ tests/performance
+ # requires aiomcache
+ tests/ut/backends/test_memcached.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o addopts= -m "not memcached" -p asyncio -p pytest_mock
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ # Spawn Redis for testing purposes
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1 ::1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/antlr4-python3-runtime/Manifest b/dev-python/antlr4-python3-runtime/Manifest
index b035370907cb..6bbc03b8a921 100644
--- a/dev-python/antlr4-python3-runtime/Manifest
+++ b/dev-python/antlr4-python3-runtime/Manifest
@@ -1,5 +1,5 @@
DIST antlr4-4.13.1.gh.tar.gz 4164054 BLAKE2B a51b91ef93bd4b540a382f8d4eb2bcd1a2e47a29ab20a601a2fdc6ea3d17f9acb62a4bda1a9383ba1d40853a2346f68fe846d700c3f8ae6c9a0f940ad8c660be SHA512 79ac3cdfc8f2368c647d06aec85d87507629a75527205ff2cbf7d9802989b0c6e6a8fac76148ad101f539c9ef922e431e22ba489f899f847ccc3d3d889bb2b70
DIST antlr4-4.13.2.gh.tar.gz 4167326 BLAKE2B 709f3c18329e08a811d7a4e5258fc0183ba6fa6ab62fe83ab694360cf1ce2bb3aa3f30cc62a0339a6ff8b64dd0a766057fd6f751cfc34a4e05051e4d54a57fad SHA512 afd8ecab637a0e70cddf98f63c918eab2b907f87207624e20e80a79f885d6502d4ab734a602b1707969d61944410828b689ec2f8b09c15314fe991024cde1613
EBUILD antlr4-python3-runtime-4.13.1.ebuild 809 BLAKE2B 319db8c141b85cee4fa8c39237124de3dd39e2d4bdd15135c73461c8af5c09117dae3baf52dd817551e50b5f1a0a7075e05952a41e54e16a313e50cb682eb223 SHA512 c4319dd9711817db5e7148a8e2d3a0222d19e00b52cc5dc8a751dddae1dda2df3c673e6bb301fd591d65c1ddf6b57223efaef3ad94f4b4a948c8b131dbddcaa3
-EBUILD antlr4-python3-runtime-4.13.2.ebuild 816 BLAKE2B f2f738e2fa52695b3b1129d03e0bf6af73cac88ba114d7f6e1cfc14fe19baea2463a4498bc461b6f468cc66825ca2f200c6055dcdfa5f3d639c1fd1067237c24 SHA512 43a370183ffc5a4fdfd1474c04589f3186404993e421051cab6069fbd7580846308ffa7a53df332154ae05dcea2e4b9104c711c5230279712e1d2c216a1d281b
+EBUILD antlr4-python3-runtime-4.13.2.ebuild 823 BLAKE2B 366a7b950c93c27443f76e714efe45bbf7e89e47108405dde399997dde049a38f4ed68e4e49f5ad9e4ddd6d8fceb3e0596d39665f88ab8a5f7499f23401864be SHA512 8397699fa875432f7eb78f18091fd4ab59b79d19696da26f895df49e93b6c8fcafa5cf5b91562dd5f9cad592a62be8dda58e9891c05626b7da7090ddc339d2ca
MISC metadata.xml 378 BLAKE2B 48715a41ca9be1320797167b50ac774f70d099e6c862911b9763a16faaeca1bd99f3a549d1b39a3f3334767b798fa85247ef3631893d8ce5defe327358910790 SHA512 94447ca115a26f5fd7e651677ccb35b7eda73405e02da9834b208f46cec42c6b2005ed45e46d2b1d51eb1f79043237a4e19d892474e9f26aba348a4d77bb4703
diff --git a/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.13.2.ebuild b/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.13.2.ebuild
index 4a2362777072..126238bbae0b 100644
--- a/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.13.2.ebuild
+++ b/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.13.2.ebuild
@@ -23,7 +23,7 @@ S="${WORKDIR}/${MY_P}/runtime/Python3"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
src_prepare() {
# https://github.com/antlr/antlr4/pull/4593
diff --git a/dev-python/beartype/Manifest b/dev-python/beartype/Manifest
index 07a7e2dc26f3..28d6154e7329 100644
--- a/dev-python/beartype/Manifest
+++ b/dev-python/beartype/Manifest
@@ -1,7 +1,9 @@
DIST beartype-0.18.5.tar.gz 1193506 BLAKE2B 497de6f326a3b600992748db8b74ba80d4a14003a0cc484b3eeaf48f0f808864fe64462ef3315d421dc4b5fe5d7060b48585ee00eb822c9f124612f394ab93bb SHA512 114b256619c6c7fc48fbe28db00ae5a8ddea4ce11c5394a06fa026f0317a34907ff12ef0c0009cff7a7b83742e6b66bc8b503b4c0e382c0b6cf79d43780bda5b
+DIST beartype-0.19.0.tar.gz 1294480 BLAKE2B 7a0d2800a28af49815bf300c93081faee0e01c922497418bc7328c0968cac077a0fdfe984de66c214af610bb972a217224a6d164a2f3aac9c0a2d067c0658fc3 SHA512 9a87086736ba0d3497f3dfc3b57fdfd3ebb33812aaf58d195f1161474a553499e87d6f3f9c12bc66ab33cb3ca1697b00220828d004d568495ac743efb473c1e8
DIST beartype-0.19.0rc1.tar.gz 1281359 BLAKE2B df124c838891e5bbce62ac8116968631887dc5e5918a1b6a7c46c1705d05fcacf5f4cc4034b39a6d8565a78e2edd99686643a0d1d8c22586cfd797ceb8085b29 SHA512 630fd68a55ab379aca7b49b72161b732e0790835d7f62568239fb53f719fc8295bbe3c942058ab6dfad3226060a5a11820bc87080a2dcfb46c482e1877f775b7
DIST beartype-0.19.0rc2.tar.gz 1294713 BLAKE2B 7197c8203cd9d1a750df3946a19ad9d0be893b649f89254462edadbabb49adfda3e098b35b21fcc92156c5ea488b2e7760cf6bf18f418530533495be9694b71c SHA512 ea9bd08f9b294382826201e4bded03fb7337e5fd5ed3d63fa741703b49164ad7dd3075ccaf3256011005c31cce4258efb9070f876009eece49bbfd2bffb5196a
EBUILD beartype-0.18.5.ebuild 855 BLAKE2B 780c2859946cee302ba87d63141000d6934f01b7013b0e91ff7198e31ebf204c7568464dbc46f796dac6d718a6ff5ed6c6880139ad0be1c1feac688bd9ef511c SHA512 d3f5d208b4ae7946d7e3d729cb401abfaf024b19c499da02647c0777e2a4693a45731c2bfea174bac51efcc43f8ebc2c5416188b31a01480c4e5a6964c1e4cb7
+EBUILD beartype-0.19.0.ebuild 856 BLAKE2B 32f851b0ca1ddac04e704c77ebdc93f5cd062f4d4b63096d7782bd3b69275e227d5036936329711471131e1d968cf36cae2fb1423b071a479540e890edebb3fd SHA512 fef336dd428c18d9cc83777a8619ce8e6210774ac9fba91df8238d1e32f83f86a29a284628fa5e75bb3403aede0635b19d32729e192d25d722421aa874aa7b42
EBUILD beartype-0.19.0_rc1.ebuild 856 BLAKE2B 32f851b0ca1ddac04e704c77ebdc93f5cd062f4d4b63096d7782bd3b69275e227d5036936329711471131e1d968cf36cae2fb1423b071a479540e890edebb3fd SHA512 fef336dd428c18d9cc83777a8619ce8e6210774ac9fba91df8238d1e32f83f86a29a284628fa5e75bb3403aede0635b19d32729e192d25d722421aa874aa7b42
EBUILD beartype-0.19.0_rc2.ebuild 856 BLAKE2B 32f851b0ca1ddac04e704c77ebdc93f5cd062f4d4b63096d7782bd3b69275e227d5036936329711471131e1d968cf36cae2fb1423b071a479540e890edebb3fd SHA512 fef336dd428c18d9cc83777a8619ce8e6210774ac9fba91df8238d1e32f83f86a29a284628fa5e75bb3403aede0635b19d32729e192d25d722421aa874aa7b42
MISC metadata.xml 393 BLAKE2B f22040a947a67160c9b4c2d41db713ea69ae7a272aba75c04b1620e3f813d62718425acbc8c18716981e4176ebeabc5b60e9376d9927552ea5a36b51b7baccdd SHA512 dea8caeb6e9091672994cee213be075819d593d1034cbc7e2b076f3fc32bd2afde13b6af094956885c9ddaa72f272c6a198f4f92e7b095606fdf900a4cec47ec
diff --git a/dev-python/beartype/beartype-0.19.0.ebuild b/dev-python/beartype/beartype-0.19.0.ebuild
new file mode 100644
index 000000000000..000466fffd5b
--- /dev/null
+++ b/dev-python/beartype/beartype-0.19.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Unbearably fast runtime type checking in pure Python"
+HOMEPAGE="
+ https://pypi.org/project/beartype/
+ https://github.com/beartype/beartype/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+BDEPEND="
+ test? (
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fragile performance test
+ beartype_test/a00_unit/a70_decor/test_decorwrapper.py::test_wrapper_fail_obj_large
+ # test for building docs, apparently broken too
+ beartype_test/a90_func/z90_lib/a00_sphinx
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 0df91a4be31d..2a4d18df9928 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -3,9 +3,11 @@ 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.25.gh.tar.gz 865483 BLAKE2B 606bff8b084d3b0cd7d773cf840bd817861eed4a832c073f10e90bbfffcc7ca44b05d442131da4b4cc1696bca79e389bc00d78be1d3bc2b593ef3682bea182dd SHA512 71f732bf22ea76f9e364a3a57a1f9b2d7cdbeed28cc951a6a9930d3cfeaeb9086aece0627f34e8223ff100a7607bfd3ea8d97f5a19b504a95bcd4a14153c9878
DIST boto3-1.35.26.gh.tar.gz 865822 BLAKE2B 72df9bc9f7324ad398ef91385fe5ba3ed0349e0d5f8dac6a0e529c7065d74ea4b2652017cae759005b8a332d9b3f868d78b3ca51df3ba172e3a9cef3d568359d SHA512 8f514e09f4e6f12974ac3b85cafd88e0648760d24245fa6ca382b9cd1283b2d03b7624e50bc05589e66bf3ab076ed53743da129746d2ecd7bf41c7114a91b4e5
+DIST boto3-1.35.27.gh.tar.gz 866042 BLAKE2B c3cd56e9139843f4633a81d8be04bd667071a318deb12fddf9da349430c1931d25c22ce745f7f5f354babf6edcf7e9d1d34356fda42d1ade3bb39a34ebc5b7ce SHA512 5143cdaf05d2188f45e39f50f68d45cf656122a4f5c9093fcf8f0c8f94ece4e7a82775cf37097e7f1a81535660d8c678be943bba54a027c37323512508456e11
EBUILD boto3-1.35.14.ebuild 1198 BLAKE2B 99a7fa08055cee13f14557124398df39119bae2e4b684265d4647ad0ec83a502bb422365e3797ff5c0440c4b1c9866ede4c62b1876510178dc2e6a0b05ed8781 SHA512 c020cc5535d63c948dd456d9f4af4e97339cb36dc0bb2b2c53d3da0c8c62737e0846ff71d9f85ca9b2936a8a7bfc43b67c3114f91440e75c9870beaa8997107a
EBUILD boto3-1.35.19.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
EBUILD boto3-1.35.24.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
EBUILD boto3-1.35.25.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
EBUILD boto3-1.35.26.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
+EBUILD boto3-1.35.27.ebuild 1205 BLAKE2B f1dce08bbfa9b103deaf3f8fcc34e0ff6e7aaa8a7be0ea69727c268ff7da0a1ddfcddc24bde5c654fc3f0f09d3c5a801a23e19c37ae05c3ebcf3bf26ec909b73 SHA512 94863e2208e36b66149792688378242b66b5546735fde1c3ccea6ad4883ab08046a9fd566d9016d5fd9612c035a7af4d5af599b0c18bad7137bdd1db5e6848af
MISC metadata.xml 493 BLAKE2B 7d6324fc877ffe1d20c5369c2af0b09a7028f94d28f1841188913d0d8be7ea699c9d3f92c624992c4c96bd69615d3a1211a2483c76c56b7d3082492e43512523 SHA512 44420d8c03d5986f990b76369edfa8dfd7659b4952db3ad946fd05392ec594628a28745ad888d055d4f074d5214f61fcffafe6c04c4ab54109d45ac0371582bd
diff --git a/dev-python/boto3/boto3-1.35.27.ebuild b/dev-python/boto3/boto3-1.35.27.ebuild
new file mode 100644
index 000000000000..8cba6d95740e
--- /dev/null
+++ b/dev-python/boto3/boto3-1.35.27.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 18680303e38d..6ba710fd9957 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -3,9 +3,11 @@ 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.25.gh.tar.gz 13409661 BLAKE2B 49f846dfd62033b320a7b5e1afeae6c18cb94768b9b8dda1b9b373dac35ed846f8958ab5efd183c70f297de1dfb6ed0447503cab6f9b380cd31b8445c760bfd9 SHA512 d6a2ad3db3dda7597d351a1f216feb3453b708055b956a2e4eacd24035298dffe54d906edfe5da3fdb674a9bb44a5ca4096022f3d0a312b1a12b29eea5ea48da
DIST botocore-1.35.26.gh.tar.gz 13410309 BLAKE2B da2111d9f6af1795ab1c50332089109b4627a64a7904080f8586bfc5c5c5228896caff703131d864bfde8dd3b8ec2d39eaac2cdc03b4d38febded9ac56b0eaab SHA512 6364e9af0b619961eb2984e34619617a75706c468538c91d375ed5172e85b39a2583e79278cce23fdbc08f68162fe83b4ec7f30d68f18ebf82eea8610d1243f9
+DIST botocore-1.35.27.gh.tar.gz 13402723 BLAKE2B e9c21aeff1470a7fdcf02f51b68f6d36c7186effdab2617cd91813d7db013de0131e7b17423f82c7a8bcdc2c8981695c4de3869bad93af2882a74dddfd4c96d0 SHA512 2b8fdba377bdb54ebd6f2a5ce48f38a4c20c8e77b1dff40271fa3d16b6eb69025edc7a7c8cdc4f0b9ab1c0fc584a14db18f366c096cbff11f7348978bb8a9574
EBUILD botocore-1.35.14.ebuild 1665 BLAKE2B 1171f3bdcbe2eada97adf58c2011691cb51300028737903ec51e9fea4d80943dc3e199f4a1671be350ca2cf921e5dbdd4e7c8ca4658261143646cf9c0c82f522 SHA512 db8027472dcb87b167d63ed89910783e104513361b9191f5e2e2928a2904493c22d9629aa206f61206c4f29c6a9c43e8208c57a9b9bf99b031101b915d326674
EBUILD botocore-1.35.19.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
EBUILD botocore-1.35.24.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
EBUILD botocore-1.35.25.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
EBUILD botocore-1.35.26.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
+EBUILD botocore-1.35.27.ebuild 1672 BLAKE2B 8e30dae387821aea270f5db3ece49d58df6706d6e4ced17b2a595e1bc3f40dc49f79811cc9a82ad935b34ab5a053d802ac6afce166fb4cca168affe6b47a6c23 SHA512 23b6b04cba2a0afccc82805c78853bec7ea4568c0c01122edc83e3fea544ce14841a41fb469acb6f5a7b8fc462060bda2e4cba19cd82a799b7261f61df880a5d
MISC metadata.xml 499 BLAKE2B e5aaa7da26f200c09adfdf38b68f656bbccbec627cb5d966b280ac2165334e7eec659c89075bcace748f58e2ec3e7d2998e54a688d56ecea2d30653c67dfd35a SHA512 103c554d5dbd967bf9b6e418b3913d9235e7e910d012160909ce0715134ed2e37b06e6a345395f9d16ce08d1cf51f3ce458bce93c6a978fd3dca6610f2acdbd0
diff --git a/dev-python/botocore/botocore-1.35.27.ebuild b/dev-python/botocore/botocore-1.35.27.ebuild
new file mode 100644
index 000000000000..4f1ad852bdc1
--- /dev/null
+++ b/dev-python/botocore/botocore-1.35.27.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/makefun/Manifest b/dev-python/makefun/Manifest
index a0255a41b2cf..eb99add6ad17 100644
--- a/dev-python/makefun/Manifest
+++ b/dev-python/makefun/Manifest
@@ -1,3 +1,5 @@
DIST makefun-1.15.4.tar.gz 72160 BLAKE2B 361e598bf17c3e235934d65de48e638897dae9f93285269c39d97d1202506dd7e0c688b628d1811571fc259c39dbe345e8b269809c5079bf651a9ef09b681331 SHA512 eb6ed268137726ed306c7b118307ada365832d6f17a50da2804cc55708d114ad7e630ed4fdbd15a411d92ce601c4cc10d671d1ade7e270349009c10fd82618d7
+DIST makefun-1.15.6.tar.gz 72583 BLAKE2B 00cee1083a5c36d70e9e480af526ab2ee4f62ddc34a2320f6adb8be96a87ea13a8eac261b715c02311fc877d8a25f0779b891c41f1eb9cd4766eb25dc37a8393 SHA512 b495d28d838989cd67a219be1d4b8f3a1b5a03aeceb76c6445074d154b1b7c65a9bbc9ae8a3ee0aa6e991a9572f43ba93ed949bfccb97dc557250e4b735f0c2a
EBUILD makefun-1.15.4.ebuild 520 BLAKE2B f9fa6923f159d6e51c10dbb0287decf0289060bc2eaab3cad954ea8cf570b9d1ab35eb2037a750423839f9a20db4b90b567fefbe1e15224befad8a5e59bbbcfc SHA512 beb1a09674b26c0f1226cd49739fea5d05d8a2521c077cf08f9743923f3d6366cb4db81f4d23b9a2b9f49a585264b5e167a08c827b00c3a97213d5bbb69d6d07
+EBUILD makefun-1.15.6.ebuild 523 BLAKE2B 021b1f3d56c5cd43536a4511657a06f1cf2e275f47dacf4bc7222910babba93ac2062a9d53feb3ca8dbcc7214a0162fb05de930b3c743df2133a1d3ea89d9694 SHA512 eeff59e7fe29c8c8a3a79a48f6f008afce8052ca2c50a6572d4d5f61d8dd106909b3eb6057f37fdc4aa0cf315536d980ce2b9cae6c50f2e8825688b9210f06c6
MISC metadata.xml 396 BLAKE2B 541c5e69fc3236d1aaf79505272c9bdf2a295524bb9bb04e782a4cd15c022e74651a9c4ebaa244672418e5fafaed97a48568538fcd527b135c279576f09350d2 SHA512 a500a2a8b23673ea11ffdd81cae9c96fc1368121cd6ce7955fb61bc59319cf87607b134f6b5d04aa6aa564eab9c2c1248c47d0ccc624cdd8ae58f5f12d96e279
diff --git a/dev-python/makefun/makefun-1.15.6.ebuild b/dev-python/makefun/makefun-1.15.6.ebuild
new file mode 100644
index 000000000000..f926c1a858f8
--- /dev/null
+++ b/dev-python/makefun/makefun-1.15.6.ebuild
@@ -0,0 +1,25 @@
+# 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 pypi
+
+DESCRIPTION="Small library to dynamically create Python functions"
+HOMEPAGE="
+ https://pypi.org/project/makefun/
+ https://github.com/smarie/python-makefun/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/mkdocs-material/Manifest b/dev-python/mkdocs-material/Manifest
index 96707d9eac16..aa3f20d9c718 100644
--- a/dev-python/mkdocs-material/Manifest
+++ b/dev-python/mkdocs-material/Manifest
@@ -2,7 +2,11 @@ AUX mkdocs-material-8.5.7-simplify-build.patch 529 BLAKE2B 60a246940983ca713b370
DIST mkdocs-material-9.5.34.gh.tar.gz 14766308 BLAKE2B 62371c082fe6d1d42d01cc315f2e0e5a0de24ee3faff173d940b797ca7f43f20985e4025e90ba385dbf38ef7ff2b76bbae0831558d07dcafd5a5493597e223ed SHA512 ac6e2fcf96a0591513222a81046d66547cdf3a9b64acf29e7482aa93be3d7a2ceeb8ad779e9bcbd12ae9fc527414ae11cd70f07ae85b4c2b0104cade29ebe646
DIST mkdocs-material-9.5.35.gh.tar.gz 14791440 BLAKE2B d6cd4826e4a9f57e7c1790063e1b6aaff3524b07f532bb6ca705186e633b345d3526a4ea8423c7456a342536f7a6253e5add0b9491fdfaa61a932039905d28c9 SHA512 d35ad9ee7140de4d22eee4a6cf75d2cd522dc13394ef8be4cc2360291ea4a78f7489f014917beae7d9484103f6c6642e9e71d556839c5f523921588a7b001d8a
DIST mkdocs-material-9.5.36.gh.tar.gz 14794813 BLAKE2B 607df2d24803cf8ff41243e9583128f9b9e49c077f6242b3949618cc6e8da9dc8b0e6db8caa0e5bad7f7f2607f4f313e954304091bf80a454ad3d913625947e7 SHA512 d5d86feeb35ca85d47d98ad09285a30075c0e6b925240d2e31d1050f8d55468f33b5f80216eb0fd1fc7833074b97f02abf3b9c277b9d64eec002d487bae8a11c
+DIST mkdocs-material-9.5.37.gh.tar.gz 14792573 BLAKE2B c232f9212ed47da3524497705a5ad106aa486a0c79ef739bf586d561507f54a0487a609ea4662a7c83aeedc7264ac44f2571d88ac20baac622bab0f696b3a3e6 SHA512 6fb62d4d6e67c1219deebd6313f1c0f3abbadc7f3bc8d0d187ac5a52faf1535a3b0544da0617aa180cf454a6bec16b8ba04067364dba802fc0850ad2aedb3f13
+DIST mkdocs-material-9.5.38.gh.tar.gz 14793685 BLAKE2B 6dcfafc67fec3a257a5609bbfe1bf1e0ad246c48d063d94adc221b0cb9caaa3a83647637ecf70143ace738fb600d652315ac9f652bf3f57c0f2a3e01f95be5b4 SHA512 735de92d151df519f4950e0bb9e77e9055472bcb177ddab73ebc8339f4a8f8c8b6bc80a3c9402c3e95fad469f79d253883e538a6d7ec57cacb562150e0a50dea
EBUILD mkdocs-material-9.5.34.ebuild 1794 BLAKE2B 982474c0246f3a60db2c86bd493db20aa8d9ffaf16eb2ee93ea34ded0bf9459a7caf3ba8b420ffdc45629731d8ce99eb2b8934918762a35eae6d26f0be3169db SHA512 459700ca251fceff5be81e2e6a9ccd24ab68612d0bbcabf9e033054adfaf99b6f24b80113067fe63e50c4c24752b1af44c3a2bcb2ca49c826431afc3bbda9b73
EBUILD mkdocs-material-9.5.35.ebuild 1797 BLAKE2B fa861d360d346729982c800cdcc403f0b07d0d3c7efbb1045b4d9b7407f2c7cef8b8286852235ccbc94dab1232efdf4292afca6b49a4ae26dd59f61571b57272 SHA512 10ac8d052814441231b0ef46bdd65101f5260a7f1d5c341126f2226301facf4fc90936123b33bccbfde60042ff2a7f2e225fa44fd841782fea49d1f2fc8bc5db
EBUILD mkdocs-material-9.5.36.ebuild 1797 BLAKE2B fa861d360d346729982c800cdcc403f0b07d0d3c7efbb1045b4d9b7407f2c7cef8b8286852235ccbc94dab1232efdf4292afca6b49a4ae26dd59f61571b57272 SHA512 10ac8d052814441231b0ef46bdd65101f5260a7f1d5c341126f2226301facf4fc90936123b33bccbfde60042ff2a7f2e225fa44fd841782fea49d1f2fc8bc5db
+EBUILD mkdocs-material-9.5.37.ebuild 1797 BLAKE2B fa861d360d346729982c800cdcc403f0b07d0d3c7efbb1045b4d9b7407f2c7cef8b8286852235ccbc94dab1232efdf4292afca6b49a4ae26dd59f61571b57272 SHA512 10ac8d052814441231b0ef46bdd65101f5260a7f1d5c341126f2226301facf4fc90936123b33bccbfde60042ff2a7f2e225fa44fd841782fea49d1f2fc8bc5db
+EBUILD mkdocs-material-9.5.38.ebuild 1797 BLAKE2B fa861d360d346729982c800cdcc403f0b07d0d3c7efbb1045b4d9b7407f2c7cef8b8286852235ccbc94dab1232efdf4292afca6b49a4ae26dd59f61571b57272 SHA512 10ac8d052814441231b0ef46bdd65101f5260a7f1d5c341126f2226301facf4fc90936123b33bccbfde60042ff2a7f2e225fa44fd841782fea49d1f2fc8bc5db
MISC metadata.xml 1146 BLAKE2B c9eb031eb40f303fdcc39f891cdd2d4317075deb030d0f8374f874ecd63bf73960427eb3ee485b5b28515f58689b1e1bf977ee7b565bf8f9275b115853044f2c SHA512 01db399842cb09af4823278f84fcf8c51ed42609a2e61d8e64964e1759e14d22ed2f32ec0565f19184575089a218dad4939337798cd3a5b39f5be55f5f7edb69
diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.37.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.37.ebuild
new file mode 100644
index 000000000000..0aabdac3ae43
--- /dev/null
+++ b/dev-python/mkdocs-material/mkdocs-material-9.5.37.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/mkdocs-material-extensions
+ dev-python/mkdocs-minify-plugin
+ dev-python/mkdocs-redirects
+"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A Material Design theme for MkDocs"
+HOMEPAGE="
+ https://github.com/squidfunk/mkdocs-material/
+ https://pypi.org/project/mkdocs-material/
+"
+SRC_URI="
+ https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="social"
+
+RDEPEND="
+ >=dev-python/Babel-2.10.3[${PYTHON_USEDEP}]
+ >=dev-python/colorama-0.4[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.6[${PYTHON_USEDEP}]
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}]
+ >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.16[${PYTHON_USEDEP}]
+ >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}]
+ >=dev-python/readtime-2.0[${PYTHON_USEDEP}]
+ >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.26[${PYTHON_USEDEP}]
+ social? (
+ >=dev-python/pillow-10.2[${PYTHON_USEDEP}]
+ >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}]
+"
+# mkdocs-material-extensions depends on mkdocs-material creating a circular dep
+PDEPEND="
+ >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ # simplify pyproject to remove extra deps for metadata
+ "${FILESDIR}/${PN}-8.5.7-simplify-build.patch"
+)
+
+src_prepare() {
+ echo "__version__ = '${PV}'" > gentoo_version.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.38.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.38.ebuild
new file mode 100644
index 000000000000..0aabdac3ae43
--- /dev/null
+++ b/dev-python/mkdocs-material/mkdocs-material-9.5.38.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/mkdocs-material-extensions
+ dev-python/mkdocs-minify-plugin
+ dev-python/mkdocs-redirects
+"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A Material Design theme for MkDocs"
+HOMEPAGE="
+ https://github.com/squidfunk/mkdocs-material/
+ https://pypi.org/project/mkdocs-material/
+"
+SRC_URI="
+ https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="social"
+
+RDEPEND="
+ >=dev-python/Babel-2.10.3[${PYTHON_USEDEP}]
+ >=dev-python/colorama-0.4[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.6[${PYTHON_USEDEP}]
+ >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}]
+ >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.16[${PYTHON_USEDEP}]
+ >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}]
+ >=dev-python/readtime-2.0[${PYTHON_USEDEP}]
+ >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.26[${PYTHON_USEDEP}]
+ social? (
+ >=dev-python/pillow-10.2[${PYTHON_USEDEP}]
+ >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}]
+"
+# mkdocs-material-extensions depends on mkdocs-material creating a circular dep
+PDEPEND="
+ >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ # simplify pyproject to remove extra deps for metadata
+ "${FILESDIR}/${PN}-8.5.7-simplify-build.patch"
+)
+
+src_prepare() {
+ echo "__version__ = '${PV}'" > gentoo_version.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/moto/Manifest b/dev-python/moto/Manifest
index 7a449603b842..bf3351fde5f4 100644
--- a/dev-python/moto/Manifest
+++ b/dev-python/moto/Manifest
@@ -9,5 +9,5 @@ EBUILD moto-5.0.12.ebuild 8771 BLAKE2B a3b9f66327941a0f38a120854cdb02461abfedcd2
EBUILD moto-5.0.13-r1.ebuild 8725 BLAKE2B e9250cb79469572f17e069197945a3f6925a78812fbc78914f5715513cc16399266a038881198ae3893abeab510efde4dfb7caa28facfeff22d0cdc710b77e98 SHA512 8d9688807d3bc00f9d3a2f7764bb537a05d60e996948e0137994c80f94c2092b26ef077312d58b80617c55c55fe3e8223480d0f3da0c0b0ca810fa8b38c04e67
EBUILD moto-5.0.13.ebuild 8628 BLAKE2B 05ea62e6b2c4e442c92bb4eb2eea31771085d857e0e12af902e7cfa80cd0c52e7848ae038c722a579e4813098dc0d28925d886750267e110478fc7ff8be96a7d SHA512 ed04c6a05b065355647294c2a7dd5b37a9701eb2841471efb5ccd2709e883abb429f39dcd39d817d0642d7326622badbdd2bd7ad802ecdeffde201ea4209c0ed
EBUILD moto-5.0.14.ebuild 8635 BLAKE2B 451d9f26be7a55ab62842288e057bbc1d95101c626e05968e4a05798b6fabd1e9f1c21dd38ab9b63e88bb5a47dc41b656f45f6f5737336bfcc981486b6d8b7f1 SHA512 73c7cd7ce9207f81b6e8518cc05238243ac637094538db512c0a560cbcb5e073af8a03da4ad3d2bd745f4e5a838ec5c5a8766c973996e18307f4572619ce7e54
-EBUILD moto-5.0.15.ebuild 4672 BLAKE2B fd0bbb48c03ddc8a33bd8ff3c4d3d37be7cef1ff5258f4b9a64a0b960e237da785c57da575b7ef4298ebfee4dcdabbd1dcbcd9996c55aef420c379cef6ab5125 SHA512 25de04820331551b6b8fed338d52056c7b64623f5ce9198f6e83d182a4d43c3263c0c57f620f818e9efc065ee8875948a244403f8f51b74be41642ef27604190
+EBUILD moto-5.0.15.ebuild 4679 BLAKE2B ab2881f7e7c897364acdc7073fea8231b3268ab560cc75e12293ed5a64fc848e8dac3d07ec208e379f9c187d19fe478921ad157e87a0b5f7dd2d5d3fac389d74 SHA512 0b92c0701b7b462b9d8881b3dd9325fc2eb3cda8306f1e975effa6a38ab2fcf9e671eceef2d78c7aadd4d5ae402be91b2d3ac784ed7b4b616de72a7dd460096c
MISC metadata.xml 553 BLAKE2B 1669d17d3e655aa3fb41a489229a5fbfa6a9cfb23c667e98fbbef931992c7e9645581b9ea12011601093586cba491a5557d68e5256edb9f387c4db362346edf9 SHA512 48ae3bd9be8c3bfb68f7022d0e7bb422c2a06157967809be302067facf91db825023859d18ccea89109931538b0e93181d54a31fcc967628df61a9a3112edd3d
diff --git a/dev-python/moto/moto-5.0.15.ebuild b/dev-python/moto/moto-5.0.15.ebuild
index 23fa972e9c30..ab59f6c3391e 100644
--- a/dev-python/moto/moto-5.0.15.ebuild
+++ b/dev-python/moto/moto-5.0.15.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/aws-xray-sdk-0.93[${PYTHON_USEDEP}]
diff --git a/dev-python/opt-einsum/Manifest b/dev-python/opt-einsum/Manifest
index cd356f2b25be..dcb8d650c29a 100644
--- a/dev-python/opt-einsum/Manifest
+++ b/dev-python/opt-einsum/Manifest
@@ -1,3 +1,5 @@
DIST opt_einsum-3.3.0.tar.gz 73951 BLAKE2B c8e39c9589bb6b89150fd5699fafd77c5ac6022f66d1b778a55dd61e606067be4b6df85972dd4078df084e34a39463f5e59d69426b0ed9152e93f93798417eea SHA512 f34c58bd3aa4a15794cfc604167c0e3175b9826da2a2449bb48ea5c3095f8215e3f990daec51e77e505a03204201694df1a09360ee51b8a4a793b9844d9c2d5e
+DIST opt_einsum-3.4.0.tar.gz 63004 BLAKE2B ef9174bdcdacc5bdc2a132ee45cac4ebfb57eaf00bf23638254434fdfd9648244fea27e91fc984112b43088876b99119b174c1cc6d7dfacfa46febff1ad072c9 SHA512 1f1dda6a6994394db9ad8d48a1cd7a6200ce0c5f8aae06748a199b4e1aa70b60ad69448d3d332d97d41bd3c94420bb00a033d67b4a6b3c2373d6678fec5834a4
EBUILD opt-einsum-3.3.0-r1.ebuild 650 BLAKE2B d0f461e517297c68ca3025f9c9296903ff222a709356d3d66f743a3009ba76b4ccdae395fdcd09b1b33eb8f51fd66963d2ed7e79480734ee272e5bf39be86c85 SHA512 2e0be8f768264a36d23b2b584ec7dbae7cce9fd21054d5278164938a1118ea012d641cac8a1b9be97f4a6d8ca650e99a08680e3fe8c2724cd92774c86d6ca382
+EBUILD opt-einsum-3.4.0.ebuild 608 BLAKE2B e8576f76ba3847cb6281170e456e982a12ddc611861595762eb7e202eaaa8e2b9d4ed6e0ac68dabf05a591308bccdde502bc993f06e6a72bfb358ad4a3f5b892 SHA512 d966fd861dcc7221a1bb0b6330ebe04dab2313267e03a12c0133134b68c311690cdcaf0ed595701b7f5f4cda574082b1693e9f95f17ff7ff3de9e25ed3ec3e45
MISC metadata.xml 530 BLAKE2B 657b3a76e2d097512c79cdebe6f9eaf334c788b525e4c6f7a02ee90be68d36d19261972393a47739be4a8f405bbd07fa8678e9b84c8bdafb8c8808ccf4356ce8 SHA512 0301af745cbdad5ebfc9f87e07f5e0782cc80d6dcf449402757267e5894ecca087f169dd68f9e3aa33818fca3349e90ccd421c8e19edb00dcd8da67069aa044d
diff --git a/dev-python/opt-einsum/opt-einsum-3.4.0.ebuild b/dev-python/opt-einsum/opt-einsum-3.4.0.ebuild
new file mode 100644
index 000000000000..c9acf9a60c96
--- /dev/null
+++ b/dev-python/opt-einsum/opt-einsum-3.4.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Optimized Einsum: A tensor contraction order optimizer"
+HOMEPAGE="
+ https://github.com/dgasmith/opt_einsum/
+ https://pypi.org/project/opt-einsum/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/phonenumbers/Manifest b/dev-python/phonenumbers/Manifest
index e4bb07690698..aba8e96c3d69 100644
--- a/dev-python/phonenumbers/Manifest
+++ b/dev-python/phonenumbers/Manifest
@@ -1,3 +1,5 @@
DIST python-phonenumbers-8.13.45.gh.tar.gz 4913395 BLAKE2B 78cf1a38dba34f4c989b39b676fcb0e78369a41cb7882fe59e48b9c36af9471082153a194ba75b72e7b25515eb0bcb7749eb0af78175f49c2933e17efc13c263 SHA512 28abdd0ae5f28b38c5279a850ee36812ddcd8eed6f57c9f1e816406c25896e6fdc547d7802ddd4b97a9253c3962946a8c17aa4c96e6a62823a9ae80c74a16024
+DIST python-phonenumbers-8.13.46.gh.tar.gz 4913455 BLAKE2B 1310c5e2c58d1f16c7df4d2e4beb4b9754f00b7adb630691ebe1600a9b4b4ccf4ddbf86c0660daef53bae03f98a79a6856f9e10976c7c69de616f1fdd5dd5241 SHA512 36d6611196e78b02d7c77d8fe1f99f4a02b5a13d1bf5f6d1eac751988ddbd239b28081fbd2b1c582e8ff2d58e792f765070d3cbb5392a9c095faf102ce8c51fb
EBUILD phonenumbers-8.13.45.ebuild 816 BLAKE2B f6c2960a4435c0de44a1a1ab02278402f914bc58d8795b83b527003bb116ffeef3711a02c7d00e48999f924cb7426f0e657d5b1aa930cde98be4d273312d3223 SHA512 36a31a824519dd72fcedf797fa0164ff06d57429f46c1bd7c6d4d7de3d2614974319267d9cd5f44475180fc16fc3800417c931e19c0926ee120235d884eadda0
+EBUILD phonenumbers-8.13.46.ebuild 818 BLAKE2B 52157818a6a593c18dae9039574a974275876cee7dd286fa069e0014213f2c79bc748601d48f83b9f26c2a88319033375b987885fbfa6e664ceb674c6a36ce23 SHA512 4bd185fd81d09f95142678bc08d2f124877c09af6f58ad83115569437c2fa3e6d90b4ef7fa151bd6d5e2cb464a90dc0392bbc228e6aa9fa3a42952d570872ff2
MISC metadata.xml 413 BLAKE2B 4fa9965e76205ab35de37314b8c06fae26ccf34a944401e672487d7ad42b0046b4de85c8dd4c500d2703b5ecca49755b3f6d9047a20d7226fdbdf63e0aca3220 SHA512 de88d4162ba8f97748a1d2a17a8bea48f59b84f67c76aec11a9bad8ab0d0b66bc9cc2395dfff446bbad591f52f755a38ccd0daf2480b4f2e22e80ce5d44a42c1
diff --git a/dev-python/phonenumbers/phonenumbers-8.13.46.ebuild b/dev-python/phonenumbers/phonenumbers-8.13.46.ebuild
new file mode 100644
index 000000000000..43eeff396e3d
--- /dev/null
+++ b/dev-python/phonenumbers/phonenumbers-8.13.46.ebuild
@@ -0,0 +1,39 @@
+# 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
+
+MY_P=python-${P}
+DESCRIPTION="Python port of Google's libphonenumber"
+HOMEPAGE="
+ https://github.com/daviddrysdale/python-phonenumbers/
+ https://pypi.org/project/phonenumbers/
+"
+SRC_URI="
+ https://github.com/daviddrysdale/python-phonenumbers/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}/python
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? (
+ dev-python/protobuf-python[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( ../README.md )
+
+python_test() {
+ "${EPYTHON}" testwrapper.py -v || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/prompt-toolkit/Manifest b/dev-python/prompt-toolkit/Manifest
index b092087eda33..56e7fe711497 100644
--- a/dev-python/prompt-toolkit/Manifest
+++ b/dev-python/prompt-toolkit/Manifest
@@ -1,3 +1,5 @@
DIST prompt_toolkit-3.0.47.tar.gz 425859 BLAKE2B fa12151c48126c971b2dc468a6e1de4ede49ade08f637e9c02d2284f74f07cbcf4d3167447e616af3385eef0355f8928bfc50632f0cf61138320d7e75777c07e SHA512 c27dc03929f0bd373e41bf70e19f82f97c8f0a6308e51e079e89d6233f1e638c34703cc056fe8c86cc9b63f91b5d345c28ce0e418f79f6e450ca06bcda5820fd
+DIST prompt_toolkit-3.0.48.tar.gz 424684 BLAKE2B 2b22cebfaf66c07bf9e2ba2677be4c36436c0b5679e01cf39b7335f1898e33f7bb5b4f3a147a39feca37bd3921b8cbe8db98c948d2819c0e7269cca5e2b71d26 SHA512 f999c0d6df94a1a640d735e4b6f4bebd496693b8ae7267c4a8561c726a8148f937781b07f8e76a045ac0b90fa1d98fb767c153c3a96e25bc5e610c873f8e76c3
EBUILD prompt-toolkit-3.0.47.ebuild 717 BLAKE2B 1e4443ed0e7ccba5266298343dd20546fbd3bb027e6008825072780d8290a2520c8b3302aa0b05c83525705385962079d86510c04aea21cf9d9e692345730111 SHA512 990857090f9c7b5ab6599d34818ceb199433430208328940531b964ced0f7db255b5d003f26d278c5679deb61b977a87e94d98a851fd7176c8a0df3140dd2163
+EBUILD prompt-toolkit-3.0.48.ebuild 725 BLAKE2B 385b43a98785869cd2cb28d6b1942b2f8383a211f2fff7bd43480747ab3f7c08e38271f72e51ead667d97086db4666c3fdee342ce075c5fcf354df9a06bd3a9c SHA512 9a604959fd1622cae2e3c1eb79b91bc7451dda9c8d1cc0eb0c599e3529b10438ad83e40a00285dce0b86fd697d22dce7994093dc1f2725c97030b64a488dea09
MISC metadata.xml 431 BLAKE2B 534336484c65b57df5e672729ff722b67445948e0485c3a62c2f7081724cb951b5157c600dc6162a3bb857c2be0f378b18670786279ff8b5cff2858588f8ebc9 SHA512 a9bf68326839069c61e70d4ef3fe304706f2543b9b91eb291566dd66f36d1abec00382ae205549a35f10dfc730f4613c5cc5c0ee4d6858538d50c4145bd3b15e
diff --git a/dev-python/prompt-toolkit/prompt-toolkit-3.0.48.ebuild b/dev-python/prompt-toolkit/prompt-toolkit-3.0.48.ebuild
new file mode 100644
index 000000000000..5a656ce67ca9
--- /dev/null
+++ b/dev-python/prompt-toolkit/prompt-toolkit-3.0.48.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=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Building powerful interactive command lines in Python"
+HOMEPAGE="
+ https://pypi.org/project/prompt-toolkit/
+ https://github.com/prompt-toolkit/python-prompt-toolkit/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ dev-python/wcwidth[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # requires tree-sitter-languages
+ src/prompt_toolkit/lexers/tree_sitter_test.py
+)
diff --git a/dev-python/puremagic/Manifest b/dev-python/puremagic/Manifest
index 0924edfd10f4..e087cbba4e8f 100644
--- a/dev-python/puremagic/Manifest
+++ b/dev-python/puremagic/Manifest
@@ -1,3 +1,5 @@
DIST puremagic-1.27.gh.tar.gz 311630 BLAKE2B f2856a138600ae8d9592870080c04ca15b2eefbb774f1156f52327d6a0fe26f419ade498a8ee08c02b0f09f4ea6427ce595de8b478d2e17fd00f5f7263364051 SHA512 56365dc122160d306704290a054afa7be5007ca3634275fab168e1ea8bc29356477c5455abba3d84c9e229dc9ce3a21df58ed7e6ff216fe0c60d7257e4b02584
+DIST puremagic-1.28.gh.tar.gz 315168 BLAKE2B 8102fc7a2fb2ecffc3b38d90ca4ca848c78f8989eb43bb74c5ecab3388238c9ee6285b8423ca0b999ea22462a150d5ecd5e59450edc136d666e8f68bf272d0eb SHA512 8a9d04b34d32a552fa51de1c720556d46c2aef99913d9c339838a682e8758ba16c66bcd4d205fe59dd6ae7cd27c311b24638a4084baf7a27869e5304e4994d27
EBUILD puremagic-1.27.ebuild 632 BLAKE2B a05216707836158ec9988e1c3fb9090e6dfa09760f1d9c244eeb9197246c858b6a3430680486d4a2dd17975159d68cdad5f0fc7a679a2d56544a6937d1d7b7bd SHA512 af9161937efc171ee05b350241bab778f9d9faee5e6645d75b44dc5f92b301b7df1ed4c02527f71b2ff8d6580c9605ed4ea20248dfa0439c18eda551de85ccb5
+EBUILD puremagic-1.28.ebuild 633 BLAKE2B b5a157f1fbc51b0d98793a931ff2f6faa22ca8fc12155cbc336ea0345b86eb25572085cd0bcc43aaf0caab75f59c4817d50cf972c1c1d11ab6b9806459f72128 SHA512 72bde404febc8f6ddc0ec667c1a03fa3dc21b896d561d686951fee6fca90ca860a451fbd69ca5fa1f232f95f522a172dbcfcc43c1bdce08fa9df24e9bc29a452
MISC metadata.xml 441 BLAKE2B e16e921f5571378e7fe3922ef583aaecf4fdd0160ffe502105f982d05189679395bfb7babc5f3c12ce60af9ddc72ecedd5a7a68e18488cd35174ee1b3eb03c05 SHA512 ddedaeddbca2953c67d6d23414f6dd152823290bc4bd90aee470a16906c4fae9e21043250677faba4873ff50af4ddf88c7208cfd30a040b816ec44782687e3e9
diff --git a/dev-python/puremagic/puremagic-1.28.ebuild b/dev-python/puremagic/puremagic-1.28.ebuild
new file mode 100644
index 000000000000..7a5fd34c2d27
--- /dev/null
+++ b/dev-python/puremagic/puremagic-1.28.ebuild
@@ -0,0 +1,32 @@
+# 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="Pure python implementation of magic file detection"
+HOMEPAGE="
+ https://github.com/cdgriffith/puremagic/
+ https://pypi.org/project/puremagic/
+"
+SRC_URI="
+ https://github.com/cdgriffith/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DOCS=( CHANGELOG.md README.rst )
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/pydot/Manifest b/dev-python/pydot/Manifest
index 4ee9a9f86b77..2de1f57fec51 100644
--- a/dev-python/pydot/Manifest
+++ b/dev-python/pydot/Manifest
@@ -1,3 +1,5 @@
DIST pydot-3.0.1.gh.tar.gz 280784 BLAKE2B d87d06bf5f62ae783ecb4ff6a16b0986969de49cbf45e120df5e722620fe614181700f8117b0a6ce24fd4aac4f618d4dc16c631f581ebb19bea73a5a92437585 SHA512 6aca6e91134e481334c12a7669d3f5df1181f9a4e2ab914a6c8ab87f28d0afa9d97cfc0d9b665d9fdedb3c335624d68967d491f79fc669573aa81cf1401316cd
+DIST pydot-3.0.2.gh.tar.gz 295058 BLAKE2B dac56e82520c09f3000f7c6bf04d8d933f22958086675d8c7e26572d039388f7561b3aa7150e49cc1957d44dcdd4828058369ccf2ba5f88a9280f67dcbc18196 SHA512 b24b2073781b6c3256e3d9e76514193493d8a8d9eadc8ef1db3d13b7c4d3ddbdcfcc008b3b70abbe9dcb11d2036b4b3a3dda6ca13277fb5413f699a136a58b80
EBUILD pydot-3.0.1.ebuild 865 BLAKE2B d51c73fa1c183d12ca8d436e8054ba13f2be9962b1ec58c9d2ee616d380881fbb2f57070ed661f6fa0dd90533c889ce9e685164064c1a00ddb2c32ed9ed6ea6b SHA512 1f0fc5d970da40d10e2bde578e2caea19c0585a3b7d1c1425eebde061c2d966662d543b5e79a62180941423d1290a7e4b7e8ccb44ae9bc3c3756eacfd5514baf
+EBUILD pydot-3.0.2.ebuild 866 BLAKE2B 4106819bce263ed9790c76e26fc66afd0e3732607d3bf946cf6a3aa23fe00ac7900f1b1a89d7d96f2c4e8f4ef91c6c98a65a5f5b3478a01a8c35294e99f841e6 SHA512 d5d4e0c4253f9dd03ef6cff5e8663c41a8fe028ea58847f15c7b3b171aa1c339b3a41051d666c244cd2930bec2d6c3f779aa90b78d16d4eb2f581f89867c146e
MISC metadata.xml 372 BLAKE2B faad24394ef27dedc8b563e505444b414fe95cb6097bd2bebe01232e68c975b77d415c2a05ec1ad19f0ce1218d1c3f057beea6deecef01b940962a287ad8ce46 SHA512 281a6e2097fcf978f7e691640e257a5f60b242570f8a5715e078363c5658b96b50d3c29ccaad448c0b2ac3dd7b898dcae457bafdb08952163de8d1af81954d75
diff --git a/dev-python/pydot/pydot-3.0.2.ebuild b/dev-python/pydot/pydot-3.0.2.ebuild
new file mode 100644
index 000000000000..849a61311a4e
--- /dev/null
+++ b/dev-python/pydot/pydot-3.0.2.ebuild
@@ -0,0 +1,38 @@
+# 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="Python interface to Graphviz's Dot language"
+HOMEPAGE="
+ https://github.com/pydot/pydot/
+ https://pypi.org/project/pydot/
+"
+# pypi releases don't include tests
+SRC_URI="
+ https://github.com/pydot/pydot/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/pyparsing-3.0.9[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+"
+BDEPEND="
+ test? (
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pymdown-extensions/Manifest b/dev-python/pymdown-extensions/Manifest
index 1a82ae4533b7..70b69358a0d4 100644
--- a/dev-python/pymdown-extensions/Manifest
+++ b/dev-python/pymdown-extensions/Manifest
@@ -1,7 +1,9 @@
DIST pymdown_extensions-10.10.1.tar.gz 828448 BLAKE2B 6db04e72229e53c01f358679025ad94905553aa0eefec37887dd91c83ed4e24efc2be41ac533a981880ff7527b2d592dd7958ea7b49ce623b31b94aff69a63f1 SHA512 731cc26e225af87c75d743abc422e27f93fc0fdf2059411580e63b8344e6ede731e57f20b6679c15a3b84f45432273dce6ad63cacbbeed63ab9c31d8338ccdaa
+DIST pymdown_extensions-10.10.2.tar.gz 829801 BLAKE2B 8da4c0afba79a4736621ce8b644a42b4918c04685c1c0312f6a184007c456f92e106fdfd9ae9be64a32bba1d907b6a528fdc49267d1153c0393a8c20c4ded527 SHA512 5885a8f9ea774a5718647a9d546dc5285186d19761441cd1ef39d5f8be40ee13f8fb6cf8791f890001affa6fe051962a45f8cfe8c1d0c549eb4bfeab956494f9
DIST pymdown_extensions-10.10.tar.gz 828386 BLAKE2B feca952ef46e405215a9ad3365c9afb24bc042590a3ddd87dae7d38a2ba24236463c3ffd7348446c563259246763b969b2c51986a3843d4645ffa530a44cbfb4 SHA512 09aaf7b4ee54bea055816a9f30da04f2cd7e342aa37163805f2eda19554ef93e33c6ef2853ca6b59ae9ae00f5347742c7ea2ba2abe3b5a2de503ec3106320465
DIST pymdown_extensions-10.9.tar.gz 812128 BLAKE2B 2427c41b8587e8b0c4d9bedc4e7c413959545f6c1a12b2c9453861bdb349cbd5bb70327384821f6423718296f56efa17aae21db79bdd038f330246555bcd538b SHA512 3642ccf18a85ffe6ac03dcb132f4b64009490e2a6d0cc70c322ef7640de2a5895a321f755f2d6e16f9c9e84b112c12ded2db18ff73d3201f7b9e0a10c8cd78b5
EBUILD pymdown-extensions-10.10.1.ebuild 719 BLAKE2B ae1ad392f5db068b381c94da4d2f347d5f5e42530e27c7417ac6443a8961c890a5fba8f32fae1ea314d5e036523813791b051721106bc4e76d3abeb770451286 SHA512 0aa712ee104fe3f72d072bdfe49f4544f0549c0f978bfa0cec5388cbb4b05d4fe7dce19f5fa7e6c015ed3795b90f2977c66f03332350b1dd7f3dd8b10b1cf68e
+EBUILD pymdown-extensions-10.10.2.ebuild 719 BLAKE2B ae1ad392f5db068b381c94da4d2f347d5f5e42530e27c7417ac6443a8961c890a5fba8f32fae1ea314d5e036523813791b051721106bc4e76d3abeb770451286 SHA512 0aa712ee104fe3f72d072bdfe49f4544f0549c0f978bfa0cec5388cbb4b05d4fe7dce19f5fa7e6c015ed3795b90f2977c66f03332350b1dd7f3dd8b10b1cf68e
EBUILD pymdown-extensions-10.10.ebuild 719 BLAKE2B ae1ad392f5db068b381c94da4d2f347d5f5e42530e27c7417ac6443a8961c890a5fba8f32fae1ea314d5e036523813791b051721106bc4e76d3abeb770451286 SHA512 0aa712ee104fe3f72d072bdfe49f4544f0549c0f978bfa0cec5388cbb4b05d4fe7dce19f5fa7e6c015ed3795b90f2977c66f03332350b1dd7f3dd8b10b1cf68e
EBUILD pymdown-extensions-10.9.ebuild 716 BLAKE2B 27275e4a6432d8f8c4d682c5ce0bec5ffec05f9768b39d3e74652aa092056fc1e39100799150e4346f5a23a14e8dedd5690041098123dca668987c637764f262 SHA512 3d170cc203987a3d7f2513a96323769f5eca4991706555d8a93cf22d087d6854e357eb885a1e5089c1853a32eb936607e442f2d27a6e83024a682748c477fd0f
MISC metadata.xml 536 BLAKE2B f417ab2132b06eadbf1785654080084c4ef694f983e223ade83d5c77213e4443203a498a168efd68e4a3b1cccbe019c5b88716ac851719b9197deba9d2fd5411 SHA512 51304b48f9e296abea376be300053e041ea331f93e1ec7a2a3cdf10eea0ed6e9b8f04cdcbbed7920b46c60d5f6ce9337e3e25635516871d7b080eb54bfa16f57
diff --git a/dev-python/pymdown-extensions/pymdown-extensions-10.10.2.ebuild b/dev-python/pymdown-extensions/pymdown-extensions-10.10.2.ebuild
new file mode 100644
index 000000000000..8447dcb9ba40
--- /dev/null
+++ b/dev-python/pymdown-extensions/pymdown-extensions-10.10.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Extensions for Python Markdown"
+HOMEPAGE="
+ https://github.com/facelessuser/pymdown-extensions/
+ https://pypi.org/project/pymdown-extensions/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/markdown-3.6[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ >=dev-python/pygments-2.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/pytest-bdd/Manifest b/dev-python/pytest-bdd/Manifest
index 8c5d491162c4..2378f44b01ee 100644
--- a/dev-python/pytest-bdd/Manifest
+++ b/dev-python/pytest-bdd/Manifest
@@ -1,5 +1,5 @@
DIST pytest-bdd-7.2.0.gh.tar.gz 81301 BLAKE2B e47ec5873546596e913453f86d7c0654b8212de74b0bfa46022da093fa87191c9303559ec670bd37f94e282973192596c77a1f7293a608ae8dedbd863fc245c2 SHA512 d0991feb446f264f0f114693dccb67682a10a427cb5fda28dccafd67cc37810e00c34e3235bb38d02b7fa1edabf1359c6c119be9cfdce0ccf00235ca3dde337b
DIST pytest-bdd-7.3.0.gh.tar.gz 81595 BLAKE2B 80c5323ba3c50fae17bb57ec26b968ca7d7b673d2aeb2716dee02e3543916ca8b5752d9af56d3d250f3a4b0a857a3dc760de615f0650eaf379380fb24a5b7c2a SHA512 e7c309552714a77d47e437a825e661dbf201a6945e84f4b611b5c3da3d0b4ceb535bde4809fc9633b82a74e2b52cc69c7e14b27a27032c7e4400727498442e29
EBUILD pytest-bdd-7.2.0.ebuild 1044 BLAKE2B 134bef00e9c40656709015f7e8ca045b1ff0b79be49c21e3924c36985e85ac10c1b282c9fc9ff85d34a47dfd1caf54e937fe728ff87a5d63a77e34566aff0b6d SHA512 2973d27c6499113e3703d57cd00bc571769ab00a72fc75170f97ac06a8e51c1d803341c072bbfde751fdf39c3cdae1f2a927f3cf4cc8d0c280ff1c7941885e0a
-EBUILD pytest-bdd-7.3.0.ebuild 1245 BLAKE2B c05b2b4003809080ef097ade3ff3bee0de9c2d12dce7a77bfdeed4e9da70e8cead2129d45595e3c9e5a9e6e122d418e567c696f2a3e650baa06993c25e4fa224 SHA512 9d384fe0e429c18387f07db2c7d979a4cf61e73a5882684b2093769207598620e8a6593573412d287be72db8bfe5abea383ccc9ec45d7afcf31e9b086d7a2100
+EBUILD pytest-bdd-7.3.0.ebuild 1046 BLAKE2B 083a9b5e26e92e0048005cc9517f07d8bdeb4e63013cf3e2c277d1eed27b7446577598184f812fcc947d3c50cfcdc641a285180edcc4c31f796640fda53ba9a8 SHA512 eb6df13d66686d1734b83eda4cfb4010a81aecb671030c9a44809fee83536909b569f6d48d50ce96d827fff139c77277ef5826b6c0295ba242793bfeec5fbc45
MISC metadata.xml 404 BLAKE2B b5bdea28ab998a54bd0b76e38c37a77af74d4ae149bfc5af47e7466b7c13ae6a5784be0ecc3e6cd8ccbbd5164dea02d704f596b7e00d22b0d640c4ad3dd13b41 SHA512 97800a5877bd8f3aa880a0cdff19cc89de983ec1a0cd9fbe2c74178b6fc214a0ca7fbb013b2ac490e1c4109f03ded7055e1517a3b57f6da0d79c9f5ea5864e77
diff --git a/dev-python/pytest-bdd/pytest-bdd-7.3.0.ebuild b/dev-python/pytest-bdd/pytest-bdd-7.3.0.ebuild
index d54168cbf160..121c574146f2 100644
--- a/dev-python/pytest-bdd/pytest-bdd-7.3.0.ebuild
+++ b/dev-python/pytest-bdd/pytest-bdd-7.3.0.ebuild
@@ -3,10 +3,6 @@
EAPI=8
-# TODO: may be able to switch to pypi tarball next bump, also wouldn't hurt
-# to build the formerly forgotten docs if the tarball includes them
-# https://github.com/pytest-dev/pytest-bdd/issues/703
-
DISTUTILS_USE_PEP517=poetry
PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
diff --git a/dev-python/python-socks/Manifest b/dev-python/python-socks/Manifest
index 257e4d84fce9..ed7a7a22c2a9 100644
--- a/dev-python/python-socks/Manifest
+++ b/dev-python/python-socks/Manifest
@@ -1,3 +1,5 @@
DIST python-socks-2.5.1.gh.tar.gz 32387 BLAKE2B a0f488a146b09433bee39382ace3143a31a55d3fccd2db5e5ca6c2a08f3e17abee5839a266f8dc1b1b3ac6add7584cfba988aacba575ed5d21a464f8a2f1464f SHA512 6f2491272d201abc06a0d0a4fae242899ed28f9caeb7bea42c33946daec3280b48a956319b82a89ebeb8ea61ab9c290f9360d6ea85eb4d654525b95faa3ffce0
+DIST python-socks-2.5.2.gh.tar.gz 32411 BLAKE2B 4070f7e0ff85881cec6252320a250404b1279b707719f41aa1b8bf8e8cd52c653a4a778baa4408977013e0c659f667152b902449bc32e84c4502067e240a901b SHA512 ec342b81d88192817eded048a8d6ed556ddfbb108bb945681cb33c05c4c53e39f01bac7cacb2bd1cecf907c53e49cce18d8bc237b625efa1067dd765bf648933
EBUILD python-socks-2.5.1.ebuild 1288 BLAKE2B f50610d219bc2633146686cae11fb31b17e3df22c48313656bf1734d6fd9f75b2c0f3be855538b5fb8d4e9247a5cb5f204a5535c986e60df870af93aedace5d1 SHA512 28c25f6e8cb2f8ad459caedc9ae84766306634e130a9f2b7c331c0a9329675eaba8d14cbc186ba1984b3a44306f2ddb10e0e5b02358ec690cb5861768dc5abf4
+EBUILD python-socks-2.5.2.ebuild 1331 BLAKE2B f4f547e77422030323c154371ddedf6e5c29eda2ac9a789d7eabf77711730cdea268909646a617364c7bce4a01922e867f03368e8e540429f5dda21a767d69a5 SHA512 119d0b81ce07881621420b8443c2b94c9e5d404ea8784c8554b861924f2c0f3a4a0fcb16db08d1edf34e0d3daadaee020fe28200d523d249ce0f77fab7fb9283
MISC metadata.xml 380 BLAKE2B 2209abdbafd26baae585840e774843c37e0c6103fa93d75e8c1ddbc8dd1b96f269a3e76f14c39a55294d4d642d7fbe9f87c6b1a0b64152c671590a9e0a6ef959 SHA512 ccbb1a5c9fd05ae1da346f4f92efe156921f7adf9f5544635a407ba4a8154c896bda2e445e05e70a8e46c2829b8d4a38d3bf5d73804a3641c811acd2be62099a
diff --git a/dev-python/python-socks/python-socks-2.5.2.ebuild b/dev-python/python-socks/python-socks-2.5.2.ebuild
new file mode 100644
index 000000000000..2f0cb840c533
--- /dev/null
+++ b/dev-python/python-socks/python-socks-2.5.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2020-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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="SOCKS4, SOCKS5, HTTP tunneling functionality for Python"
+HOMEPAGE="
+ https://github.com/romis2012/python-socks/
+ https://pypi.org/project/python-socks/
+"
+SRC_URI="
+ https://github.com/romis2012/python-socks/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# curio is not packaged
+# asyncio is the only backend we have, so dep on its deps unconditionally
+# TODO: revisit
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/async-timeout[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ >=dev-python/anyio-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/async-timeout-3.0.1[${PYTHON_USEDEP}]
+ >=dev-python/flask-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.18.3[${PYTHON_USEDEP}]
+ >=dev-python/pytest-trio-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/tiny-proxy-0.1.1[${PYTHON_USEDEP}]
+ >=dev-python/trio-0.16.0[${PYTHON_USEDEP}]
+ >=dev-python/trustme-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/yarl-1.4.2[${PYTHON_USEDEP}]
+ )
+"
+
+# Test markers exist to exclude trio etc if needed
+distutils_enable_tests pytest
diff --git a/dev-python/sphinx-autoapi/Manifest b/dev-python/sphinx-autoapi/Manifest
index 29a56f9f61e8..6210c20e7cc7 100644
--- a/dev-python/sphinx-autoapi/Manifest
+++ b/dev-python/sphinx-autoapi/Manifest
@@ -1,7 +1,5 @@
-DIST sphinx-autoapi-3.2.1.gh.tar.gz 68891 BLAKE2B b31db0f584498a96d3bf7e57fa92abd884d3b8bb8812236a8491685f0fc81d212e114ae1663e316ba7ba14dee082dd4aeab19941f3d6ab85de95399f3736f596 SHA512 e1920a79ce8954a9da1d33fd46e5c1968990e5cfd960a8c97ac344d3d6dd97c06dbbafb3144e67d223f6504b233e0cf59328f015d918264df12b00aed8e34f8f
-DIST sphinx-autoapi-3.3.0.gh.tar.gz 70367 BLAKE2B 8e4efd0722b8ffff31816839b88fc1dadd0bbb10143a2361cd040f5bafa806d128b288a0acd77b9cc881c7e45a47e2802f666486f07f705d0aa0312ae840da9c SHA512 fec162717137ff71d196feeecdb84a3fa953471c06a0bf8a586cc5d5f6ecece09b6ac20928039e8cfbd4eeb060e6cf0c1e633ffed2509ad760f1796bd1e10a47
DIST sphinx-autoapi-3.3.1.gh.tar.gz 71304 BLAKE2B 0570a26bb22d8a2a37484e28e8d0ff6be9673a49cf8a569ea1808a0a04c6b061c740e0562de8ad351d56966c1e942624486e126f9a1adca0b6790eee2363e79e SHA512 322cba62d37d74ee5ed22787fad2959fbac0885b3066f5213fa57985ba062dfb0be7248356aef695beea371d4090bb591bf604fc0df2e3c56e835fcb6937e3dc
-EBUILD sphinx-autoapi-3.2.1.ebuild 1200 BLAKE2B 6d592fea773727b4882b9a746b8ccfa698cdaad175f5f5f69c4402033f421e9f11405f705159bf0fb919c344b789a2e1b04b072f10fd6ba015b72b5c998dd56e SHA512 ad99a6e142a665cfa937f9cfbb28ade0a05c769fd21ac4f574e392c59f5e73351e463ce73320809c3c6beaa14831daec3e37615828bbc99628b9dfe2b076be29
-EBUILD sphinx-autoapi-3.3.0.ebuild 1204 BLAKE2B 3f9e2e6a0d06b2c1b4ff703f44335f08cc4ad0680e50b42061be6faf3794180cff23e708546bdca7ab79233b43d1675deaae31e19e621e524d77138d5dae312d SHA512 29b68725683c54a6e3c5a930badcf5269185b3650b7aac19d4b8302de12fb612821d86116224112fc6e1fbc8594c060801cd3a50b0adb6624285c421f426dafb
+DIST sphinx-autoapi-3.3.2.gh.tar.gz 71874 BLAKE2B ec92e3a4d3a7b2597a7224201e7ea443dbc6408e43933a54a24fdcb4968fe4e5d295374ea310c600ecf0893a3692a5d4645eafec8bf2a12566de057193eef073 SHA512 6532655408bde105377de1d87cb2f392524935499f45b77afefcfe0fb1b04e8251dce71d338e030537469520774fb8155f91fbe747181ea721a4477fcdebfa3a
EBUILD sphinx-autoapi-3.3.1.ebuild 1200 BLAKE2B 6d592fea773727b4882b9a746b8ccfa698cdaad175f5f5f69c4402033f421e9f11405f705159bf0fb919c344b789a2e1b04b072f10fd6ba015b72b5c998dd56e SHA512 ad99a6e142a665cfa937f9cfbb28ade0a05c769fd21ac4f574e392c59f5e73351e463ce73320809c3c6beaa14831daec3e37615828bbc99628b9dfe2b076be29
+EBUILD sphinx-autoapi-3.3.2.ebuild 1204 BLAKE2B 3f9e2e6a0d06b2c1b4ff703f44335f08cc4ad0680e50b42061be6faf3794180cff23e708546bdca7ab79233b43d1675deaae31e19e621e524d77138d5dae312d SHA512 29b68725683c54a6e3c5a930badcf5269185b3650b7aac19d4b8302de12fb612821d86116224112fc6e1fbc8594c060801cd3a50b0adb6624285c421f426dafb
MISC metadata.xml 769 BLAKE2B 6f85e487a2d2def289bb54a6addc2338bb8af85b323ec1c95851945f9c407ec22bfadd8079ac8b6e00cfbc85caa0e2b09d82329f1f87a365fc44b69c7bcd9a20 SHA512 68f02a5f98234c2a5cb15aa04ce90077b154a7e3a7a69dc0a1d0a6b5c7b42c60624878a7e2fff1576c8b586fc15e7ef042942274d4e8473835bb3d8bfdbd8393
diff --git a/dev-python/sphinx-autoapi/sphinx-autoapi-3.2.1.ebuild b/dev-python/sphinx-autoapi/sphinx-autoapi-3.2.1.ebuild
deleted file mode 100644
index cc53280450a6..000000000000
--- a/dev-python/sphinx-autoapi/sphinx-autoapi-3.2.1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2022-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 new approach to API documentation in Sphinx"
-HOMEPAGE="
- https://sphinx-autoapi.readthedocs.io/
- https://github.com/readthedocs/sphinx-autoapi/
- https://pypi.org/project/sphinx-autoapi/
-"
-# sdist is missing docs, as of 2.1.0
-SRC_URI="
- https://github.com/readthedocs/sphinx-autoapi/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 x86"
-
-RDEPEND="
- >=dev-python/astroid-3.0.0[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- >=dev-python/sphinx-6.1.0[${PYTHON_USEDEP}]
-"
-
-BDEPEND+="
- test? ( dev-python/beautifulsoup4[${PYTHON_USEDEP}] )
-"
-
-DOCS=( README.rst CHANGELOG.rst )
-
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=(
- # Internet
- tests/python/test_pyintegration.py::TestPEP695::test_integration
- tests/python/test_pyintegration.py::TestPipeUnionModule::test_integration
- "tests/test_integration.py::TestExtensionErrors::test_extension_setup_errors[dotnetexample"
- )
-
- distutils-r1_python_test
-}
diff --git a/dev-python/sphinx-autoapi/sphinx-autoapi-3.3.0.ebuild b/dev-python/sphinx-autoapi/sphinx-autoapi-3.3.2.ebuild
index 2dfb0a4c4c8b..2dfb0a4c4c8b 100644
--- a/dev-python/sphinx-autoapi/sphinx-autoapi-3.3.0.ebuild
+++ b/dev-python/sphinx-autoapi/sphinx-autoapi-3.3.2.ebuild
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index d720b4298392..3a2e8eabfdd2 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -20,6 +20,7 @@ DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea7
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
DIST sqlglot-25.22.0.tar.gz 19446848 BLAKE2B 08aa7131eae11d87df55957744b771a2f8d6529cd8cc246207a919ce044beb7fa7f49f0d51747209da57f6f703465d0b447dc74a13c6ebf6591c13b654ea25f6 SHA512 27d87e1222092139b3c4c2c3d0a28c6ad1addec743ac4aba9ae8554ece3ed56c82e6a912b1fd804f730eb67d08eeff194e7b081b12b69c69ac23ddc9129ef9c4
+DIST sqlglot-25.23.2.tar.gz 19470352 BLAKE2B 6dd198a1de9d5c240cb6040a55f7afa08abd12021c6768242d955ef959db7a04f5de180b675b4f719a00488784e43a49834f9031a7adbfbed1f58cf607e1051a SHA512 b15e08a894458bb8e423f1d6c4c994eda548f8d2248ea4a46873e709bf0ec7830a5bb8fea9d2a7952c6f4522ef1ddff223b8592ee24e00653e52a121bd821d77
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
@@ -33,4 +34,5 @@ DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9
DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
EBUILD sqlglot-25.22.0.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
+EBUILD sqlglot-25.23.2.ebuild 2817 BLAKE2B cf3d2e32dc5f98fbba79487c4d6c8d31ea7f611b3226c0f3ef4cd415b6e0d425ac9cd7e6b92df12f9640b8983bb419f399b1f766a90a15183659a5a572517a04 SHA512 1ba127adea3b9d677c02fbc559dab225a8f6d37f065d61420bc89fbc74a163603360c5198f0fdc3ee319ced2bb878e7ecd24b442169f3a14cd95921475201342
MISC metadata.xml 611 BLAKE2B 10bf684677182565c9932d51ed9b3b9c80d376d6db945bd7b0dd0d9a19a85dc0d10cb169ff2048ae5f7f73d0f438d259b6231c13c525b5374ec99377f4ffdd10 SHA512 2b26d0f77962807052b94ad78addcfdce9859042af3be34df267dc6e70b6231dd779563935fd21955cd8646fd0cce3fee8c939387ac8056194a0b777743dd2ae
diff --git a/dev-python/sqlglot/sqlglot-25.23.2.ebuild b/dev-python/sqlglot/sqlglot-25.23.2.ebuild
new file mode 100644
index 000000000000..456b6e98cfce
--- /dev/null
+++ b/dev-python/sqlglot/sqlglot-25.23.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/starlette/Manifest b/dev-python/starlette/Manifest
index 01b93ed15400..f8df601d3f0b 100644
--- a/dev-python/starlette/Manifest
+++ b/dev-python/starlette/Manifest
@@ -3,9 +3,11 @@ DIST starlette-0.38.4.gh.tar.gz 2571795 BLAKE2B 0a4d9856b3bf51a2d86b36bec74df784
DIST starlette-0.38.5.gh.tar.gz 2569392 BLAKE2B 9ad32478b22cc743652eda43ad71e6b43af9a1c9b42614a16b5fbae282cfdf5e1c092717bb35711d256e75249cf8705d3545289236c78382673f87a9706b7599 SHA512 1ad5ddb497eb35c8b0b2569218b7e98cb4bee0fc2497912aa86bc75fd894264f8d30c886313cc4aa6dd02a24197d71dbd0640b7e2f0a472ce1002ee5cba5ae59
DIST starlette-0.38.6.gh.tar.gz 2569402 BLAKE2B 1d580aa6d5f9782a0f3688f3ebde59ca0a8ec8756b3c05c9d9465af0ead346a566b28e14d068392d6d16a55a22a0c77adc3c99f781003df0b5963cfbb0e01514 SHA512 eeaf3c573e587ce4eec8c10f879b20059e0ca4f14c04865a744a8aefe1b3f51327a291e36db312d119b9df51475584b20d8407332a8817eee5b387255d4826d6
DIST starlette-0.39.0.gh.tar.gz 2571995 BLAKE2B 8db760feac7b61bf7e438bff20f7eeb21b91c20fffb7b72c630bbf453d1e3f0e679d7a7726d1a1e7438586da63b950679781ca76abbdaf5d21489a4cc555c896 SHA512 f75cc19178b11a10d43e4b206ab89ca053907bfe5143f46d26c8d6b5e254263fe77a8ed760dfcb3e7f229fc3dc08df8f8bc914db454f012cda81edfb7d06613c
+DIST starlette-0.39.1.gh.tar.gz 2572649 BLAKE2B f8b1fb9c64ae73d6018e9ec2f069b413c14060a076d9b3cdcaa6a56219733b65e73a7b8ed8abc6caf4bb896e88a34e326fd98a6f2859e5c05a200bac94aa16bb SHA512 b019d368b5610d8b865a17ff98bec40dacaf1dc830150da907a01a900b058519a9170c80ed92a5a78c835c833e089234e38f939523923e3e566fb2d59de28bfe
EBUILD starlette-0.38.2.ebuild 1271 BLAKE2B 68e99eb7235c42fc57ca3f5bd8fa1a937da28e4bdf85b573fb408f43d3fa4044ca7b46ef0366ee78d0b8a8eb64010d291d774b131caf59f9fc91f44e709a5e0a SHA512 92c2d7f83a8fc1dd082d32ae7fd545d22e87c65a834e57dc2583d71fb0b1786dba428a774a61e13d42a27084ea7c830c2b3ad8cf1ce9ccac5ba8080317025b36
EBUILD starlette-0.38.4.ebuild 1305 BLAKE2B ee124904ac49f9af258e1b4b274a7a2b163fdfb7904f43581a802296a943081f2ec9ec03c36a321128659a25daf3ecbbbcfef0ea510954eda16e766b8be4fbbf SHA512 36b25760833f82e60ddde0b7497f9fdeab9b98a11070cdf3e24b640d7433d7ac4f62c0643af80da459c000a9ce98dba0eb00f5cab23697a4dcfbd1214eb781de
EBUILD starlette-0.38.5.ebuild 1305 BLAKE2B ee124904ac49f9af258e1b4b274a7a2b163fdfb7904f43581a802296a943081f2ec9ec03c36a321128659a25daf3ecbbbcfef0ea510954eda16e766b8be4fbbf SHA512 36b25760833f82e60ddde0b7497f9fdeab9b98a11070cdf3e24b640d7433d7ac4f62c0643af80da459c000a9ce98dba0eb00f5cab23697a4dcfbd1214eb781de
EBUILD starlette-0.38.6.ebuild 1305 BLAKE2B ee124904ac49f9af258e1b4b274a7a2b163fdfb7904f43581a802296a943081f2ec9ec03c36a321128659a25daf3ecbbbcfef0ea510954eda16e766b8be4fbbf SHA512 36b25760833f82e60ddde0b7497f9fdeab9b98a11070cdf3e24b640d7433d7ac4f62c0643af80da459c000a9ce98dba0eb00f5cab23697a4dcfbd1214eb781de
EBUILD starlette-0.39.0.ebuild 1305 BLAKE2B ee124904ac49f9af258e1b4b274a7a2b163fdfb7904f43581a802296a943081f2ec9ec03c36a321128659a25daf3ecbbbcfef0ea510954eda16e766b8be4fbbf SHA512 36b25760833f82e60ddde0b7497f9fdeab9b98a11070cdf3e24b640d7433d7ac4f62c0643af80da459c000a9ce98dba0eb00f5cab23697a4dcfbd1214eb781de
+EBUILD starlette-0.39.1.ebuild 1305 BLAKE2B ee124904ac49f9af258e1b4b274a7a2b163fdfb7904f43581a802296a943081f2ec9ec03c36a321128659a25daf3ecbbbcfef0ea510954eda16e766b8be4fbbf SHA512 36b25760833f82e60ddde0b7497f9fdeab9b98a11070cdf3e24b640d7433d7ac4f62c0643af80da459c000a9ce98dba0eb00f5cab23697a4dcfbd1214eb781de
MISC metadata.xml 371 BLAKE2B 0ccaa4659e63162b565359a1cae05764bea66d708a5f4af1a4716ba9ba23faa39ab4f5a806c0a9783f3f42282ee9b98e22a92f2b308b8dfe97bbf9c770a8add1 SHA512 0fc326941861260becd4129c8a351e89ba0f98f9a3ce9b5d50812f0eaf667743ab0d403889aa1b0a2d9fcedbe0212ba879d165ec8edd115686d4768e6b1326ca
diff --git a/dev-python/starlette/starlette-0.39.1.ebuild b/dev-python/starlette/starlette-0.39.1.ebuild
new file mode 100644
index 000000000000..366226d021e8
--- /dev/null
+++ b/dev-python/starlette/starlette-0.39.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1
+
+MY_P=${P/_p/.post}
+DESCRIPTION="The little ASGI framework that shines"
+HOMEPAGE="
+ https://www.starlette.io/
+ https://github.com/encode/starlette/
+ https://pypi.org/project/starlette/
+"
+# no docs or tests in sdist, as of 0.27.0
+SRC_URI="
+ https://github.com/encode/starlette/archive/${PV/_p/.post}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ <dev-python/anyio-5[${PYTHON_USEDEP}]
+ >=dev-python/anyio-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.22.0[${PYTHON_USEDEP}]
+ dev-python/itsdangerous[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ >=dev-python/python-multipart-0.0.7[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ )
+"
+
+: ${EPYTEST_TIMEOUT:-180}
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # Unpackaged 'databases' dependency
+ tests/test_database.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p anyio
+}
diff --git a/dev-python/tempest/Manifest b/dev-python/tempest/Manifest
index 129afc4e51bf..5eb0d70a5cc3 100644
--- a/dev-python/tempest/Manifest
+++ b/dev-python/tempest/Manifest
@@ -1,5 +1,7 @@
DIST tempest-39.0.0.tar.gz 1156891 BLAKE2B 8f4d4026f3b304b713d97a511ba85363ed39dde22ef6c529b75ba35d01619eca925cc759d899f16b791784cd0c1d7acaa78e8361189dd5167de8300e26d5e74e SHA512 4e60b7fe90b7943cb9208cab72188f3f3668fdc4fd90b4667e5f578f979f66dbc6e9a2486c47fb7f0f608ac8197b726da1fd6b7ded169d804705dc4e58eed256
DIST tempest-40.0.0.tar.gz 1149624 BLAKE2B e75db763090738032699c35477a5bc5d877c44aed1ed4e9fe7b878af116dc6d53dd7b64cf58be55cd3448f5ebdf8e9a44e3f4deb215f535784a33abfc79fde9d SHA512 12227d4f20045f60e56db7bc1de3e117ddbc3d4b3e30aa26239795675023b23facf15646f1c048b75f43dd9c0ba5e7d475e8ad1c483b2d0e32ef9d8d50e62dfc
+DIST tempest-41.0.0.tar.gz 1151830 BLAKE2B 6c732647f49a07d1ae747a4f286779b21c1c64f046a8542cf3f067f79cc839d99fcc6eced01162f5e0415e803c8a2ee0a0e5e5ec92f1088736cff3b341874b9f SHA512 aa5065dbb7431b5cf5d93075083e74eb6c811c759f109ac9ceee7cc45240b84c091f84542a3455cf686f84e359a17f99154ec417ee7003bb01c7ef191f6dcc27
EBUILD tempest-39.0.0.ebuild 2158 BLAKE2B b13cc06b698d15ed4d50b66f8e9ab344e8c8668aaa32e04fba77d67410f39990207ed6def518e4bcd8cfb2a7981570b2ae6daecabd42bb92d479f9b0b14fecb1 SHA512 d9ddbfdb31ccafa3242b4a8c2fec0873914376c829de43260831d68cfb2aeadde334126a4da480f5e9ce414e312554a1dc761d7cb9b0f02849a14f1c77e0290c
EBUILD tempest-40.0.0.ebuild 2213 BLAKE2B 6460196a64be7463d7d0286f72cc706a7949d13ccdea684ed2b8147369ee39d905fde4c73402f5b159914fe4314b2979cd940e877579fb0072eb297dc098ffcd SHA512 309d30a6c9747c402d4c34f3d93e1253b67fef5f54bbe87ba12382f4b941008ff6014f151c48134418972d2d6d08dfa4293f20a73fbf4bc70c0a34a08496bca6
+EBUILD tempest-41.0.0.ebuild 2213 BLAKE2B 6460196a64be7463d7d0286f72cc706a7949d13ccdea684ed2b8147369ee39d905fde4c73402f5b159914fe4314b2979cd940e877579fb0072eb297dc098ffcd SHA512 309d30a6c9747c402d4c34f3d93e1253b67fef5f54bbe87ba12382f4b941008ff6014f151c48134418972d2d6d08dfa4293f20a73fbf4bc70c0a34a08496bca6
MISC metadata.xml 442 BLAKE2B 30b474d10a59f53672390e029ffaf894cfe52862af42814ca09500372d4c94afc596177100b9ba69cfd12965e98809de363527d9db345c3b4cf499eaab0375f9 SHA512 d84466ecac31486c92a6c5f87089616b65a1f3cbe9447c3382021af57bec3964a80d4d4421783560528e80e70afb4f4ba604bf2a4e23ac7fcbd873ef3d789859
diff --git a/dev-python/tempest/tempest-41.0.0.ebuild b/dev-python/tempest/tempest-41.0.0.ebuild
new file mode 100644
index 000000000000..c8907a75cbcb
--- /dev/null
+++ b/dev-python/tempest/tempest-41.0.0.ebuild
@@ -0,0 +1,75 @@
+# 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 multiprocessing pypi
+
+DESCRIPTION="OpenStack Integration Testing"
+HOMEPAGE="
+ https://pypi.org/project/tempest/
+ https://docs.openstack.org/tempest/latest/
+ https://launchpad.net/tempest/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/paramiko-2.7.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.12[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.21.1[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/defusedxml-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/fasteners-0.16.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.5.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ dev-python/stestr[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ # Small subset of tests, which fail as result of not using specific
+ # testing environment.
+ rm -r tempest/tests/lib/services/volume/v3/ || die
+
+ # remove dep on hacking
+ rm tempest/tests/test_hacking.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_compile() {
+ distutils-r1_python_compile
+ mv "${BUILD_DIR}"/install/{usr/,}etc || die
+}
+
+python_test() {
+ local -x OS_LOG_CAPTURE=1 OS_STDOUT_CAPTURE=1 OS_STDERR_CAPTURE=1
+ local -x OS_TEST_TIMEOUT=300
+ stestr --test-path ./tempest/tests run --concurrency="$(makeopts_jobs)" ||
+ die "Tests failed for ${EPYTHON}"
+}