summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-07-04 17:57:09 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-07-04 17:57:09 +0000
commit76097f70fb62e280f3441f756117c72f9bd78741 (patch)
tree1fb603c1a2db0087e0c0a975fd7777bd2c49d04c /dev-python
parent5ff6a9f6ead3a6135991622c346c99ee92df0702 (diff)
downloadbaldeagleos-repo-76097f70fb62e280f3441f756117c72f9bd78741.tar.gz
baldeagleos-repo-76097f70fb62e280f3441f756117c72f9bd78741.tar.xz
baldeagleos-repo-76097f70fb62e280f3441f756117c72f9bd78741.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/asyncssh/Manifest1
-rw-r--r--dev-python/asyncssh/asyncssh-2.15.0.ebuild54
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.34.139.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.34.139.ebuild67
-rw-r--r--dev-python/certifi/Manifest2
-rw-r--r--dev-python/certifi/certifi-2024.07.04.ebuild (renamed from dev-python/certifi/certifi-2024.02.02.ebuild)0
-rw-r--r--dev-python/dep-logic/Manifest1
-rw-r--r--dev-python/dep-logic/dep-logic-0.3.5.ebuild25
-rw-r--r--dev-python/graph-tool/Manifest1
-rw-r--r--dev-python/graph-tool/graph-tool-2.71.ebuild88
-rw-r--r--dev-python/hcloud/Manifest1
-rw-r--r--dev-python/hcloud/hcloud-2.0.1.ebuild49
-rw-r--r--dev-python/libvirt-python/metadata.xml4
-rw-r--r--dev-python/lxml-html-clean/metadata.xml2
-rw-r--r--dev-python/matplotlib/Manifest1
-rw-r--r--dev-python/matplotlib/matplotlib-3.9.1.ebuild301
-rw-r--r--dev-python/openstacksdk/Manifest1
-rw-r--r--dev-python/openstacksdk/openstacksdk-3.2.0.ebuild91
-rw-r--r--dev-python/osc-lib/Manifest1
-rw-r--r--dev-python/osc-lib/osc-lib-3.1.0.ebuild51
-rw-r--r--dev-python/oslo-config/Manifest1
-rw-r--r--dev-python/oslo-config/oslo-config-9.5.0.ebuild58
-rw-r--r--dev-python/oslo-log/Manifest1
-rw-r--r--dev-python/oslo-log/files/oslo-log-6.1.0-py313.patch25
-rw-r--r--dev-python/oslo-log/oslo-log-6.1.0.ebuild57
-rw-r--r--dev-python/oslo-utils/Manifest1
-rw-r--r--dev-python/oslo-utils/oslo-utils-7.2.0.ebuild54
-rw-r--r--dev-python/pydantic-core/Manifest8
-rw-r--r--dev-python/pydantic-core/pydantic-core-2.20.1.ebuild140
-rw-r--r--dev-python/pydantic/Manifest1
-rw-r--r--dev-python/pydantic/pydantic-2.8.2.ebuild63
-rw-r--r--dev-python/pyproject-fmt-rust/Manifest1
-rw-r--r--dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.1.5.ebuild159
-rw-r--r--dev-python/pyproject-fmt/Manifest1
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-2.1.4.ebuild36
-rw-r--r--dev-python/python-ironicclient/Manifest1
-rw-r--r--dev-python/python-ironicclient/python-ironicclient-5.7.0.ebuild49
-rw-r--r--dev-python/python-neutronclient/Manifest1
-rw-r--r--dev-python/python-neutronclient/python-neutronclient-11.3.1.ebuild78
-rw-r--r--dev-python/scikit-learn/Manifest1
-rw-r--r--dev-python/scikit-learn/scikit-learn-1.5.1.ebuild69
-rw-r--r--dev-python/sip/sip-6.8.5.ebuild2
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2024.7.2.ebuild47
-rw-r--r--dev-python/tox/Manifest1
-rw-r--r--dev-python/tox/tox-4.16.0.ebuild97
-rw-r--r--dev-python/types-docutils/Manifest1
-rw-r--r--dev-python/types-docutils/types-docutils-0.21.0.20240704.ebuild17
-rw-r--r--dev-python/types-gdb/Manifest2
-rw-r--r--dev-python/types-gdb/types-gdb-12.1.4.20240704.ebuild (renamed from dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild)0
-rw-r--r--dev-python/types-setuptools/Manifest1
-rw-r--r--dev-python/types-setuptools/types-setuptools-70.2.0.20240704.ebuild17
-rw-r--r--dev-python/unrardll/metadata.xml2
-rw-r--r--dev-python/urwid/Manifest1
-rw-r--r--dev-python/urwid/urwid-2.6.15.ebuild41
-rw-r--r--dev-python/uv/Manifest3
-rw-r--r--dev-python/uv/uv-0.2.21.ebuild108
-rw-r--r--dev-python/validators/Manifest1
-rw-r--r--dev-python/validators/validators-0.30.0.ebuild26
-rw-r--r--dev-python/ytmusicapi/Manifest1
-rw-r--r--dev-python/ytmusicapi/ytmusicapi-1.7.4.ebuild24
63 files changed, 1985 insertions, 9 deletions
diff --git a/dev-python/asyncssh/Manifest b/dev-python/asyncssh/Manifest
index b8b02af0e904..5286e46df645 100644
--- a/dev-python/asyncssh/Manifest
+++ b/dev-python/asyncssh/Manifest
@@ -1 +1,2 @@
DIST asyncssh-2.14.2.tar.gz 498190 BLAKE2B 66cc538322688d0782e203eb723c7c7a196fd5da725fe95df8b31e25e35e45b86bb01cb5c46f5516475614b9cf7b8076bc3994ec77daf552e030724b0734c2d1 SHA512 76952b8837832139274fbfc4ec4aa84841c66a4eb4c1bd09fd532727287574509fb2b94b684c14d6f76add80a1fe5c8236a3412ab6a71574c203706895b23f93
+DIST asyncssh-2.15.0.tar.gz 516935 BLAKE2B 0e67dc6c2d7814479241d81e06d6a5290a99802490c097769137673980b798122718a3af99c6d71a3fb08b37d4e3e0c4cfc2fb69523b2b76c88cdbf638fd42ee SHA512 51f43bfcf27dadd9e79d7b306b11f6dc196d2de65a60663aa6e59f1b1246a6467a6324209bfb0607a9d2902ef8dde51cd172f9e32e36168954c67b8fcd7e1dd6
diff --git a/dev-python/asyncssh/asyncssh-2.15.0.ebuild b/dev-python/asyncssh/asyncssh-2.15.0.ebuild
new file mode 100644
index 000000000000..537bb1818faf
--- /dev/null
+++ b/dev-python/asyncssh/asyncssh-2.15.0.ebuild
@@ -0,0 +1,54 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Asynchronous SSHv2 client and server library"
+HOMEPAGE="
+ https://github.com/ronf/asyncssh
+ https://pypi.org/project/asyncssh/
+"
+
+LICENSE="EPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ virtual/openssh
+ >=dev-python/cryptography-39.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/aiofiles[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+ >=dev-python/fido2-0.9.2[${PYTHON_USEDEP}]
+ >=dev-python/gssapi-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/libnacl-1.4.2[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-23.0.0[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+distutils_enable_sphinx docs
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p rerunfailures --reruns=5
+}
+
+pkg_postinst() {
+ optfeature "OpenSSH private key encryption support" ">=dev-python/bcrypt-3.1.3"
+ optfeature "key exchange and authentication with U2F/FIDO2 security keys support" ">=dev-python/fido2-0.9.2"
+ optfeature "GSSAPI key exchange and authentication support" ">=dev-python/gssapi-1.2.0"
+ optfeature "using asyncssh with dev-libs/libsodium" "dev-python/libnacl"
+ optfeature "X.509 certificate authentication support" ">=dev-python/pyopenssl-23.0.0"
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index a8d606a435fb..ae51df2b7c87 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -3,3 +3,4 @@ DIST boto3-1.34.131.gh.tar.gz 822851 BLAKE2B cc4b06ca1785e62314308efb7d9ffa6e10a
DIST boto3-1.34.136.gh.tar.gz 826543 BLAKE2B 307705ba777d155772a2dafad775e55d94e17a9e4c2986e48bd8a691c3bc4e433f212e1a59053222927bda42584b2d1d266bc2489f94fd3e4463416c56531d54 SHA512 f2307db517b393164028c17a8073c5baf7f7e3be36c988a90d455cad98a55b7a7e1a6e44584038141047237e81cb495bffaf70747de421ce316bb457e2d168e8
DIST boto3-1.34.137.gh.tar.gz 827294 BLAKE2B ba4f008114e02f40c5e4ac095241c7dac2b919e1dbe7ffaacc9ab40b3d2a97a12ace2b27359190b20cf2f2c1dcc66044188f15ed12177b002a54537a692b0203 SHA512 7303b32359080f360a95e0fb068ca1e7b83fe54a5f553f6681df3382bd110c70927138e435afc8eb8e93760c9bd685afa7355e661243e6b7f91cd8e8063d401c
DIST boto3-1.34.138.gh.tar.gz 827512 BLAKE2B d8022cb470f2f68bf16dd179fb348b3419a4fc7dd2095816916619dc314809db6a2385e86b83ff552609a4cb6285369d806debac20887cefa69b113cd0385552 SHA512 9e12dd97ffd1f15cdb527219184bef8dff012bd9b11214f566fd98a82b37e6ee9699b05de62eb48393ff551089d683143373cbef167ca7e35e64851894fb3fe1
+DIST boto3-1.34.139.gh.tar.gz 828069 BLAKE2B 71abb24a57f173a4136e8334fa2db9f2b5d92d2e154141da122575869e0b40bbe1f8ee893a8b8735ce8f6d2c7457334c5e08ead983a01516d591d594528c4cdb SHA512 bc3ca92551ffa9d2400341982b670b70ccbd539539fd86d6ec88091606504ad74247103ef9677d45023f4e2f9d737878c55313c28f08299d24b06701eb221ced
diff --git a/dev-python/boto3/boto3-1.34.139.ebuild b/dev-python/boto3/boto3-1.34.139.ebuild
new file mode 100644
index 000000000000..509842b2699d
--- /dev/null
+++ b/dev-python/boto3/boto3-1.34.139.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_{8,9,10,11,12} )
+
+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 49a34986834b..b1aa34985927 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -3,3 +3,4 @@ DIST botocore-1.34.131.gh.tar.gz 13129943 BLAKE2B 916360c6a9526edcfd338718f80556
DIST botocore-1.34.136.gh.tar.gz 13151618 BLAKE2B 800b800ff2481335f0defb79c10a4216c8bb107a3369e6a45a9c0a6d8f703209a9e44560ebf859f7fc616498c68e9b0de331478a8b5e2d3b36788bdedb597a0b SHA512 e9a31f6e8e241964fa34df65c8a9f8acaa1e33865eeb8257bf6da16982a3704b8ab66b6f424952ff100944471bb8f40cbdbcc26f72120da2d6033319948de81e
DIST botocore-1.34.137.gh.tar.gz 13153450 BLAKE2B 4049e5f7b12a4df94fa4a819f11732b86897ae838cc1fc9443f343037915e69134c0e3f335796976002ca63305dd12a8272252bed9370b6d64dc83186826467f SHA512 f3ba697813ec4a68978f27be12e44df02336210e47b5347f3868c4630d899eccf4cb0e0cc679122e4e5ae55ba002efc7067e6e13ea5a286707b958cae14b4186
DIST botocore-1.34.138.gh.tar.gz 13153609 BLAKE2B d2f16e1c49b51dbe35e21774bac766b88ad83cad18c6ee972de7f83086d1d00eb70826dbc0ffaff2b4bdb916fa22a849c1c0b8a4980206d9fb8c8288a047d803 SHA512 a43deaa3a5e95dbaa3a018907b8b44b822c399542f91291963e31708efbe06ca566f5f1290ba9c13359ebcac3566586d5b1c4ba391778ca11ed2d09ef1335162
+DIST botocore-1.34.139.gh.tar.gz 13155941 BLAKE2B 8c916972478f947f75cc9e864904da5f9304d8ae1e454ff2777d943ffc7fec6959c34ade893ce74d7b63cc15133317dab4b3610ec0ad8f7e73255d37411a2cf0 SHA512 6cd86c0bbebf9251060dd2b16962dbc514bb487c33fb13301a7d8e4e036d56f9c20a252e89be94209962ff83d253eba4e568babbf8c6b93987274050c48a6e3c
diff --git a/dev-python/botocore/botocore-1.34.139.ebuild b/dev-python/botocore/botocore-1.34.139.ebuild
new file mode 100644
index 000000000000..857224b496b7
--- /dev/null
+++ b/dev-python/botocore/botocore-1.34.139.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=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+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
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/certifi/Manifest b/dev-python/certifi/Manifest
index 9e0836ee26fc..52a68292c15f 100644
--- a/dev-python/certifi/Manifest
+++ b/dev-python/certifi/Manifest
@@ -1,2 +1,2 @@
-DIST certifi-2024.02.02.tar.gz 165458 BLAKE2B d1d616a6c7b878a6caf891b773b8c606a139ded8787b01701ae3e7c0e46c8fb8e78944f356a5b7c0ae17bacc5a5e358a4c2eeaafcf4fc5795edbeb95bf9761dd SHA512 e62f1741fd9bb10a976f5e864a4946f00e1df1b92082e66fe146ee3275036c365d1e98ed023614a1da07ab2a7a58bc333c77c71586ea50a992eb7d5b54a515e5
DIST certifi-2024.06.02.tar.gz 166171 BLAKE2B 8636cc0398241221ef6bdf1e9ccb8ee7839863a9a39f63f53a20edc295f0bd43104aa5845a6647b5e0f5481443db056bce555544fe19fc9aefd3aa1303ed27b5 SHA512 61f2b8ae1b15e8c926329e336e3e542ba1104672bfe653ed06a9e3cfc58485978aa2d0979aea4e041772c0ad213d9e5bb952248045071a54418269eb381b6e0f
+DIST certifi-2024.07.04.tar.gz 164533 BLAKE2B a1323f1d69f05caebf492620c5cb27c3d272a92a061aacdc6a1fb894b301218eaf96f1768a8894b9b57bef0a99c3205a825e312db6fb8d2c0f6a217257a1afbe SHA512 38e966f291b358a80ba862e3988da2fc1ab920f005abdfb0053b81b44aee827a657a4569b0c8fd76fd55235589eca21c01d7d36c4229ed3d0a7afdd51f3b92f8
diff --git a/dev-python/certifi/certifi-2024.02.02.ebuild b/dev-python/certifi/certifi-2024.07.04.ebuild
index 09bae4087730..09bae4087730 100644
--- a/dev-python/certifi/certifi-2024.02.02.ebuild
+++ b/dev-python/certifi/certifi-2024.07.04.ebuild
diff --git a/dev-python/dep-logic/Manifest b/dev-python/dep-logic/Manifest
index 8853a46bace2..68aa62f6b070 100644
--- a/dev-python/dep-logic/Manifest
+++ b/dev-python/dep-logic/Manifest
@@ -1,2 +1,3 @@
DIST dep_logic-0.3.1.tar.gz 33762 BLAKE2B 1d03419456ce20b4a183644d8515e7221df2e90b3e3713d5ddc7700e6fec76b1903095892ac9f77658980155419e4bc2b1726d219dcbc515199fcfd94b3a3c62 SHA512 3195b3c65517a64cdac310b2c4dff5378138a2cff05fdb146dc192c9a2405a448483bff969d35130ba0af0953d80036ce676e1c9d0242ce372c543baa45db03d
DIST dep_logic-0.3.3.tar.gz 33770 BLAKE2B d8151c6778167ca7cf60ec71fd9371d3328cd146dd78fe89d568e4dd9a211b4f9f04a9327a716931a8b7e90a9b2c8b29a6f95459eea14636eccdb19219c9db35 SHA512 5f68b78b948c7888e79dad106d254616a2965005aea2d940caacc442a9c629b1928f93a2a7fdc524089b359f374a703339c16d54eb9178963cdf6390a663e8ae
+DIST dep_logic-0.3.5.tar.gz 33880 BLAKE2B 0aa7b2ef7408e0c3a0a81d2cd1fc11037e633a521aff5b673e2c9c4efc535ff59d0991daa9ee50b859302a25cfcdaf94406950358a150cd173d627e87b497a51 SHA512 7ceb90c4cf8d98a192dca94206c363e6bc5d68fa596f18c64374f1512afbfa33339b739343ed7663bba6a94d8c6a573e62bf46fecccb01d0d87827a810d0f4d9
diff --git a/dev-python/dep-logic/dep-logic-0.3.5.ebuild b/dev-python/dep-logic/dep-logic-0.3.5.ebuild
new file mode 100644
index 000000000000..0be9fa5f44dd
--- /dev/null
+++ b/dev-python/dep-logic/dep-logic-0.3.5.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python dependency specifications supporting logical operations"
+HOMEPAGE="
+ https://github.com/pdm-project/dep-logic/
+ https://pypi.org/project/dep-logic/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ >=dev-python/packaging-22[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/graph-tool/Manifest b/dev-python/graph-tool/Manifest
index 47a341ab504d..83b12a3ed927 100644
--- a/dev-python/graph-tool/Manifest
+++ b/dev-python/graph-tool/Manifest
@@ -1 +1,2 @@
DIST graph-tool-2.58.tar.xz 14949712 BLAKE2B f7edfc112e737aad09317b2a754eefa8fad0135d580766b24ef5eb08d9e748a65a7372d95b9b00ffd891a2fe033f7ca29348b700e145361c48c95fe31a9f1500 SHA512 bfb604073c71b1f4a605008e5bfa6414370bc5c14e1b501e1821c1d363370e2f1f7c6dcedabf67723286cac07def1442c24577308458a75c4fc70aee69bf22ee
+DIST graph-tool-2.71.tar.xz 14997876 BLAKE2B c23b4729065ebba43ba3501bca63980a40354e2ff6727ea3b663c60521cdf571ab794eb83f9cfb56909d92e3be90ac5d94c7dcd7f6639cb2c2fb9ee5c675697f SHA512 caedba222e499b81d93d51097c526a8a64dd1f3b91141012c67ffe40532f6168294e430887484522f75709828d280f95cc75bc400a886e71bf73d64efd9b7833
diff --git a/dev-python/graph-tool/graph-tool-2.71.ebuild b/dev-python/graph-tool/graph-tool-2.71.ebuild
new file mode 100644
index 000000000000..abc555780416
--- /dev/null
+++ b/dev-python/graph-tool/graph-tool-2.71.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit check-reqs python-r1 toolchain-funcs
+
+if [[ ${PV} == *9999 ]]; then
+ EGIT_REPO_URI="https://git.skewed.de/count0/graph-tool.git"
+ inherit autotools git-r3
+else
+ SRC_URI="https://downloads.skewed.de/${PN}/${P}.tar.xz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="An efficient python module for manipulation and statistical analysis of graphs"
+HOMEPAGE="https://graph-tool.skewed.de/"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="+cairo openmp"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-libs/boost:=[context,python,${PYTHON_USEDEP}]
+ dev-libs/expat
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ sci-mathematics/cgal:=
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ cairo? (
+ dev-cpp/cairomm:0
+ dev-python/pycairo[${PYTHON_USEDEP}]
+ x11-libs/cairo[X]
+ )"
+DEPEND="${RDEPEND}
+ dev-cpp/sparsehash"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/0001-Fix-compilation-with-boost-1.83-and-boost-1.76.patch # backport
+)
+
+# bug 453544
+CHECKREQS_DISK_BUILD="6G"
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+ check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ default
+ [[ ${PV} == *9999 ]] && eautoreconf
+ python_copy_sources
+}
+
+src_configure() {
+ my_configure() {
+ econf \
+ --disable-static \
+ $(use_enable openmp) \
+ $(use_enable cairo) \
+ --with-boost-python="boost_${EPYTHON/./}"
+ }
+ python_foreach_impl run_in_build_dir my_configure
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir emake
+}
+
+src_install() {
+ my_python_install() {
+ default
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir my_python_install
+
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-python/hcloud/Manifest b/dev-python/hcloud/Manifest
index 3a1b5910da43..c2634f644083 100644
--- a/dev-python/hcloud/Manifest
+++ b/dev-python/hcloud/Manifest
@@ -1 +1,2 @@
DIST hcloud-python-1.35.0.gh.tar.gz 114672 BLAKE2B 1742d571fccc369245d9bf9c8f85da1c37061a13368dfe928b666e4f514ed5bf9f87f61bc4e5859ec7a759f5dfa6364c60ff851572071b46b2df21c0fe6f02a6 SHA512 48cee279b4f0025c61662304e67b8cee6a718c071f801daac440054439dedb21ab656c244f486860b056edd8bdc9330d3134ec936085297f24442a93cbbcc9e4
+DIST hcloud-python-2.0.1.gh.tar.gz 117015 BLAKE2B e795ea4a114c8e2c71554f84646b574e94030c6e724456786a437cc58d3dd96118c274111bc3787d8e7074b81f0c2493b3c6c5b824f6a8acb6d3a70b4dd75d29 SHA512 2507687324579240d2ff89287a6bd8e90dd33bb1290514c925e7e786330032187fdf133af196a6c0529ecb7018003356e299fc00cbf5bf2819d1f8e229702a04
diff --git a/dev-python/hcloud/hcloud-2.0.1.ebuild b/dev-python/hcloud/hcloud-2.0.1.ebuild
new file mode 100644
index 000000000000..31e0f64be85a
--- /dev/null
+++ b/dev-python/hcloud/hcloud-2.0.1.ebuild
@@ -0,0 +1,49 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=hcloud-python-${PV}
+DESCRIPTION="Official Hetzner Cloud python library"
+HOMEPAGE="
+ https://github.com/hetznercloud/hcloud-python/
+ https://pypi.org/project/hcloud/
+"
+# sdist is missing doc assets as of 1.19.0
+# https://github.com/hetznercloud/hcloud-python/pull/183
+SRC_URI="
+ https://github.com/hetznercloud/hcloud-python/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.7.5[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.20[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs \
+ dev-python/myst-parser \
+ dev-python/sphinx-rtd-theme
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # Integration tests need docker:
+ # https://github.com/hetznercloud/hcloud-python/blob/master/.travis.yml#L16
+ tests/integration
+)
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/libvirt-python/metadata.xml b/dev-python/libvirt-python/metadata.xml
index 588f5ba1e616..a18f7729c1f3 100644
--- a/dev-python/libvirt-python/metadata.xml
+++ b/dev-python/libvirt-python/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>tamiko@gentoo.org</email>
- <name>Matthias Maier</name>
- </maintainer>
<maintainer type="project">
<email>virtualization@gentoo.org</email>
<name>Gentoo Virtualization Project</name>
diff --git a/dev-python/lxml-html-clean/metadata.xml b/dev-python/lxml-html-clean/metadata.xml
index d16225b9afdf..1ef1bfc4901c 100644
--- a/dev-python/lxml-html-clean/metadata.xml
+++ b/dev-python/lxml-html-clean/metadata.xml
@@ -2,7 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>eschwartz93@gmail.com</email>
+ <email>eschwartz@gentoo.org</email>
<name>Eli Schwartz</name>
</maintainer>
<maintainer type="project">
diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest
index 6a4bff65997b..495752279678 100644
--- a/dev-python/matplotlib/Manifest
+++ b/dev-python/matplotlib/Manifest
@@ -1,3 +1,4 @@
DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca SHA512 ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b
DIST matplotlib-3.8.4.tar.gz 35934425 BLAKE2B e449f1d71a3152a9cf34cf13c70489d2664c8734c8e8ae0ed5dec2ed5111e0210d679f7e6a1e0b707499d9968b945a7f91573186b82c6d036238aadb5c9da006 SHA512 d4c6a5b3484927dbae1b1203e9984b67d08c958c4a5136abaa805f1eb221146fb1211e5f20456e281d41fc09c94917a796ffacfdb185c58eeeb6d19e60c78b1a
DIST matplotlib-3.9.0.tar.gz 36069890 BLAKE2B 02ddb25901b5a93a8daf6f26c98b92d5e35abe2e98783b039928338abb1d628adbf3fd4786c08cb1610bf405cb558ca31fc12dbde77ec5f2a633143c7ea659a1 SHA512 135ee2f97c26cb60479cc10bf8a833384c393993d8a905ab869f4c73b91a50ffa596f84ce349af7f1a0b08a21e1906394cf6a702bb567a9c3999d40f54974326
+DIST matplotlib-3.9.1.tar.gz 36084124 BLAKE2B b7cc9e219664849411cc3133afbdb676f956c943f92d447ba5cca0467da56d1575796fe1046e7503e6d7c4dfdfad6e5181404f331ed7ac1397c8c61f4a30bd23 SHA512 a1d48c42a5f4f04b57e34d25df842917e6380b8d6b6d1018c9b630cbbea4619b1d75729a218a6f52b63d4a61c2204bb26ad8f741566f84e41ca73190e419f672
diff --git a/dev-python/matplotlib/matplotlib-3.9.1.ebuild b/dev-python/matplotlib/matplotlib-3.9.1.ebuild
new file mode 100644
index 000000000000..63342a49080b
--- /dev/null
+++ b/dev-python/matplotlib/matplotlib-3.9.1.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE='tk?,threads(+)'
+
+inherit distutils-r1 pypi virtualx
+
+FT_PV=2.6.1
+DESCRIPTION="Pure python plotting library with matlab like syntax"
+HOMEPAGE="
+ https://matplotlib.org/
+ https://github.com/matplotlib/matplotlib/
+ https://pypi.org/project/matplotlib/
+"
+SRC_URI+="
+ test? (
+ https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
+ )
+"
+
+# Main license: matplotlib
+# Some modules: BSD
+# matplotlib/backends/qt4_editor: MIT
+# Fonts: BitstreamVera, OFL-1.1
+LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="cairo excel gtk3 latex qt5 tk webagg wxwidgets"
+
+DEPEND="
+ media-libs/freetype:2
+ >=media-libs/qhull-2013:=
+ >=dev-python/numpy-1.25:=[${PYTHON_USEDEP}]
+"
+# internal copy of pycxx highly patched
+# dev-python/pycxx
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
+ >=dev-python/kiwisolver-1.3.1[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ >=dev-python/pillow-8[jpeg,webp,${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
+ media-fonts/dejavu
+ media-fonts/stix-fonts
+ media-libs/libpng:0
+ virtual/imagemagick-tools[jpeg,tiff]
+ cairo? (
+ dev-python/cairocffi[${PYTHON_USEDEP}]
+ )
+ excel? (
+ dev-python/xlwt[${PYTHON_USEDEP}]
+ )
+ gtk3? (
+ >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ )
+ latex? (
+ virtual/latex-base
+ app-text/dvipng
+ app-text/ghostscript-gpl
+ app-text/poppler[utils]
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ dev-texlive/texlive-xetex
+ )
+ qt5? (
+ $(python_gen_cond_dep '
+ dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
+ ' 'python3*')
+ )
+ webagg? (
+ >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
+ )
+ wxwidgets? (
+ $(python_gen_cond_dep '
+ dev-python/wxpython:*[${PYTHON_USEDEP}]
+ ' python3_{10..12})
+ )
+"
+
+BDEPEND="
+ ${RDEPEND}
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ test? (
+ $(python_gen_impl_dep 'tk')
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
+ !hppa? ( !s390? (
+ || (
+ media-video/ffmpeg[openh264]
+ media-video/ffmpeg[x264]
+ )
+ ) )
+ gtk3? (
+ >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
+ x11-libs/gtk+:3[introspection]
+ )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_unpack() {
+ # do not unpack freetype
+ unpack "${P}.tar.gz"
+}
+
+python_prepare_all() {
+ # Affects installed _version.py, bug #854600
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+ local PATCHES=(
+ "${FILESDIR}"/matplotlib-3.9.0-test.patch
+ )
+
+ # increase lock timeout to 30 s
+ sed -i -e 's:retries = 50:retries = 300:' lib/matplotlib/cbook.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_configure() {
+ unset DISPLAY # bug #278524
+ export XDG_RUNTIME_DIR="${T}/runtime-dir"
+ mkdir "${XDG_RUNTIME_DIR}" || die
+ chmod 0700 "${XDG_RUNTIME_DIR}" || die
+
+ DISTUTILS_ARGS=(
+ -Dsystem-freetype=true
+ -Dsystem-qhull=true
+ -Dmacosx=false
+ )
+}
+
+src_test() {
+ mkdir subprojects/packagecache || die
+ cp "${DISTDIR}/freetype-${FT_PV}.tar.gz" subprojects/packagecache/ || die
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # broken by -Wdefault
+ "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
+ "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
+ tests/test_testing.py::test_warn_to_fail
+ tests/test_legend.py::test_legend_nolabels_warning
+ # TODO?
+ tests/test_backend_qt.py::test_fig_sigint_override
+ tests/test_backend_qt.py::test_ipython
+ tests/test_backend_nbagg.py::test_ipynb
+ # leak tests are fragile
+ tests/test_backends_interactive.py::test_figure_leak_20490
+ # major "images not close", new texlive perhaps
+ tests/test_contour.py::test_all_algorithms
+ # "no warnings"
+ tests/test_backend_pdf.py::test_invalid_metadata
+ tests/test_figure.py::test_too_many_figures
+ )
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # TODO: warning isn't passed through
+ tests/test_image.py::test_large_image
+ # TODO
+ tests/test_pickle.py::test_complete
+ tests/test_pickle.py::test_no_pyplot
+ tests/test_pickle.py::test_pickle_load_from_subprocess
+ tests/test_pickle.py::test_simple
+ tests/test_texmanager.py::test_openin_any_paranoid
+ tests/test_widgets.py::test_check_buttons
+ tests/test_widgets.py::test_check_buttons_lines
+ tests/test_widgets.py::test_check_radio_buttons_image
+ tests/test_widgets.py::test_radio_buttons
+ )
+ if has_version "<dev-python/pypy3_10-exe-7.3.13_p2" ||
+ has_version "<dev-python/pypy3_10-exe-bin-7.3.13_p2"
+ then
+ EPYTEST_DESELECT+=(
+ # TypeError is raised when exception is raised in a starred
+ # expression referencing a generator that uses "yield from"
+ # and raises -- non-critical, since some exception is raised
+ # after all
+ # https://foss.heptapod.net/pypy/pypy/-/issues/4032
+ tests/test_axes.py::test_bad_plot_args
+ tests/test_axes.py::test_plot_errors
+ tests/test_axes.py::test_plot_format_errors
+ )
+ fi
+ ;;
+ python3.11)
+ EPYTEST_DESELECT+=(
+ # https://github.com/matplotlib/matplotlib/issues/23384
+ "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtagg', 'QT_API': 'PyQt5'}]"
+ "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtcairo', 'QT_API': 'PyQt5'}]"
+ )
+ ;;
+ python3.12)
+ EPYTEST_DESELECT+=(
+ tests/test_constrainedlayout.py::test_compressed1
+ )
+ ;;
+ esac
+
+ case ${ABI} in
+ hppa)
+ EPYTEST_DESELECT+=(
+ 'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[frac without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[frac with empty parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[binom without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[binom with empty parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[sqrt without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[sqrt with invalid value]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty parameter]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[left with invalid delimiter]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[right with invalid delimiter]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with sizing]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without sizing]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[dfrac without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[dfrac with empty parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
+ 'tests/test_mathtext.py::test_mathtext_exceptions[super on sub without braces]'
+ 'tests/test_quiver.py::test_barbs[png]'
+ 'tests/test_quiver.py::test_barbs_pivot[png]'
+ 'tests/test_quiver.py::test_barbs_flip[png]'
+ 'tests/test_text.py::test_parse_math'
+ 'tests/test_text.py::test_parse_math_rcparams'
+ )
+ ;&
+ alpha|arm|m68k|o32|ppc|s390|sh|sparc|x86)
+ EPYTEST_DESELECT+=(
+ # too large for 32-bit platforms
+ 'tests/test_axes.py::test_psd_csd[png]'
+ )
+ ;;
+ *)
+ ;;
+ esac
+
+ # we need to rebuild mpl against bundled freetype, otherwise
+ # over 1000 tests will fail because of mismatched font rendering
+ local DISTUTILS_ARGS=(
+ "${DISTUTILS_ARGS[@]}"
+ -Dsystem-freetype=false
+ )
+ distutils_pep517_install "${BUILD_DIR}"/test
+ cp -r "${BUILD_DIR}"/{install,test}"${EPREFIX}/usr/bin" || die
+ local -x PATH=${BUILD_DIR}/test${EPREFIX}/usr/bin:${PATH}
+
+ pushd lib >/dev/null || die
+ local path
+ local sitedir=${BUILD_DIR}/test$(python_get_sitedir)
+ # sigh, upstream doesn't install these
+ while IFS= read -d '' path; do
+ cp -r "${path}" "${sitedir}/${path}" || die
+ done < <(
+ find \( \
+ -name baseline_images -o \
+ -name '*.ipynb' -o \
+ -name '*.pfb' -o \
+ -name '*.ttf' -o \
+ -name tinypages \
+ \) -print0
+ )
+ popd >/dev/null || die
+
+ # speed tests up
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # pretend we're on CI to increase timeouts
+ local -x CI=1
+ nonfatal epytest --pyargs matplotlib -m "not network" \
+ -p rerunfailures --reruns=3 \
+ -o tmp_path_retention_policy=all || die
+}
diff --git a/dev-python/openstacksdk/Manifest b/dev-python/openstacksdk/Manifest
index 975418fc6abe..941c29fefbab 100644
--- a/dev-python/openstacksdk/Manifest
+++ b/dev-python/openstacksdk/Manifest
@@ -1 +1,2 @@
DIST openstacksdk-3.1.0.tar.gz 1215965 BLAKE2B 6bf5c3f85dcc2a027af10b675f7a3c7f7cf82bccc20558c0e094def02ff07fca4952ed71240bdf29600c3ef077575c49dce0dccb1683539bef756897813f4d1a SHA512 97ef0610115e1f1534900a6003d699028c6b331af0ef95fadb27babf0bf1467a304a3cc935f07270bf597053e2536e74de79333f67d116cf0b18583a3c8db878
+DIST openstacksdk-3.2.0.tar.gz 1228138 BLAKE2B f03f90898beb4650f1ba3b13192f4d85dd630ad680c0a5988e9d284e0c5574e6a66085c93b291338df810bc2e31dbddd972557e159ac293be77298ffcac9ab1c SHA512 8cfc9054fe2749024d33556111c60af6b0225abce800fdb7fe1fbf81b0b7e9e183a191dd62eb12ba768b5815d76c1e0b335c0b5a3eac63efe005330794988537
diff --git a/dev-python/openstacksdk/openstacksdk-3.2.0.ebuild b/dev-python/openstacksdk/openstacksdk-3.2.0.ebuild
new file mode 100644
index 000000000000..7b29b390d71d
--- /dev/null
+++ b/dev-python/openstacksdk/openstacksdk-3.2.0.ebuild
@@ -0,0 +1,91 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A collection of libraries for building applications to work with OpenStack"
+HOMEPAGE="
+ https://opendev.org/openstack/openstacksdk/
+ https://github.com/openstack/openstacksdk/
+ https://pypi.org/project/openstacksdk/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-2.7[${PYTHON_USEDEP}]
+ >=dev-python/decorator-4.4.1[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.5[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonpatch-1.21[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.18.0[${PYTHON_USEDEP}]
+ >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+ >=dev-python/os-service-types-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
+ >=dev-python/requestsexceptions-1.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-2.2.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-6.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/prometheus-client-0.4.2[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/statsd-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Internet?
+ sed -e 's:test_create_dynamic_large_object:_&:' \
+ -i openstack/tests/unit/cloud/test_object.py || die
+
+ # TODO
+ sed -e 's:test_generate_form:_&:' \
+ -e 's:test_create_static_large_object:_&:' \
+ -e 's:test_object_segment_retries:_&:' \
+ -e 's:test_object_segment_retry_failure:_&:' \
+ -e 's:test_slo_manifest_retry:_&:' \
+ -i openstack/tests/unit/cloud/test_object.py || die
+ sed -e 's:test_servers:_&:' \
+ -i openstack/tests/unit/test_stats.py || die
+
+ # unhappy about paths due to test runner
+ sed -e 's:test_method_not_supported:_&:' \
+ -i openstack/tests/unit/test_exceptions.py || die
+ sed -e 's:test_repr:_&:' \
+ -i openstack/tests/unit/test_resource.py || die
+
+ # requires hacking
+ rm openstack/tests/unit/test_hacking.py || die
+
+ # fragile warning-based tests
+ sed -e 's:test_unsupported_version_override:_&:' \
+ -i openstack/tests/unit/test_missing_version.py || die
+ sed -e 's:test_create_unknown_proxy:_&:' \
+ -i openstack/tests/unit/test_connection.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b openstack/tests/unit
+}
diff --git a/dev-python/osc-lib/Manifest b/dev-python/osc-lib/Manifest
index 9256761c213e..45c035b15e40 100644
--- a/dev-python/osc-lib/Manifest
+++ b/dev-python/osc-lib/Manifest
@@ -1 +1,2 @@
DIST osc-lib-3.0.1.tar.gz 99513 BLAKE2B 8ecf2b67d5214c2f47dec6e4f2f7bb90c95e19b4c9e81fe3d33716b424ffd2419bf400a6bc3842e1744ae484653d4fcefa10ab6af53a3aafbab1e3ac707bdf04 SHA512 7b846289dd02723360cfb93d7ee5f53f3188a57af5bf7103514d22d9b3b044654d7ef05ecdfff74eb3a354d3ce8c75941632dd42af060f55f17ab0cae7aedeb1
+DIST osc-lib-3.1.0.tar.gz 99632 BLAKE2B b0cbb070ae4e68d24080bea1aad7522c4ee37195f361ad1bf588e2ad7942e7a73f65dca69da8b9b0a9aaf74f503a16b26428c40b279f5cf41c7c8ef67872bbad SHA512 51067ea92e070f478d7eaa3f3678920aa859850a3c2f9e96c8d97dd7d67dc5c26cc9c53070f7d04d5a591f181be781c9d89d78614cff57204c5a233e6f8d4ad5
diff --git a/dev-python/osc-lib/osc-lib-3.1.0.ebuild b/dev-python/osc-lib/osc-lib-3.1.0.ebuild
new file mode 100644
index 000000000000..ec733b87aa09
--- /dev/null
+++ b/dev-python/osc-lib/osc-lib-3.1.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A package of common support modules for writing OSC plugins"
+HOMEPAGE="
+ https://opendev.org/openstack/osc-lib/
+ https://github.com/openstack/osc-lib/
+ https://pypi.org/project/osc-lib/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/cliff-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.14.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.15.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/statsd-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # need to skip all tests under TestTagHelps class
+ # checks exact help message, based on another unittest runner
+ sed -e '179,$s/test_add_tag_/_&/' -i osc_lib/tests/utils/test_tags.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/oslo-config/Manifest b/dev-python/oslo-config/Manifest
index 4bf4788b8cae..8416938cc0eb 100644
--- a/dev-python/oslo-config/Manifest
+++ b/dev-python/oslo-config/Manifest
@@ -1 +1,2 @@
DIST oslo.config-9.4.0.tar.gz 161322 BLAKE2B 3edd3be09ebe777ebcb4cd79171bae764046f6ceb0f0c9ca8f88388f1a0bcd23d2bb4e4130ab81a7f3cf063ce0ee668ffbcd8c4bf9f633213e97dcd12e2575dd SHA512 d404876c34c82963af8b992091fd1186855b3ced9a6a574ca4fc152a5b50bfc1945aca04e163770d8bec948cb57904a83eae9e3d7c4c3b852c90987f73e66ba9
+DIST oslo.config-9.5.0.tar.gz 161655 BLAKE2B 7844729658ddd13ff89b4c14983cfeeb3f6352f99a190058bd924592d9183459ea2da5caead7a77ed6c4a4e395aac2dd53f56847d81ce911ce76a04fa69f5b7d SHA512 517bb9fe416451eb791087216facd8643d77affb738aa2623817302dfc9dbd242d1aa2ba8c542fee437f91b2049129fa097fe37fec8c6a28e0092fc4d64c0c4f
diff --git a/dev-python/oslo-config/oslo-config-9.5.0.ebuild b/dev-python/oslo-config/oslo-config-9.5.0.ebuild
new file mode 100644
index 000000000000..06420a4478ee
--- /dev/null
+++ b/dev-python/oslo-config/oslo-config-9.5.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Oslo Configuration API"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.config/
+ https://github.com/openstack/oslo.config/
+ https://pypi.org/project/oslo.config/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/pbr-1.3[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/rfc3986-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.18.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-1.3[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # broken by some dep upgrade
+ sed -i -e '/DeprecationWarningTestsNoOsloLog/,$d' \
+ oslo_config/tests/test_cfg.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x COLUMNS=80
+ eunittest -b
+}
diff --git a/dev-python/oslo-log/Manifest b/dev-python/oslo-log/Manifest
index 4e705e3dc829..4a495df5aecd 100644
--- a/dev-python/oslo-log/Manifest
+++ b/dev-python/oslo-log/Manifest
@@ -1 +1,2 @@
DIST oslo.log-6.0.0.tar.gz 95271 BLAKE2B 13967ea4eeb2ad227d5534027c3a424b0f142ea334a701537ea31341a2a5166fd9c7991206e589be4d3378371bc21331027010005f36d63a13c4d59cd362c308 SHA512 87ab8e5da0f57675095734d62f7d46908c55528f89d118de6c15c3e483a15e2f20cace46d9eb2766dd617d40cc45027faee89edd2c1ef881629237b8b63513f8
+DIST oslo.log-6.1.0.tar.gz 95741 BLAKE2B 9c5c073b19d5fa0d84f19967a67cc0164470cb5fdf596b73d7017f47b2154228e21ec03d71ac84c1e161ad0aee4013795de7ab405a808cc3ceb9f3b4a64a0474 SHA512 d7329d8fbc46aa5c2b463e40f7b284657dbac773f338a4d96016c7e04998800dfb6df5c1c240454e45786f285d6093f6ec0b66b3bda9eacce39b4c6c54cae306
diff --git a/dev-python/oslo-log/files/oslo-log-6.1.0-py313.patch b/dev-python/oslo-log/files/oslo-log-6.1.0-py313.patch
new file mode 100644
index 000000000000..916c6b132c2d
--- /dev/null
+++ b/dev-python/oslo-log/files/oslo-log-6.1.0-py313.patch
@@ -0,0 +1,25 @@
+From 1bd9d229824c16f521fb1d3ba306fe8cb2a5aada Mon Sep 17 00:00:00 2001
+From: Michał Górny <mgorny@gentoo.org>
+Date: Wed, 12 Jun 2024 11:22:48 +0200
+Subject: [PATCH] Fix test time mocking for Python 3.13
+
+Fix test_rfc5424_isotime_format_no_microseconds() to mock time.time_ns(),
+logging uses that function rather than tiem.time() in logging.
+
+Change-Id: I0cc429e2ea8ee7fef3b0a5662d584dac65d657ad
+Signed-off-by: Michał Górny <mgorny@gentoo.org>
+---
+
+diff --git a/oslo_log/tests/unit/test_log.py b/oslo_log/tests/unit/test_log.py
+index d17d20a..0580908 100644
+--- a/oslo_log/tests/unit/test_log.py
++++ b/oslo_log/tests/unit/test_log.py
+@@ -991,6 +991,8 @@
+ get_fake_datetime(
+ datetime.datetime(2015, 12, 16, 13, 54, 26)))
+ @mock.patch("time.time", new=mock.Mock(return_value=1450274066.000000))
++ @mock.patch("time.time_ns",
++ new=mock.Mock(return_value=1450274066000000000))
+ @mock.patch("dateutil.tz.tzlocal", new=mock.Mock(return_value=tz.tzutc()))
+ def test_rfc5424_isotime_format_no_microseconds(self):
+ self.config(logging_default_format_string="%(isotime)s %(message)s")
diff --git a/dev-python/oslo-log/oslo-log-6.1.0.ebuild b/dev-python/oslo-log/oslo-log-6.1.0.ebuild
new file mode 100644
index 000000000000..1b7406312cd6
--- /dev/null
+++ b/dev-python/oslo-log/oslo-log-6.1.0.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="OpenStack logging config library, configuration for all openstack projects"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.log/
+ https://github.com/openstack/oslo.log/
+ https://pypi.org/project/oslo.log/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-7.1.0-r1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.25.0[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.7.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/testtools-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+distutils_enable_sphinx doc/source \
+ dev-python/openstackdocstheme \
+ dev-python/oslo-config
+
+PATCHES=(
+ # https://review.opendev.org/c/openstack/oslo.log/+/921842
+ "${FILESDIR}/${P}-py313.patch"
+)
+
+src_test() {
+ # requires eventlet
+ rm oslo_log/tests/unit/test_pipe_mutex.py || die
+
+ distutils-r1_src_test
+}
diff --git a/dev-python/oslo-utils/Manifest b/dev-python/oslo-utils/Manifest
index e368b7f84e25..817e2795bf09 100644
--- a/dev-python/oslo-utils/Manifest
+++ b/dev-python/oslo-utils/Manifest
@@ -1 +1,2 @@
DIST oslo.utils-7.1.0.tar.gz 104775 BLAKE2B 6bdd137fd5ede65ea49faa872b8d93cec20ccc3b9564548384441e8e1b14526750a6d8e0263103a926bb52425c171a6e0d9dbcb0d373d1a9c8904774d03393b0 SHA512 7bd6e7e6cf097b239216d58ce8f9028eb0b2994115be15ac78d9b1bae4efb6f774fa72da4944ac79e9155d21a8e6dea3ac13b5445c8dd0f3452a6dd8143aabc4
+DIST oslo.utils-7.2.0.tar.gz 104768 BLAKE2B 0972bd65eb4619af96a8a15a48429abf20987449ab4e480adecd3260b1440d8911bc68464c98e8020113dfe6039e409b60be22f56de43a4aa80ba98953dea93e SHA512 3f8d7dd8e629b13c8491b4a3498ecce27937d904ca3de4df9a9e3c638fc1ce894ae29e0797c25de0886f2c9b471feabd4ff09380ba71bd6c28f0d543e489f654
diff --git a/dev-python/oslo-utils/oslo-utils-7.2.0.ebuild b/dev-python/oslo-utils/oslo-utils-7.2.0.ebuild
new file mode 100644
index 000000000000..7094b6782882
--- /dev/null
+++ b/dev-python/oslo-utils/oslo-utils-7.2.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Oslo Utility library"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.utils/
+ https://github.com/openstack/oslo.utils/
+ https://pypi.org/project/oslo.utils/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ <dev-python/netaddr-1[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.4[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
+ dev-python/tzdata[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pbr-2.2.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # require eventlet
+ rm oslo_utils/tests/test_eventletutils.py || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/pydantic-core/Manifest b/dev-python/pydantic-core/Manifest
index 0f8973b536bf..a914b0542b90 100644
--- a/dev-python/pydantic-core/Manifest
+++ b/dev-python/pydantic-core/Manifest
@@ -8,6 +8,7 @@ DIST base64-0.21.7.crate 82576 BLAKE2B 25cc8761c14220981ff4ed332058f6179948080cb
DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
DIST bitvec-1.0.1.crate 224375 BLAKE2B 9f109db6888cf73d69646911cc1c9e90535e54a7afc436d878bbc63ca20a30cc6e5b5b5cd42aa78c38df5a4012454769c126f9072f39d58bdd09e54887ba6d9f SHA512 83d643c5aca020ebbe9094b5aaba6a796e7c3c509228a4348444e57a06bc3a5dd042eed57a2254d91661e73bdab2bc0d1bd02be376906acc6b6d75b5354a8d8e
DIST cc-1.0.100.crate 78474 BLAKE2B acadea935c2a44b7a3de105b068ac73b6497ba41118ad7b0263f13f8c123a8e7df178fe7441bca76b6d76e263bfde5ee20c4f130521ae08de6a1f3fce395dc9d SHA512 7609e635a565afa41bb057d9f0bbb2e019069e314c738dd500e3a86678145786fbcef2654ed553e82387f8739d87597e7b3302c376d8766cecdaa67aaa9baccf
+DIST cc-1.0.101.crate 79446 BLAKE2B fbecc04723577abd209d16c34269b5ac2652fbd5385838190c744abf573912fa7a062e2fcf1dc76486c5b61677225a826a65dbd6eca58398ff60ddd1e47a3caf SHA512 6edaf3dcc2e58dffd7221a6b457057c83bdec03b6fad9cbd2d702af6820fd8354fdb3960cd78d8b38568ef408171354f0313f17a32f0caa64f97736c0840a148
DIST cc-1.0.79.crate 62624 BLAKE2B b3cbed3bd6fcac1c6ea258ec96cd107f859947a35dc89c3dc8f314741b0f668e61518f896ec32ce10c9a7eb20dd350bc177a71810d53ebea59fda062ed9d27db SHA512 cbf0a25f3a23fc540e9d638fabc23f761f1c240ebb4814e761e90437d71fc559cd155768ab9e78fc192220d8a605c66c3af342ed736b719181656170b98d7bf5
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
DIST enum_dispatch-0.3.13.crate 29876 BLAKE2B 8fa66a72b1f35e174abcc8266e8a36e835923a1b31aa2fbbbbefe3bcf1287bb01b456597915c0a36a9ab7e6a6cd0ce7ebae38c09028ceb9109b7d18f26f023df SHA512 9ff73db5852d8c515f8f3beae0e62ac3845b42fb39a2ecdcda50e44535e9183790406652024e3f968ecbf4413488a02344831c45498294ba97c345b31e1d0782
@@ -41,6 +42,7 @@ DIST memoffset-0.9.0.crate 9033 BLAKE2B 19090c1af8b8cf54a2cf7593748aff4d3dc685ec
DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
DIST num-bigint-0.4.4.crate 99369 BLAKE2B 09a44754e3a3d4f949b3714d96ddd7f3915164d611036675e3df421d6c0863e368eb0180978a4ec27fbfff529b4999d2593e411903516670c24c08fbed6a79de SHA512 0dcef3344a933509fdfe87d6adb0bb1bf67af3c692ccaeec5663a8f18ad0a251199ef9c7a24c25b95d1b255b413947e70f0a205669d549b13e54b6f4864ab3b5
DIST num-bigint-0.4.5.crate 102281 BLAKE2B a25880f907caeb948d0a8619180be7e1e66d0644819a842fd1413a1ecc8d7cd873b4a55a684e8a98f6bc1b74612e20d3d01389c6753389cd9f4cf7f754125fdd SHA512 0d3b1da7f37a441cae0bc276b5b9b8aaad2f5a7ddc3a1c9b6c6e09be70147f7430604c74c57a79dce12d32c242393c8031ec7bbe9b1cc6fb6e496d6fd151474e
+DIST num-bigint-0.4.6.crate 102801 BLAKE2B 0460e7dfdbd44b6c68fc8ead6bff4353e549127158dab8bb5d217ee33104fe9ad5f58b63a01d56fffa8d7c4df1a87dcf5b536e436a0ef98dc4418a4690c4cc15 SHA512 19d14a7755de2b559026547d9e3e1775e636781bdfdd418f2e1d962c51411a0973a46d84d0356e30c0f708a7c7b2097926611960043f71391919cab1aeb6aa04
DIST num-integer-0.1.45.crate 22529 BLAKE2B 4da3e801f71ba8f92c692497e200bfc8d32183c94eaad91260683b09f4697c03175fec7cff5a9ff3782d5db5d514d74f22f7a61a102c0f0d2e67a7a4b4f29222 SHA512 731bdc09c3af7f9d8b171041f2957aa60facef93b06886000d8ba60d410aabbbee358d700bf31b2588b2e077464f290f24a0b712df7bb7f12972675b6c9bd735
DIST num-integer-0.1.46.crate 22331 BLAKE2B d88c9f84e5d803a3aa8f44dfc1bd6d9b5e336e7cbf47231cb3a7de30dfe263c41c62c586d31f0029459c8c240475cd329b3fce79f355be7643bdccf8d56dcbba SHA512 e27986d91f6c6dc3d5a0900defe28ab5f47905cde3f84d0914b7acee076dca8fec6fdb7b631ac94d3a31eb01ecbc5854e51afc3187cd1abfa21e1bfafdc700ae
DIST num-traits-0.2.16.crate 50130 BLAKE2B 1101d28cb4dce477657684a068792b94c7008a965e655edbabfeff51cbe6f008450dc6d7e4fc5dc4fe9c3ee8623ed77a7bde83ce2f68e75d618295fe6cebe0a8 SHA512 2ef65e2f6275b1000f611cc4d019b2f4846a8964b54d9b96462da10e3ac9edbf3d1de82e40094c76f7f5205740361b0eb0ced414bcddbaba5955144f728c6f94
@@ -56,6 +58,7 @@ DIST proc-macro2-1.0.86.crate 48958 BLAKE2B 4b89e07f23af8328dbb34fe2b3f1b202f1e6
DIST pydantic_core-2.18.4.tar.gz 385098 BLAKE2B 6bea502397c327f38a000e9ea3b59b7d7f9fde5336562a081c6cdf88d92fe5e420eecec696ee432f1c6c5ec5dad8173f250897c4ae681a367ad28617724843f0 SHA512 01bdf79a79468e2a6a66f41830b98dc0adfb6d87b221e57e1da5a27b4068dea906aa987b9a7eca3bdc107e97e6bfa9ea164c527bbe2ceb683419ef147747b786
DIST pydantic_core-2.19.0.tar.gz 385827 BLAKE2B 353c01dcef56709259e679d10d6b2397e5f90d4c734bbd31bfb6bddfd6011a2f74df4bcabb2a1a3f6a7ba9d0b54d693260d445d8ab6795e28185f7d66c823567 SHA512 779e31900ed80c922c7e168f1906795d5073f5aae86abd74af8cf54a53fc366504d42b6779665e59f0f29ea3f4005ed134403bbb5726f90b44b165118ce569bb
DIST pydantic_core-2.20.0.tar.gz 388463 BLAKE2B 8ce5fe944ad143cc05b6a69a48b75a69f474674d1f92fa7614d509b0365e197c19b486c6fa6953fa64527fb3520e63e157175fc74cd4e38d0a2685bb00216fbf SHA512 decff9e19daeab168ef3494d0864df0c958ac9932f0c6ea8ed965dca0070ae0c4c9fe717210f69f94c26c815e964ecceb531e552217e8cc9755173899edb131b
+DIST pydantic_core-2.20.1.tar.gz 388371 BLAKE2B d8c66cddd93fe4a56a901e5f06fe86c0c87b11397567e5400bf89e5884e13c98d37bbdc42ccd0bdd67c552370c17ed26d9a7897303544a816022d8a47ee8bc18 SHA512 fb5362a07282a54be9cbcf0773b5492dc1773c71d96979586885d920d794b13860a32a8165e7b5e023f9f0f7a3c85aa5098dc66d6626d5d290d3ab63fa70453f
DIST pyo3-0.21.2.crate 504574 BLAKE2B 1b8bf374d1b61e3e4bedce6344338126051a6d951ea87d258e5ed92d4c0e13b0202f2e7e56500277c54743dd16c9b4587f436cf2058567501c8a9ac7c6b6c17a SHA512 5f88cda423e82b62698a74ceaa31fc27e5c1f1d417928accddb2e00337d163fda622f774ae6e24c1cb73c467d6b01e9a2ba866e4454338b1fbfc892ae14ffc53
DIST pyo3-0.22.0.crate 535742 BLAKE2B 772a4f8b718bbec32faa3dac4cad07a5b452fb366280753c3316d932663bf367192483fb5cd0bd405321128e67157b982eaa89264685739a141e021f0f7e2b72 SHA512 44e0237fd3a8d4c7b082c48a5c8a52d8f4cc4673d134f680e29504bb46d870015fa210da34de4c1998defbcd4afdf2aaea4e148fbe093e4b2c8b0d064cd48da4
DIST pyo3-build-config-0.21.2.crate 30581 BLAKE2B 993c1f7f15124336b70570ed3949cc0873c2b883e81dd3a350f347cf014fb9a82d487197fdaf475989b727b7ee8d9a5511a72422f76126b8788c4f40831baed8 SHA512 8b6bedb31235de3dd95bca6e19ea4eb7752227ceb9f1c928c4df2b277df5ee443e5c262e448012e4e54e3104213db4d745c9c42f79ab3029dee68f48ec3a2795
@@ -87,10 +90,13 @@ DIST serde-1.0.203.crate 77935 BLAKE2B 3d3dd4f81f7d74b60483d6759879a9f87c0c7d615
DIST serde_derive-1.0.203.crate 55867 BLAKE2B 1bc8aa96328bb83e4e4ff527b1df855bbcefd333f0c43c96d1e0b93f98a46273dd88a21653bccc8f517c4fc06d17b9b44332a963d024796e0a2c18a5bfecc824 SHA512 b2aeeab33395ac11ebdbd922fcdbda29f2592e7a20e78aef250713baf269cacf497271be7aa407f657aba33da132df0e035be046fef070f915f234097d1dd392
DIST serde_json-1.0.116.crate 146790 BLAKE2B 20492ac3c431fd3666599f079383a9d945549e02357127a58acaa7011684ef0caca221a253218402ceff6956ee8a20cc41ca3394b25bb69669be75ab22b66a1e SHA512 d383de754b0a50cc4ab3e6378b758ebd6178ad32ebed80cb4e32a9d8e81d0c689585ee5cd35f12b376e488d25ecfaca659be943c9bb4104b63a1c4f9ded2f337
DIST serde_json-1.0.117.crate 146921 BLAKE2B fda4f87c300762c24163cceb449bb27fc96b089d5ee869b89f204dbeeec704231cdea7a14bc303cb40b621288fcb1a2b03f50552767e32a73c982d459762624b SHA512 363443af23e8e03dd17c0efc94b376f0d89b596c74d70d0437471e78bc20c6beb61da59404ff150af52000162f6df728ce73475feb828c453e58ea43e66ca056
+DIST serde_json-1.0.118.crate 146962 BLAKE2B b85f17cbef0cb9fcc8af5d8d18a74850804de631f8ac94193bdb0ff8c95d4c8507876e4802005e0bc8fc4745d52c79be153d825e106090b680b620acc5b1add4 SHA512 1fa7e01d849684e3ed6f9bd67ba9862f822dcecdcb9110a43182367225f559416f855d59f2b8bd943756957932710b930244963a1f47a3d7d530be19dd412f20
DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
DIST speedate-0.14.0.crate 31499 BLAKE2B e5a63d989feafcb5183e010a431976095bce6492817e0d163e8b0fe3d640e5ef87d11569e5094d788ad7cb113c2fe7b822cbf266027095fc6f2d61ba36e8d38e SHA512 55f8f9de2767e7a4aa8f355f9a781adb7c8fbef072393d13092afc9941dde4a1d706b02d908fc82cdffffa876a87e7a336340320908899774c83c76e743e1107
+DIST speedate-0.14.4.crate 33077 BLAKE2B 001a3329e90cf3dc5d8c4db870c3b5339e189190c8b7a89c262bb19efec02c9e42eeba0dd5d12a940a6fb3f8b10385aa05a72ea6f98230c989c68e0be4fe8959 SHA512 13ff498cb0885ecbe7a6fef96c48bca166a560598206b16b003e1237eafc525a0cbb6b401d060b4431a50a9638df88b7ae6834d8980f6474aea88cfc827ec329
DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
DIST strum-0.25.0.crate 5539 BLAKE2B 9c031e5ce19e2ecaa63e63118197c740ae9295b8881f6280ad92847b99fca6fb08b0d395ab1b2a66e25c8374cd18866d8436540538e3c0f1f047fd2235971b40 SHA512 a3522df79547e94518f25a0e29248f67f1d7e2586a7a424d7d996cb6bfe5d98fcc4fc44da7ddcd4e35a1127b2816bee55107f30cb2a559f5b9bbb1346139544a
+DIST strum-0.26.3.crate 7237 BLAKE2B bdc348c718c39609c00b9fa7d47b7090b1467022b7a8a28cc7c8a72a0aef20569c6ab22a8a8d26c2d9272f18d000e4ce94858a6647194f0a7b86d812d52b05a9 SHA512 62f116d5bbc6167a6ac68b049f8045bc660901f1ce1252f8bdcd91cb28bef821aad8098905369db6c2fe74c134a5d549e55ddd28e383d7d78f7175258924b268
DIST strum_macros-0.25.3.crate 22570 BLAKE2B 511af0d1f0f76df7ad1528c79987b6e09390bfb33e1c34078fb5450171aca7f169afb83fa2f2338a861ded6842c8535ea6e4cdb0d31f341edab0a06d7eeac16c SHA512 e6ebc00943d9f88104815a5bd6a302a391a06fb0ed5ff836e01d341150628684e00e5e2e5b3f6466ece92d376985246f818243a0d1d775cfa55d1c50c0ec0c62
DIST strum_macros-0.26.1.crate 25326 BLAKE2B 2f52389676e1581abf42995a54d7725b0ece50ba8da2ecba700c359a4bc3dfa3c48440908a57d8f25334a1ab6a844093e131dc351182ecec1cab9bff1b04c407 SHA512 f41fc17aaf84385437605ffa751a9f03d19d230780855f86d60b53de4bd1891519a3550c41a31d44312f44b59c3c184286d9181e40c3fdda3aec0c2806385455
DIST strum_macros-0.26.4.crate 27531 BLAKE2B 7f7d57c957a1591054288fcae6590a5e669fba1b47d8f1a52371ce60fd84f91fdb430e48cc7edbb5fc72914be5ce12af29758b653680da3f4177339b31206750 SHA512 77a17ce47d5e8fe8a89cb6aa6c3ca5d5c2625aea0f93456f05a9994238cd3b08b3f7c6a45e9b3db21bca8fb5759f505f15cc111ac84acbbb34d59cdae8307b0b
@@ -100,6 +106,7 @@ DIST tap-1.0.1.crate 11316 BLAKE2B 60786fd5f12c2f06097330c26809fdcfce62716586d2e
DIST target-lexicon-0.12.14.crate 25508 BLAKE2B 5ebb6b49e5c3b0057959557651287d4bf5ffe5b499340019ff64d5fc3b64e780e344982e358c94b1b25a20bf0f526a584aeecc704695b50a55cc268dd65edb97 SHA512 3410ecc0faf854f49c41c99f83972960e67065b1e0e78557a7c4996d996109bfd167d2121a019f5256f996c896cd45af032038ab7918fdcc6ee6311693ce951a
DIST target-lexicon-0.12.9.crate 24532 BLAKE2B 7f09be1827a5f9563b842c38aff659432ec61b66b814ebf4cc8a963daf6c93e7dc453a6966aa02d3a886007506d2b993e16ceb047bd34f6d206de76a39d08dfe SHA512 62033617d4587fb9d4b3159c78dbb628041d7ba6c5849c27a5755f173a7279aa4a03e56d31e03f87adfae50cef49eb6f0bc5eea1f6a131b87c618330d19d61d5
DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
+DIST tinyvec-1.6.1.crate 46657 BLAKE2B 0579dd18a6ad47d995200535950ce0c2a0f63ac081ff5c54a5be5e6a9d5f0545266a2e44b09b847e2fbe88e374a9467ddcf7fcea6ad404e443c387d343eac3e9 SHA512 fc00617fe56c438ed417b9c18fb2525e624b6b6effd1b729da9b8f144b36cd02dbcefbbb6fd423c30b1f19309d42117a1eaab99deb0a46b2a474c2cdc02c1695
DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
DIST unicode-bidi-0.3.13.crate 44477 BLAKE2B 90d80e7c57e93aa9aaa83e7c3c1a93bb6e4d51047803e61ed3f7c80361987947b2029a2b679bd301e8a0766ee8ea7f080e9b9b6ebcbb4354e19813a0f7da2abc SHA512 fb094fcfd907d90fa7232432aca0143209446e4c5c73d8a0fe6d2dc44b9dbb5b8b926c59b5e3f9a5a0a36f91c04613509b6e430c9c4adf526e7445e6e8d7a3d9
DIST unicode-bidi-0.3.15.crate 56811 BLAKE2B 1f1d372c86ec7444f13eb32baf13dfc8699b52156b265a2b53f40c0d771064876405451120fe54739a2679e6991caaf4f63e0644f03729cab814079fef4868c8 SHA512 7a21d5eb05ea8d691dfd54ce4cf7d3693d08067f7a88ef17b8c3044634f46411176b1bde1516c442577910b254007b247f5e40f9932eb601cd96cd574f9d9db8
@@ -112,6 +119,7 @@ DIST url-2.5.0.crate 78605 BLAKE2B f3fec3477248cbbe67866577eebb03f517c284a5e5cb7
DIST url-2.5.2.crate 79704 BLAKE2B be3526298a8816fbd88385caf49c2d58aacc7dcbe2d9183478cf501c26fb5f22d7704ef1313ba6d355e849cbf8ab7980310c1aae85e253a2b28d59099e23af29 SHA512 2515903e41c0659cb226f9bb049ef80f2a49d1b609b6ac480e570a84e899088ffe3be4fb58f41a1fa7f5288eb5f97ab513f331aeb6d56979df783d48e2ace28a
DIST uuid-1.8.0.crate 44043 BLAKE2B 6a5e3008f0399d5606ea4ef51e5932aedf2a02e747b9bee4b4c2c6646cd959a720373c346a734c00554ff0359fe42bdf471dea5029e23a9e70164e20895cacee SHA512 fe254f0bf6b863538ce568405569a4c755b33bce561148661b10985bf4485fa7ee7a6ec650d93656552b3cdead46b2074ebfd45b040edef19cd1648300f68ed5
DIST uuid-1.9.0.crate 47394 BLAKE2B 491fb0a074ef59b24df724d4d22b03ba90a7b15ac5611ef6316d81cb6ed81281d6a548ad4dbddd7039884cad20225c0d014eaa2918cb97da548c26c84325ae12 SHA512 d04b525d6f2452c2aeaa15de7b754a3ca9867ffb27f1d94df22ce5ba024996c890e06f4c69a9104399b364c7292570359f922ad7e6980f477b6b336c8ad5557a
+DIST uuid-1.9.1.crate 47492 BLAKE2B 195f14f6ed60809c5be69a7bf5905fea0ed36588563f741d3100aaf2837dd5db26bc8557f239dfccbc27b92f806eb7fc03d365dcd7444437882e7bbca3aa2138 SHA512 4d2a728155eea2fb065f72df36bf88092d0f7edb4d1a1472e380943ceba9cf7b396364238fbf33d5f8d7891664c94daa56f3dd58148258644ffb539d5804111e
DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
DIST windows-targets-0.48.1.crate 6902 BLAKE2B 8e6cd47dea52131c66983cbf4982e88f7bd30416dfae4e380f7afb39f67ee0ac88d40769668dd5aba40d4415f9f00cbc2ac98d598506fed26029f5ec4df3a2c5 SHA512 e48179620cce528292167f1d5ee2deea0659569c996dc90eb4ab62b9ea8baee6c0bea3ab739e06d8793c9690bfc895545ed0039cb633ca39293de79c42ea9de2
diff --git a/dev-python/pydantic-core/pydantic-core-2.20.1.ebuild b/dev-python/pydantic-core/pydantic-core-2.20.1.ebuild
new file mode 100644
index 000000000000..2b7cf75bf5d0
--- /dev/null
+++ b/dev-python/pydantic-core/pydantic-core-2.20.1.ebuild
@@ -0,0 +1,140 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+CRATES="
+ ahash@0.8.11
+ aho-corasick@1.1.3
+ autocfg@1.3.0
+ base64@0.21.7
+ bitvec@1.0.1
+ cc@1.0.101
+ cfg-if@1.0.0
+ enum_dispatch@0.3.13
+ equivalent@1.0.1
+ form_urlencoded@1.2.1
+ funty@2.0.0
+ getrandom@0.2.15
+ hashbrown@0.14.5
+ heck@0.5.0
+ idna@0.5.0
+ indexmap@2.2.6
+ indoc@2.0.5
+ itoa@1.0.11
+ jiter@0.5.0
+ lexical-parse-float@0.8.5
+ lexical-parse-integer@0.8.6
+ lexical-util@0.8.5
+ libc@0.2.155
+ memchr@2.7.4
+ memoffset@0.9.1
+ num-bigint@0.4.6
+ num-integer@0.1.46
+ num-traits@0.2.19
+ once_cell@1.19.0
+ percent-encoding@2.3.1
+ portable-atomic@1.6.0
+ proc-macro2@1.0.86
+ pyo3-build-config@0.22.0
+ pyo3-ffi@0.22.0
+ pyo3-macros-backend@0.22.0
+ pyo3-macros@0.22.0
+ pyo3@0.22.0
+ python3-dll-a@0.2.10
+ quote@1.0.36
+ radium@0.7.0
+ regex-automata@0.4.7
+ regex-syntax@0.8.4
+ regex@1.10.5
+ rustversion@1.0.17
+ ryu@1.0.18
+ serde@1.0.203
+ serde_derive@1.0.203
+ serde_json@1.0.118
+ smallvec@1.13.2
+ speedate@0.14.4
+ static_assertions@1.1.0
+ strum@0.26.3
+ strum_macros@0.26.4
+ syn@2.0.68
+ tap@1.0.1
+ target-lexicon@0.12.14
+ tinyvec@1.6.1
+ tinyvec_macros@0.1.1
+ unicode-bidi@0.3.15
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.23
+ unindent@0.2.3
+ url@2.5.2
+ uuid@1.9.1
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ wyz@0.5.1
+ zerocopy-derive@0.7.34
+ zerocopy@0.7.34
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Core validation logic for pydantic written in Rust"
+HOMEPAGE="
+ https://github.com/pydantic/pydantic-core/
+ https://pypi.org/project/pydantic-core/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/typing-extensions-4.7.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=virtual/rust-1.70.0
+ test? (
+ >=dev-python/dirty-equals-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-6.63.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.10.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-1.10.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/pydantic_core/_pydantic_core.*.so"
+
+src_prepare() {
+ sed -i -e '/--benchmark/d' pyproject.toml || die
+ sed -i -e '/^strip/d' Cargo.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ tests/benchmarks
+ )
+ local EPYTEST_DESELECT=(
+ # TODO: recursion till segfault
+ tests/serializers/test_functions.py::test_recursive_call
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ rm -rf pydantic_core || die
+ # tests link to libpython, so they fail to link on pypy3
+ [[ ${EPYTHON} != pypy3 ]] && cargo_src_test
+ epytest -p pytest_mock -p timeout
+}
diff --git a/dev-python/pydantic/Manifest b/dev-python/pydantic/Manifest
index 5427a365e6b4..41468fad2cd1 100644
--- a/dev-python/pydantic/Manifest
+++ b/dev-python/pydantic/Manifest
@@ -1,3 +1,4 @@
DIST pydantic-2.7.4.tar.gz 714127 BLAKE2B c9d6df84799d1c8a69bf7d203609db3ba533380919d1f47ae84eb83186ef9ffbbab5bea9b9c4918c65d35d4b2103107df3c7e5e314195bd84807d216226490b6 SHA512 9a36041a24306761f2528aaca196d0b3e160cf46d71596fcd3df0169b9dd68ce810b88bcbe15dc9c0126551d0d7e33e4c3014b97daaf5d68ce68c0f8d6ffaf81
DIST pydantic-2.8.0.tar.gz 738772 BLAKE2B d3a490afdc1fa9e6baf5b63a4760d98043c7d0b7bc46018af5701acbfeecae0e08ab171f386f817bfd0a36b702228bcd5c92bf8de36de2f36a7b87e181736129 SHA512 aa703ad04698f476b4a7d69f0a58e36cd8064c64e30e33e03a375d4986049e841abf24e5ef53f192101e484b645a12879087f171346d30747e2c35ebc763aa4e
DIST pydantic-2.8.0b1.tar.gz 738470 BLAKE2B 13d9e19ea6cd78849b6ed507b20daf36c941e790d5cd291999755d00b0d4a289658b6b92316663205c893da0e41ea49073bda597f811592543ad1c30bcf9b4ee SHA512 9047543d8d281e3b9e18daff087c8cc8ba632392c9df9a1c2543c6d2d2eb1488c22a9c363417f64e2deaa576659254a2c2267241bfda7a4b5bf466377df8cd64
+DIST pydantic-2.8.2.tar.gz 739834 BLAKE2B d0168db26e02ac9fcf01fe85cd70c982e74f185dfce5075d4b365dba510d871550478ae98550882c425cdecfa3e31e674076906d8f71d1de947cc8d2cb55d3b8 SHA512 9d3b795ee43ccc4976a07c3770769758f023cc6763b8ef9ce4475d22c49d4dba80c8326d42106075b54a5d82c84722735e6017644755672b0f1cb0a4b624340a
diff --git a/dev-python/pydantic/pydantic-2.8.2.ebuild b/dev-python/pydantic/pydantic-2.8.2.ebuild
new file mode 100644
index 000000000000..a9ad19f571a2
--- /dev/null
+++ b/dev-python/pydantic/pydantic-2.8.2.ebuild
@@ -0,0 +1,63 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Data parsing and validation using Python type hints"
+HOMEPAGE="
+ https://github.com/pydantic/pydantic/
+ https://pypi.org/project/pydantic/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/annotated-types-0.4.0[${PYTHON_USEDEP}]
+ ~dev-python/pydantic-core-2.20.1[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ ' 3.{10..12})
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ >=dev-python/email-validator-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/Faker-18.13.0[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/benchmark/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ local EPYTEST_IGNORE=(
+ # require pytest-examples
+ tests/test_docs.py
+ # benchmarks
+ tests/benchmarks
+ )
+
+ if ! has_version "dev-python/cloudpickle[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ tests/test_pickle.py
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest_mock
+}
diff --git a/dev-python/pyproject-fmt-rust/Manifest b/dev-python/pyproject-fmt-rust/Manifest
index 5aef9c259712..df324e1fa6a2 100644
--- a/dev-python/pyproject-fmt-rust/Manifest
+++ b/dev-python/pyproject-fmt-rust/Manifest
@@ -59,6 +59,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 pyproject_fmt_rust-1.1.3.tar.gz 33710 BLAKE2B 254a2a9173c57d2d22fa19043b9d144c425209570039af2330130ee14dbde387c1b748bbd0b7aa7fd81df78b43cd78021602ae6a7a05a4336cee85c40fffadc8 SHA512 c96f5b1233287a19e87c9a1a33dedfa3e015b2846b8fb80e36b99ae1227a3f583af6934ee32db5e0a22068264aede434af7eb3df353c58f7a53e434011a3e05d
DIST pyproject_fmt_rust-1.1.4.tar.gz 34558 BLAKE2B 1b0361e74b4acdb6863937356e5c329452d1854fcb666ae8fd9517c870d1d4ab813eed9aadecdae7f66328f84cadbc021b30169f960c8ff3abef17e0928cf197 SHA512 b0ca84d7d6c44cd9f1c8ead26cdf49680d4e67a91f1c169f2a5484d90bd1ca5bd6094a7c307d8bb4ec6c8f52528e250d7534882f16ec4581eabe135539e833e9
+DIST pyproject_fmt_rust-1.1.5.tar.gz 34645 BLAKE2B d857e0ab978d4383beec201da0081cebc4ca85be5b7b1330a04c952d972e1441859733f6932c3f5d72048e34d750b286f712fbfd517a510a67b1ab264c564a3f SHA512 c2887fc2b135e391f10bdf5ef44aa2d00d405c75a65ded1927c2eb642ba5bc9881261b4122474afac5c7ac8b7685d35eef7a39da0403d3c8b48c500b2280e17f
DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
DIST regex-1.10.4.crate 253191 BLAKE2B 08bdb925efbea1ee9f885a89ec6b4692e39d7b17039f788e5b3c1dbfb7847d4f53b67f0c61e4085af7ef4901e67e33ea94948668bf706fef19b4102a06ef0447 SHA512 88ef121a51759f418d5dc01607a6e02651bd00343dae92962c02a80f30343d3f079a0375457780ce46bf205ca38f279b03989154638199fe2fcede10554bf21b
diff --git a/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.1.5.ebuild b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.1.5.ebuild
new file mode 100644
index 000000000000..2f4240954de0
--- /dev/null
+++ b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.1.5.ebuild
@@ -0,0 +1,159 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+CRATES="
+ ahash@0.8.11
+ aho-corasick@1.1.3
+ any_ascii@0.1.7
+ arc-swap@1.7.1
+ autocfg@1.2.0
+ beef@0.5.2
+ bitflags@1.3.2
+ bstr@1.9.1
+ cfg-if@1.0.0
+ countme@3.0.1
+ deranged@0.3.11
+ derivative@2.2.0
+ either@1.11.0
+ fnv@1.0.7
+ form_urlencoded@1.2.1
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-io@0.3.30
+ futures-macro@0.3.30
+ futures-sink@0.3.30
+ futures-task@0.3.30
+ futures-timer@3.0.3
+ futures-util@0.3.30
+ futures@0.3.30
+ getrandom@0.2.14
+ glob@0.3.1
+ globset@0.4.14
+ hashbrown@0.14.3
+ heck@0.4.1
+ idna@0.5.0
+ indoc@2.0.5
+ itertools@0.10.5
+ itoa@1.0.11
+ lexical-sort@0.3.1
+ libc@0.2.153
+ lock_api@0.4.11
+ log@0.4.21
+ logos-derive@0.12.1
+ logos@0.12.1
+ memchr@2.7.2
+ memoffset@0.9.1
+ num-conv@0.1.0
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ pep440_rs@0.6.0
+ pep508_rs@0.6.0
+ percent-encoding@2.3.1
+ pin-project-lite@0.2.14
+ pin-utils@0.1.0
+ portable-atomic@1.6.0
+ powerfmt@0.2.0
+ proc-macro2@1.0.81
+ 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
+ redox_syscall@0.4.1
+ regex-automata@0.4.6
+ regex-syntax@0.6.29
+ regex-syntax@0.8.3
+ regex@1.10.4
+ relative-path@1.9.2
+ rowan@0.15.15
+ rstest@0.19.0
+ rstest_macros@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ ryu@1.0.17
+ scopeguard@1.2.0
+ semver@1.0.22
+ serde@1.0.198
+ serde_derive@1.0.198
+ serde_json@1.0.116
+ slab@0.4.9
+ smallvec@1.13.2
+ syn@1.0.109
+ syn@2.0.60
+ taplo@0.13.0
+ target-lexicon@0.12.14
+ text-size@1.1.1
+ thiserror-impl@1.0.59
+ thiserror@1.0.59
+ time-core@0.1.2
+ time-macros@0.2.18
+ time@0.3.36
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.1
+ tracing-attributes@0.1.27
+ tracing-core@0.1.32
+ tracing@0.1.40
+ unicode-bidi@0.3.15
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.23
+ unicode-width@0.1.12
+ unindent@0.2.3
+ unscanny@0.1.0
+ url@2.5.0
+ urlencoding@2.1.3
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ 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
+ zerocopy-derive@0.7.32
+ zerocopy@0.7.32
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file (Rust extension)"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt-rust/
+ https://pypi.org/project/pyproject-fmt-rust/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions ISC MIT Unicode-DFS-2016
+ || ( Apache-2.0 BSD-2 )
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt_rust/_lib.*.so"
+
+src_prepare() {
+ sed -i -e '/strip/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test_all() {
+ cargo_src_test
+}
diff --git a/dev-python/pyproject-fmt/Manifest b/dev-python/pyproject-fmt/Manifest
index 8419dd540e39..419aa2222678 100644
--- a/dev-python/pyproject-fmt/Manifest
+++ b/dev-python/pyproject-fmt/Manifest
@@ -1 +1,2 @@
DIST pyproject_fmt-2.1.3.tar.gz 9016 BLAKE2B 742d29283f883f36a6705b74613455932057c508bb98c61d245254fca5d35c31333d01e1047f3c3c4fe46c41ea0633d6a491f59c9633770dd5fb5ee9b696f5ed SHA512 3ba7bc939ed555a58c41bc35563fecba4066e95b0fc4d9c0ecf77ed484cbf2ebd8067fb097dabb499d95ddd7be64712961b70b9abb2f147cc6491c3c8ca85877
+DIST pyproject_fmt-2.1.4.tar.gz 9023 BLAKE2B 1a44332ea829efb22d7b561abef1f362f7eb6ca4682586511e4a87c8f26f55a510f2a1f5e065ec21208c04f754dd729133c859f5d388b0af94578c53bab55d1e SHA512 95e4f99c2ded8f69dca4bbca208512ca17e6fc1e7e13a247f2932c7539ff802a4ed6a822c4ffbada749d4eef15aafd7189f85d722e41360b3523c2b633e15d99
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.1.4.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.1.4.ebuild
new file mode 100644
index 000000000000..9c3ae917d4ce
--- /dev/null
+++ b/dev-python/pyproject-fmt/pyproject-fmt-2.1.4.ebuild
@@ -0,0 +1,36 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt/
+ https://pypi.org/project/pyproject-fmt/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ ~dev-python/pyproject-fmt-rust-1.1.5[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+# tox is called as a subprocess, to get targets from tox.ini
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pytest-mock-3.10[${PYTHON_USEDEP}]
+ dev-python/tox
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-ironicclient/Manifest b/dev-python/python-ironicclient/Manifest
index aa2eabe71f63..1b3278f47937 100644
--- a/dev-python/python-ironicclient/Manifest
+++ b/dev-python/python-ironicclient/Manifest
@@ -1 +1,2 @@
DIST python-ironicclient-5.6.0.tar.gz 229569 BLAKE2B 2db608463479fc5bb7061562d8617d96244e80276790ae2829373d9ba02412027658c33c5f22d6fd921bf84599584c588c462b4480d294e288dc063f7c73e274 SHA512 133de151e5a884c0c9840b72236f5d99e5e197889ed2e80545174d8754b09e65c370c6a97c367ed4c4ca76f593e665e6481cd45c266fdf3ba7fc348307539907
+DIST python-ironicclient-5.7.0.tar.gz 230550 BLAKE2B a4571693ce95608d7403113e56df62961eb040ee924ff8d45ebacf41a924cb489157a48043d768e4e5691477bd2dbf24a658a59703e84c61871be5f4d9700dbf SHA512 f819a2be1301da821eb340da789dd188dea33fb48b2ea2f3ec740eb04b66cf121fc1f72f592e3f17cd38be30b9afedf4209dbe725eaa772938a9977a83e84506
diff --git a/dev-python/python-ironicclient/python-ironicclient-5.7.0.ebuild b/dev-python/python-ironicclient/python-ironicclient-5.7.0.ebuild
new file mode 100644
index 000000000000..ad01fe490ab3
--- /dev/null
+++ b/dev-python/python-ironicclient/python-ironicclient-5.7.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pbr
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for the Ironic API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-ironicclient/
+ https://github.com/openstack/python-ironicclient/
+ https://pypi.org/project/python-ironicclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.11.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.18.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/python-neutronclient/Manifest b/dev-python/python-neutronclient/Manifest
index d9512afc0aaf..4aa3aad7886b 100644
--- a/dev-python/python-neutronclient/Manifest
+++ b/dev-python/python-neutronclient/Manifest
@@ -1 +1,2 @@
DIST python-neutronclient-11.3.0.tar.gz 211322 BLAKE2B 495e2f8db5d85cc92d1990239999c920341cc18e2d519da4e458eb8e50b803aa77d838dc06f2a248ead2ee156a763103c5376b786fa99d97a0c6dff5659374ba SHA512 4115326f2a40957f1db94ee4e65f7399019fa135774fa9ed5f2ffc6d20f65f326fedc724639decb730ce9de0a0e82239e1ffe6ec4df59382adb16d9c3cfb64d5
+DIST python-neutronclient-11.3.1.tar.gz 211410 BLAKE2B db1bed173ca546529502dc2ce564e950c6908f4fa3dc81eb78bc59dfa4ba3e608a058c2b143db111afba153eef9e62f3a7f3bb588faed9d306e3bc960fc33e94 SHA512 76e17bf2f0bce6bad939029beb3a75b840675582fcef766f61ac139d29d7f0632dae3a7ee3aea596c60e3b86b9e5cf24c8070f75a03a9c8066b92437fcdd03be
diff --git a/dev-python/python-neutronclient/python-neutronclient-11.3.1.ebuild b/dev-python/python-neutronclient/python-neutronclient-11.3.1.ebuild
new file mode 100644
index 000000000000..e674e700a171
--- /dev/null
+++ b/dev-python/python-neutronclient/python-neutronclient-11.3.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack Quantum API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-neutronclient/
+ https://github.com/openstack/python-neutronclient/
+ https://pypi.org/project/python-neutronclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/bandit[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ dev-python/oslotest[${PYTHON_USEDEP}]
+ dev-python/python-openstackclient[${PYTHON_USEDEP}]
+ dev-python/subunit[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/testtools[${PYTHON_USEDEP}]
+ dev-python/testscenarios[${PYTHON_USEDEP}]
+ dev-python/tempest[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Needs osprofile
+ rm neutronclient/tests/unit/test_http.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b neutronclient.tests.unit
+}
+
+python_install() {
+ distutils-r1_python_install
+ # stupid stupid stupid
+ local SITEDIR="${D}$(python_get_sitedir)" || die
+ cd "${SITEDIR}" || die
+ local egg=( python_neutronclient*.dist-info )
+ [[ -d ${egg[0]} ]] || die "python_quantumclient*.dist-info not found"
+ ln -s "${egg[0]}" "${egg[0]/neutron/quantum}" || die
+ ln -s neutronclient quantumclient || die
+ ln -s neutron quantumclient/quantum || die
+}
diff --git a/dev-python/scikit-learn/Manifest b/dev-python/scikit-learn/Manifest
index 5c9547304fea..720d475019bc 100644
--- a/dev-python/scikit-learn/Manifest
+++ b/dev-python/scikit-learn/Manifest
@@ -1 +1,2 @@
DIST scikit-learn-1.5.0.gh.tar.gz 7806059 BLAKE2B d58a92fa230ee3f249cd9d9cf2cfd9406e12b0aaed6f3d3360fc5f914b7d690709786477474b95d90711f61b44d5490b01bcb57e36a320235591d3b2520dd9c0 SHA512 dfa6364770a982642c94e70a6ada8d60d3bba5e0a6e1d4acb622c102f176b39ba1c8b5ec8df6a12142afa258974cd606f0bdda4461dc23b7518bfaf71a7319cc
+DIST scikit-learn-1.5.1.gh.tar.gz 6944196 BLAKE2B 65ed2016e1caf12e9a347e133b6b3be29b234de7ee8e374859a7235da3ede67a1b4c37a253b62ceb85a1ae3a1e6bc5afea2a0f07f4a7c81f59965614bde52b8c SHA512 f04c988490436d46d8210e68e41969af689810eff3e57098694768d3ccb7c4b919aecb13f36af1534745e56785fbf55c3dc3614497765d5b2f7c5e7e8dfbae05
diff --git a/dev-python/scikit-learn/scikit-learn-1.5.1.ebuild b/dev-python/scikit-learn/scikit-learn-1.5.1.ebuild
new file mode 100644
index 000000000000..df75cc95a8e5
--- /dev/null
+++ b/dev-python/scikit-learn/scikit-learn-1.5.1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Machine learning library for Python"
+HOMEPAGE="
+ https://scikit-learn.org/stable/
+ https://github.com/scikit-learn/scikit-learn/
+ https://pypi.org/project/scikit-learn/
+"
+SRC_URI="
+ https://github.com/scikit-learn/scikit-learn/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86 ~arm64-macos ~x64-macos"
+IUSE="examples"
+
+DEPEND="
+ virtual/blas:=
+ virtual/cblas:=
+ >=dev-python/numpy-1.19.5:=[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/joblib-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.6.0[${PYTHON_USEDEP}]
+ >=dev-python/threadpoolctl-3.1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pythran-0.14.0[${PYTHON_USEDEP}]
+ >=dev-python/cython-3.0.10[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+# For some reason this wants to use urllib to fetch things from the internet
+# distutils_enable_sphinx doc \
+# dev-python/matplotlib \
+# dev-python/memory-profiler \
+# dev-python/numpydoc \
+# dev-python/pandas \
+# dev-python/pillow \
+# dev-python/seaborn \
+# dev-python/sphinx-gallery \
+# dev-python/sphinx-prompt \
+# dev-python/scikit-image
+
+python_test() {
+ rm -rf sklearn || die
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest --pyargs sklearn
+}
+
+python_install_all() {
+ find "${S}" -name \*LICENSE.txt -delete || die
+ distutils-r1_python_install_all
+ use examples && dodoc -r examples
+}
diff --git a/dev-python/sip/sip-6.8.5.ebuild b/dev-python/sip/sip-6.8.5.ebuild
index 1cee88a689ad..5fa58665e798 100644
--- a/dev-python/sip/sip-6.8.5.ebuild
+++ b/dev-python/sip/sip-6.8.5.ebuild
@@ -33,7 +33,7 @@ RDEPEND="
$(python_gen_cond_dep 'dev-python/tomli[${PYTHON_USEDEP}]' 3.10)
"
BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-scm-8[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs \
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index aee605896293..21e232e75ec4 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1 +1,2 @@
DIST tifffile-2024.6.18.gh.tar.gz 349752 BLAKE2B 35f11d963e93e6b1f6b5e4a026dd0f1aed1bf03a2a5e9caab7649ce95c00cdd99988aaa864c549555a8244ec8bfc8d8d900386aa7b9f853fd5aca7b8bece8eb4 SHA512 fdbb5b2b335743f0aef01d5a8f0b577eb24fb1b89d29e20c1971124bdb58f61aab4e3471b6f91e686010c8ca1d5786527357b123c2d801c16d423927315b8c94
+DIST tifffile-2024.7.2.gh.tar.gz 349770 BLAKE2B c722f23857310826568f54bffa4f071c8018c6d17ee810dad423f6e9ad80ee99f888bf9282e8cc53d710ba5052c69136e8385aa7ac7e9052346fa766cfdc1747 SHA512 11efbda0f20428fbff4863f52425021de9303be8ad76051c7daf5921f1282a88655872c98dcb2530ea354b1f2833509b3b98b82d035dc8bbae4a4d2da0ef8d47
diff --git a/dev-python/tifffile/tifffile-2024.7.2.ebuild b/dev-python/tifffile/tifffile-2024.7.2.ebuild
new file mode 100644
index 000000000000..1f53f5beadd7
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2024.7.2.ebuild
@@ -0,0 +1,47 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Read and write TIFF files"
+HOMEPAGE="
+ https://pypi.org/project/tifffile/
+ https://github.com/cgohlke/tifffile/
+ https://www.cgohlke.com/
+"
+SRC_URI="
+ https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local -x SKIP_LARGE=1
+ local -x SKIP_HTTP=1
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest
index d4e6554b8b7c..bc46bcf0ba84 100644
--- a/dev-python/tox/Manifest
+++ b/dev-python/tox/Manifest
@@ -1 +1,2 @@
DIST tox-4.15.0.tar.gz 179243 BLAKE2B ba126d2dbe9598667570e1798567cf2301a60ca4859947b0b5cd15603b6f1b9c1b557bc090973a3c99960c29242edbb684d9ab81b90ecca3ac020b129a033850 SHA512 a113d8e921301dc4bc39e03103f8857604b28beedc49c764315cf99694e8a351b965e0e1b7d91555ce437a1cbb2bce0e1dd645b7c92c36e8e0e1dedcf610d1af
+DIST tox-4.16.0.tar.gz 179738 BLAKE2B 24ab57b05504ca8d4ef39c164604e5cc8150d722d0d0258bac8fe35b0dcf7ee31625734c65cabb26b4c49f377fe9b2be65f8d84481f7aee7307f9499e6498929 SHA512 b3d65c5b4f086f1f0474d6cb08d3d4bcdf81735376a94e97997ab5dee5c726e71e8b9a1117eda59f9afd61be0bff38a9533faf16e76b78b504ff6de0f2ddfde0
diff --git a/dev-python/tox/tox-4.16.0.ebuild b/dev-python/tox/tox-4.16.0.ebuild
new file mode 100644
index 000000000000..c4c03e498202
--- /dev/null
+++ b/dev-python/tox/tox-4.16.0.ebuild
@@ -0,0 +1,97 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="virtualenv-based automation of test activities"
+HOMEPAGE="
+ https://tox.readthedocs.io/
+ https://github.com/tox-dev/tox/
+ https://pypi.org/project/tox/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/cachetools[${PYTHON_USEDEP}]
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/platformdirs[${PYTHON_USEDEP}]
+ dev-python/pluggy[${PYTHON_USEDEP}]
+ dev-python/pyproject-api[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.{9..10})
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/distlib[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # upstream lower bounds are meaningless
+ sed -i -e 's:>=[0-9.]*::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # devpi_process is not packaged, and has lots of dependencies
+ cat > "${T}"/devpi_process.py <<-EOF || die
+ def IndexServer(*args, **kwargs): raise NotImplementedError()
+ EOF
+
+ local -x PYTHONPATH=${T}:${PYTHONPATH}
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external
+ tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz
+ )
+ local EPYTEST_IGNORE=(
+ # requires devpi*
+ tests/test_provision.py
+ )
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]'
+ 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]'
+ )
+ ;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # https://github.com/tox-dev/tox/issues/3290
+ 'tests/config/loader/test_str_convert.py::test_str_convert_ok_py39[1,2-value1-Optional]'
+ )
+ ;;
+ esac
+
+ epytest
+}
diff --git a/dev-python/types-docutils/Manifest b/dev-python/types-docutils/Manifest
index 2c3dcee36227..90e5f7e01663 100644
--- a/dev-python/types-docutils/Manifest
+++ b/dev-python/types-docutils/Manifest
@@ -1 +1,2 @@
DIST types-docutils-0.21.0.20240423.tar.gz 19468 BLAKE2B a1fda020a7390ae7a95a46ec484697ecc7f18331607e6c85b0d0d9ecaea6fcc3ce8763a6d800e6ce232ddb4cb3633272eaa9ea607c0eb9a85fff4e1be48c64dc SHA512 e7e596ffb26d50730d00204ff8bd4474ef109b9d755aaa2dd473cf96e1baf477961cc6073a66e136fe363546b25ed0e306aee86959ebb95243b44bd9993dae44
+DIST types-docutils-0.21.0.20240704.tar.gz 19782 BLAKE2B eaf113c86432951b4d0e6a2b7bf69e8e5fb18717bc8107a55a679c6890ae6afb5b543f968758e2797b089ee96bd05945f1bca01383cdd68e01c2c2c1f144710f SHA512 66bf7eb52643dc46a1a621db5d9be6c68bdf61f0b075896e74eabb19db1edae72810a697e803482e89581131b6c0966d990f3043092136bd7e1d4a9cfcab9075
diff --git a/dev-python/types-docutils/types-docutils-0.21.0.20240704.ebuild b/dev-python/types-docutils/types-docutils-0.21.0.20240704.ebuild
new file mode 100644
index 000000000000..0d86c4835acd
--- /dev/null
+++ b/dev-python/types-docutils/types-docutils-0.21.0.20240704.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for docutils"
+HOMEPAGE="https://pypi.org/project/types-docutils/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/types-gdb/Manifest b/dev-python/types-gdb/Manifest
index 0fef35f89316..332b89460055 100644
--- a/dev-python/types-gdb/Manifest
+++ b/dev-python/types-gdb/Manifest
@@ -1,2 +1,2 @@
-DIST types-gdb-12.1.4.20240401.tar.gz 11710 BLAKE2B 63a0e6aa2bc738bf05c24a81d3f031dc5be0010a66c445a8bc485e6617b8d3bd2cc85894e5caf68e7dcc619e72e80ab0a0eb4b4fc0d5c90e50345e0658620aad SHA512 0a145da20e847da00a1fdfb29e56845878b67bb99f344e6059f86d1fc4d84a6b32f1d16eadd19616b9a7619b7f832fa41772beea1bd314678d337e2fc009afa4
DIST types-gdb-12.1.4.20240408.tar.gz 11767 BLAKE2B 3968f1edff0b809404091864683a13d6c5037077aad0435dd425a159cea5c5b906552028bd05136af98db8fe2715809287cb36ae9706d408561a43138667cd3c SHA512 8bb5d4508d456a1e55e9bac8eeaa15745fb5546cfd1749d28c22cc03db3a6a35145a7c1adcfdfa617ca2636c18ea8fac41c7b1043f49a8acd63d1475de3f3456
+DIST types-gdb-12.1.4.20240704.tar.gz 11819 BLAKE2B 80866a0eb484e7b3e30a01ea3606b5ee4a832194efba38dcec61d61316ad61eed432d478fdcef10bc481707468156c209bc3ec34e5995b350a84afd3aa21d9a8 SHA512 1d8141dc056df6b5a2a95a682098f254e499ca9cce5c98393c977cfb08bb4e13de9d5e1e539fef95f5836a396491fe74ac0db1610f3e1f194c36568e7e142682
diff --git a/dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild b/dev-python/types-gdb/types-gdb-12.1.4.20240704.ebuild
index 9fe9a5637e5d..9fe9a5637e5d 100644
--- a/dev-python/types-gdb/types-gdb-12.1.4.20240401.ebuild
+++ b/dev-python/types-gdb/types-gdb-12.1.4.20240704.ebuild
diff --git a/dev-python/types-setuptools/Manifest b/dev-python/types-setuptools/Manifest
index 71825c4d875c..aeb7316c486b 100644
--- a/dev-python/types-setuptools/Manifest
+++ b/dev-python/types-setuptools/Manifest
@@ -1,3 +1,4 @@
DIST types-setuptools-70.0.0.20240524.tar.gz 38370 BLAKE2B 7964344dfb8a9b3594bd3b6f46b1e41b439dff2c035c16c3bb93b0ed23f2e9380e4ba8af50f3ae44217fdab79fb15a5002f6792d1b9d9e1d5e5cd11057f55bfd SHA512 9edace3d84b9bbcb67fb4ff5f0c17ba7416901b1b12359e5394f0a5edb3250bbf81cd39946a4566217f0060fe50b15580df99b1f4e028774e4d36e0b5416a374
DIST types-setuptools-70.1.0.20240625.tar.gz 39232 BLAKE2B 9b02f33fa73204fcb5afcf8115e42cfa55ac08951aa4b8646efe6e3d5828c97da1fb936ab3e1fd87bedc32d2741fbd301db3598f9ce6bd63d729e3fcb4910d71 SHA512 233b0bf84a04d8867174b681714097d37ac72efc2e81f4d4069913ed29b76355df4eebde7da4b62f52b933ef1d02949cc44f1f3f5771eb181d5df878c783f14e
DIST types-setuptools-70.1.0.20240627.tar.gz 39309 BLAKE2B 42de32fb42a71c0b455341d2c402c477535acfede0f8c8250ed6a87824f75fd7d24bc8830b610727824095f99d181f8e0f1d2a861890b835a1cd2a6e90a7ef5a SHA512 ee12292fc71a299e7d5a6d14b7ac5048b9de4c71834e87ca6c856bc5ad7054f8252e4d864615a625987b1fea3b712bcc76d5d02bd7647a34d9d05e8c8f2343f4
+DIST types-setuptools-70.2.0.20240704.tar.gz 39301 BLAKE2B 697ae444f26b05b00d922610b05e12f76101cbd86de4ebf7d33c335f6e35aa2e168ebe780329ebf7a2d7e4f38b9255647fb08ce10828a2e476863dc3ac9b5b19 SHA512 a5ad2c1e038473dc676199b9cc8b5f73e2c32a3db0c6474cd02c61c22d945658f122fbaaa299c04138efe0be20db789ceb376f77013f9502f5f60f78e22711f0
diff --git a/dev-python/types-setuptools/types-setuptools-70.2.0.20240704.ebuild b/dev-python/types-setuptools/types-setuptools-70.2.0.20240704.ebuild
new file mode 100644
index 000000000000..c755b6e96b17
--- /dev/null
+++ b/dev-python/types-setuptools/types-setuptools-70.2.0.20240704.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for setuptools"
+HOMEPAGE="https://pypi.org/project/types-setuptools/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-python/unrardll/metadata.xml b/dev-python/unrardll/metadata.xml
index d16225b9afdf..1ef1bfc4901c 100644
--- a/dev-python/unrardll/metadata.xml
+++ b/dev-python/unrardll/metadata.xml
@@ -2,7 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>eschwartz93@gmail.com</email>
+ <email>eschwartz@gentoo.org</email>
<name>Eli Schwartz</name>
</maintainer>
<maintainer type="project">
diff --git a/dev-python/urwid/Manifest b/dev-python/urwid/Manifest
index 363d22ebfa77..0dd48de9372a 100644
--- a/dev-python/urwid/Manifest
+++ b/dev-python/urwid/Manifest
@@ -1 +1,2 @@
DIST urwid-2.6.14.tar.gz 847848 BLAKE2B 3528c89b34a9846b6ee8524b789c80c0cb353185d6d819a179e099753cc9a5aa8fbbcdad7f80190543ad8f68126246359bb94d5e5b4112930f023b2c1619f09d SHA512 289ada7949119889ccfdd547266f423a9a6c0368c7ead20716d4f503f42c737864be84a9feff66ae036a9f7e230d338226e259f5d552e17d439a49fdbfc86149
+DIST urwid-2.6.15.tar.gz 847872 BLAKE2B 2f1fcff3a0ab0fc0a5302ee9c6bac29d39f7bfff06d404134b555bd111b465b05981cc3a8bb4d6cd93b188d104022774db97461072452c1103b34ecefcaf239b SHA512 c9027d4caf490c22ef7bf95c929a62d4f56d4b8d864e5198eb1e82db0414552e4f98caba2e210e8c7bfb91d33c55924acf637f8515c26b89c184e6bbea743ec1
diff --git a/dev-python/urwid/urwid-2.6.15.ebuild b/dev-python/urwid/urwid-2.6.15.ebuild
new file mode 100644
index 000000000000..50bb4f9e2856
--- /dev/null
+++ b/dev-python/urwid/urwid-2.6.15.ebuild
@@ -0,0 +1,41 @@
+# 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_{8,9,10,11,12} )
+PYTHON_REQ_USE="ncurses"
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Curses-based user interface library for Python"
+HOMEPAGE="
+ https://urwid.org/
+ https://pypi.org/project/urwid/
+ https://github.com/urwid/urwid/
+"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/wcwidth[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "Trio event loop" "dev-python/trio"
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index 97cae9d19d85..f225026498f2 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -1,4 +1,7 @@
DIST pubgrub-b4435e2f3af10dab2336a0345b35dcd622699d06.gh.tar.gz 86966 BLAKE2B 783191e6a6d6eaeb6d8b1f773d449de5aebd7864296758b8a0fa87df62fae855c0c0edcb4ddb11694d70a3cd8870d7b14b0c7b48a2788026d3a6104685bf46dd SHA512 2e58fad9633070adc8e7549475a8d01c2d8d56d0b6492ab3fa773cff94dc004ca1d841e3428a84dfb495e664850a184d4699d364a4d8e4298b6b8370282d110d
+DIST reqwest-middleware-21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe.gh.tar.gz 39176 BLAKE2B 00b2d0f51e4bbe29649fea50a8cc41c7b4d534f87440dd0bf487e8f7104077ad2cde824673b6624ff71924512b8a6b33ed4ac548f64bfbf78a5e0fb1366a446f SHA512 29f80816d054838af330a0ccfb8509ab22469aaecdb369d4a63c03eb3ed2aea3cc113458dd29c649e5bf7c33dbf5ef8b1e5d5a89e1cca72f9eab212f000c594f
DIST rs-async-zip-1dcb40cfe1bf5325a6fd4bfcf9894db40241f585.gh.tar.gz 96766 BLAKE2B f9efab73c65394e33e090a6292875ebf35e6669b15c356f102eb109784a4503606ae39106cd0ebe3d7d479cb0b30806d7baaaebf22d826836a24f7ed49100934 SHA512 3b845b05d97c5ab5cea286a7c11846838b40bb1fac98a51782600849a53231be8fa205094c6bdd00f6e193c807b10b28f947698696382be99cae0a8d681dabdc
DIST uv-0.2.15-crates.tar.xz 48793072 BLAKE2B 5988199d887f371f275a6ee40415743823c73a164a3dcf0c2d384e644d75625305e503543aa6027df0aefafcfc434c1a5da7ed9bea5760a3b83f4aef2f097545 SHA512 8ccf76686df81b0b704322e35e22ff95b8bf9aa4b417365e25ca77d50463095975de75959580cf2465404da7abcd88c6bc2aad5c9633110d55d5534ddeac97b2
DIST uv-0.2.18.gh.tar.gz 1303313 BLAKE2B d14280eb1d92b2c3f43dc272da66d7e3b790f6261377a04e15751243e6c22f4a960ef78c0f52ccbff5412a0ec8acc65b0719fd5abf3cc2455079e0f1e75a5415 SHA512 3ae24e2629253ddf237a10119d20685fddc3d63a66efbc328f2d92174842e8fb6e335f6d3505642276ffc8abd349a25af985bf528ee9d42432271085a69ad018
+DIST uv-0.2.20-crates.tar.xz 48761312 BLAKE2B 888ee349ef5849c0333e67d2ab2a0c80bc5bd66fdf2de3e2b9f11d62f48aa075a5b66e234800c987cbda134cd5621dc0de0ab8e9a6ab63ad4e19e7eff33c7ca9 SHA512 5b7d0d48400e90cd6cfe4d615fa9672cca08e028d5b25dca97d360729a7eec6a39bf8613d076291097a11c39851a5348e045f5ee17b27053ebfc1469bf516512
+DIST uv-0.2.21.gh.tar.gz 1318725 BLAKE2B dc1cbce639a05050f7a2ca97f9ee45fab8099045970e9543174fd963b12a9a355abd69aebc37f7bc91d9884c9a882ec6f43148bdc6b20e52728675f1f3f5f5d7 SHA512 7923781117117ad5645df7792396248f8064f9107719797e5efe118b70dfd51f6e53403fe7aa87ffb7e32c9327543ba9b001ffeb95b69028695d2e75fc53e2b7
diff --git a/dev-python/uv/uv-0.2.21.ebuild b/dev-python/uv/uv-0.2.21.ebuild
new file mode 100644
index 000000000000..8839559a2ad0
--- /dev/null
+++ b/dev-python/uv/uv-0.2.21.ebuild
@@ -0,0 +1,108 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;1dcb40cfe1bf5325a6fd4bfcf9894db40241f585;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;b4435e2f3af10dab2336a0345b35dcd622699d06;pubgrub-%commit%'
+ [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-middleware'
+ [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe;reqwest-middleware-%commit%/reqwest-retry'
+)
+
+inherit cargo check-reqs
+
+CRATE_PV=0.2.20
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+BDEPEND="
+ >=virtual/rust-1.77
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_prepare() {
+ default
+
+ # remove patch.* that breaks GIT_CRATES
+ sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-21ceec9a5fd2e8d6f71c3ea2999078fecbd13cbe/reqwest-middleware\" }@" Cargo.toml || die
+
+ # https://github.com/vorot93/tokio-tar/pull/23
+ # (fortunately uv already depends on portable-atomic, so we don't
+ # have to fight Cargo.lock)
+ cd "${WORKDIR}/cargo_home/gentoo/tokio-tar-0.3.1" || die
+ eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}
diff --git a/dev-python/validators/Manifest b/dev-python/validators/Manifest
index 8f6f71f50e15..5d4ef7da0816 100644
--- a/dev-python/validators/Manifest
+++ b/dev-python/validators/Manifest
@@ -1,2 +1,3 @@
DIST validators-0.28.3.tar.gz 65129 BLAKE2B 00ff76346e46f14bc0eb986eb6fc791e43b773bbad2b1cfe9d0b6f24d0f141ff258d5bea97d5330b98307a79c0a75dba69ffe3d85c28fa2ebe509ca0e305d2aa SHA512 d5d1fe6cf250698161efaa6c4d23225f2aab250a7bbf1a1d1de2ee171fd35731905a1c8596dfbc15840a97ac684d8497cb338047db8fc8520ce2056198ccae8d
DIST validators-0.29.0.tar.gz 67150 BLAKE2B 9c202b91dd8125e2d4dc62fdf0ebd5313fd49f5ed28a71c26f90c9683cab25f688e5f242432616c9a4068429ab3679eaaf518578f3cc3b97ff6894f69883697a SHA512 e8daedd2878f2e2e51c76c8df2141bf4594c5789ed803e9bec592572b7df4f0be22c3c1a948ae6137654cc3bc7a0c638100b264f05771f5b2a13ee10d62deb79
+DIST validators-0.30.0.tar.gz 68553 BLAKE2B 96a59c2155fa0a33c12502e36fb517b068a56edba7c161e722cea8832190a407b4a4c81beb85845239b7e76622e4fa31ff577b5278787fd7bbe441133762731f SHA512 96247ccf9ea5db12f6b405971aac11f834f64a83b7e6efdc6d04c81a9ff2901ece786bc2ad2301c738ff0eae8031a6aa2a1fef629048e61c2f365ab172408f46
diff --git a/dev-python/validators/validators-0.30.0.ebuild b/dev-python/validators/validators-0.30.0.ebuild
new file mode 100644
index 000000000000..fb830b053fda
--- /dev/null
+++ b/dev-python/validators/validators-0.30.0.ebuild
@@ -0,0 +1,26 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python Data Validation for Humans"
+HOMEPAGE="
+ https://github.com/python-validators/validators/
+ https://pypi.org/project/validators/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # requires eth-hash
+ tests/crypto_addresses/test_eth_address.py
+)
diff --git a/dev-python/ytmusicapi/Manifest b/dev-python/ytmusicapi/Manifest
index e677780578e6..bb38cab0cccd 100644
--- a/dev-python/ytmusicapi/Manifest
+++ b/dev-python/ytmusicapi/Manifest
@@ -1 +1,2 @@
DIST ytmusicapi-1.7.3.tar.gz 277265 BLAKE2B 1461450fb2c1ceff63703f26c89aa6947cfca7ecae13232dadc207a20361e36ec43a03718dd5b0d63a84e69a5e77eae722fa06b3f1036183f65bbf5ee0fc1ebe SHA512 fa305e8a07c668270db27ea537101862ad78f8c1d353f4f5d98cefdfbcdf1388195e250f65076b1fc0aba5f95951d6b9ff76ca71201e9b35cd1af3fa6fd4476b
+DIST ytmusicapi-1.7.4.tar.gz 277715 BLAKE2B 6210c7666281e1b118a28571fe5852c319d252fbda19ec160a03c0a8a17c4a629e50794064bc86667aaa4d16a1937d3a7445abcf19da7d0094d064db99933e9b SHA512 98f00cc86eb749867ff69a7a5d8b3ea75b00072bb3001a2a087a07e44dab2f0793af2c90527858258929b2638a11f0271bc3949153e437ebc312d01377c9c635
diff --git a/dev-python/ytmusicapi/ytmusicapi-1.7.4.ebuild b/dev-python/ytmusicapi/ytmusicapi-1.7.4.ebuild
new file mode 100644
index 000000000000..7cc8b0851928
--- /dev/null
+++ b/dev-python/ytmusicapi/ytmusicapi-1.7.4.ebuild
@@ -0,0 +1,24 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Unofficial API for YouTube Music"
+HOMEPAGE="https://ytmusicapi.readthedocs.io/
+ https://github.com/sigma67/ytmusicapi/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme