summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PythonQwt/Manifest2
-rw-r--r--dev-python/PythonQwt/PythonQwt-0.16.3.ebuild (renamed from dev-python/PythonQwt/PythonQwt-0.15.0.ebuild)2
-rw-r--r--dev-python/anthropic/Manifest6
-rw-r--r--dev-python/anthropic/anthropic-0.116.0.ebuild117
-rw-r--r--dev-python/blobfile/Manifest2
-rw-r--r--dev-python/blobfile/blobfile-3.2.0.ebuild24
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.43.47.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.43.47.ebuild67
-rw-r--r--dev-python/caio/Manifest2
-rw-r--r--dev-python/caio/caio-0.10.2.ebuild (renamed from dev-python/caio/caio-0.10.1.ebuild)0
-rw-r--r--dev-python/google-auth/Manifest2
-rw-r--r--dev-python/google-auth/google-auth-2.56.0.ebuild63
-rw-r--r--dev-python/jaraco-functools/Manifest1
-rw-r--r--dev-python/jaraco-functools/jaraco-functools-4.6.0.ebuild56
-rw-r--r--dev-python/jiter/Manifest141
-rw-r--r--dev-python/jiter/jiter-0.15.0.ebuild185
-rw-r--r--dev-python/jiter/jiter-0.16.0.ebuild44
-rw-r--r--dev-python/json-repair/Manifest2
-rw-r--r--dev-python/json-repair/json-repair-0.61.4.ebuild (renamed from dev-python/json-repair/json-repair-0.61.1.ebuild)0
-rw-r--r--dev-python/mcp/mcp-1.28.1.ebuild37
-rw-r--r--dev-python/narwhals/Manifest2
-rw-r--r--dev-python/narwhals/narwhals-2.24.0.ebuild44
-rw-r--r--dev-python/openai/Manifest6
-rw-r--r--dev-python/openai/openai-2.44.0.ebuild121
-rw-r--r--dev-python/peewee/Manifest3
-rw-r--r--dev-python/peewee/peewee-4.1.1.ebuild83
-rw-r--r--dev-python/peewee/peewee-4.2.2.ebuild (renamed from dev-python/peewee/peewee-4.1.0.ebuild)0
-rw-r--r--dev-python/pyghmi/Manifest2
-rw-r--r--dev-python/pyghmi/pyghmi-1.6.19.ebuild (renamed from dev-python/pyghmi/pyghmi-1.6.17.ebuild)0
-rw-r--r--dev-python/pyproject-fmt/Manifest3
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-2.25.3.ebuild113
-rw-r--r--dev-python/pytest-cov/pytest-cov-7.1.0.ebuild2
-rw-r--r--dev-python/python-barbicanclient/Manifest2
-rw-r--r--dev-python/python-barbicanclient/python-barbicanclient-7.5.0.ebuild (renamed from dev-python/python-barbicanclient/python-barbicanclient-7.3.0.ebuild)0
-rw-r--r--dev-python/python-manilaclient/Manifest1
-rw-r--r--dev-python/python-manilaclient/metadata.xml7
-rw-r--r--dev-python/python-manilaclient/python-manilaclient-6.1.0.ebuild58
-rw-r--r--dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild10
-rw-r--r--dev-python/python-openstackclient/Manifest1
-rw-r--r--dev-python/python-openstackclient/python-openstackclient-10.2.0.ebuild59
-rw-r--r--dev-python/standardwebhooks/standardwebhooks-1.0.1.ebuild8
-rw-r--r--dev-python/tempora/Manifest1
-rw-r--r--dev-python/tempora/tempora-5.12.0.ebuild28
-rw-r--r--dev-python/tiktoken/Manifest40
-rw-r--r--dev-python/tiktoken/files/tiktoken-0.13.0-special-token-roudtrip.patch (renamed from dev-python/tiktoken/files/tiktoken-0.12.0-special-token-roudtrip.patch)2
-rw-r--r--dev-python/tiktoken/tiktoken-0.13.0.ebuild (renamed from dev-python/tiktoken/tiktoken-0.12.0.ebuild)70
-rw-r--r--dev-python/translate-toolkit/Manifest1
-rw-r--r--dev-python/translate-toolkit/translate-toolkit-3.19.14.ebuild123
-rw-r--r--dev-python/urwid/Manifest2
-rw-r--r--dev-python/urwid/urwid-4.0.4.ebuild49
-rw-r--r--dev-python/yt-dlp-ejs/metadata.xml1
-rw-r--r--dev-python/yt-dlp-ejs/yt-dlp-ejs-0.8.0.ebuild1
54 files changed, 846 insertions, 805 deletions
diff --git a/dev-python/PythonQwt/Manifest b/dev-python/PythonQwt/Manifest
index c98f6a5adee1..539bb5d08079 100644
--- a/dev-python/PythonQwt/Manifest
+++ b/dev-python/PythonQwt/Manifest
@@ -1,3 +1,3 @@
DIST pythonqwt-0.14.6.tar.gz 1218842 BLAKE2B c632a1e5bd714c1b94560df55ce86616831645b34ac1fd3dfe2e4d794532816a132d401c89c20eaee64c24a4c16a0defe840e6ec003bf05ab8c509426d202a30 SHA512 3d660baf79276a0b2f35abfec4f1c81d55e6ddec3dd803b68f1239deb33c5fc5f87c5584b6236009bc1b98e63ae306f36f75d663dff936620db38b648963a28f
-DIST pythonqwt-0.15.0.tar.gz 1221219 BLAKE2B 8db6a5a23fbfbe6a066e7d476c18576e06e22728b4c63c2d7fcb01df18936dbef2669ce6a1aacdde6035aea4e760fa334dc1ad3eaf483562d0ef17a0f304e026 SHA512 355ea2c3ec0c5de13fcdeadbaa79863a357a34271c57c8771249b0e2bbb5820aa156cd68fb3d3601721385239a0c2611b855a1fb0015bad890b7878a8c7b8d21
DIST pythonqwt-0.16.0.tar.gz 1234388 BLAKE2B 590ebd5f80c3be43fad3f2ac5d9fef8800c02a6c8e379a5c232eccaf668f831087c86e056785f8bc0c52a8440157566f6f6b823e31a8f5ca2d1c4806a95fbb1f SHA512 3c8c078daf8080347d2764331ffa9de1f7380d7919c9e58d3e76d9764702c2309dd4067607824f75ada15950b0584832c3a2e4bcc064d8e656144ae65b8fe424
+DIST pythonqwt-0.16.3.tar.gz 1243532 BLAKE2B 08139c39ca68c5c466a902f05e4e1d16e82e4187499dbd9345759bf37c86904b636070794f550b7b5c8ad8ad59aa9550a635d3fd508c2d01228f796eeac10bdb SHA512 cf67b21443926db15e0c85dc1feef8b0c64407d974273e4bb2c78d1597233ae1235f6f67d74eb3bbd3ffeb27ee488b037488abaf6a01a975e3942f24d244a4b9
diff --git a/dev-python/PythonQwt/PythonQwt-0.15.0.ebuild b/dev-python/PythonQwt/PythonQwt-0.16.3.ebuild
index 9bcadfd6f604..43941a1aff20 100644
--- a/dev-python/PythonQwt/PythonQwt-0.15.0.ebuild
+++ b/dev-python/PythonQwt/PythonQwt-0.16.3.ebuild
@@ -13,7 +13,7 @@ HOMEPAGE="https://pypi.org/project/PythonQwt"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64"
# Test directory seems to contain demo instead
RESTRICT="test"
diff --git a/dev-python/anthropic/Manifest b/dev-python/anthropic/Manifest
index 4ad49d5e6d7e..1b6949fef1ba 100644
--- a/dev-python/anthropic/Manifest
+++ b/dev-python/anthropic/Manifest
@@ -1,5 +1,5 @@
DIST anthropic-openapi-spec-0.116.0.yml 1719154 BLAKE2B 32be75b7450aa5062831d2f1a78a97303f2f783a94df1850e724882b2e587328bb58245225f0dc605a30c9d681f3ee7f5dea53e7988997343fd753e8ceac9fe2 SHA512 c9849308da448eaac0960006c01fde2f4f2f749fdcfe9316931be0fd11b9fcbee6d6897140722c6e5c211480e93b19f0ee274fd31ab1c2ec4193dd1ab3af77f2
DIST anthropic-sdk-python-0.116.0.gh.tar.gz 970819 BLAKE2B 74a310bffe030cce92c7be650cfd77c1cb41fe1ce660536a383502a8239fbe4ff49a83f574e3637354d743e585fc2760c1e4446830def8f7135192788e4838b3 SHA512 0efd6713463fb242427ed86bb963501c99dd54f6da455d9ee5124fc3309a2fc7490add508bf09037583199de77f8e38e8766bfa42854b085c1e6bb38cc385647
-DIST npm-@stdy-cli-cli-0.22.1.tgz 7776 BLAKE2B ec66af59c4c864a4331dc7918ed0a82d452579427663c3666b94d6008e769cb8a61d00e1971a394c326ca180da7f3009597b15d4c6bea8d169bda56c87ae21fb SHA512 55d9c2a0afddd09588853a1a8c1c4075a813a4b097ff34dded18ae2b529d4f5d90e29667ffe792f7b82af78fa3bfa4db88c77ef5259e39db100a86a0a4b98d7c
-DIST npm-@stdy-cli-linux-arm64-cli-linux-arm64-0.22.1.tgz 37635112 BLAKE2B f749d99342d9cffb831f0feea34ed74301a3beea7ec4c7e46cd5b942cacfea4b10c28632cc3e38a0ac00b565c2ca5889cb6587fcccb75f1557fa29dace58a343 SHA512 5c6432dd9a85e423aa4600151b109da16f5dcf19dfc710920070869a1a4573ea557e941c6077cf72736199686994c09eae24d4c8228b246fbf7c67728e2eded9
-DIST npm-@stdy-cli-linux-x64-cli-linux-x64-0.22.1.tgz 38431354 BLAKE2B f6b49ce9f79ad98de58f6f01874e5ae03f728f062b09b91b092f1410e1bf3d2874d25dfb30038291429043eeffc4c5e3183e7e9307c6fb889521008b981df4f9 SHA512 bbbe7cd48dec73a47e3d4c0692f1056ef0ffc3a617bd193e893d0122658a3ed298036e9c3cfd7a96003b82abaeded00493eddcf581a7e71854a6109cf7a68b4a
+DIST stdy-cli-0.22.1.npm.tgz 7776 BLAKE2B ec66af59c4c864a4331dc7918ed0a82d452579427663c3666b94d6008e769cb8a61d00e1971a394c326ca180da7f3009597b15d4c6bea8d169bda56c87ae21fb SHA512 55d9c2a0afddd09588853a1a8c1c4075a813a4b097ff34dded18ae2b529d4f5d90e29667ffe792f7b82af78fa3bfa4db88c77ef5259e39db100a86a0a4b98d7c
+DIST stdy-cli-linux-arm64-0.22.1.npm.tgz 37635112 BLAKE2B f749d99342d9cffb831f0feea34ed74301a3beea7ec4c7e46cd5b942cacfea4b10c28632cc3e38a0ac00b565c2ca5889cb6587fcccb75f1557fa29dace58a343 SHA512 5c6432dd9a85e423aa4600151b109da16f5dcf19dfc710920070869a1a4573ea557e941c6077cf72736199686994c09eae24d4c8228b246fbf7c67728e2eded9
+DIST stdy-cli-linux-x64-0.22.1.npm.tgz 38431354 BLAKE2B f6b49ce9f79ad98de58f6f01874e5ae03f728f062b09b91b092f1410e1bf3d2874d25dfb30038291429043eeffc4c5e3183e7e9307c6fb889521008b981df4f9 SHA512 bbbe7cd48dec73a47e3d4c0692f1056ef0ffc3a617bd193e893d0122658a3ed298036e9c3cfd7a96003b82abaeded00493eddcf581a7e71854a6109cf7a68b4a
diff --git a/dev-python/anthropic/anthropic-0.116.0.ebuild b/dev-python/anthropic/anthropic-0.116.0.ebuild
index 922126f18931..a58f70da1333 100644
--- a/dev-python/anthropic/anthropic-0.116.0.ebuild
+++ b/dev-python/anthropic/anthropic-0.116.0.ebuild
@@ -6,41 +6,24 @@ EAPI=8
DISTUTILS_USE_PEP517=hatchling
PYTHON_COMPAT=( python3_{13..14} )
-inherit distutils-r1 optfeature
-
# See https://github.com/anthropics/anthropic-sdk-python/blob/main/.stats.yml
-API_SPEC_BASE="https://storage.googleapis.com/stainless-sdk-openapi-specs/anthropic"
-API_SPEC="anthropic-openapi-spec-${PV}.yml"
+STAINLESS_SPEC_PATH=${PN}/${PN}-506a5ad71d522b4ae56ac3429380486647af1f92eddde80603480fb592d62b54.yml
+# See https://github.com/anthropics/anthropic-sdk-python/blob/main/scripts/mock
+STAINLESS_MOCK_SERVER_VERSION=0.22.1
+STAINLESS_MOCK_SERVER_PACKAGE_JSON="${FILESDIR}/${PN}-0.116.0-mock-server-package.json"
+
+inherit distutils-r1 optfeature stainless-python
+
MY_PN="anthropic-sdk-python"
MY_P="${MY_PN}-${PV}"
-# See https://github.com/anthropics/anthropic-sdk-python/blob/main/scripts/mock
-STDY_PV=0.22.1
DESCRIPTION="The official Python library for the anthropic API"
HOMEPAGE="
https://github.com/anthropics/anthropic-sdk-python
https://pypi.org/project/anthropic
"
-SRC_URI="
+SRC_URI+="
https://github.com/anthropics/${MY_PN}/archive/refs/tags/v${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
-
- test? (
- ${API_SPEC_BASE}/anthropic-506a5ad71d522b4ae56ac3429380486647af1f92eddde80603480fb592d62b54.yml
- -> ${API_SPEC}
-
- https://registry.npmjs.org/@stdy/cli/-/cli-${STDY_PV}.tgz
- -> npm-@stdy-cli-cli-${STDY_PV}.tgz
-
- amd64? (
- https://registry.npmjs.org/@stdy/cli-linux-x64/-/cli-linux-x64-${STDY_PV}.tgz
- -> npm-@stdy-cli-linux-x64-cli-linux-x64-${STDY_PV}.tgz
- )
-
- arm64? (
- https://registry.npmjs.org/@stdy/cli-linux-arm64/-/cli-linux-arm64-${STDY_PV}.tgz
- -> npm-@stdy-cli-linux-arm64-cli-linux-arm64-${STDY_PV}.tgz
- )
- )
"
S="${WORKDIR}/${MY_P}"
@@ -67,8 +50,6 @@ BDEPEND="
>=dev-python/httpx-aiohttp-0.1.9[${PYTHON_USEDEP}]
>=dev-python/rich-13.7.1[${PYTHON_USEDEP}]
>=dev-python/standardwebhooks-1.0.1[${PYTHON_USEDEP}]
- net-libs/nodejs[npm]
- net-misc/curl
)
"
@@ -82,88 +63,6 @@ EPYTEST_PLUGINS=(
)
distutils_enable_tests pytest
-src_unpack() {
- unpack "${MY_PN}-${PV}.gh.tar.gz"
-}
-
-src_test() {
- einfo "Assembling npm cache..."
-
- local -x npm_config_cache="${WORKDIR}/npm-cache"
- mkdir -p "${npm_config_cache}" || die
-
- for distfile in ${A}; do
- if [[ "${distfile}" == npm-* ]]; then
- npm cache add "${DISTDIR}/${distfile}" &>/dev/null || die
- fi
- done
-
- einfo "Installing mock server..."
-
- local mock_dir="${WORKDIR}/mock-server"
- mkdir -p "${mock_dir}" || die
-
- cp "${FILESDIR}/${PN}-0.116.0-mock-server-package.json" \
- "${mock_dir}/package.json" || die
- cp "${FILESDIR}/${PN}-0.116.0-mock-server-package-lock.json" \
- "${mock_dir}/package-lock.json" || die
-
- local mock_dir="${WORKDIR}/mock-server"
- local mock="${mock_dir}/node_modules/.bin/steady"
-
- pushd "${mock_dir}" >/dev/null || die
-
- npm ci &>/dev/null || die
-
- einfo "Starting mock server..."
-
- # Replicate the logic from scripts/mock --daemon
- "${mock}" --host 127.0.0.1 -p 4010 \
- --validator-form-array-format=brackets \
- --validator-query-array-format=brackets \
- --validator-form-object-format=brackets \
- --validator-query-object-format=brackets \
- "${DISTDIR}/${API_SPEC}" &> .stdy.log &
- local mock_pid=$!
-
- is_mock_running() {
- local -a args
- readarray -d '' args < "/proc/${mock_pid}/cmdline" 2>/dev/null || return 1
-
- # Check args[1] (native) or args[2] (QEMU user-mode emulation)
- [[ "${args[1]}" == "${mock}" || "${args[2]}" == "${mock}" ]]
- }
-
- local attempts=0
- while ! curl -sf "http://127.0.0.1:4010/_x-steady/health" &>/dev/null; do
- if ! is_mock_running; then
- cat .stdy.log
- die "Mock server failed to start"
- fi
- attempts=$((attempts + 1))
- if (( attempts >= 300 )); then
- cat .stdy.log
- die "Timed out waiting for mock server to start"
- fi
- sleep 0.1
- done
-
- # Oops; connected to another Steady instance running on 4010
- is_mock_running || die
-
- popd >/dev/null || die
-
- nonfatal distutils-r1_src_test
- local ret=${?}
-
- if is_mock_running; then
- einfo "Stopping mock server..."
- kill "${mock_pid}" || die
- fi
-
- [[ ${ret} -ne 0 ]] && die
-}
-
pkg_postinst() {
optfeature "alternative async HTTP client support" \
"dev-python/aiohttp >=dev-python/httpx-aiohttp-0.1.9"
diff --git a/dev-python/blobfile/Manifest b/dev-python/blobfile/Manifest
index b13533a6eef3..5996b02087d8 100644
--- a/dev-python/blobfile/Manifest
+++ b/dev-python/blobfile/Manifest
@@ -1 +1 @@
-DIST blobfile-3.2.0.tar.gz 78442 BLAKE2B f89d39931a87ac2f6a98fc793771b1d3fd5b199553f18cefaabd49a21d2d2e61bf3c0a805c1b7c6f4c6dfdd2a3ce080349f4b2e9c0504e89627138754a0cab9e SHA512 aa254372e410d7cce5fc6cbe3af61c0e8a99f6adf38b38a024e45155b64552fdea4acb0aa41ec20208ab1abd0b8719718ba8abe29274639808299f7d5a0e7eca
+DIST blobfile-3.2.0.gh.tar.gz 81097 BLAKE2B 76caae4442002ba13f273f740c733ec91ddeb1a96625965cdb0e41b1aca9bbcacd9c0ae38dfd31ffabfac47036c17f5de87223c86fe9e59a1805bc6a75479059 SHA512 a74d522d94ec2a4c5cc0a6ea3a302b1b14668c74c33db353ff5f671ed580be89e655a0866c31815d71c9ed0f3598b2a79b8405f6bbf170f962c6a38ae2630ead
diff --git a/dev-python/blobfile/blobfile-3.2.0.ebuild b/dev-python/blobfile/blobfile-3.2.0.ebuild
index 94bb62f4da87..56dd2910805f 100644
--- a/dev-python/blobfile/blobfile-3.2.0.ebuild
+++ b/dev-python/blobfile/blobfile-3.2.0.ebuild
@@ -6,19 +6,20 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{13..14} )
-inherit distutils-r1 pypi
+inherit distutils-r1
DESCRIPTION="Read GCS, ABS and local paths with the same interface, tensorflow.io.gfile clone"
HOMEPAGE="
https://github.com/blobfile/blobfile
https://pypi.org/project/blobfile/
"
+SRC_URI="
+ https://github.com/${PN}/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz
+"
LICENSE="Unlicense"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
-PROPERTIES="test_network"
-RESTRICT="test"
RDEPEND="
>=dev-python/filelock-3.0[${PYTHON_USEDEP}]
@@ -39,3 +40,20 @@ python_prepare() {
sed -e 's/pycryptodomex/pycryptodome/' -i pyproject.toml || die
sed -e 's/from Cryptodome/from Crypto/' -i blobfile/_gcp.py || die
}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # network
+ blobfile/_ops_test.py::test_az_path
+ blobfile/_ops_test.py::test_azure_public_get_url
+ blobfile/_ops_test.py::test_copy_azure_public
+ blobfile/_ops_test.py::test_gcs_public
+ blobfile/_ops_test.py::test_concurrent_write_as
+ blobfile/_ops_test.py::test_more_exists
+ blobfile/_ops_test.py::test_invalid_paths
+ blobfile/_ops_test.py::test_azure_public_container
+ blobfile/_ops_test.py::test_scandir_error
+ )
+
+ epytest -k "not _get_temp_gcs_path and not _get_temp_as_path" blobfile/*_test.py
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 0b4485f9a8a2..4a7900b08b57 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.43.29.gh.tar.gz 1161648 BLAKE2B 3f0a040019fd8ea2a42a82c75bf31e563ef
DIST boto3-1.43.36.gh.tar.gz 1169288 BLAKE2B c316bf8bc804c7c7a70eed0b01a66d7cf8ffdd0662e3bdb54864a9c78d3baa1d092c99fd43dd2df93314fc4795738a6ad432cad6a333f0a5535e13b9c6765fca SHA512 bd9f623a67508741cd45b239a4e575bf5688146d38bdb4f3af0b294f17898205e23b57d04bf6ed9584b92088515be1fd6f11922fdba5cd19bcf3ea4340d16f55
DIST boto3-1.43.40.gh.tar.gz 1175361 BLAKE2B cb24a2dd76debf1b3b2d759d020b2cf17248db20044b06e0c191821170644f4762997a527b8e5c401305f5b0c725d1269d610c9cb1aa2bb776d894f70b09f3ac SHA512 eb7d0218051abddd74e544d8eaa4e83cdd2e9ef305d059c165c926ade12a795ae196eefbaa2b64176fe26a1bf20419d775670fccc4fda485c93197d10efcbcf1
DIST boto3-1.43.46.gh.tar.gz 1180600 BLAKE2B b27ffe984aade7d1f1b0a4c66204acecd5216cf5ccd66c40ed18015c48103c1a9a8c68ea39e5ddc971f6fdeaa0bcf4c39cdd9c252494f1650ea0f431644f4148 SHA512 447256677ce2943450877d7e08dc3c9bc2dc6da284d68c7a43ef25c6445acf135b5b26bf5ede80bd4d6fde48181bf6e5898aadda84e3190caad176280c313a31
+DIST boto3-1.43.47.gh.tar.gz 1181255 BLAKE2B 9ecbe5f8f8720df1b5f9359aded4d708c25078703ca38763720068ba1135ade97f12bb288bc83850a72a14a56fbb5b58cbbd41c7160ba04c9e35ea6f47963f9f SHA512 d33f8e155195169727996dfbbe84a7d51ec1c65730853d61e21a952a0acbc7b5cb2c02ac61530a3da83dfd952ee423ffda62544723fe04ccd367a97ceed2e36c
diff --git a/dev-python/boto3/boto3-1.43.47.ebuild b/dev-python/boto3/boto3-1.43.47.ebuild
new file mode 100644
index 000000000000..93fbbe6dd59b
--- /dev/null
+++ b/dev-python/boto3/boto3-1.43.47.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.19.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+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() {
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index d7bbc964a581..bde2d104ae9d 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.43.29.gh.tar.gz 16476072 BLAKE2B 2525545c2425568e8765100bad446e2
DIST botocore-1.43.36.gh.tar.gz 16601718 BLAKE2B b4643995a2c173c9df865923d6912e2c804da45b3bcfaf2e73e941366df02c23f4cb05408550992e9747aaacf1acaaced06dc497625e5e3dd5d8dc1eafc881b9 SHA512 02754b7766b91b569fa9aa3f83797c4b01834914415b535d690308e373583cafadf0b35846309aabbc0c66413d7adec05db0132e441eae273c4b9b78327570a8
DIST botocore-1.43.40.gh.tar.gz 16621912 BLAKE2B 87339ac693df7e8753b8a7463a93aea57f24005c48c6d5b0276307928704893f315e1b7c671d9a91340899bd8bff8846f7afa23eca4dbfaa03f54a3f07b2fa43 SHA512 49257c431950a63d34c137b2b3ed1bb642cfbdc98351dab2cb2dfdaae6f6e88ecb11c74d89d9ec52ad6b558e9d94fa6bc5da13c5a0e67ad441decf1df516e888
DIST botocore-1.43.46.gh.tar.gz 16680698 BLAKE2B cbb2a15145d8fd7d4021538774b21bdb3adfc95c0e9f91a5970b1cb1fc03f5453ab0b6315d27c70b846ea12a2fc8442eccebd04e357d22589cddf5e39fa251dd SHA512 a37e10b54383ad6a7fc1a764c8f565c127eac81e989197335b5bc3ca57b736cbcb36635c070d6d2cc48a06fafdb7c88319630d2c22b3b4349efb406438ba2a50
+DIST botocore-1.43.47.gh.tar.gz 16683434 BLAKE2B ff7b769b782fd8c94e3faeaffa095f0a659b31afbe271619a698d18b2804c2d38e91f94f8d561fbedae08bf6461d4b48cee09a25e96f8d532a48a408499c14b3 SHA512 12f33f16dcc43b60904b1ec7f1307a7a45072f4cdafe3b9a6b4c4859009c7cd1b434a76a6c661e7b1d79c67a82743440ff57d07ee3fe5b3bf0ef8a980ad943e8
diff --git a/dev-python/botocore/botocore-1.43.47.ebuild b/dev-python/botocore/botocore-1.43.47.ebuild
new file mode 100644
index 000000000000..a3a161f78545
--- /dev/null
+++ b/dev-python/botocore/botocore-1.43.47.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+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_PLUGINS=()
+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
+ )
+
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/caio/Manifest b/dev-python/caio/Manifest
index c2b2b53e301e..981144d91d60 100644
--- a/dev-python/caio/Manifest
+++ b/dev-python/caio/Manifest
@@ -1 +1 @@
-DIST caio-0.10.1.gh.tar.gz 140184 BLAKE2B 37c223011efe2d53e114b1aa921cf9bf81aed3e7355ad37cf2db991b7ad8951bf2a2147038121679eb4f6d5c79cfc1a91eb6af1761726badf31ce78ee8eff792 SHA512 73598e30dff4899fd4dd88794e8883c9b6fd9fb131f3bf3f12b9edfd63be4a54ff407a29b9b5b0f6f0907d21ec5e3fce495dac6a6df0297163adebabaa2252ea
+DIST caio-0.10.2.gh.tar.gz 140166 BLAKE2B 9e46ede7afa85f41310de95dcb711daccaa699d8b101fda7530712b4acfb7a91d00789bfde64eba784cef7304b82092f7657c46a8b948223f7472421ff40de20 SHA512 f9d7f09114be3ec10564d4b8c79565b94538b142af181f4885bc759f23b806a830101a24d3bf5389f4d1a36b223091a3f2ef8c7131e4c7e76ef5261f80fcf4f9
diff --git a/dev-python/caio/caio-0.10.1.ebuild b/dev-python/caio/caio-0.10.2.ebuild
index 7a2c1c7df2ca..7a2c1c7df2ca 100644
--- a/dev-python/caio/caio-0.10.1.ebuild
+++ b/dev-python/caio/caio-0.10.2.ebuild
diff --git a/dev-python/google-auth/Manifest b/dev-python/google-auth/Manifest
index 368ed8f54715..f2ebeade8359 100644
--- a/dev-python/google-auth/Manifest
+++ b/dev-python/google-auth/Manifest
@@ -2,3 +2,5 @@ DIST google_auth-2.54.0.tar.gz 343161 BLAKE2B 69268cb3678e3ec09380936e4d5aa1d3ea
DIST google_auth-2.54.0.tar.gz.provenance 5950 BLAKE2B 08c92d3ea4e325b0ffa9cd63747ed54915cc482b34aed06904de44e27d82639f279751a42f9930115e76fadaf157d53fda0c31abaec87709ad18e69b69fbf45b SHA512 11a6a3f0db49560a74bd791f3811fdacd1bddf1f8d2b165b72447f3969b720850ed5187d6fd16a2dd8b14499f4432b5bd752f3deda480b42ec5a4ecbccd7d851
DIST google_auth-2.55.2.tar.gz 361414 BLAKE2B 80b63272ca8ec47562d969119381e3ed08c4de2b4a62e5eeaaa9c27a7ab2a88c31745f948d5682f9c36d94f9f2dcc4e55eff0138ceb87b366df45e0eb428732d SHA512 e5829bccb7b9632bb73322df755a32ddd237591b9d51a2028888c92efb42bf95688697aa94cb76115209efabc4d04fe4f76c86ad114104e71461f04f36c769b0
DIST google_auth-2.55.2.tar.gz.provenance 6134 BLAKE2B 121e1ebefe3d4885000f1c998b7b4114249f8a4eaa73ea3577846d721b1a0b78e68d90848a21ac4d74495ea167a274a1c8b393e712791fc87f1a8b3f0030438b SHA512 8f4d8b65027519afdc8063edaadc77d65a00a74cffdb140ee0a34fcb4f5c1ea681111a67afc530e5f456c7b974886ed2cee078ac4dbc9f32e8d0924fe1045936
+DIST google_auth-2.56.0.tar.gz 364629 BLAKE2B 9a9ef66a562754bff0b629612cab86e789f20f89a7b183f2497159f5a6b26507067c51ca413029fec9b69f35c753ba862f741ded2b2aae7e191b80addf2cb5a1 SHA512 57fc7d7d3d84888794380c3390f5623497f7bd817114f41ebb740396f069f7be8e82bcb3f08e4bc1fdd763ad6c15ed7bc8614be8a9516360874fe05b9456f609
+DIST google_auth-2.56.0.tar.gz.provenance 5993 BLAKE2B 01b62740f5b6cca6cdec2a6e02a45cb1e43a509b2c5f765ff2f1b1af3bef22c73e518f2ed0022c55a0a211b0aec2106a55532f8708b41ceede514d0544736916 SHA512 b5420a3c02b47e41e5313c6df25bb6e8b57067f1a320c335be75372228739b80e6379a27f6aee8e914165b2dc9d5b2ae8736febcb467dfaa3979f5e3645b9507
diff --git a/dev-python/google-auth/google-auth-2.56.0.ebuild b/dev-python/google-auth/google-auth-2.56.0.ebuild
new file mode 100644
index 000000000000..e460c792a87a
--- /dev/null
+++ b/dev-python/google-auth/google-auth-2.56.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=gcp:google-cloud-sdk-py@oss-exit-gate-prod.iam.gserviceaccount.com
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Google Authentication Library"
+HOMEPAGE="
+ https://github.com/googleapis/google-auth-library-python/
+ https://pypi.org/project/google-auth/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+# TODO: rsa is now optional
+RDEPEND="
+ >=dev-python/cryptography-41.0.5[${PYTHON_USEDEP}]
+ >=dev-python/pyasn1-0.1.7[${PYTHON_USEDEP}]
+ >=dev-python/pyasn1-modules-0.2.1[${PYTHON_USEDEP}]
+ >=dev-python/rsa-3.1.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/aioresponses[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ >=dev-python/pyjwt-2.0[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/pyu2f[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,localserver} )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # tests are broken with up-to-date pyopenssl
+ tests/transport/test__mtls_helper.py::TestDecryptPrivateKey::test_success
+)
+
+EPYTEST_IGNORE=(
+ # these are compatibility tests with oauth2client
+ # disable them to unblock removal of that package
+ tests/test__oauth2client.py
+)
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # unpin deps
+ sed -i -e 's:,<[0-9.]*::' setup.py || die
+}
diff --git a/dev-python/jaraco-functools/Manifest b/dev-python/jaraco-functools/Manifest
index b772321b47f7..5dd6dfd80a2d 100644
--- a/dev-python/jaraco-functools/Manifest
+++ b/dev-python/jaraco-functools/Manifest
@@ -1 +1,2 @@
DIST jaraco_functools-4.5.0.tar.gz 20272 BLAKE2B 5e6c7fee636eac91bdfbe226bccc70c98ae7c92c70ebf79436f8b7db226992921b48dad180a21ca01338a628a41a71a87c1f1511a709f8b322b6a4df1bf64e16 SHA512 b674baff8f5f882b82deb86f09da8db8a2a78cf7658f0348edaf690da38804f064191a9311d95b6aefe74a3bb31408e0a1acd577a6e4f2553a7ebb340521615f
+DIST jaraco_functools-4.6.0.tar.gz 20837 BLAKE2B 35998e43275cc14ebb1635f3c2b4ad7ae3b6e5afdcc0489802a15b4a7de451bb1b6ca0c07ab60f50d6eef916e25ed3bf056cb96462136fd1a7546494dfa9af2d SHA512 c35d786c3432177b403bba06b4b70a9f9c1f0432d155dd52bbba69dc79ed26b48ebc98cce95a4bbf004bd5e0e584c98b6c689ab4dc54f00d2187acf8e72dc0ea
diff --git a/dev-python/jaraco-functools/jaraco-functools-4.6.0.ebuild b/dev-python/jaraco-functools/jaraco-functools-4.6.0.ebuild
new file mode 100644
index 000000000000..30cbdc52c08b
--- /dev/null
+++ b/dev-python/jaraco-functools/jaraco-functools-4.6.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit-core
+PYPI_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Additional functions used by other projects by developer jaraco"
+HOMEPAGE="
+ https://github.com/jaraco/jaraco.functools/
+ https://pypi.org/project/jaraco.functools/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ >=dev-python/more-itertools-0.12.0-r1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jaraco-classes[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "setuptools' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease setuptools bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "jaraco.functools"
+ version = "${PV}"
+ description = "Functools like those found in stdlib"
+ EOF
+}
+
+python_install() {
+ distutils-r1_python_install
+ # rename to workaround a bug in pkg_resources
+ # https://bugs.gentoo.org/834522
+ mv "${D}$(python_get_sitedir)"/jaraco{_,.}functools-${PV}.dist-info || die
+}
diff --git a/dev-python/jiter/Manifest b/dev-python/jiter/Manifest
index 0c7487b95f2f..f0a351867e90 100644
--- a/dev-python/jiter/Manifest
+++ b/dev-python/jiter/Manifest
@@ -1,139 +1,2 @@
-DIST ahash-0.8.12.crate 43413 BLAKE2B 3e3ff0a91c538a063a09f1d71c0bd4df7d3b4cda3ba0945d3dad746430e0940979375e90ae5da7d585ffa44f387b17f38fc506ade0e0847feebe10d5c62f2b61 SHA512 872e5fa0d1334abac96d10eca18f32c2b1a1e0b38671c132b6effd029e9f0147ddcef79f4d85c8baf0537ddfb8c39a85f61d073e1fb3143dba659a8385641e1b
-DIST aho-corasick-1.1.4.crate 184015 BLAKE2B 088766e505a828a221a9bca29cb1833ac3964a538cda62d12b723a263fe0e588406af0b710cf87ef67b0ccb9aa3bf69f42e0e5225ade47abe93c73fcaca69ec1 SHA512 c77e35191b00546f5e499fab154170cedd619599e7250f92db9fba0a41c833eb426f214e58b00c5c39f8757406b33492b3241cb8cb233ce384ad0683c3ee4b62
-DIST anes-0.1.6.crate 23857 BLAKE2B 9ef464a964709b408c7d7846b9b1e54e52d6ae8f21f22ccfe509ef7197d4694f439084dbdb01fdf88829d181965ea9d1452253789a46fdf6d0520e3413c50d61 SHA512 f9dfaaca9ca327881ec30efaf24e208daae668b1e9d6963c8b0ca9f9fd13be777c793076a87980429f0dfa4db28ef5331ce6652a76da4d5a87485b23fc2fde29
-DIST anstyle-1.0.14.crate 17787 BLAKE2B ebb3b3986c06628ebfe71665216de68f123840093013fa16c030c25e22ff0731cdcd7161737635c532d45ad0307a1b7f951859a40dbe1c812b3e905550b33b90 SHA512 2e7bbaf0794d209f0f19fb8709214c1b1109c27e14d91a8adc232a9bdfe76e653b2b86e341d71f63903e034c81f6ed63ffe7f123f6d631c0f8d41b56d70037b9
-DIST anyhow-1.0.102.crate 48658 BLAKE2B d9c7b7c50b7319be0e67bb236e0420a67e3fd6d6f4bd53a84cafc7a5385785275151832be472c0063405e6d458b5add3907b670ba5e300e08efaae699ab77c44 SHA512 18064a92b6d577151b6f1be3df0985fdefdc5f7089ac0aa9bc92a2034c780eac5b71b8fbb260217aea122bee7c950ff00abf4b6d8f4143dff889b7164c7d6f0b
-DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08
-DIST bitflags-2.11.1.crate 49082 BLAKE2B c9c875b54e0a12115ecd846ef0a66bc7070d38892285a4142f1b1f26b07d407fa440a2943f310046f5fbc9a2428fcc56f2e44d06360e551d4b27c9b8cf93eab0 SHA512 c91b5a8b420d8e875a0906ef9b518a392487fba5399355aa5e908132149ddea7cc4222dd271cd5072e50dd9abd6e56420f4205652ba32a57af46bf07636604b7
-DIST bitvec-1.0.1.crate 224375 BLAKE2B 9f109db6888cf73d69646911cc1c9e90535e54a7afc436d878bbc63ca20a30cc6e5b5b5cd42aa78c38df5a4012454769c126f9072f39d58bdd09e54887ba6d9f SHA512 83d643c5aca020ebbe9094b5aaba6a796e7c3c509228a4348444e57a06bc3a5dd042eed57a2254d91661e73bdab2bc0d1bd02be376906acc6b6d75b5354a8d8e
-DIST bumpalo-3.20.2.crate 97696 BLAKE2B 0c744cb37279ca82e4c2a60be64c63e61c8290c9ff904c4a2ffd0e23f9ba96b1d63a30cce83fc757cbd40364bbe5e410da024c04cd9481f33831cfacc2133156 SHA512 4c725a4eb436fc9b3302430f5bec699563bed4b6a86c187defba9a83b749089eb6b00a6855afa4d42ac5eb324088eada3c0713f3e8c2d1c85bea4dcca83a4a60
-DIST cast-0.3.0.crate 11452 BLAKE2B fe6edddd0589fa436cda32342d7beaabe4003afdbdf1d7c5db7e8748adf23b1b2cdcdd286235837c735d2143f29e692c152a5d56fb0458a54961e4dea303b2cb SHA512 4a3e19bc1e9e5ecc03aaef9bcdce01624ac0e6858c065fa1c41693db0ac172b9735ce872064561347cd9e79f00a274129011f6e4ccf9e61d960c8bb684b6d396
-DIST cc-1.2.62.crate 97212 BLAKE2B 790820b89ab25e8a99d9d29b1b23031c858160303b854694a566c1c2d1c377a683db1d6bc3f624c11807b48db30f17ca2aff5af149e2bbf8af3aab2631b5bffe SHA512 0701ef643e7e2c646c7895bd544f9ebc862ad83ca11a640a7f8b1fb5d6d9617ea45eaa8646019daff52d86d32823235fc098598554340b9bf0f91190e06f3012
-DIST cfg-if-1.0.4.crate 9360 BLAKE2B beadbfb273ee97cbb6e3740891fbace57511399ad203459b66b397587d794677a9515cde4e9ec4320c3795518bf1551d72b9a889f8ac4b225168f493288b7c19 SHA512 176e04df7ba783b7143bb84397b777f5c5a1305c08a5c3a218d4a66830620be89ed68992ba27686165bcd3fb2f34b2daf80b2a1d4b481ecc267c988e84d28e9d
-DIST ciborium-0.2.2.crate 35611 BLAKE2B 7bb34ed2b16f55af2d762bbc83263bba901a0f05bc7677a370460549297839c4d6e913622e8a6cb3a5c2447b94b0bd17b7d5007228ea8881193d08e5b8deb072 SHA512 8d1af6a09f116e42f0098d7d0e34dd906dc3e718b257ff1a1fde655a235d40619f61f18917c0cf35c55de9160c255a9795d5e7525989037e3512807cc6a900b1
-DIST ciborium-io-0.2.2.crate 6697 BLAKE2B 07636da78f59859515af0075cb36d9ca969113ac327ff727953c73b64b60ddae22e5b1b65d8be5aa401f8b13d34074cbc8b47f23abd7a13d551f0b1c78f23575 SHA512 641b8592f9699d5e6c607815c8e6dfc82b2bd01897015e04ef8853420a7d90c2ec5c1140e39eb7623ce05587bea52ef63659eae76baee5b6592d2ac5298ce106
-DIST ciborium-ll-0.2.2.crate 14695 BLAKE2B 3c9ab0b338070359f9565706a504e4f6c65560072380af6e0a57068ae6716773d40e75dee84ded5e1d32f93445a07a0965759bedace58291b68b94479fb16488 SHA512 2f7ef6ad8bf5a862e8b9daa64bc6d8184c87a22c264b10dbb35c00c9effcd5712f354b4ca6c2eb8e6795d4b99d7cb88fa2acf01f3ad6fb28caf81708a500549a
-DIST clap-4.6.1.crate 61836 BLAKE2B 0e58b564b1c7792c4380284a61e20324495906764ed7ee7e9e62eac159d5f81508a82deb26cb294c85f236f77be79ce0cbf0253ea7544790ea3a5c0941acef6e SHA512 7e1bf1cdfcf8fe1f67251073e9ebabd92b44a7013a2245dbfc3a7368132600a30662416635a329067b97a8845af3c68274ec6ada3bd72d110b0aee5a4d7c986a
-DIST clap_builder-4.6.0.crate 171122 BLAKE2B 0a6ac216ceee45625500379640f9306015f749c377d14c6c9538fab7988da89b39e260bf8736d7ca055c6db32613fa7a9e73f325fc496d7521ba3453c8558348 SHA512 43b26377a8f15d29f8fdc9ada914888d87111084c5e205308d166789a27d91c2d8db6756b24d48ef8a293c92ca4c27dbf5433db21e336b2116d51377116fabd7
-DIST clap_lex-1.1.0.crate 13470 BLAKE2B 3e4895620e2922bd95ab6e3aee296457adbe70c2b3b2fca24c48e5bb700ed622401c68f494a266b91f1b82a7ee109ca90d4eee7ab6eff35e28b5fe8038398e5a SHA512 d85237e0558ebc745b08a150ba8115133b1ac1ebfbf6b2abf632863761fb70cb329639bb1c30625b9e786bb27b19438af11c123c508fb39e682f13e294ea6d9a
-DIST codspeed-2.10.1.crate 8589 BLAKE2B f9952f812bfeed4b2c2174d38624e9464fc8c9543df4a3f805f2930b97efa08b166100c4d75f048161251fd0d6b4126657b0402fa6386c704ec5c50946565a19 SHA512 c7a931f65c0af5555127c084543fffc09ae7191dd289faff04864ccca6c06b57ec3b3b821408c98c6081e5ffc607e9a127268e36ddcf83db1a9fe4c3f5146733
-DIST codspeed-criterion-compat-2.10.1.crate 20929 BLAKE2B 4d8f69bd0e6b7269c8edad91bdfa0111a7a95e2a9c3b3b00b42c33f7282561c02af7ea728ad3653963d9a5edebb8deeb172fab88dc5baf494730c7817e8dc61c SHA512 532b81cf91face4fa10f9358f6e00ae9d28e9ce47046714e0c3430939ae3739d1ac6339c79931cb3e5f1011581f157c68520ab003f78f572bd3c881e519b829f
-DIST codspeed-criterion-compat-walltime-2.10.1.crate 122454 BLAKE2B 52b556806765a22f646e28fd2b17368247d686920a7f5179a1c33586e4f64fb6beccc12c64f831841c08b8fedb8cb27c353c7ba6d7998a21eeb90e2848b6e779 SHA512 87bfe1fefbafa346f2c3b49e7ecb1dda500100b86ffa818ec9be811b648ce92f623e86cd56fe050cfc30f2a1e4e777b77ba745d5e2d8bb2ce23a957d47a7ab7b
-DIST colored-2.2.0.crate 35062 BLAKE2B 60c397914f6a1ed2c8e04a7e1cd96f90fda10e8fe6233dbe31424c0ef46ec41fdee7779d2f5d6968662de23434b7cb7f717c5abdf29022e09ab59b9f8d92ee80 SHA512 4e3266c498a18a464b6640c0b735519f91b30fc1e001236badd4885a7fad80fe230e262fed4a8d07d54b4eb7dd24df4daebce84cfc0a4f29b6582153e11df5ea
-DIST criterion-plot-0.5.0.crate 22706 BLAKE2B 28a50375f2871ce6f168aafabff46f4368bf55cac379c67a2b4396403259372759dba3355786e695b566b1cddee9091a469755a04c06ee949f00aee8e9a28699 SHA512 971e96dcc64a5afa7488f1a99475f0f5639c0ef63f9eeebcada351868697cbff397e99827cc07c0a52e7d7d1a87856fe1fc48c22075776b3bc9c94af62d79f14
-DIST crossbeam-deque-0.8.6.crate 22471 BLAKE2B 02b854df171b0430ca8a40349674ff251698d0c322c317055da8678da6661730c945d86737fa4947c3bd824ffe402271ee2f77fd6a505d2d46b4a41454c510c8 SHA512 9368c0c224c4b84356f1d422d8869a5ab4bfb36b0ff69244a9e7a7304ed51f034001cd9b2bc35849df874d36ed34285c66574943573522ea32bbdc5a05df6989
-DIST crossbeam-epoch-0.9.18.crate 46875 BLAKE2B 200c256cad6011a3a14c4664bea6b150fce72d561c4fffc387fa561b08c0480e8756bf51c14874c5fb19f427424547f72d2cd7dd6f56fb8b6666a85f8d52bfd1 SHA512 0a8a199b9d77f4e28e91fe0a0cbff7e0dec58cac283631fd972477fa912d2f6ddfddaed2c695e4978b01cb5440b702822af6333e7c3dfbcb9a2c2086999516b2
-DIST crossbeam-utils-0.8.21.crate 42691 BLAKE2B cd9015c41f532eb3c90101603f32d383f01e6880718b727d6d1fe46872ae276cda685e1b548cf77dd22bb1a05f0d4c4982332c2bde90e1743dbd7f51919022a7 SHA512 6f4aa7ca10c20da291c4714b56ceb1fab1c06b03b2f4e28e474e9aeb95ab6615a25462dc7819713652c3b5f6a06fa0f24ebc92c533fcf35dfcf2655857d975f8
-DIST crunchy-0.2.4.crate 3887 BLAKE2B f957597c82795eb10d43a6a98f7575e19b9484dcdf9fe35ac79ce406035d5d467021a0c563dcfe8f717e800b6bf532fcd72cc11be47e084405e16219b88e67b1 SHA512 72ecadb6c8558dcbf3cbc3a34bcefbf292e42999e7af6f59b9804e1233d87f6f65802b157f346a64cd7d2dc1a92564d5481211b081ba5ea170ecdb06dff9dd0b
-DIST either-1.15.0.crate 20114 BLAKE2B 2f87cb6408b1e1a15ea19d930cfca3948d867d268c8ff18cbaf39dcb7f7fdc628811575ec87a7728940dfb2c26775995a3165ab9c17dd42880d56569b22c6f88 SHA512 d70c34d903e8e5088fd065a6da6673eadb569a20af183fa9bd6418940b37c8c2a777c44dbdab1b9960890cba5cb7464b805667ac42f4e05499ddcd4277d24e3f
-DIST equivalent-1.0.2.crate 7419 BLAKE2B 7ce4fb7b911961cd4ccfb48323eea4952110a069789c6bd177a63391c270df861afadd00c07db7b22768f0864f320e429e0200c433284f528336e2f81d071eff SHA512 8e0e2dc070794a85b276e93f9e4a65d3bbb8587b33fda211c34479a0b88504c913d8bef9e84d7996254aeabe1efe4ff1ef6259ff4fe3f9ccb90dd90070b3e4d4
-DIST find-msvc-tools-0.1.9.crate 31493 BLAKE2B 4137592addf8b58f4e4c02be537a72b132b38cecc1c263c2569fe40e2cfe4377e7141679f32661f44ed467cf9723343ab13732b3d6f4a2a84c610d0958e7e30b SHA512 729b3c1c1d520dffe5d88fc8b58e47fb7e86dc26e568fc317eea5ca8de0ee953fbafaa20ab34a6bfb43173bab39a90ff6954c11dab8d545e902305dafc8cd3de
-DIST foldhash-0.1.5.crate 21901 BLAKE2B 22c3a266becac17995ac996f5c9caa8dea77e36786c50464e4e7750d8f3f13321a0a1abd3a9abcfd6ff441ddea257066b2dfb7fc6fcf7468f537dbd1b0db737d SHA512 3a634fdec410d87ffced8aa1bf8dacd9316a04c51424563d60b4dd611617041f09085edfd0ec96e6bb0e0db74a0e950b0616d1fb94a31667af35af1637604c22
-DIST funty-2.0.0.crate 13160 BLAKE2B db6315d63fffe9f70698da0b1b0e4aea4b509242c60e6639f00303dad8d2ba60c6c1c04fe9289695b7aa2d7a0c90c31fba72656afa7ad111b77358772b14a9f5 SHA512 691e1c275b648110ef42c4adece8178cf037bad40d469780280eb2ebe07aa4b0406737c5ba02c9f9f63ee57a99fec27e5e51712e2113655f7522c8678f689155
-DIST futures-core-0.3.32.crate 14684 BLAKE2B d0c3ee59327998990f4cd81b8d76b6d8a58000ffda809ecafc8b7e658abffe4fc45be4b9d5e502436af8e4adef50b1601907b8256a9f65f8467beecd37ede220 SHA512 5848937ad4135fcc488690bc681bf66d6c353f063f87dfe1ea4b79259b9b402896276c10ea80b159a9adfa551abdb5b00a2c6b332af9a898766f87f177a40137
-DIST futures-task-0.3.32.crate 11377 BLAKE2B 290a2e7f7c957acfffc8041a5ce961b84bc6b1d02412ee8dce29cdc9a7d4daccbe430291d1a735c132b907448669aea4e5a3aa292cb5ea4b466b30fcd4e3f98f SHA512 eea93a8490d7083566d7f723c0bfae01583787028ae5d8bba851625b1ccb2587d27db0cbf3d7fbfa36b51bd6d444c54905cc4d56021f43a5a440cc8b0ed73520
-DIST futures-util-0.3.32.crate 168797 BLAKE2B d804428849635088636df69330881d68474db307ac4dd5863d73d1d93c54e90a18e21663864e94f2bd86999356e19b8325e321cd5c63da6e3e05f26c3af836fc SHA512 77705985b5cefd5a9009e631689f5967320cbd1363888cc8b7eef3f7457afb38c793499fc3edd4453bc8771c43436e5da1538ce0c5ef655a5e597f4fda2727b1
-DIST getrandom-0.3.4.crate 50932 BLAKE2B 34165a6994877aeaf3063affd48eb499512371a1fdc0d890feee598b5e22c14cb8347642a0e9374cd5d8a59a8281db839e45923769260312379321bef54c687d SHA512 43c44ec3ba0668f388519b2cefbee63f959f0e078730b3f7563742522e5f4b120472024b95fc94aeb90900a15d327c3573271bb26b2de4785e589a8bc1bc9da8
-DIST getrandom-0.4.2.crate 53905 BLAKE2B 23aca6717b8fc8bdbc26bffaa1ae3aa35666f82951ced24e1d7b7530feae7eb5e66a9c81b738bbd2b09ead6efa030d2850e0ffb314dc82972fe72af361b961b6 SHA512 191d847be8c21369067b707c2c20cd56531478aca534ce902271e2693e84f6d74306a690759b17a8b1e9c46c639fe0e7be3b2fe41469eba4d7c27bb1c11a442f
-DIST half-2.7.1.crate 61040 BLAKE2B bd78abf71b1b0ae219d2293f8edd5084fa630150016c95786d0af38a898d2775ff73ce848c4b2bbf02c2ea2dc8a610b2e045df78892d2b1de28981e8033625a7 SHA512 f47cc8bfb4c754a8585d4e8eca1a35039dc0879e87e59acb72e91bf2d33eca8c4f8dd17b3a56e8953bcba62cb08122120866e9d4b3ab9f008847d86a5f81716d
-DIST hashbrown-0.15.5.crate 140908 BLAKE2B 6a360eaa2e174ddd1e9761bc19edc4b57b80f84c36bb5d64003c7206755d4175a05f39c001acaf000ec69ced9e28c3853bd64702e2927aa7c38527a53abf2201 SHA512 654682535882733b56dad632851fed93a17ad0b2d3e13e3390d7802450781501e275b0e0b39fa32a6eae092132858ed79b305238cd5771c08987c5d26af6d692
-DIST hashbrown-0.17.1.crate 155512 BLAKE2B 748d3658bf40d6905b47f695e64b70a0c506b9fb0207e023cd50448d5febe92bcbdf19ad8b9be7588f12dad2aba82eab4c8a7a1815adf0a00e17c39f6188f4c6 SHA512 4b6a5a76ec2f020fe34cfa5f5bf4b518ab7d278ece657804663972b6a5ebd64f775bd75d229b7e202702bed9d5b63ddef4de6e274fafe3129809791c6802526a
-DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
-DIST hermit-abi-0.5.2.crate 17435 BLAKE2B 695192149342273199ffb026de57e2d906249757b9b4bbceb6b40d3b2298a942a75390aeaa3ad4cad71e5d44687379dfc49598bacdb2cf989ab48864c4b2b517 SHA512 0392a8350288e5d500967bee8e98626024b47a7da331f833b9528bd7318cf43f41eefa46aa6aebd19febfadcbcb2d7c9f70d6ca3631c1618d63c60366dbe7c15
-DIST id-arena-2.3.0.crate 12883 BLAKE2B 2a7f498c3ea5632af4a369d46f90106e642bccbb8e36ac7fe37be05c2125989ea2cf625db92a782408ecb5f68d3efbf3006413b5b748815ee42b9dcfb28d0ba2 SHA512 99652279014e63680d66bc8022ec3d2373d6e476646ee5551346fc9e62d1fd94b28c945bfc30df14c85d085aefc7fbb9051fe11012f63a9254bc11f03133f116
-DIST indexmap-2.14.0.crate 104085 BLAKE2B 828d8eede906c2908baecac840757ca8795587a552cc9dbcccde89a3b81444d99395670fd71404c33033aa5a1b905ed0621fc39236024c8b8b385e5d29ca6b5e SHA512 fa6bcaaf1b9bacabc72ae9d0569065325a6741b9ba5dff168ada6ece460175be47741d906d9326b48d30f6c55805d33fb64bfb497490482b4e412ac15a8ea55f
-DIST is-terminal-0.4.17.crate 7458 BLAKE2B b12ed4c0e540309462de73b8abf9f281676f562c573c9e9663ad0c5ed2ed0350bc98315c60da6998a706b559170dccf11c8d8196f7be7641478066dbb58e4861 SHA512 e11c73fdc237898d0296bcd6dfa9c8acac8cc5e1805f42f5b220d787dbb5192eb8bfa9da9ce724143f4a17ca873b234912f288f1c3a092fe8881a92697ee12e2
-DIST itertools-0.10.5.crate 115354 BLAKE2B f24734bdfedf1dba48554e39b43669efcd4a43656eeb2c511096060daeaf049e1ad3eab232e757057750ce94aabad9fc8a0cf29a997edc6c4b167301c3443391 SHA512 d03c3cfba9841776913bbb6daad0c8945830c155f32ae4b48872e0f937c75a443f0ac9a0355f43b359ff75232f38b15f4f6d446b4be30b00b4209cf66ef770c3
-DIST itoa-1.0.18.crate 15935 BLAKE2B 8e41446056ccd94979f6f5a8fe8c48d6c47abaab99a41715cca31816f859b56e0cbacb998f300b62be8b719a6470f8a087f1439b72f2f6662d1cdd3d552ede5b SHA512 8dbad156e2863c28e2b380901a92414ef00e39f1fcdb06d91a0f3fb73108c2f7f36b699ccd93287808c24c29cca7f1783d48d5ca95f2173502963c0abcb2d09c
-DIST jiter-0.15.0.tar.gz 166640 BLAKE2B 8af75010bbce59952cd31422fdaf44a87852ca5f3acd0f589c483a7828c0cb73203d9ed9c0325c74b4acff02718d297f81b116989424d1734d3c9e2783759633 SHA512 e975d3ee28ba3d75a367bf270bcb1f16b4323ab88434d12c8bdeeade7aaaf410ad5b118a4e740507d1e43c7ea5cbf2a49464d878e3a243f272fa1643abe357a2
-DIST jiter-0.15.0.tar.gz.provenance 9248 BLAKE2B 0361d98e0d2f3f0b2055acfa8084bf117d729fb7b0063f7284dab4842db63afdf72327c0057f2fc00dc00468b35e0875642287e952b79950f64762decb9b767f SHA512 07792d066025de6021cc4da080e35cc92e8d42b510c3216decb45428a16ab3c6a3024f27d2ef37e88796821ae0e66b78af69cd2d11aad31e3ac655147c531bcb
-DIST js-sys-0.3.98.crate 108519 BLAKE2B a41d6534bc87c4c265e01211d2f7c8f4c7ed137ac7001c2cbdad4f24784b4cafa4c689aa0c9b9801beb5c5bbd68818c3d4e7bdb78fefcad88020bfa88beb484f SHA512 afeec49d8a6894d1c7a10d80a6d6500d8677f0c769f74beae8da820932da8ff91ff0e9abcc48fde251e617903578e65af4a9cf88972510e78ae8e1284780675c
-DIST lazy_static-1.5.0.crate 14025 BLAKE2B df29e0e3d1c061815bdd608b41074436024dc407d454f32517705ab04b2fe06075e310086c5e4961df0b4885e91021589d0bca2c1cbe6f0aeffa3ff1b3fd4637 SHA512 6d2f9887cd7f34f019644e42f02f2bf0111accd73aeaa60973ba0b039b6774670debece1ea9a6978e923208ef5d3ab7326473ee3560c078817f0f7ab8ed0f65f
-DIST leb128fmt-0.1.0.crate 14138 BLAKE2B 6353a2520bb93e0a3cfaade09ffbd8cf981d2cf75579e865941f3fea0dc745c54472b369873b1ef4f26dd7f356860e563bc7ca6e7615d600b272c698a55e54eb SHA512 82fbc7f0786185453fbf11fb3ae58e71fce9780f81eb6a56d7b559e3a0c6825751dd8b64f1266aab73fe65f7483a206e42f31ee1a1b7b1801246c6dc9c2ea817
-DIST lexical-parse-float-1.0.6.crate 194003 BLAKE2B 3812ad52256194e07b642e753963814596ee9476acb8a835186d1d0e4e1d89947e57b97f2b8edac0842cca0a44184eacc7d475e5bba5a4053dc476d2e2fb9006 SHA512 1fe11ef55fad87b806caa28512f76d02e14cea394dbd8bab76efc4683eb3f5eb7985d4189775f688f7ce31d798a2b67b904f2d0d7bdeb832e65fba6615efe3cb
-DIST lexical-parse-integer-1.0.6.crate 37501 BLAKE2B a7b9f9cbebe8cf92270e6f3ee0ce980594f3061270582a2a80dd5a592a9d8d0dbabccf1dd043c4849d2dc2563f899d6db075abfcbfa9f2e2e30e1141e9d8759c SHA512 cb6f9cf53c796bb34d136475949aee5f0c35c72071b18d295390feb302b0c117420c1839cc177714b5d5625e04dd9b164b78324ae74cf6f6288cab7d1a5fab9e
-DIST lexical-util-1.0.7.crate 111747 BLAKE2B b214123f6c61ad13878ec86eaf3878b458ea3188f5ca2f62faa9d239aecd4d636d812a40ee8f7647ae97fc88fa58cce25f8db05583916ab786b8bca72aeea137 SHA512 4ab3af2dd32b02e803c13e890f61e84623a0770d9eaf6aac8e52946830fe47594c9019d381f1e45a5350925343c477484708663870d70c7e27e0528e788f0519
-DIST libc-0.2.186.crate 821883 BLAKE2B ebe7aac5f8937a8064c64a0d4dc72e5fc794080e09b96c6d245bdec0fd9a19d49ab38e25306e22e47564764cf5dcde45855237cffc70230a143eca2626bd5c3c SHA512 6a58e671ec6811dff9a0d7d4db8f37d38bcbca9efff20dad4706190e5cdb77b426567754bcf0ef0f2d0c31d6506401f724f3ca500b9bed57bb8605b1141ed690
-DIST log-0.4.29.crate 51515 BLAKE2B 3f5dc889e895428f27ef107a63004c1b321793b865c29b20293adca81db4e25443e24354af37018c9a60dff1d54897c3b7b2c014a64280523f4a3586a7eeed24 SHA512 31bcf1669c27980f0a8500082c4d0cc500f6cc943518a3dacacc3ad4d8a0c238517f23c2c1969e5a22dbb5d25614adbf4e914c0557e45e1ebc8e7385b2ed14b3
-DIST memchr-2.8.0.crate 97780 BLAKE2B 228ce0b6fe8b168f5c31031690a5eb44466609b64c5c221e0b3f56fe331b4f25c0124d613c94ef030b225000978953641f5b07458d530c1d50eec3e1d54e4274 SHA512 8089238153493a0ff6adf980efd1ea2ba10eeff9f33fff200268692662d24152a8c14a4dac37fbc6a55dca741701fd256174f10a9838ca66f038f08e090de12f
-DIST num-bigint-0.4.6.crate 102801 BLAKE2B 0460e7dfdbd44b6c68fc8ead6bff4353e549127158dab8bb5d217ee33104fe9ad5f58b63a01d56fffa8d7c4df1a87dcf5b536e436a0ef98dc4418a4690c4cc15 SHA512 19d14a7755de2b559026547d9e3e1775e636781bdfdd418f2e1d962c51411a0973a46d84d0356e30c0f708a7c7b2097926611960043f71391919cab1aeb6aa04
-DIST num-integer-0.1.46.crate 22331 BLAKE2B d88c9f84e5d803a3aa8f44dfc1bd6d9b5e336e7cbf47231cb3a7de30dfe263c41c62c586d31f0029459c8c240475cd329b3fce79f355be7643bdccf8d56dcbba SHA512 e27986d91f6c6dc3d5a0900defe28ab5f47905cde3f84d0914b7acee076dca8fec6fdb7b631ac94d3a31eb01ecbc5854e51afc3187cd1abfa21e1bfafdc700ae
-DIST num-traits-0.2.19.crate 51631 BLAKE2B 78637360cbf32d172510a62bd9442708af9730c0296a2bb4ebd200c08facd49bc31bf8ddd58967e0df7273a938832b620265d9f8f4d26ad16049bf6dac1cb4e5 SHA512 180018a5eceb45085e4e8d103ff21bb4d5079cea874c42a0ad4c76c99d275d434bbc1cc289f0cdec172866daa89dbfe0871410b2cc3407233fe1129786905956
-DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
-DIST oorandom-11.1.5.crate 23750 BLAKE2B cbe0b9167e6d1b95e45ecee67ebf3397044c54230732b192fc5b5279cf1c9bbf6bfe1e7d04f6ffc0cd42448268d31ef89b357250a907f6140901384647494e05 SHA512 63daae0b6e352cc52fdb7793aed1ef501ad996507d8e36cf8235068a3feb9f627549961af1a355227b561948c30f6dea17e225dc3f27caebd51116fc4e3a3ba6
-DIST paste-1.0.15.crate 18374 BLAKE2B 69ee7def55e658a9aa72405bad62325e8d6021a4989fbf11c88d1bf05fbac520f7b04d467bc3c6eb45043a41119f65aceecc4a6a1418a9192d73f33134545062 SHA512 5026d3ec7141ec4e2517a0b1283912d0801e9356f77b703d954b379439b8d85e3886d42fb28f7835edaeeac465582da14233564fb010c71425a59c9e1cbd46b4
-DIST pin-project-lite-0.2.17.crate 31034 BLAKE2B 1d3bb970100c2a27c456bf771b4884f3c91c048310d27608161d3a02adf2f9cdddbc8674257c6b58c4ad6c0953e11cddf2fdf5813d95e5ab8425e71032556159 SHA512 0cff4338e3c7b71600fb41db013efe0d01b9cb3fdf95192dc16c5bea58a0f157207ef285ceb01b6b30956f9e751577c5d2a3803103f89a8a0cc6ea728d97a4df
-DIST plotters-0.3.7.crate 149031 BLAKE2B a53b3aa85eda3ac2278cf49c4d701642b37a5f52a3a013594101388d9d104b96e35f542ff6b8ee33bf711fb64c8c25a48c8f10b3c12e70e6e57c90fd30cb9b5f SHA512 526fa20153b445176efcd1314c2e36963561e267c566223ddbbcdaf74340aa821e9c0174c15849c55f3cb3177fd5e34aa9bdd872888476b7ff0a20ec3c1a04e1
-DIST plotters-backend-0.3.7.crate 13709 BLAKE2B 7ba96de1435beaffe0171dd4fd010f84d0bb6bf0856adb05da87dd324a5834aee3a71545a019ac899e141cec32cd15e395c56d281f498430e54b6715eaa46761 SHA512 5b53e5d369f39748d45269c82c87a0731cf23666b88d7e407162602c715a01807ebc50f8a90805f417c0e7e74dc511d1d7861052835beb8a9d548e2f33c062e3
-DIST plotters-svg-0.3.7.crate 6715 BLAKE2B 1437ad7e1c1b3e82ab1f58660ff6931e510f6ea5ea6cae6eb48582d4652bc65c5dad518d3312e25303651c03d90bf56d9abac4c2e3979f8290b4cb35c0b6ba5c SHA512 9a60e19026edfad359a7d042630b60825d7723855fc0c17881ac880c29160a81449ca672a3ae5cea4405293947ae0556f31cb37f519dad4cef56353248350cd6
-DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
-DIST prettyplease-0.2.37.crate 72033 BLAKE2B 997c8d855023ba6dcc7aa3a8f1c0ac6f6ca72dab2804cfcfb0987832ae044ffc5f5d7541e66d7ff5b0679065e5217078a832333e6cb92d89a93660aedaf0b447 SHA512 3273621f42cd2f4f892ee81e130f50e7d30f7254f922a84e55e454c0157bd0a59c678ee352e05007fdb0a62cdab2d7693185990354b81d2b1f5d08b51cff77d0
-DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744
-DIST pyo3-0.28.3.crate 1204476 BLAKE2B 8540a1c51bac4fbe04ea34d5ce38471c13d5a3f0759e60cf21d67e846b00feb8316e70f32cb8dc6b74d09f0901ffc83d5f41b1a06da6d34790ef13e4cefcad45 SHA512 f955957eec4b95cc9337d331bba3bba52b4754b301cf86cd974601e64eb20c2424023b19be89a224661fe2e185de646cd3d0d00705b6b5cbd139856c9443a247
-DIST pyo3-build-config-0.28.3.crate 35961 BLAKE2B 61a0101913c6d563721049ca99256c2aefd89b017a7e18c82f4a6aceca0aefeaa71fd559cd43adfb5034ce076c904e5188f8f73961ea217287fbfd12caab9401 SHA512 78f85696901b16540d42187d10e888bd929b9f23415faeb73f9798abda1af3506a308145dd4113b070521271c72624d7930fb4b19bad25aa1afd3082030c9126
-DIST pyo3-ffi-0.28.3.crate 80881 BLAKE2B 4ac7066c911e2aec18aa9245efed00585d063f81d69910e6a146f8efbf2939ab5de519bbf2a3dde78b40c264e97c62490db80e9b2e84aaf080d63659a6676459 SHA512 ec49b5cc67d19f46c9daea76b37b4988af0f63b9ed67c71190f015a0aa9691d4a8ffd4128413de430928428e1e8e26d44c3103f561e6b71b7e8c4597ab602d9f
-DIST pyo3-macros-0.28.3.crate 8963 BLAKE2B ca9967cfba565b873ed77565ff6eb8408473c227d191797e9db8c6b5cbc89abc17ffd57ae71e28877088fe19373da2f503cdefeae6b0a47796f6abcf62044f08 SHA512 57d178bd9b53dd98916e60c89bc26c34f9949829dc17bf7d6cc15b704bba7c874d85d6bd3c827d401268660a79230a6e32711048da939ec4e22342f3e08046d1
-DIST pyo3-macros-backend-0.28.3.crate 88063 BLAKE2B a484b12bbab3031838f61149ab9f08b9e460a2bd02089e08e58dac2cb747afbc0cdfe64018ed4c8cb0bbbd1d22e3eb05a6a72b020da6b71a584ec51ca8d24292 SHA512 45ce31ed64ee4fd0249736d480c9840a756bc45934d6803ae11e0680057ecf4cc74c71b47ccf9241fc3ab5c1e0b9c758426f08bd523d1ace92fc308302ea3c84
-DIST python3-dll-a-0.2.15.crate 104255 BLAKE2B d08eb9cdbc9011e8965b24aa9c9538f0a2e372c0e76fd96d9241b587d83d16cb5cb1f5fcf7f62123dee69970be900e9cf46ad959f130f5095eaacf44470b66ce SHA512 1f5bad896ef5f630e43fd76cd9ea73ce859ac98c9c569435045f21633ddff085416ba7ae387e823339696edb729a94700dba44e7351c79b1408f05ebdda0a7ba
-DIST quote-1.0.45.crate 31564 BLAKE2B 1b2c2c3e6ebabfe10affa4c43ca0bfd1f52d8fd49e1df463e13e63a82de41272089c8e09e4c02e8a33cfee768ace26d4d42a50752de8fb5a776c59806139ad5d SHA512 df96ede01ebd0ed642b758bf1d0862d0e116fc2b3343e14edb657ce5438ccabe743dec4a0a40de4dee98c134d169af9aba459faadf9c7a832b26377e755d49b0
-DIST r-efi-5.3.0.crate 64532 BLAKE2B 54bc882e333f7ba52b6dd6ac92b8a282581c10b47de91a4c4b71b15a27b2df885ab52ae2fcc8a546367ee1ce98300dcaec3c33cbd7393b134383528540bb7d14 SHA512 e748db9729dbddf215d5c37630fa272197dd2921297800209ca7bfcd6ffd8530b598b944d95547ad9723655cafdfb69b1c1fade9ba5f8c2ac5c55ec38258fdad
-DIST r-efi-6.0.0.crate 65303 BLAKE2B 79a28aa1e41721ad39ad95837d60a7034f9eedf0f5a32017849e7f4abebf6eb55e79cc144cea52030cade11d6be6fc5ba863e711a74038ffcc67b0d6eef47bfd SHA512 65f8c75c0201c3b922e6bf032ba9e6c648840f60939615565287b9c64d44f3fccbde209d8fe691937949cd76307b59c53801e6bd43ed7b8ada46d5d8fccf7012
-DIST radium-0.7.0.crate 10906 BLAKE2B d576e0ea5c5287bcb6740cee3a3838b6ae4dfdef0ef05d34634b96dba5159e48260233db57a767c9e032fa5d9a5798361335cb19f7844f450113ece30ffbc51d SHA512 51e23cf52997b46c0018a94b0259b29d7bf33ddba19f6db406ca57ee5b1417d7e5f27dda3bb487d0099886011a97f238e8b3dd4d6c86e8464c0b471c1a7622a0
-DIST rayon-1.12.0.crate 183391 BLAKE2B 97807936988b73fcd72574a9677ce0364e67f5932cab13e137bb3d285a14c366d767bcb7d1fad9733be7b022c2bfef7eb8131555966470d53f41b85414915557 SHA512 adad1851620e8f4652449aeb110c62741d454818910cb6aebc2bdf71672b8b3e1371a0045b1e2d8faf2a1a638558220fd2b7e3dd3a7b8178441dacf2d0bce2cb
-DIST rayon-core-1.13.0.crate 73151 BLAKE2B 31112b2f4ff2a0607daced97e234c6cad1356c79d21c7493f3b19b2747083eca85709d5548c9214bb5186a7e2e5fe0def27c45d69d597cac976bb0956da2aa70 SHA512 dce0adda8f5858d351f628f50168d9097ecca437b77fc0c63ad18fb8b3fcc87f2f513cbcbf57606862e30e81f293a05d245073be75292d1a536d6a4d3e2edb9b
-DIST regex-1.12.3.crate 153392 BLAKE2B 30f272fc2cda1e36219dfccf0338edacceb5bfada7ac81dd01429661b01b0fa72f6bb343e753e2388251aa0aadc0b5cf61e07670020c9ab351f418c23653ad47 SHA512 73ea9581c861490ad4c8c767c09f1f39be525f4298f5b19ba7b658dfade4c91f7ffd170214382ef4694855c0a48a4db57c39b75d8fa6a9312b07409170c66000
-DIST regex-automata-0.4.14.crate 618012 BLAKE2B f12b0f1e59d32711c113f5f2157a4e1dbd05095c386f0e104ef3d551cf029d0c3346d09f54d5b8a8bdc557ab4d91ab80a224d81b3c522b3c64ad1566972c46cf SHA512 58f8e7c41f71c1df50fc2f4e70ea7f5ab762170494497541b9a09076058f94a799b6fc4da13c40fc26a2f1a0b650b499cb9830338152e96a24e3a32b4994a5e0
-DIST regex-syntax-0.8.10.crate 358781 BLAKE2B fc7961b2c6e4d297f4dcc73cb3f6a82d7d9bf964808beacc86ec8c73f7b572f3d8c7503ccc4441a2d6283b8cfbbbfc49140b31207b5aeabe5a60c8870460c91e SHA512 ca9c36c963c81c2fa36e1105cdd193a9b99ee259de1765e6e8010fb4091e49ac100e2ba0cd117adb0890b32e74421581dd6397eb896772168c6eae9da0a938c3
-DIST rustversion-1.0.22.crate 21096 BLAKE2B cdf773cda21ebde50da897c0af0e4af14660ce953d3037054a99d8adc3db2dc6e30a57201a45676abfb183c62016a68069848e7537f711b1752339d194b0a378 SHA512 7929352df3e5279ac88cebb26ca89bb13c755f46986d2d1f514d18a3239a63638bf64f8ff153920569d173185d988d692ee676335afba0bf72d47f71babe0e15
-DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
-DIST semver-1.0.28.crate 33064 BLAKE2B 03bb56f4f0ec6f4cb208277500eba03cc81a7b2a115d64849b2d154066f723d46f8625df7c512cfbb2e402a36cbc5a1627e8041ac2de92daacd4a92a6943979c SHA512 bb44373e60fccb83bc95e4277ea0abdd756a3f77b3334cf6d6b5fceac086910661ab94eb326cdc8fefce0c09220933bdf03bfd142c1594a92c9c1e4e931114b7
-DIST serde-1.0.228.crate 83652 BLAKE2B d1909d671ea6d5c2eb4ce34ee4493ecaf665d416111b4cac754b5d33b85f916296110bae7aa961efd987a2ceb4a31ba645752ce99dd28dedb9f1eecdd4d7b1b2 SHA512 9b645d6214203533b303fc5e88ad4f7686c22df084878d18a0209a92304a340fcb62fdde88a7080cf7a7348d47b9b363885c4e1da90dba08cc99ff620f375e97
-DIST serde_core-1.0.228.crate 63111 BLAKE2B 8a64e4627ad21a3d16dd37d53fb809d11171bf337ec16bb1223075cbf81b6b85cd1c8d19abadf42460d0fbea323e2f351eeb6ef823389d519121b74e68edb215 SHA512 43897e3a7ebdc85d81d1cb30cda8f0a11610f6f551529c8a21462c24fb83110652b462846aa3e1bed5fbf8b5d7927018845a524ee9e079e2c8acf2c687efd6c4
-DIST serde_derive-1.0.228.crate 59605 BLAKE2B 166ee2f9ff9f7a0928d0a65a72db3d9226c377bca2a1771956e8ecd9c7faf0544673c9c21be2a5553e621b55c74c7b958052592a1cf6eb6427a2d4f3e3dc6bb8 SHA512 8bfdfeee10ee7ef0670972aa963ef63b13e8eb2c8a09b9e0b717f92551aa89b3dd2a0dcbae6ccf20a1caece07e6adb18f0db56fdac020e4e0281b0d24e376003
-DIST serde_json-1.0.149.crate 155994 BLAKE2B 7564c287a05c95feeba2b3a17e2e43ba047b0132b40fc4dd0c09141c2aac559c00bf4c63cbd24c17f12f5e6b49cf38b240d2c6c66677ee7a9edb197aba7d57fd SHA512 85fa8cb7b479f8241a4fd2255dd80e346fa5cde103aa7f25c14ccbcdf0e3276578fd0645e1d2542ee07c7e08c32058ff662bbf03926cd796c38622a12f423d43
-DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
-DIST slab-0.4.12.crate 19080 BLAKE2B 785a1b899fe01c8825f24d90b0b0bb31bded234810f59c71b7e44221387de33fcae220a7d0745f59f79c267673b76e7c8d9fa4c0dcbf8fc5d68be6562018d49b SHA512 cf7c971b99b043d8bc102732a109717cbbec114160e4f7cc4009c66739177778623403c33d6a32efd1620e0ac7b8743c36e0e5563082af7f92f1e4caeceea0d9
-DIST smallvec-1.15.1.crate 38116 BLAKE2B 8dd779d7726694672945e928399e0459f4973d284a6c2d664c2fc757ebb1177658f47c812d9800e982479cbd7413fd4283c64a4d248ba5cff6397f96b758676e SHA512 c26b097a063353beedfcc921129cd0fb838c1c9420218993a05b2655b47b6ec16f11e0054312018658b4abd893beee140c5d2739401a5e5aea2e64575f237047
-DIST syn-2.0.117.crate 306011 BLAKE2B bbaec02c4322f522bdfc87caa4ce6fd1e09bbf8f4a102d9ed8728efacdd843a2750f616dce5b2d3a3e46bbb7d57439fbd10e328bc1d4a01e980986cd815798af SHA512 035c2e63542592b6a4058a2a82d4c2c1f5793f84fb1b04cbd393337a26fcf661a1f3bea439ce98a1fe943b1c4d36d2bda16df3bbc3fa6ca35e1548d530dc8416
-DIST tap-1.0.1.crate 11316 BLAKE2B 60786fd5f12c2f06097330c26809fdcfce62716586d2e1985f8c01406d356ed0ab730a04dfe72ee3e1d6208a53c76c66883d45a76130750b41ba5b82aa721b83 SHA512 d69ff11a46e2fbc276212511878f48eb93640c0b147df6578ea057b23625f9366a7fc3926693fc3809688537af5ca919c91605beed364decf83c35a032310995
-DIST target-lexicon-0.13.5.crate 26928 BLAKE2B f8c62cb91f68a635e6ce3fc254df9ce378b5e8f62c1147404c967484b9ed97fb33d7993b4671611db76566063e999d658d201f856f70196ec678d72cc758cf6d SHA512 956df27c01e1186c5356117ffd07810fc0b62fb919d5bfd215955ba85be00ef675212a3c0dc36679986be7b825442fec5c93c7643b7e1e19c04572e6463546fc
-DIST tinytemplate-1.2.1.crate 26490 BLAKE2B af39d96f33f63238e455a4e38fde1d1730fd9661ae68be7b05df6ef9d2ab1a04db1332cc4ec9deb6da3a8e22b124df81b0fa8916d8491b808742bb733c8e48be SHA512 0cc080057e096f0796e72004343e1a8332c2e8a12e43f6ade150ebf632e9c29c7ad04de0b940cd57df81efdc4d07a6607da9b86a30d8383e39ac3d7be185edb9
-DIST unicode-ident-1.0.24.crate 49298 BLAKE2B 34ba2906a3ebc06f52a4ba77dff96a8f3fb977718d260886fa9e051c5830765641b65a63977110f3a79f31fa177b385f81b01d56c80f6a0324d36eae72e2ebf0 SHA512 7be712d8d0075ac9341790180e312f66264d3e0255c91b38df0951baa5e446dec24551bb2125a66a1cb9b6ca2f1ea37c0cc15fa3dd74f398ecf4d5302c7dc259
-DIST unicode-xid-0.2.6.crate 15744 BLAKE2B b1bad25897717f6346f988d5a7c90c51fb842da113f19aa434a64add8f2e637258d9fab0f7b871fd2aac02e83c68359fc679b326232793cbc804523e2bff5056 SHA512 f68e78484479a5341b14d7e3391e691265851fa00feeca53af745479af6aa9b4ce3570456df785c8362043db9b04e2e57f9bad05d8305946f16af405bc611764
-DIST uuid-1.23.1.crate 62932 BLAKE2B 8ff58079d6a1eacf2d1baaf1dba6ca5c5da84768a27e2f7f1f9843f6057ed634843ad96a6797b4fdee5a01716ebade8b99433a9b9b3dad794bb9a26d93c81059 SHA512 7f9222285c9e6635d9ed0b03ae945c2037bd7f7486bb05214355c19eb3fc0f7685b3f6b3bb58e158e1dd26cbf4772af7180420305f2ff001a69e90ea6f2c428e
-DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
-DIST walkdir-2.5.0.crate 23951 BLAKE2B a2d3a973f206e94699adec0263dd5e211347722cf3ab82536295019268b3125084da5dbcad818070bfdcb6a5de08da4eb483475bc225a829f58a1e3e040b5fba SHA512 da36a121dc6656942dc9cd9887fcf4f6eea7750354ef3f59c7c25d836e7afe06f33260b4d55d0d99421104ed4ce56ef2a1f0f4c3b713766fff90548c21793fad
-DIST wasip2-1.0.3+wasi-0.2.9.crate 134512 BLAKE2B f60f74c4132db0605658ec48ee0087992b82e8969d890be15d9b2610aa235f43dfa266863b3f86e323ded9bf17a585beae232defc087ffc01ad175169ff6e818 SHA512 74c4baa90ecb4c1a87a931e03dc0ed7b472fadaa837d286e28c1c948a08bd2af88ed6f4bcf2900bdc85bddb358026d676aaf200899ec395cb98883e2d1a5ae2c
-DIST wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate 123354 BLAKE2B d8251ea31999f954eb1264bbc7792ba16a90aec3ed3112fe84b9a93dd8a0e493390b899be9e5e215ebebf644697d3bab680cb07d5e64617cbb57e6b2a28ae95f SHA512 fb136a5475fb4696902d4f4be43e0d5d28cf3bc1b6c83e5e7837499ee038f995c9f084064e2e4585dbc3bd260e0c7c95371526b04933f2c60fb6ce302416215d
-DIST wasm-bindgen-0.2.121.crate 65838 BLAKE2B a112eae863aa19863974e72b1e204e921977efc5510e5ee17aa06ce02e746942deee967057f0de0887d29f5c88637f80150a6fc3e34a93058a07f259da607168 SHA512 a3420d0fc119b9e1b091afa24b08c9b3692bff28d0488426641c9478ca795a0fe3564120ddbdbb2856f44864e622bea715ce13012d45a6e1b0795ae7057b55df
-DIST wasm-bindgen-macro-0.2.121.crate 9294 BLAKE2B 762428020014a5d18e9bd8af1426be80553c573799c55792721c907c0136d77c98e21fdaee058136b0ffaa6e997c13599d0132d23ec8c91f8f330e5b7bad618f SHA512 844c4aceb5c1eef783d4ab678b189da004bbea4274de9744ea832d9644bbc08ea8b4a365ab2fcf33295fde235bfe53b21c29e7e30847d1cb0e265ed62302a1fe
-DIST wasm-bindgen-macro-support-0.2.121.crate 79901 BLAKE2B a2bf5277242d9f0e89583ed08e98c18e6f6f176342c4462379d00e12ebd7f442f8b157be015a36abaa541ad6a110acc0ff50c8f8b45aee29471568d4c741905f SHA512 ac01daf74ee83db1fd35a7733caeff29f29e1eace54b8b415c935b32b2d48d8802b30ffeea12f73f16785b670c25e5128c894a9bf173e2b112970c3ee1475197
-DIST wasm-bindgen-shared-0.2.121.crate 11270 BLAKE2B 0b66cb8a2518ccf2faa14e292af265ae116304fdfe9fec284f856119c8168e9d0a05dbbcc945eed6bc9a0d4c25933e781a22a816cb43effe0497ad6702d57bcb SHA512 33c037993258552abebe2e3cb3fcd7064e768a4917c1ef3c87ba79b40a3201bdfd27793e78794ec09d7e257dae61a5a8ed283b7651be31c74c2384d4d62b8a86
-DIST wasm-encoder-0.244.0.crate 85804 BLAKE2B 6dabb55c635d13d1d56711a43c655dfcb74bb9f0be10bccd412c21b5dcd63a46b73ff40955ff28aa0fba9341fe22161c8d253762afd587eaf69a7ca49c06e285 SHA512 ab78662abd6bc9edcc14531a87a848eb6c26081ce9bcb9ff15415ceecb48dad98ab6066638947780c65d7689d11502d4dd2353ff3462b4f49e1c1a8c00d2c1d2
-DIST wasm-metadata-0.244.0.crate 21500 BLAKE2B 8da1035b6302c23b00792d90153f74f35eb9cbe913366b43ff7e5d81481c903396b32ad54a416a14b40ff8d4ba329c6fda8c203e4b16f1ab80b3bf4535cde72e SHA512 77677c68dafabacc9697c6090d01fdb171c33ca1663c86dcd3612630b2ea6c41232a7cee125ba416d373edb34ea8e0926d164012461e2ddca8d4d18597feb855
-DIST wasmparser-0.244.0.crate 265607 BLAKE2B fb982e84536afde140d972614bf6c2875ef169f0b68010393e61d8a1041e57d5355e8f0a57df0681ce4159f830e30a59affbd733656aa9c633ad959225007b11 SHA512 d1a1f549fe93e11cf4155a8f5840fa444505ca9184e28163917bd8ddb1d53cb4d2be0335e183ec24625a7db22dd5d7e22c93c697bdd4de0d537b54af4ed7d834
-DIST web-sys-0.3.98.crate 675508 BLAKE2B 44e057a58788ae17dc142c4a8156db66baab9d8c881a8c1a82942878819eaa9d987e3014167cd5e8e91d54127e961bd94fa85a0e1873838caca493730fffd840 SHA512 35ff129b07e391ff3308c035c9afcc82289f1272282bba0fdcafdffc6bd196ea33293658f59cfda97aabdbd7e5eacc3fbbe8fb0e4c99aaffb0520cc37dcad8e4
-DIST winapi-util-0.1.11.crate 13368 BLAKE2B 164f49c84952ece6e566a9a23f32ddf34e16f3930ff531f8d7527bcc18768c9a118cbee748ae6a753a172b4ce8d0f22108142382992b2918b442387ee5904545 SHA512 cc1511c004c2a81da4d7a0414973f09ab711033fbbadfd597f56df2cc6c99b3c1822f0b8de1952e78400a88462b9050acd85d2e4b36db72254049a2d6f725a01
-DIST windows-link-0.2.1.crate 6133 BLAKE2B d1ca714178e6fe12bb3b4caeed9a52a36890989e77ae2dcd6f2d18ae4a21fb8479d304cdff63bb0a5f28acf44eaf104821cff83cd66b3a0406a5f33a800e3641 SHA512 afb0c87beb8914fd9a3e52db6f2f64a840470b9751b66c83892c24cb1c46cda63fb16b1aeafcaa5a1fc7c5ba01da46be63e5227cc108dede8b0bd27785498a6b
-DIST windows-sys-0.59.0.crate 2387323 BLAKE2B 3110c8cd2bc005f8c95cd038a8d574af648dc19788fe4485f977376f92e36b911b1a542d669a07ae9cd4ea72a884ab01ec78b8a2b5587456eb202452d1d8fa0d SHA512 d35e009e979633a1f3c8468cd038bd5c8c0381405165ce03497decd7d9edaaac485d704487e4a61d9aaf4e4d011b4248408912df6a0044d50e8457259867e061
-DIST windows-sys-0.61.2.crate 2517186 BLAKE2B f4eab0b365aa1df8a353d634da5081237bef0f7b69f02ffcaba232a688e59dfe877c47114de64c81e3cbb929c2fea1143ed6bda56ce935e66d871a993ac29106 SHA512 e6c8f61f0724dafca7821ee9b9c07237ccfee69be269be2fa7318eb48b151285ecf63e860aa1fe303639222fe11268e3773f37c2dd79f923029af58c645edb3f
-DIST windows-targets-0.52.6.crate 6403 BLAKE2B eb98d0a8daeed5fe76e7fa8edb2743e2a3e77dfb9c4ea68605a6ab10532cb7cfc43bc1cea0180869445bd940be762a40136500e26b84ca88b5e0c502004c7a4c SHA512 d6d2dbd96096c6c396dba141a9817e377c35877f3b2fe58b2553280c7cfcb1ed6ee75bd4d62c9b882662de67ddaf0c1049b91530d29c94dd709c230e08eb895f
-DIST windows_aarch64_gnullvm-0.52.6.crate 435718 BLAKE2B 8b12ae02892cb69401329034bbca671d13bd268a112120b56b90504707cef89decfbd2560492844a9f0588fab62dc1476ab7e931126b939015d25a8cc91ca334 SHA512 f62b2d942bdb3a9353465b07d47b93de179bb706511aa497e4addd74cff95e689a9b633e7801ce786e73b5ae5f30b506b6faa199c5ab86eefdc1d94652df79c5
-DIST windows_aarch64_msvc-0.52.6.crate 832615 BLAKE2B adc8ff61b6dc96d39c92c7d4221ae6aa0575edfc016cfcd046067ca5d8fcfd56d10e8e227be1c038ce34684be22c7ccaf5f18cd5a7638d28fbff4ba15b48b90b SHA512 a3e21305ad0e6de38f5b5ed5d37ee5825b7521064163bcdf31d63341cd87983f54377865d2daf3bb480d2d0aa66d6f598fa09540ec1d71baea74569c86bd213b
-DIST windows_i686_gnu-0.52.6.crate 880402 BLAKE2B 5aab8ee07132eccb7695807eb44811beeb0657aadfb672c54e99b6ae39c067ba9b93e38fc69bb5b9b14a9759f263ccd5e301597d2727d83b31b49a409b6bd405 SHA512 a1f6b5dd23d17ec3567bc9d11a4be6f35e196eee21ca342e9b88dbaa6a5f7c46e439c834b77e724f32ac22c0d81573746b3b513a6c944a221b92b2c76fe98822
-DIST windows_i686_gnullvm-0.52.6.crate 475940 BLAKE2B fec4fda8bb2bf319a501a22372fa642ae682e4dee3235b258a028190ee73220bfc55b3142f06249bb4579b17e5fde662bb2b121aefe18544653350d7d0fe7d8e SHA512 95f13af855d530acc0b856214478d4b11b8dbab3f8f79dd223d0b009790c0e46d096fc1773e0277997deb2d5b96c704f17f23c7df11411524629f75415dec99f
-DIST windows_i686_msvc-0.52.6.crate 901163 BLAKE2B 99ed34e052db5ba77bab240ed5d38ce450be347a794d63ec39b719304c32722c9999b540ab40abe0216318900b7412970df99dfb36d1516a9517cae0c77d1bdc SHA512 ca97913ce202d73266cf55947b868bea7e964a4516b6a096a81aeab6a60ee73867171032ced35e3afccff741ddfb2def7468343b6eceb95253e4d4f349efbf96
-DIST windows_x86_64_gnu-0.52.6.crate 836363 BLAKE2B e2335829155cdbd4a55cc9f9babc237e14e32aab97f6f91afabcdf80d2aee37d6fb4b8669aaf433ff532c85dba59b3d366c7d41b61a2f29b96f960169c900687 SHA512 c4086bb0280042f2bef9b556283b67f8a5cacddd209e1c5fabec63decec6d4fd2d6a7071407973981b98ae0c0cf7034fc612f9e70dc6d3eed9acdec771ae31cb
-DIST windows_x86_64_gnullvm-0.52.6.crate 435707 BLAKE2B ab77dccd06328cdb00175f41cdbc120594050a9678b7f9820444391fb50aada3911a91ea00f3a6db2b4fa1820fd23bc9a007dfbe65ad41417c26ee1137ef9b96 SHA512 67681f5859e249c56b0183181811f6212cc7008d6471dad78aecc7ebe3d027686b19210b8aa9014c554410f69f913d21ce2aca928eea905eab779bea26464cbd
-DIST windows_x86_64_msvc-0.52.6.crate 832564 BLAKE2B 8e9a3044654c6de99a9153e7cacd575474e7a8a3d883c67b02132af5d3fc99d03cd5f7a4dd666a3947451d11218e6acc6eb5e2526f012481106cc13453839719 SHA512 21944cd8e3a481b514509e73ae3f62722fe7ed380d37ea0c25f8fbdeba79174dd52ff65d898838da5df4197894b74e00f45d47489418e978753b4e55c7e623e7
-DIST wit-bindgen-0.51.0.crate 68035 BLAKE2B 0cb5e191f866c3782b6a1e822ecbae6e618e08371867462addb027dd5510638e72438d991777877d5754b2932afcb41f2edc1ec1426334a69311905f0f309b6a SHA512 61380c309630ad7f415d467daf1d639ad7a3e8dcd26e5f88aacf0230b52600f150e804821b6a1df9b79cc7fdd4f1d800d043ee7eca770b1947a3cf06f893711e
-DIST wit-bindgen-0.57.1.crate 71227 BLAKE2B b91b6e78026d22b58da75e69bf76278f841e11b76610ce5ec04398da9bdfec14b3729c9a342fc79a74634baebd8974f1f937ad3170c67d42208182a0ab20b88a SHA512 9a2ebae44032c0032ae22d1cc277aa6cd35c874d00a0a8b2271a0267ab838f1584eb9fc41d896a0639ad7ad2268fbc9c337a4372c1b3183f6117674d4244bafa
-DIST wit-bindgen-core-0.51.0.crate 35048 BLAKE2B 1ce5f1bd6d1ceceaeb91d247f63745abfd25b539b57dc12321a2342f55da1207c697641a778ad6bff2bbece300fa52a788c7890e8dc49c5357f48292fed2a693 SHA512 eec78ac1566cc4f03b1d0d7d2e84c3d0fc2458a649c01a45c9c3781034078ed51b4a9852760fe96115006fb3415bcb31b1bf429cb3cac6e51e09a1c0cfc32ed0
-DIST wit-bindgen-rust-0.51.0.crate 57051 BLAKE2B 65c45b1b8b08681ded9bae2b4ac982770fa613bfe850128de1116a51ddd6366423c27e1f704817ad69dc05694e03aabb56af5bad3aeb0aba3cbc9415fad474e7 SHA512 7a5c29b92fa53ac8f8097b04a9507f471003edabcae0223d35180937b9254c62b24d9f4cef790000bd7bc7f6966af3aced2d7196359479480455baf5f4450f9f
-DIST wit-bindgen-rust-macro-0.51.0.crate 14283 BLAKE2B 79bc4a4846ec73ae02fe69fcb7898297647a0c70526fbd555e79a4c76de968f0d4c9e2e497643d9c1e7403bb8176a2108ca25a7cef577b9db3ae04142a3bd1ba SHA512 bdf6ab20b484180bfde867b8c8b03c10fe02a9279895ece43fddbc20b1ffe771128590d3d4c72585e959512808682278e54983d11066e0192d84b7aee830e0e2
-DIST wit-component-0.244.0.crate 256882 BLAKE2B 5e9c706693e3064ffbbe28a23e64e5bc32f6772ed294dce3bd2972b8d951f2820ddcee5f9e651b1acc470740b021986cedb6f0ff7a9bdc2b6e13f997dd341024 SHA512 efbf91954b7c4fc9cf5835783245f3a8cda7e5883c6e244a3da85a64b6b2d74f44ffa5f73309de7451b5e6aaf614664869769b140872ab85913878e52e490a00
-DIST wit-parser-0.244.0.crate 159371 BLAKE2B f46db4840d3cbcd42e5d26b854247d172f8385810a10c437aaa6b67f3f72dcc230a8d75f4e5ccff6ea006c8a52c2fe92f39d9d90cb30ba594c02ae618fb66bb6 SHA512 c554a167ce9802fbc7537700376da70ed6a79f96adeba5a0e4c955a7cc4f2ae4f588071e25735903d4f509f2590341fa39b2edd018cf6d3bf8ad6477b2474b01
-DIST wyz-0.5.1.crate 18790 BLAKE2B 07ac1435a812d2f50309348ef8378ea4955c001f01edaf2ffab108f7d524ee731f06b22fd42c043349a4a2271ec47ea203e89562076e8c7c1719112b0214c89a SHA512 15d86c167145c90e3fbabcefd11754fb1cb835896e32d1bb7f4b027e5b2092f5fdbdca4062c129bc38e655cb87c6a3f4e181747ee25d89db5e01fb1fcac18fe9
-DIST zerocopy-0.8.48.crate 287554 BLAKE2B f66a7efa5970e16ad8c0e35a7f894192d93f9f9328bf1f8ff3f75f0a091cc8a44c5bddb4cd89e6acd8422cbc1ca1c6fc230c65b32e82460ab541435ab81408dc SHA512 c66a2a301bebfcb6519ac122d5b03a5f5ea2443d83ebcacfacc564d01b9d6173581fcb4df122444c910ea0b0e420d1529e3318d60695cec3d9df28a1837b9f9e
-DIST zerocopy-derive-0.8.48.crate 97646 BLAKE2B a75bf954fc7b9878325bb7dd953351eef1858ab3d41464661cd5fd8638f8417fa2ae05c4fc9b72ea7c2121a6455ecf683a1f096b49f62941fc110f2c43316ee5 SHA512 7dd11845b9c07fcc6c7289f792a27c30b2eb6122a403e9cfaa59177a953a60e5e412040a085d12b31a4c52306d3e3517a7f295ba62fb4441aac8e2d5f052e3c3
-DIST zmij-1.0.21.crate 26665 BLAKE2B e958b58e2213ad13185ec6df55d07e6c80169afa56133038fa66cefb4a9f49aa786249a486dc09b2d0a2f74e41c0d0d713135f38a84dff8f6239636a6bf3cadb SHA512 a488f11ec8721ddfe42e61d028a128818551de8fccd69d7824504e4ae2efccdc38f716fa5a10ef4de07a8a087e75e819c4a1e0790817e8539b5db697bde14585
+DIST jiter-0.16.0-crates.tar.xz 10951076 BLAKE2B a71e31e6aa983179fbd8bb5022b525f2d96889af6de7c0375e8272e51b0d033624c7d965b222f6ca670c3736754a5d2c3eb7919f6046abea3b74e1c09fd58b93 SHA512 caec786f730ad99dafd3d1aa6ff0247f4ae0240d77a85465d3058577cfb433c93d47fc8c74a315a3092985c7e6fb37dba5c9dbd4f426e1f177950e756b74e458
+DIST jiter-0.16.0.gh.tar.gz 271200 BLAKE2B 0dca62900f9364ca985ec320b5bbd1f51c0224e3e60409754799159554e2578d8f3077b5d35d5f9d32cb62823b28b0c0d8fa1abc3d4e56a76be786e35a40d9f0 SHA512 1bb03992808b619aa44f055b5078979623b6c88a2561caad6844747012529ffaacfe6e8800e8539a9e666500315f6a33f4ba5019dda4b4f310bcad599a9f4ece
diff --git a/dev-python/jiter/jiter-0.15.0.ebuild b/dev-python/jiter/jiter-0.15.0.ebuild
deleted file mode 100644
index 2a35e858eb46..000000000000
--- a/dev-python/jiter/jiter-0.15.0.ebuild
+++ /dev/null
@@ -1,185 +0,0 @@
-# Copyright 2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=( maturin crates/jiter-python )
-PYPI_VERIFY_REPO=https://github.com/pydantic/jiter
-PYTHON_COMPAT=( python3_{13..14} )
-
-RUST_MIN_VER="1.88.0"
-CRATES="
- ahash@0.8.12
- aho-corasick@1.1.4
- anes@0.1.6
- anstyle@1.0.14
- anyhow@1.0.102
- autocfg@1.5.0
- bitflags@2.11.1
- bitvec@1.0.1
- bumpalo@3.20.2
- cast@0.3.0
- cc@1.2.62
- cfg-if@1.0.4
- ciborium-io@0.2.2
- ciborium-ll@0.2.2
- ciborium@0.2.2
- clap@4.6.1
- clap_builder@4.6.0
- clap_lex@1.1.0
- codspeed-criterion-compat-walltime@2.10.1
- codspeed-criterion-compat@2.10.1
- codspeed@2.10.1
- colored@2.2.0
- criterion-plot@0.5.0
- crossbeam-deque@0.8.6
- crossbeam-epoch@0.9.18
- crossbeam-utils@0.8.21
- crunchy@0.2.4
- either@1.15.0
- equivalent@1.0.2
- find-msvc-tools@0.1.9
- foldhash@0.1.5
- funty@2.0.0
- futures-core@0.3.32
- futures-task@0.3.32
- futures-util@0.3.32
- getrandom@0.3.4
- getrandom@0.4.2
- half@2.7.1
- hashbrown@0.15.5
- hashbrown@0.17.1
- heck@0.5.0
- hermit-abi@0.5.2
- id-arena@2.3.0
- indexmap@2.14.0
- is-terminal@0.4.17
- itertools@0.10.5
- itoa@1.0.18
- js-sys@0.3.98
- lazy_static@1.5.0
- leb128fmt@0.1.0
- lexical-parse-float@1.0.6
- lexical-parse-integer@1.0.6
- lexical-util@1.0.7
- libc@0.2.186
- log@0.4.29
- memchr@2.8.0
- num-bigint@0.4.6
- num-integer@0.1.46
- num-traits@0.2.19
- once_cell@1.21.4
- oorandom@11.1.5
- paste@1.0.15
- pin-project-lite@0.2.17
- plotters-backend@0.3.7
- plotters-svg@0.3.7
- plotters@0.3.7
- portable-atomic@1.13.1
- prettyplease@0.2.37
- proc-macro2@1.0.106
- pyo3-build-config@0.28.3
- pyo3-ffi@0.28.3
- pyo3-macros-backend@0.28.3
- pyo3-macros@0.28.3
- pyo3@0.28.3
- python3-dll-a@0.2.15
- quote@1.0.45
- r-efi@5.3.0
- r-efi@6.0.0
- radium@0.7.0
- rayon-core@1.13.0
- rayon@1.12.0
- regex-automata@0.4.14
- regex-syntax@0.8.10
- regex@1.12.3
- rustversion@1.0.22
- same-file@1.0.6
- semver@1.0.28
- serde@1.0.228
- serde_core@1.0.228
- serde_derive@1.0.228
- serde_json@1.0.149
- shlex@1.3.0
- slab@0.4.12
- smallvec@1.15.1
- syn@2.0.117
- tap@1.0.1
- target-lexicon@0.13.5
- tinytemplate@1.2.1
- unicode-ident@1.0.24
- unicode-xid@0.2.6
- uuid@1.23.1
- version_check@0.9.5
- walkdir@2.5.0
- wasip2@1.0.3+wasi-0.2.9
- wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06
- wasm-bindgen-macro-support@0.2.121
- wasm-bindgen-macro@0.2.121
- wasm-bindgen-shared@0.2.121
- wasm-bindgen@0.2.121
- wasm-encoder@0.244.0
- wasm-metadata@0.244.0
- wasmparser@0.244.0
- web-sys@0.3.98
- winapi-util@0.1.11
- windows-link@0.2.1
- windows-sys@0.59.0
- windows-sys@0.61.2
- windows-targets@0.52.6
- windows_aarch64_gnullvm@0.52.6
- windows_aarch64_msvc@0.52.6
- windows_i686_gnu@0.52.6
- windows_i686_gnullvm@0.52.6
- windows_i686_msvc@0.52.6
- windows_x86_64_gnu@0.52.6
- windows_x86_64_gnullvm@0.52.6
- windows_x86_64_msvc@0.52.6
- wit-bindgen-core@0.51.0
- wit-bindgen-rust-macro@0.51.0
- wit-bindgen-rust@0.51.0
- wit-bindgen@0.51.0
- wit-bindgen@0.57.1
- wit-component@0.244.0
- wit-parser@0.244.0
- wyz@0.5.1
- zerocopy-derive@0.8.48
- zerocopy@0.8.48
- zmij@1.0.21
-"
-
-inherit cargo distutils-r1 pypi
-
-DESCRIPTION="Fast iterable JSON parser"
-HOMEPAGE="
- https://github.com/pydantic/jiter
- https://pypi.org/project/jiter/
-"
-SRC_URI+=" ${CARGO_CRATE_URIS}"
-
-LICENSE="MIT"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT MPL-2.0 Unicode-3.0
- ZLIB
-"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-BDEPEND="
- test? (
- dev-python/dirty-equals[${PYTHON_USEDEP}]
- )
-"
-
-QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/jiter/jiter.*.so"
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-src_unpack() {
- # Required for verify-provenance
- pypi_src_unpack
- cargo_src_unpack
-}
diff --git a/dev-python/jiter/jiter-0.16.0.ebuild b/dev-python/jiter/jiter-0.16.0.ebuild
new file mode 100644
index 000000000000..17fac8bf53ae
--- /dev/null
+++ b/dev-python/jiter/jiter-0.16.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2026 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_{13..14} )
+
+RUST_MIN_VER="1.88.0"
+CRATES="
+"
+
+inherit cargo distutils-r1
+
+DESCRIPTION="Fast iterable JSON parser"
+HOMEPAGE="
+ https://github.com/pydantic/jiter
+ https://pypi.org/project/jiter/
+"
+SRC_URI="
+ https://github.com/pydantic/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/fasys-crate-dist/${PN}/releases/download/v${PV}/${P}-crates.tar.xz
+"
+S="${WORKDIR}/${P}/crates/jiter-python"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT MPL-2.0 Unicode-3.0
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+BDEPEND="
+ test? (
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ )
+"
+
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/jiter/jiter.*.so"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/json-repair/Manifest b/dev-python/json-repair/Manifest
index 517b925a4479..cef14af4cd65 100644
--- a/dev-python/json-repair/Manifest
+++ b/dev-python/json-repair/Manifest
@@ -1 +1 @@
-DIST json-repair-0.61.1.gh.tar.gz 2563279 BLAKE2B b991b2ecbc49bed38365bfeb69b025f024e78815e7bbb8f41c5694fbfe85691b69c9fe001a21e07583867dfa5c2a613cc7a6b102a9942b2f8d868af6af8a924d SHA512 9fff86c8ce5ec3c70584fcd45e1fb701961137cc19f4857a0719bfd01779bed0e04e32eece1ace5240afe934e63da144dd38b92e85792746a2289afc5e434a6b
+DIST json-repair-0.61.4.gh.tar.gz 2564671 BLAKE2B d406964bcd796d11f09b7950d4f9078b92203388388c555d4d0bbf84f61c07e80c25c9da515d96db44f70b6e99a34bcaa097a6b25d1e536243caa24f20fa3dcb SHA512 2626494e57d5b65b53bc8405b9f94d4a5719d78866ccbd4a520fde3288c9dabff3e7008274cfa059cfba32143154e18f15dd04e07a9fc0c6c538807b3e556152
diff --git a/dev-python/json-repair/json-repair-0.61.1.ebuild b/dev-python/json-repair/json-repair-0.61.4.ebuild
index 7a42b021a172..7a42b021a172 100644
--- a/dev-python/json-repair/json-repair-0.61.1.ebuild
+++ b/dev-python/json-repair/json-repair-0.61.4.ebuild
diff --git a/dev-python/mcp/mcp-1.28.1.ebuild b/dev-python/mcp/mcp-1.28.1.ebuild
index a533d4761857..90018338ec28 100644
--- a/dev-python/mcp/mcp-1.28.1.ebuild
+++ b/dev-python/mcp/mcp-1.28.1.ebuild
@@ -51,15 +51,34 @@ EPYTEST_PLUGINS=( anyio inline-snapshot )
EPYTEST_XDIST=1
distutils_enable_tests pytest
-EPYTEST_IGNORE=(
- # Requires dev-python/pytest-examples which depends on missing Python
- # bindings in dev-util/ruff::gentoo
- tests/test_examples.py
-)
-EPYTEST_DESELECT=(
- # Runs dev-python/uv and requires network access (v1.28.1)
- tests/client/test_config.py::test_command_execution
-)
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # Fix TOCTOU port assignment issue
+ # https://bugs.gentoo.org/979158
+ cat >> tests/conftest.py <<-EOF || die
+
+ def pytest_collection_modifyitems(items):
+ for item in items:
+ if hasattr(item.module, "server_port"):
+ item.add_marker(pytest.mark.xdist_group(name="toctou_fix"))
+ EOF
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # Requires dev-python/pytest-examples which depends on missing Python
+ # bindings in dev-util/ruff::gentoo
+ tests/test_examples.py
+ )
+ local EPYTEST_DESELECT=(
+ # Runs dev-python/uv and requires network access (v1.28.1)
+ tests/client/test_config.py::test_command_execution
+ )
+
+ epytest -m "xdist_group" --collect-only
+ epytest --dist=loadgroup
+}
pkg_postinst() {
optfeature "colorized log output" dev-python/rich
diff --git a/dev-python/narwhals/Manifest b/dev-python/narwhals/Manifest
index 866b4bf0473f..014a50d1a6ba 100644
--- a/dev-python/narwhals/Manifest
+++ b/dev-python/narwhals/Manifest
@@ -1,2 +1,4 @@
DIST narwhals-2.23.0.tar.gz 656209 BLAKE2B 160d4c985d20267dca45994690f531a7fcd9094de69517aba84c34783006ea60a58a810570a64c25c3ccfd4e906f3eeb221f531e755a79296695942da258ec05 SHA512 72752d620db34fd24fc048adb38ad8988ca88303d4bde18e4a47c21b3924699316141d7d111b2bf578a2a0f55568f9cb3112e27aad485684e53908c4698f2b3e
DIST narwhals-2.23.0.tar.gz.provenance 10087 BLAKE2B 7ea5b09a6d8bef5e790a7d631a4956205026422ed0b1c313a28e9e50b89c8af63c18b4378f251ea1b9fc47d7d9dc0493bbe64424092f9537f59de06b8733e351 SHA512 8dc8218f971eb799617a0ba7c2f98ceca2d123c00ad3d73cf49eea76070cd9fa5f3b404b7cf661c21754bbb08e46ae16a0340c6fe0e9130fdbda43180477ee0f
+DIST narwhals-2.24.0.tar.gz 661143 BLAKE2B af72a6a3b2e6bed10ba77f7243c64fc454dcea1db4800366f7c6f2368360ed4b47f5a8a8aadb3a3c67b373c9166e9d492c93cfa8c7fea4b9899aafaae005e40b SHA512 701deb53fb9b188b37bdf1549fbd1b3092fceac161e0b073b0b7c5c57b55ab8cb1d766df3eefa43639ebb49bf0f768a37487779f20d74df77156e823a0bae94b
+DIST narwhals-2.24.0.tar.gz.provenance 9942 BLAKE2B 3db6a7198e6628468845ac6b46ab3db9ebef9d5f06822866f613c82d6bd5382bd272787276d5ecb811515c070d2c938673b1fa1b80d8f66ab1377f4fe326084b SHA512 be3f588387bb1f8d2b1b0091b3c0a14dd2a556f49ce0da996660bc0b3adc831e3f023d25759c1638e868eab4003dad35c32c939b8afa6148fe6fee222ba34a96
diff --git a/dev-python/narwhals/narwhals-2.24.0.ebuild b/dev-python/narwhals/narwhals-2.24.0.ebuild
new file mode 100644
index 000000000000..359955646416
--- /dev/null
+++ b/dev-python/narwhals/narwhals-2.24.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=uv-build
+PYPI_VERIFY_REPO=https://github.com/narwhals-dev/narwhals
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Extremely lightweight compatibility layer between dataframe libraries"
+HOMEPAGE="
+ https://github.com/narwhals-dev/narwhals/
+ https://pypi.org/project/narwhals/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+BDEPEND="
+ test? (
+ >=dev-python/pandas-1.1.3[${PYTHON_USEDEP}]
+ >=dev-python/pyarrow-13.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis pytest-env )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # segfaults
+ # https://github.com/apache/arrow/issues/47252
+ 'tests/modern_polars/unpivot_test.py::test_unpivot[pyarrow]'
+ # fragile to parallel merges that can cause non-atomic .dist-info
+ # changes
+ tests/system_info_test.py::test_get_deps_info
+ )
+
+ epytest --runslow --constructors="pandas,pandas[nullable],pandas[pyarrow],pyarrow"
+}
diff --git a/dev-python/openai/Manifest b/dev-python/openai/Manifest
index dc682265788a..3e6d7a0cd842 100644
--- a/dev-python/openai/Manifest
+++ b/dev-python/openai/Manifest
@@ -1,5 +1,5 @@
-DIST npm-@stdy-cli-cli-0.22.1.tgz 7776 BLAKE2B ec66af59c4c864a4331dc7918ed0a82d452579427663c3666b94d6008e769cb8a61d00e1971a394c326ca180da7f3009597b15d4c6bea8d169bda56c87ae21fb SHA512 55d9c2a0afddd09588853a1a8c1c4075a813a4b097ff34dded18ae2b529d4f5d90e29667ffe792f7b82af78fa3bfa4db88c77ef5259e39db100a86a0a4b98d7c
-DIST npm-@stdy-cli-linux-arm64-cli-linux-arm64-0.22.1.tgz 37635112 BLAKE2B f749d99342d9cffb831f0feea34ed74301a3beea7ec4c7e46cd5b942cacfea4b10c28632cc3e38a0ac00b565c2ca5889cb6587fcccb75f1557fa29dace58a343 SHA512 5c6432dd9a85e423aa4600151b109da16f5dcf19dfc710920070869a1a4573ea557e941c6077cf72736199686994c09eae24d4c8228b246fbf7c67728e2eded9
-DIST npm-@stdy-cli-linux-x64-cli-linux-x64-0.22.1.tgz 38431354 BLAKE2B f6b49ce9f79ad98de58f6f01874e5ae03f728f062b09b91b092f1410e1bf3d2874d25dfb30038291429043eeffc4c5e3183e7e9307c6fb889521008b981df4f9 SHA512 bbbe7cd48dec73a47e3d4c0692f1056ef0ffc3a617bd193e893d0122658a3ed298036e9c3cfd7a96003b82abaeded00493eddcf581a7e71854a6109cf7a68b4a
DIST openai-openapi-spec-2.44.0.yml 2333764 BLAKE2B f96a21463f43efd8e4930e91fae4f48b4be28ed497223374d3402a22a7f1fc1644deb89ce613901dde2a05c1ac92551406ebc8a99c58bf014698f3932565da77 SHA512 0a1c51e2a330f05c91f76646c7efc02633632524db0a18cf2eabbac9147ecbe60083b1e5789b0e3efd445cbebf34b48c025d4f640e4948289c44c8d2c4ef52ba
DIST openai-python-2.44.0.gh.tar.gz 1017643 BLAKE2B bedd273b0e790b331c20244ae967a5082f878db1764451a47a6fbdedb71dd72c18f075d63e6cd2500bd4a6e95521034f5280cb5aa08ef06b0bfc09738cbdce6a SHA512 c0ae402fb6e60499220416c010ab3ce7f89c755f9ab04f61465c6b5033c339a1a94c971fe6af2eaf926d2d08a76d7270f249eb07f580978fe23a0aaa436e3d47
+DIST stdy-cli-0.22.1.npm.tgz 7776 BLAKE2B ec66af59c4c864a4331dc7918ed0a82d452579427663c3666b94d6008e769cb8a61d00e1971a394c326ca180da7f3009597b15d4c6bea8d169bda56c87ae21fb SHA512 55d9c2a0afddd09588853a1a8c1c4075a813a4b097ff34dded18ae2b529d4f5d90e29667ffe792f7b82af78fa3bfa4db88c77ef5259e39db100a86a0a4b98d7c
+DIST stdy-cli-linux-arm64-0.22.1.npm.tgz 37635112 BLAKE2B f749d99342d9cffb831f0feea34ed74301a3beea7ec4c7e46cd5b942cacfea4b10c28632cc3e38a0ac00b565c2ca5889cb6587fcccb75f1557fa29dace58a343 SHA512 5c6432dd9a85e423aa4600151b109da16f5dcf19dfc710920070869a1a4573ea557e941c6077cf72736199686994c09eae24d4c8228b246fbf7c67728e2eded9
+DIST stdy-cli-linux-x64-0.22.1.npm.tgz 38431354 BLAKE2B f6b49ce9f79ad98de58f6f01874e5ae03f728f062b09b91b092f1410e1bf3d2874d25dfb30038291429043eeffc4c5e3183e7e9307c6fb889521008b981df4f9 SHA512 bbbe7cd48dec73a47e3d4c0692f1056ef0ffc3a617bd193e893d0122658a3ed298036e9c3cfd7a96003b82abaeded00493eddcf581a7e71854a6109cf7a68b4a
diff --git a/dev-python/openai/openai-2.44.0.ebuild b/dev-python/openai/openai-2.44.0.ebuild
index b0c7575698f5..76c5514f6795 100644
--- a/dev-python/openai/openai-2.44.0.ebuild
+++ b/dev-python/openai/openai-2.44.0.ebuild
@@ -6,41 +6,24 @@ EAPI=8
DISTUTILS_USE_PEP517=hatchling
PYTHON_COMPAT=( python3_{13..14} )
-inherit distutils-r1
-
# See https://github.com/openai/openai-python/blob/main/.stats.yml
-API_SPEC_BASE="https://storage.googleapis.com/stainless-sdk-openapi-specs/openai"
-API_SPEC="openai-openapi-spec-${PV}.yml"
+STAINLESS_SPEC_PATH=${PN}/${PN}-b5b621065906a2579dc180db1236ee3b08a4fca9539accc2fbbf88da0ca3923f.yml
+# See https://github.com/openai/openai-python/blob/main/scripts/mock
+STAINLESS_MOCK_SERVER_VERSION=0.22.1
+STAINLESS_MOCK_SERVER_PACKAGE_JSON="${FILESDIR}/${PN}-2.44.0-mock-server-package.json"
+
+inherit distutils-r1 stainless-python
+
MY_PN="openai-python"
MY_P="${MY_PN}-${PV}"
-# See https://github.com/openai/openai-python/blob/main/scripts/mock
-STDY_PV=0.22.1
DESCRIPTION="The official Python library for the openai API"
HOMEPAGE="
https://github.com/openai/openai-python
https://pypi.org/project/openai/
"
-SRC_URI="
+SRC_URI+="
https://github.com/openai/${MY_PN}/archive/refs/tags/v${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
-
- test? (
- ${API_SPEC_BASE}/openai-b5b621065906a2579dc180db1236ee3b08a4fca9539accc2fbbf88da0ca3923f.yml
- -> ${API_SPEC}
-
- https://registry.npmjs.org/@stdy/cli/-/cli-${STDY_PV}.tgz
- -> npm-@stdy-cli-cli-${STDY_PV}.tgz
-
- amd64? (
- https://registry.npmjs.org/@stdy/cli-linux-x64/-/cli-linux-x64-${STDY_PV}.tgz
- -> npm-@stdy-cli-linux-x64-cli-linux-x64-${STDY_PV}.tgz
- )
-
- arm64? (
- https://registry.npmjs.org/@stdy/cli-linux-arm64/-/cli-linux-arm64-${STDY_PV}.tgz
- -> npm-@stdy-cli-linux-arm64-cli-linux-arm64-${STDY_PV}.tgz
- )
- )
"
S="${WORKDIR}/${MY_P}"
@@ -68,8 +51,6 @@ BDEPEND="
dev-python/httpx-aiohttp[${PYTHON_USEDEP}]
>=dev-python/importlib-metadata-6.7.0[${PYTHON_USEDEP}]
>=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
- net-libs/nodejs[npm]
- net-misc/curl
)
"
@@ -81,89 +62,3 @@ EPYTEST_PLUGINS=(
time-machine
)
distutils_enable_tests pytest
-
-src_unpack() {
- unpack "${MY_P}.gh.tar.gz"
-}
-
-src_test() {
- einfo "Assembling npm cache..."
-
- local -x npm_config_cache="${WORKDIR}/npm-cache"
- mkdir -p "${npm_config_cache}" || die
-
- for distfile in ${A}; do
- if [[ "${distfile}" == npm-* ]]; then
- npm cache add "${DISTDIR}/${distfile}" &>/dev/null || die
- fi
- done
-
- einfo "Installing mock server..."
-
- local mock_dir="${WORKDIR}/mock-server"
- mkdir -p "${mock_dir}" || die
-
- cp "${FILESDIR}/${PN}-2.44.0-mock-server-package.json" \
- "${mock_dir}/package.json" || die
- cp "${FILESDIR}/${PN}-2.44.0-mock-server-package-lock.json" \
- "${mock_dir}/package-lock.json" || die
-
- local mock_dir="${WORKDIR}/mock-server"
- local mock="${mock_dir}/node_modules/.bin/steady"
-
- pushd "${mock_dir}" >/dev/null || die
-
- npm ci &>/dev/null || die
-
- einfo "Starting mock server..."
-
- # Replicate the logic from scripts/mock --daemon
- "${mock}" --host 127.0.0.1 -p 4010 \
- --validator-form-array-format=brackets \
- --validator-query-array-format=brackets \
- --validator-form-object-format=brackets \
- --validator-query-object-format=brackets \
- "${DISTDIR}/${API_SPEC}" &> .stdy.log &
- local mock_pid=$!
-
- is_mock_running() {
- local -a args
- readarray -d '' args < "/proc/${mock_pid}/cmdline" 2>/dev/null || return 1
-
- # Check args[1] (native) or args[2] (QEMU user-mode emulation)
- [[ "${args[1]}" == "${mock}" || "${args[2]}" == "${mock}" ]]
- }
-
- local attempts=0
- while ! curl -sf "http://127.0.0.1:4010/_x-steady/health" &>/dev/null; do
- if ! is_mock_running; then
- cat .stdy.log
- die "Mock server failed to start"
- fi
- attempts=$((attempts + 1))
- if (( attempts >= 300 )); then
- cat .stdy.log
- die "Timed out waiting for mock server to start"
- fi
- sleep 0.1
- done
-
- # Oops; connected to another Steady instance running on 4010
- is_mock_running || die
-
- popd >/dev/null || die
-
- nonfatal distutils-r1_src_test
- local ret=${?}
-
- if is_mock_running; then
- einfo "Stopping mock server..."
- kill "${mock_pid}" || die
- fi
-
- [[ ${ret} -ne 0 ]] && die
-}
-
-python_test() {
- epytest -o asyncio_mode=auto
-}
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 02e1e4268744..1b031c995ea7 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -1,7 +1,6 @@
DIST peewee-4.0.7.gh.tar.gz 990613 BLAKE2B cec728c18d5be72b04cf82f9f0b58a7aa1de4bc7b8ff1b49ac543210e50f91ebf51c39d16315aed7c183e20dcb21a4c3e4a093d52bd8f05aaf1db90affefcafa SHA512 6e57b4cb98e68eb1a046c2ca9a58a3f07641b4c7a1ec3c8db23e97b199d2c61971178a3abbb9d7893e8f73ce83808124fdfa821a427ace116df826f1bd9000d3
DIST peewee-4.0.8.gh.tar.gz 1001592 BLAKE2B 4b2328fa31aab3315511ce4320008d56e51882c041a15f4ec5e4732fd4c72e2a5c98346b4e515619d2cde056d030e52e76a128db31e00b985b6ed6aa19623166 SHA512 2c9ee4d98f4e63eeb4ec1a28762a32efe41c506fd7437667325a65c73cad821c35d18faad8da5a30f8dde25af88f4f6431cc73858c735468be3837e675fa46d0
DIST peewee-4.0.9.gh.tar.gz 1002262 BLAKE2B 456af69c3d57d2e8344080cf40845163c9d0a9bd6b4a418940adc28ed388aea7faad8e3759973b23fcc8fb0e27e6a88c40b953081825f8a7acf6f8eb64c91894 SHA512 dd68b9e38dca84eff67c90f1f78cd6d59713c18b73faa8e2a36fa1b343e2e1f154a0dd57415803b763fd7368a151eb08c30312c72d1c2db665f7941a99a0ad8c
-DIST peewee-4.1.0.gh.tar.gz 1002833 BLAKE2B 65d8317829f59aa67b2650bd8e690e99f291d0bb8383a5945b16387c0c6a313236ec0b9654e8c81faf868208b41e4776d1d5dc1b2ce220aefd5215c4bed8b4a8 SHA512 c24e46e339b84e68db86efb2a39bc4c15a6620dd91c6c28ecf982bcf74499febdc878707bc35cfe49dbee960ab88d2162032cfd57057adcf212da8119910d747
-DIST peewee-4.1.1.gh.tar.gz 1035158 BLAKE2B 653ce44483664b81563b8e755ffc54cbf1295e932881c8c89df3f09c06e9fcc74a3544a6e6eaa400090c43bb3485a96aab8c99e8ec1e2be596491bc6a86eb915 SHA512 5d2451f791b6221418269f6c3fd87dd4f374d665f8d960e28763db8bcc45f690d75c935dc89c6b5a350b58bdf899155d0a32bc6e720d50db1731152fba9fdd62
DIST peewee-4.1.2.gh.tar.gz 1046776 BLAKE2B 8a66ea828ad669db4d20cce089e485f75b9f792bc94fea8a1a1d46f9391e062f89c33cb2e7a34aae84645580967c586d4efff067d1aa4d7cfd6cc1da01fe90e9 SHA512 4a384817a8b3a146ac818b7327cc1ef4a02c0322409353ac29f64d9c66e1e6eeebb226db67fa6e4754662e82307b0abaa57b7526faa4dc7d90d911b8cc3094e9
DIST peewee-4.2.1.gh.tar.gz 1052835 BLAKE2B 1e6600f93622b06ab83b049f6f0ba0791c61e0027c9d00fd6c66a7619176b6be13fd50e655bf233c62247834f9804df338a5cbb8dfac5a9e384f54bafdc3fd8e SHA512 14fef860da92f7408047a24b2faaa9e1941072ff293044d610971ad5a8fafdc9c72f1784a57258529e769e81438a1c47ed42a784f1f7a41bffa563c1a956fd90
+DIST peewee-4.2.2.gh.tar.gz 1055796 BLAKE2B caf2e0cd0ffde1073f09d161be2b10665cb9878786e38c25f14579ccea362591948bdadab8c9f7d8d898b287892a0e9ee772653eebe952943e368b054b3b15ed SHA512 0fabf02e266750819df0e0e9ff1934dc43a688b5b697984ca131236f04f68012d7b6b42e74af4b67863f0518a787589880a9c371419ff20d289581a727b783c0
diff --git a/dev-python/peewee/peewee-4.1.1.ebuild b/dev-python/peewee/peewee-4.1.1.ebuild
deleted file mode 100644
index 354b1a91f483..000000000000
--- a/dev-python/peewee/peewee-4.1.1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="sqlite"
-
-inherit distutils-r1
-
-DESCRIPTION="Small Python ORM"
-HOMEPAGE="
- https://github.com/coleifer/peewee/
- https://pypi.org/project/peewee/
-"
-SRC_URI="
- https://github.com/coleifer/peewee/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
-IUSE="examples +native-extensions test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- native-extensions? ( dev-db/sqlite:3= )
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- native-extensions? (
- dev-python/cython[${PYTHON_USEDEP}]
- )
- test? (
- dev-db/postgresql
- dev-python/psycopg:0[${PYTHON_USEDEP}]
- sys-libs/timezone-data
- )
-"
-
-distutils_enable_sphinx docs \
- dev-python/sphinx-rtd-theme
-
-src_prepare() {
- default
-
- # disable test failing on postgres 16
- sed -e 's/test_timeout/_&/' -i tests/sqliteq.py || die
-}
-
-src_compile() {
- if ! use native-extensions; then
- local -x NO_SQLITE=1
- fi
-
- distutils-r1_src_compile
-}
-
-src_test() {
- initdb -D "${T}"/pgsql || die
- pg_ctl -w -D "${T}"/pgsql start -o "-h '' -k '${T}'" || die
- createdb -h "${T}" peewee_test || die
- psql -h "${T}" peewee_test -c 'create extension hstore;' || die
-
- local -x PEEWEE_PSQL_HOST="${T}"
- distutils-r1_src_test
-
- pg_ctl -w -D "${T}"/pgsql stop || die
-}
-
-python_test() {
- "${EPYTHON}" runtests.py -v 2 || die "tests failed under ${EPYTHON}"
-}
-
-python_install_all() {
- use examples && DOCS=( examples/ )
- distutils-r1_python_install_all
-}
diff --git a/dev-python/peewee/peewee-4.1.0.ebuild b/dev-python/peewee/peewee-4.2.2.ebuild
index 354b1a91f483..354b1a91f483 100644
--- a/dev-python/peewee/peewee-4.1.0.ebuild
+++ b/dev-python/peewee/peewee-4.2.2.ebuild
diff --git a/dev-python/pyghmi/Manifest b/dev-python/pyghmi/Manifest
index 7f3853273895..9bec1e3c1b1d 100644
--- a/dev-python/pyghmi/Manifest
+++ b/dev-python/pyghmi/Manifest
@@ -1,2 +1,2 @@
-DIST pyghmi-1.6.17.tar.gz 285830 BLAKE2B 40155e56cb4bfb9463ac42f33a15e4f1fefce7cb0796ab5e871f89d87009bd603689ef66ffeb257438577798e4742fefcde91b44555f4a18e255cabfda638948 SHA512 fb13d0b3d10541f7449da5bc087ea8db6242310b1c95c2bb8ee811e605315f8349231daa0f88aa1a4daf735570d2d38ed66e684034e3e39dc9f4f3f875aa1932
DIST pyghmi-1.6.18.tar.gz 286180 BLAKE2B 1fed199f2df8142e2d2dde91fd6c53c327a4899432fc8bca73e8bcb8db91bb2d6cb404ac40f8b1c989ce8854d12353692f6359e1906e0d7f989530808abaed0c SHA512 28182d2b13dd9100acf46f07781fd8a6e7fac757471dfa484a760de5b331dd4c71e1113eb3c03d2d7378d64986f5226fc0e20ca4b6c50184f11ac622718068a9
+DIST pyghmi-1.6.19.tar.gz 286305 BLAKE2B da1de714f9bc7dc33d332cf3b627dcd27a3c4c82acdfb12ce7fbd72d7d2825f2c949739c84e1d7824172b957e5e1a7a706ca4c5c5bf257a4c92205497bd302b1 SHA512 92c98636e84f0fecdd17c1f4a7aa09d55f937eddf45ab41cd28fe5fe336991b7e19ede3b199b3b71ba66f125ecd33f3fc46b04ea44cbb99ca7afed6cdd129a55
diff --git a/dev-python/pyghmi/pyghmi-1.6.17.ebuild b/dev-python/pyghmi/pyghmi-1.6.19.ebuild
index ad0c0c312dde..ad0c0c312dde 100644
--- a/dev-python/pyghmi/pyghmi-1.6.17.ebuild
+++ b/dev-python/pyghmi/pyghmi-1.6.19.ebuild
diff --git a/dev-python/pyproject-fmt/Manifest b/dev-python/pyproject-fmt/Manifest
index 1c110323b349..e558059d9c9d 100644
--- a/dev-python/pyproject-fmt/Manifest
+++ b/dev-python/pyproject-fmt/Manifest
@@ -10,6 +10,8 @@ DIST pyproject_fmt-2.25.1.tar.gz 290943 BLAKE2B 02390a55ca82ea869429302298aa9831
DIST pyproject_fmt-2.25.1.tar.gz.provenance 10064 BLAKE2B b9446853d04e357be741bf3e45464ab44c93b7da5bbf297b32c7175a683d8e9efceb2db9532fedcdc5221214027edc0bba1decc24ee3fee00a5d6d69bcfe7fbc SHA512 8410f5c4a6c9d88b7a1eaa17fbacc308deac3a6970f6d9868a7176ea2c279ebcde8d4e560c5f88d66466b02bf5179552890b9dee5c3c6bce26638ae7f3c18186
DIST pyproject_fmt-2.25.2.tar.gz 292446 BLAKE2B 3f848f1a26f7517ca6369c84b77b33a02ec0508b9b42e065087b4240957992f9eb59c4eb55e22ec38ab9f87bfb8d189bc3b54899ee1466905cd5391e0fbef72c SHA512 a7197ece8f82aac64f5cd27108e8b011b3a2961bff7db2d697dea43aa57d792f445992bc9ab7e6c2458592ac7b77d635e17f6709ffc9d646050ed1109ec3d9ef
DIST pyproject_fmt-2.25.2.tar.gz.provenance 10115 BLAKE2B 30ec10573cd5209bb8eb31a4bc6d8c8be03824c3abc2aefb4ac4bb0476ea6e1313ca1048b36af19a597fdb0cd9b49c6549d2659c97a58f5f75da95bd6f2f8b91 SHA512 45acded1727fe88f7da280e95bdeba92b925ba9fdaa4a74d50ce869ecbe1ef16352e50056e4891cd4eb662dd666a41d78d8006940585d39296de2ce313e9aa1c
+DIST pyproject_fmt-2.25.3.tar.gz 293215 BLAKE2B 3a5a26d8d5459e57d1da57c5eaa0aa7d82bc429d10ad29df51418d5bf9ff5e7f0148d3484ec9db8ce66178ad4c02b403edbbac3f845523e6d4c63dee38316b92 SHA512 09e6f9cea1fad81caee62ee6a99a7a3a2b0a7420db18b5e15ec8c2efb1e9fbbb6d466e092df0fb9d1a92d53cc9c0b11f5949fc44a1a825b8cd5df2eb34f6843e
+DIST pyproject_fmt-2.25.3.tar.gz.provenance 9747 BLAKE2B 5e774a5bcfd7c578d949ae81ae66c40cd3bf4645f00bc9b3d0a7668f30005c2a78afcad587d2af90300c4964c218452d8ae6dc3e13c8a5f54321767cc2e4c675 SHA512 676c8af060a4001990e686066e8fd62c27a3f4f6ea9539f47a57b264d043399127cc3a600e7326f50290cb848b0e3f2219d2f88e18f256b55e86d44989476e4a
DIST tombi-0d64bd3bd8a5ddcaafdfc7b114e3b73ada0b325b.gh.tar.gz 10564681 BLAKE2B 1cc4e307d89ae978c8022aed63ad7a7c08e71f810e42743589a6bf44499051250102ca3a60aa2cea65292dfd187240da96f6fb963511b6d4c06559c20bbc67a3 SHA512 e398e14c9b092f2378dfa848c697ea5cb0af705bcb801f288d2ca98b8c0d4aa3abf7a71f2f5a10a4a6a77e1e8d1f7089a0359b2a3ec9b226a19bbb40f0aa0a14
DIST tombi-362cafbd685311cb659ec0a422ebecc1eb332952.gh.tar.gz 10612816 BLAKE2B 8c1ada6d32c3b400110303243dc8f2070a395254a52f57cb4dff9bf788c43bf0491950cc563b2e9e19645a6fe785fbbafc61684446889e3d9b2a18f025d91b3e SHA512 e54f04e5bab4fcba6fa5562746c61a63f94954d5d46781277a9e83645182916c9131e4d09429e12e2dca7369947d68cb13d0cafea10cfbddecac85419f3f6031
DIST tombi-564e4a391ae1dee08fd70936b9af6672d6eee4bc.gh.tar.gz 10614930 BLAKE2B 7557c4dcf2922d76cf79032f0eaee6da7a3507dfb6b1de1508e0b7d705dcbad5dd98da3d7db2d139f8e27f8a4c3bed3c84fe23db8434698047a8a6949e4bb9fd SHA512 07f100ed8634828971cc5bd97011a8d0b14fb44b1a4a076c1b7e532622778f4312c46a90db42eca451a3e74d275d27c1920d3db9dab5f9bc5be4b91392ca36be
@@ -21,3 +23,4 @@ DIST toml-fmt-pyproject-fmt-2.24.1-crates.tar.xz 18725980 BLAKE2B 75f6c4a07b14fc
DIST toml-fmt-pyproject-fmt-2.25.0-crates.tar.xz 18742060 BLAKE2B 5cc45568d2981e1804e8800b6d7da203eee70f022b86dff671580e91be90b6627bac38d58f3ba50d138dbe6a905b6a21b324c3fc6114b7a0de11fb6078dd4ef2 SHA512 27986f6f647b3e50d0de5ce3acd7b3b089db896b5560f15b9d7d11c98e4a9b9d5adea566034e533de177fd9e2c08f46f760f9bf73d39910dd2d0ddf85c526832
DIST toml-fmt-pyproject-fmt-2.25.1-crates.tar.xz 18742060 BLAKE2B 5cc45568d2981e1804e8800b6d7da203eee70f022b86dff671580e91be90b6627bac38d58f3ba50d138dbe6a905b6a21b324c3fc6114b7a0de11fb6078dd4ef2 SHA512 27986f6f647b3e50d0de5ce3acd7b3b089db896b5560f15b9d7d11c98e4a9b9d5adea566034e533de177fd9e2c08f46f760f9bf73d39910dd2d0ddf85c526832
DIST toml-fmt-pyproject-fmt-2.25.2-crates.tar.xz 17995820 BLAKE2B d48463bdd984382dc42ad2ae7f16d4b164db32fce22495dc83d923b102cdbc8044679f3d2327a8a5b133cb0618b33afa028674282d152d3644f74932282ef194 SHA512 f376c2ba6c994685a020f0c90037de85642141afdac053967393b3f0ee69e737b4e9177681620c470000e3316a9dd0733fdaf41f21835eff593c80ac409c1d69
+DIST toml-fmt-pyproject-fmt-2.25.3-crates.tar.xz 17995820 BLAKE2B d48463bdd984382dc42ad2ae7f16d4b164db32fce22495dc83d923b102cdbc8044679f3d2327a8a5b133cb0618b33afa028674282d152d3644f74932282ef194 SHA512 f376c2ba6c994685a020f0c90037de85642141afdac053967393b3f0ee69e737b4e9177681620c470000e3316a9dd0733fdaf41f21835eff593c80ac409c1d69
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.25.3.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.25.3.ebuild
new file mode 100644
index 000000000000..b1e48dc119a4
--- /dev/null
+++ b/dev-python/pyproject-fmt/pyproject-fmt-2.25.3.ebuild
@@ -0,0 +1,113 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+DISTUTILS_UPSTREAM_PEP517=standalone
+PYPI_VERIFY_REPO=https://github.com/tox-dev/toml-fmt
+PYTHON_COMPAT=( python3_{13..14} )
+
+RUST_MIN_VER="1.87.0"
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [tombi-accessor]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-accessor'
+ [tombi-ast-editor]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-ast-editor'
+ [tombi-ast]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-ast'
+ [tombi-cache]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-cache'
+ [tombi-comment-directive-serde]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive-serde'
+ [tombi-comment-directive-store]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive-store'
+ [tombi-comment-directive]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-comment-directive'
+ [tombi-config]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-config'
+ [tombi-date-time]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-date-time'
+ [tombi-diagnostic]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-diagnostic'
+ [tombi-document-tree]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-document-tree'
+ [tombi-document]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-document'
+ [tombi-formatter]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-formatter'
+ [tombi-future]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-future'
+ [tombi-hashmap]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-hashmap'
+ [tombi-json-lexer]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-lexer'
+ [tombi-json-syntax]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-syntax'
+ [tombi-json-value]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json-value'
+ [tombi-json]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-json'
+ [tombi-lexer]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-lexer'
+ [tombi-parser]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-parser'
+ [tombi-regex]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-regex'
+ [tombi-rg-tree]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-rg-tree'
+ [tombi-schema-store]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-schema-store'
+ [tombi-severity-level]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-severity-level'
+ [tombi-syntax]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-syntax'
+ [tombi-text]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-text'
+ [tombi-toml-text]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-toml-text'
+ [tombi-toml-version]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-toml-version'
+ [tombi-uri]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-uri'
+ [tombi-validator]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-validator'
+ [tombi-version-sort]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-version-sort'
+ [tombi-x-keyword]='https://github.com/tombi-toml/tombi;564e4a391ae1dee08fd70936b9af6672d6eee4bc;tombi-%commit%/crates/tombi-x-keyword'
+)
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file"
+HOMEPAGE="
+ https://github.com/tox-dev/toml-fmt/
+ https://pypi.org/project/pyproject-fmt/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+ https://github.com/gentoo-crate-dist/toml-fmt/releases/download/pyproject-fmt%2F${PV}/toml-fmt-${P}-crates.tar.xz
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC MIT MPL-2.0
+ Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86"
+
+RDEPEND="
+ dev-python/toml-fmt-common[${PYTHON_USEDEP}]
+"
+# tox is called as a subprocess, to get targets from tox.ini
+BDEPEND="
+ test? (
+ dev-python/tox
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-mock )
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt/_lib.*.so"
+
+src_unpack() {
+ pypi_src_unpack
+ cargo_src_unpack
+}
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -i -e '/strip/d' pyproject.toml || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # something about ANSI codes, no clue
+ pyproject-fmt/tests/test_main.py::test_main[format-absolute-no_check-in_place]
+ pyproject-fmt/tests/test_main.py::test_main[format-cwd-no_check-in_place]
+ )
+
+ epytest pyproject-fmt
+}
+
+python_test_all() {
+ # default features cause linking errors because they make pyo3
+ # wrongly assume it's compiling a Python extension
+ # https://github.com/tox-dev/toml-fmt/issues/23
+ cargo_src_test --no-default-features
+}
diff --git a/dev-python/pytest-cov/pytest-cov-7.1.0.ebuild b/dev-python/pytest-cov/pytest-cov-7.1.0.ebuild
index a4bc4ac21610..b115eae5685d 100644
--- a/dev-python/pytest-cov/pytest-cov-7.1.0.ebuild
+++ b/dev-python/pytest-cov/pytest-cov-7.1.0.ebuild
@@ -27,9 +27,7 @@ RDEPEND="
BDEPEND="
dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
test? (
- dev-python/fields[${PYTHON_USEDEP}]
>=dev-python/process-tests-2.0.2[${PYTHON_USEDEP}]
- >=dev-python/py-1.4.22[${PYTHON_USEDEP}]
dev-python/virtualenv[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/python-barbicanclient/Manifest b/dev-python/python-barbicanclient/Manifest
index 9782ed7f86ac..a88675f11c39 100644
--- a/dev-python/python-barbicanclient/Manifest
+++ b/dev-python/python-barbicanclient/Manifest
@@ -1,2 +1,2 @@
-DIST python_barbicanclient-7.3.0.tar.gz 128409 BLAKE2B 311fe17580efd67b158d477c838ac6c87e7c4d9d193561f76199bd3ead56b790781e0891ce402928dcd6becbd4f3b956b9b778327d48492d8023838a79337557 SHA512 db31cb44519c4dbbb0155f936284d05f4481ea1c7cbbfb1a3ae333803b936dbe58c9a307817f888da1af7289b9c735bd2a46bb7b1369c032f78577c898945506
DIST python_barbicanclient-7.4.0.tar.gz 128635 BLAKE2B fee534d432920a0905def10d282286b7effc045be3fce0e70f3e31c01f8f2c013e7e38fd01aafef20f725e897551dea794c36f8807739e5eb406acae860edd4d SHA512 c8899e3a8c21a595bf3b09e9b9989e03679a6a6a10e8e807220ae7b7343b359a3687580bdf53a21c8aa4e1f79a2555cd3ee11e8ad2464deaa408272df123010e
+DIST python_barbicanclient-7.5.0.tar.gz 131773 BLAKE2B 05f0570d468500d991a0c4e74794057b07c8a5c5bed531af8fddebac5a9b6ec367bb93d0e0cc39e664da86e8516e16e1a10a139c4392c98e090e66a82f09bd30 SHA512 7b906757c073f99089e05900eca12ef8417af0c8e13ba1950482004dbc4a9128a67711103b8214321bd047cc1ae14e624ac45664e26ea6e05af2ea75a8a6a008
diff --git a/dev-python/python-barbicanclient/python-barbicanclient-7.3.0.ebuild b/dev-python/python-barbicanclient/python-barbicanclient-7.5.0.ebuild
index c6443ae25124..c6443ae25124 100644
--- a/dev-python/python-barbicanclient/python-barbicanclient-7.3.0.ebuild
+++ b/dev-python/python-barbicanclient/python-barbicanclient-7.5.0.ebuild
diff --git a/dev-python/python-manilaclient/Manifest b/dev-python/python-manilaclient/Manifest
index acd73f223ded..604130dd28c7 100644
--- a/dev-python/python-manilaclient/Manifest
+++ b/dev-python/python-manilaclient/Manifest
@@ -1,2 +1 @@
-DIST python_manilaclient-6.1.0.tar.gz 303391 BLAKE2B fd7dd3121733ce52306ae8b1c5d25ead9bbcf698223eba681a7b73d0a746f4c9aeed6d12045eb3b67bdb68bf6cc20673d331811870b24e4a7a8c49e192a3678a SHA512 bf0df63f4693ff423f228c313b9f2f71b4030e8a90758bf953274e36f636b841b39c303cac8f3705bc906fcf8c036e0492672c4033fddbdbd711aa41ea9b76ef
DIST python_manilaclient-6.2.0.tar.gz 304351 BLAKE2B 1e8f99c438b8ee12c0def7c81ad21804ad7f77818fdc16c7314fe9c0bafba961db24518125affd7ecfc6379749ce380b5945dc1cccdcadcb3b2ebc64b2ed68ca SHA512 621152fb1051acc66d3dc8c84d7c9b03e064755cb8957d85802bc0fb8948f53ea3798f0d3e821897f5a638a7de6551bf1afde400b3fbc43f7d5d98b93b56ee65
diff --git a/dev-python/python-manilaclient/metadata.xml b/dev-python/python-manilaclient/metadata.xml
index ef77b6bef412..5e95859f915a 100644
--- a/dev-python/python-manilaclient/metadata.xml
+++ b/dev-python/python-manilaclient/metadata.xml
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>gentoo-bugzilla@vimja.email</email>
- <name>Niklaus 'vimja' Hofer</name>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
</maintainer>
+ <stabilize-allarches />
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-python/python-manilaclient/python-manilaclient-6.1.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-6.1.0.ebuild
deleted file mode 100644
index 1763e1f31ea0..000000000000
--- a/dev-python/python-manilaclient/python-manilaclient-6.1.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=pbr
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Python bindings to the OpenStack Manila API"
-HOMEPAGE="
- https://opendev.org/openstack/python-manilaclient
- https://github.com/openstack/python-manilaclient/
- https://pypi.org/project/python-manilaclient/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-RDEPEND="
- >=dev-python/pbr-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.20.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth1-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- test? (
- >=dev-python/coverage-4.5.0[${PYTHON_USEDEP}]
- >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
- >=dev-python/python-openstackclient-5.3.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests unittest
-
-src_prepare() {
- # This test requires tempest which has been removed.
- rm --force manilaclient/tests/unit/test_functional_utils.py
- distutils-r1_src_prepare
-}
-
-python_test() {
- # The functional tests would requier the OpenStack manila service to be
- # packaged, too.
- eunittest manilaclient/tests/unit
-}
diff --git a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
index c202df7cf10e..6392eaf1aa0b 100644
--- a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
+++ b/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64"
+KEYWORDS="~amd64"
RDEPEND="
>=dev-python/pbr-3.0.0[${PYTHON_USEDEP}]
@@ -34,7 +34,6 @@ RDEPEND="
BDEPEND="
test? (
- >=dev-python/coverage-4.5.0[${PYTHON_USEDEP}]
>=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
>=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
>=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
@@ -46,15 +45,14 @@ BDEPEND="
distutils_enable_tests unittest
src_prepare() {
- # This test requires tempest which has been removed.
- rm --force manilaclient/tests/unit/test_functional_utils.py
+ # requires tempest
+ rm manilaclient/tests/unit/test_functional_utils.py || die
distutils-r1_src_prepare
}
python_test() {
- # The functional tests would requier the OpenStack manila service to be
- # packaged, too.
+ # functional tests require the OpenStack manila service
eunittest manilaclient/tests/unit
}
diff --git a/dev-python/python-openstackclient/Manifest b/dev-python/python-openstackclient/Manifest
index abe2149ccf83..f418b9781fc2 100644
--- a/dev-python/python-openstackclient/Manifest
+++ b/dev-python/python-openstackclient/Manifest
@@ -1 +1,2 @@
DIST python_openstackclient-10.1.0.tar.gz 994222 BLAKE2B 6b13897115e8f72113ff815cb120e0d5ff52edd7cd863d478f3c196fce005b149c1af39492306cac20278375d3bd20d6da00609398884d791f4695a226de3f75 SHA512 caa16f30705f2b5d8779f2513df3b50b2aabe1fbe986aa70e0e74e11f0b2026d0814224ddbc6541bdfe9c377e93d254671544ba88e2be6e0ac5c32d5b10b9041
+DIST python_openstackclient-10.2.0.tar.gz 1037278 BLAKE2B 9d7ba98bfa069e1b908d46cbc03629f3343394fe04d4efb8674057226d3c6a19d949d6b74af99c749f66ffe9efd1d19f493aac6141e8718dcf17f0835762e4bd SHA512 6f47e9655fc2788d1c83bda54647a7d3faadde5e286e35cd1a31e4aec433c0fe5bebdef7045e1500a7190a65b7c0df03d76b5a6c338c3a43bcc979c710c8683e
diff --git a/dev-python/python-openstackclient/python-openstackclient-10.2.0.ebuild b/dev-python/python-openstackclient/python-openstackclient-10.2.0.ebuild
new file mode 100644
index 000000000000..594b8f9a892a
--- /dev/null
+++ b/dev-python/python-openstackclient/python-openstackclient-10.2.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pbr
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A client for the OpenStack APIs"
+HOMEPAGE="
+ https://opendev.org/openstack/python-openstackclient/
+ https://github.com/openstack/python-openstackclient/
+ https://pypi.org/project/python-openstackclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/cliff-4.13.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-2.7[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-4.16.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-4.6.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/python-manilaclient-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.27.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-2.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/wrapt-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ # Depends on a specific runner
+ sed -e 's/test_command_has_logger/_&/' \
+ -i openstackclient/tests/unit/common/test_command.py || die
+ # we do not package hacking
+ rm openstackclient/tests/unit/test_hacking.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # functional tests require cloud instance access
+ eunittest -b openstackclient/tests/unit
+}
diff --git a/dev-python/standardwebhooks/standardwebhooks-1.0.1.ebuild b/dev-python/standardwebhooks/standardwebhooks-1.0.1.ebuild
index 4ab80314a8fc..eb4705a627b0 100644
--- a/dev-python/standardwebhooks/standardwebhooks-1.0.1.ebuild
+++ b/dev-python/standardwebhooks/standardwebhooks-1.0.1.ebuild
@@ -21,3 +21,11 @@ KEYWORDS="~amd64 ~arm64"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # fix build backend
+ # https://bugs.gentoo.org/979160
+ sed -i "/^build-backend = /s/:__legacy__//" pyproject.toml || die
+}
diff --git a/dev-python/tempora/Manifest b/dev-python/tempora/Manifest
index 7c8cd1e4cd31..eae96a167958 100644
--- a/dev-python/tempora/Manifest
+++ b/dev-python/tempora/Manifest
@@ -1,2 +1,3 @@
DIST tempora-5.10.0.tar.gz 18902 BLAKE2B a15b9270de675933767ff4f609417c548e27734e056e43b650d2b4d1d6f69124a14942e04fb8a057e229ee8c327fb7a9ecd7d886c9d36aa3bdf94ea6558fc88b SHA512 03444c55810bd5b46e97a1a0698e5b070aaffaf5679541cfd83f7713f3fee22eb33da680d1fc165c8805d3fb9c12edd0b74ca28be8843a9d3838cd1b575efaf9
+DIST tempora-5.12.0.tar.gz 20481 BLAKE2B f35bfc71a1b78e83b7b3e7cf888a84f02be96f113a56c7457ce3f8f29709abd251b292400d24c918bed57b44bbf3682ad420b99140d05b91b05b1cdbec8778bf SHA512 3dc04ca741a86aeae6c0b6d465bf95bcfe41b7fc1c328fd1ad00df9af567d93dcf81b1a8f3953f043739e6cbaef7c9660a14c899db16a3ed8c636a69d01dca55
DIST tempora-5.9.0.tar.gz 24490 BLAKE2B 94107a16e7f56188b156e305cf4ca57574684eae92ab4d97cdc4ca8b610f8e44d9fc589af2fcb3a0f17a4188739e90a9112dd8d1fbe6d00bd8c3b6adf3263c61 SHA512 f515a35345968b765d7bd61d6828d9e1761d2b9ab8915015804597e9f4204942da3801de01e80ab1ed93be604bd4011f650a8bd970f09c14abad3e4af8e586eb
diff --git a/dev-python/tempora/tempora-5.12.0.ebuild b/dev-python/tempora/tempora-5.12.0.ebuild
new file mode 100644
index 000000000000..6496341a40fb
--- /dev/null
+++ b/dev-python/tempora/tempora-5.12.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit-core
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Objects and routines pertaining to date and time"
+HOMEPAGE="
+ https://github.com/jaraco/tempora/
+ https://pypi.org/project/tempora/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/jaraco-collections-5.2.1[${PYTHON_USEDEP}]
+ dev-python/jaraco-context[${PYTHON_USEDEP}]
+ >=dev-python/jaraco-functools-4.2[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=( pytest-freezer )
+distutils_enable_tests pytest
diff --git a/dev-python/tiktoken/Manifest b/dev-python/tiktoken/Manifest
index 6ff16b4dcade..9c7e504af942 100644
--- a/dev-python/tiktoken/Manifest
+++ b/dev-python/tiktoken/Manifest
@@ -1,34 +1,8 @@
-DIST aho-corasick-1.1.4.crate 184015 BLAKE2B 088766e505a828a221a9bca29cb1833ac3964a538cda62d12b723a263fe0e588406af0b710cf87ef67b0ccb9aa3bf69f42e0e5225ade47abe93c73fcaca69ec1 SHA512 c77e35191b00546f5e499fab154170cedd619599e7250f92db9fba0a41c833eb426f214e58b00c5c39f8757406b33492b3241cb8cb233ce384ad0683c3ee4b62
-DIST autocfg-1.5.0.crate 18729 BLAKE2B 27580e39b366c6fca02c9db09997b6415c409f12068f1249184268bf96fd85ba659e25ec730f99e10caf452f96c486f3d7442bf09c4552b5f39519b21d6f88cc SHA512 f279856f234d39d369623576acf9546a1ca24d7fe449f36d4fb93ea75a7efaf2c4015b9616a69bbbed358c5e5882e16b045352f046aa4c049b3d13b1e8257b08
-DIST bit-set-0.5.3.crate 14470 BLAKE2B f6525500a494236103df2b27e964bae0b2caf718156879f972b9972fa509794bcc663c2130e3d872ecadb7ead0982b415dfa4468ef12523ee248fb1bbec2559e SHA512 c5ce7ef71559706d996505e138ce95d9f008ac3375928012a36339bfec48986ad935b384e2d21fa0d505d4cf98bd3e93be15955ecd9607d253b8a276351334c6
-DIST bit-vec-0.6.3.crate 19927 BLAKE2B f5bd3bb9c87fdf3b206739b74df20cab50a1a45af3a58b2642a5a061c26207884be58ef8369a3cd06dfd3615bff0ce15915fdd4b6b6f03facc4a0f86c0b7e910 SHA512 b4b4a82c80d0ff13527ae4fff449ac9c1c7bc519c013af6ea3428348e0e5b9306b725c0a13a42d7d9dcf0f895a9eee0c63695a2503eb7fd2200083c9ea3a9aa8
-DIST bstr-1.12.1.crate 354916 BLAKE2B 07b8e047c7a115d7d722ef57a37c5ac1e7ddba080e35b4eed78c3104cd92f08af5e67609faaa7a480ae15031f54c3f5d88784e23c96e659a7f4800c42dad45c3 SHA512 63a1e62d43c4dce00f287421b1ec76accbbab7f0897c8df26227f533af325896c0c8921a873f4125381e7b89fbb69a4358a96698ec6ee61191955464ff1c84ac
-DIST fancy-regex-0.13.0.crate 85930 BLAKE2B dee797093765f8f1ea6b8896cd832983fdbeafb23828b896811f2657e135b71e374a713fc37f68ff128068d04ae140bb2864415db1edfa2e300aea04ef597474 SHA512 0e7ad0ea46ecaf9eefbeb696bc99aa725022d92f0f11b9f3efb8e81a80a058fed08816d3f9efb4c5fa0176aa1b649e13f5ea18d3352f75a7d2be772fd531f744
-DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
-DIST indoc-2.0.7.crate 17184 BLAKE2B aae454874b44dbc908a75b64626e608e04017c1407daff9a2e2dd12a337ac04db594540d2f31bfc590d6f37f0d711ff2d3054352ff1b33e736c36620404be0a0 SHA512 6e80cf927001821606488a822fd0f67ae1a569b022c98e727e6b1571c88d87775166f088322bd5f17abb8fc1fde62c9d14fb2e99f1e50918487252d823e48f73
-DIST libc-0.2.183.crate 816918 BLAKE2B d0c26ca25b0808575aa540a5f0f43acaaa5a972269c5f101122538a1733b37b6aac3696a0d7298fe16974b06efb0b92072252eef40b17b977af24cc857963daf SHA512 017986d4fa8c362f8900c1c82c7381066382a7272cfe114243b8d47637d042c87b5ebef7881cf46727e00e541a0a8270a32db694ce8d78372672cf08224a90b2
-DIST memchr-2.8.0.crate 97780 BLAKE2B 228ce0b6fe8b168f5c31031690a5eb44466609b64c5c221e0b3f56fe331b4f25c0124d613c94ef030b225000978953641f5b07458d530c1d50eec3e1d54e4274 SHA512 8089238153493a0ff6adf980efd1ea2ba10eeff9f33fff200268692662d24152a8c14a4dac37fbc6a55dca741701fd256174f10a9838ca66f038f08e090de12f
-DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
-DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
-DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
-DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744
-DIST pyo3-0.26.0.crate 1151579 BLAKE2B bcc8236785502928bf4a0b7a320e0a8f3d6140c562de4351a52d015aaebb8dd6b4d68fe607c8ea13ec66941c8f01d2c18c4249adfacb521355d4bf158667f3a3 SHA512 e073a4d893f88aa0301ef0ead78048137515edd93c490e6dccbc301ff65a208534c65c1d216b04639d4b1ec1e4b69bc87bd34974e5d0659134c28dcce589c194
-DIST pyo3-build-config-0.26.0.crate 34309 BLAKE2B 5ea8b51da2f425674cd3bfcc1090ffdd08da01d2161dc66b08995c20cc859422f9f84077c545e5a0580182910aeb9dbba97838915148a82b86948d1cca3c8722 SHA512 a982d0a0baa4af58c2cef7c0c4b2671e3f559ca7f30586eda9fbd05e842efa2bfea0089ddbc729225b848871f6a25f85e86576e1dff519192ba289cd92c6aa8b
-DIST pyo3-ffi-0.26.0.crate 78247 BLAKE2B 65f1c399bc763bf8afc36ccac27d28242ebcccebd08ab8d9b3165ca5c9abb10f76e76fe5a250aa1e0cdc1d1e8a613160660f07bc0dbc2812675acb9dfc8e89c2 SHA512 91c2ae828e997dee5e48d839794727e94576228e9329c358a3bc77a59f8f37fa0ae6c2579229782b3f46ab90725844ce9194b9de4d3849d824adf1d40743bf7e
-DIST pyo3-macros-0.26.0.crate 8906 BLAKE2B 60eef72d27b5bc922b75f71ae24bb6f380288cb3a619bf2940b0de47b27e86cce0ffdb1fbdc9c0540d3f15c9df4884497aa1e6efec0f1579ac722b414818a428 SHA512 07bcddba0926c3dff7629da3260f9a38593fbb337b6a68d55c223f5944d912885e5319cd635ae1785026fed4adea1fcc19695ae83aca5bea127c5a8868fd2c43
-DIST pyo3-macros-backend-0.26.0.crate 81809 BLAKE2B 73885035855daf00b001e97e0a5ebe09412d212c8f01aa4db6638ef09990bf1bccbacf2e5a7e6ec21929bb1c2beba06587ecdb6ee954eda9e9c51c6c276cea95 SHA512 4146011a8ef18ecaa44b425eebe6e5e1370945063b98aaa83452e57b66aefbf5d483367b1d4d44aa5091303c4ba7f568c6428ecec0cfa6c90ba41631d4e99367
-DIST quote-1.0.45.crate 31564 BLAKE2B 1b2c2c3e6ebabfe10affa4c43ca0bfd1f52d8fd49e1df463e13e63a82de41272089c8e09e4c02e8a33cfee768ace26d4d42a50752de8fb5a776c59806139ad5d SHA512 df96ede01ebd0ed642b758bf1d0862d0e116fc2b3343e14edb657ce5438ccabe743dec4a0a40de4dee98c134d169af9aba459faadf9c7a832b26377e755d49b0
-DIST regex-1.12.3.crate 153392 BLAKE2B 30f272fc2cda1e36219dfccf0338edacceb5bfada7ac81dd01429661b01b0fa72f6bb343e753e2388251aa0aadc0b5cf61e07670020c9ab351f418c23653ad47 SHA512 73ea9581c861490ad4c8c767c09f1f39be525f4298f5b19ba7b658dfade4c91f7ffd170214382ef4694855c0a48a4db57c39b75d8fa6a9312b07409170c66000
-DIST regex-automata-0.4.14.crate 618012 BLAKE2B f12b0f1e59d32711c113f5f2157a4e1dbd05095c386f0e104ef3d551cf029d0c3346d09f54d5b8a8bdc557ab4d91ab80a224d81b3c522b3c64ad1566972c46cf SHA512 58f8e7c41f71c1df50fc2f4e70ea7f5ab762170494497541b9a09076058f94a799b6fc4da13c40fc26a2f1a0b650b499cb9830338152e96a24e3a32b4994a5e0
-DIST regex-syntax-0.8.10.crate 358781 BLAKE2B fc7961b2c6e4d297f4dcc73cb3f6a82d7d9bf964808beacc86ec8c73f7b572f3d8c7503ccc4441a2d6283b8cfbbbfc49140b31207b5aeabe5a60c8870460c91e SHA512 ca9c36c963c81c2fa36e1105cdd193a9b99ee259de1765e6e8010fb4091e49ac100e2ba0cd117adb0890b32e74421581dd6397eb896772168c6eae9da0a938c3
-DIST rustc-hash-2.1.1.crate 14154 BLAKE2B 7a1b3b82bbbf6a123512815c3e8f068a17890cbbb8b68e88a5a492f62469942fadd776207eebd913052a1c06e1fd37a549e86526b9fc8f08b9ca7cb0044ac16b SHA512 87097d98d47f327d000041ab13acddc366f1500d9c3e5c82169c3358112c7a7c03701c9b3c2c81d9f9da65b7ebac1c479b179dfaf7c059cd0b929b4673e51084
-DIST rustversion-1.0.22.crate 21096 BLAKE2B cdf773cda21ebde50da897c0af0e4af14660ce953d3037054a99d8adc3db2dc6e30a57201a45676abfb183c62016a68069848e7537f711b1752339d194b0a378 SHA512 7929352df3e5279ac88cebb26ca89bb13c755f46986d2d1f514d18a3239a63638bf64f8ff153920569d173185d988d692ee676335afba0bf72d47f71babe0e15
-DIST serde-1.0.228.crate 83652 BLAKE2B d1909d671ea6d5c2eb4ce34ee4493ecaf665d416111b4cac754b5d33b85f916296110bae7aa961efd987a2ceb4a31ba645752ce99dd28dedb9f1eecdd4d7b1b2 SHA512 9b645d6214203533b303fc5e88ad4f7686c22df084878d18a0209a92304a340fcb62fdde88a7080cf7a7348d47b9b363885c4e1da90dba08cc99ff620f375e97
-DIST serde_core-1.0.228.crate 63111 BLAKE2B 8a64e4627ad21a3d16dd37d53fb809d11171bf337ec16bb1223075cbf81b6b85cd1c8d19abadf42460d0fbea323e2f351eeb6ef823389d519121b74e68edb215 SHA512 43897e3a7ebdc85d81d1cb30cda8f0a11610f6f551529c8a21462c24fb83110652b462846aa3e1bed5fbf8b5d7927018845a524ee9e079e2c8acf2c687efd6c4
-DIST serde_derive-1.0.228.crate 59605 BLAKE2B 166ee2f9ff9f7a0928d0a65a72db3d9226c377bca2a1771956e8ecd9c7faf0544673c9c21be2a5553e621b55c74c7b958052592a1cf6eb6427a2d4f3e3dc6bb8 SHA512 8bfdfeee10ee7ef0670972aa963ef63b13e8eb2c8a09b9e0b717f92551aa89b3dd2a0dcbae6ccf20a1caece07e6adb18f0db56fdac020e4e0281b0d24e376003
-DIST syn-2.0.117.crate 306011 BLAKE2B bbaec02c4322f522bdfc87caa4ce6fd1e09bbf8f4a102d9ed8728efacdd843a2750f616dce5b2d3a3e46bbb7d57439fbd10e328bc1d4a01e980986cd815798af SHA512 035c2e63542592b6a4058a2a82d4c2c1f5793f84fb1b04cbd393337a26fcf661a1f3bea439ce98a1fe943b1c4d36d2bda16df3bbc3fa6ca35e1548d530dc8416
-DIST target-lexicon-0.13.5.crate 26928 BLAKE2B f8c62cb91f68a635e6ce3fc254df9ce378b5e8f62c1147404c967484b9ed97fb33d7993b4671611db76566063e999d658d201f856f70196ec678d72cc758cf6d SHA512 956df27c01e1186c5356117ffd07810fc0b62fb919d5bfd215955ba85be00ef675212a3c0dc36679986be7b825442fec5c93c7643b7e1e19c04572e6463546fc
-DIST tiktoken-0.12.0.tar.gz 37806 BLAKE2B 9cb14dd95205c347525dca92b64fc98e74a5ce8eb047346799bfddd99678c201c4bb4930687556bb0e03cab2d59e3626186391dec178da6b5574fcfa3c9c1161 SHA512 5439d8a109446303255bb3c4cfb51fb77a3137b9ea96b467665de11d48e26ef6eb774c9e3a2307dc870f332a67a8eb88966320cfff3ec0f6754081ff2e22831d
+DIST pyo3-0.29.0.crate 1241253 BLAKE2B 29deb7fa70010bf3d7e9e93bbcd87c0b56c4ee7ef0c2e5956181d2fb5f06f4c9b3f28bd1ad280126c26c048808b91b847e1fb69ddd617ef9e9e5e004cf4e48ae SHA512 e6822400de53ebcef4a14c899dc065abae621a126483873139f5eb850877c94f4bccee3a183d4e2a69eadcd3c3b82b0a6f3e1053d926b103be572329607f2f67
+DIST pyo3-build-config-0.29.0.crate 39616 BLAKE2B 7b62a5976b890db84e5256f3136185c2a9c3b7110782b5b0cdc314a5231fde30a853ddcd17af63b53488b3e8d5e310b01002b6f3c32cfeb1e5c3e168cd6460d7 SHA512 df77e8d7d5fe173749437ff6b90fa1703083377d515ab8a85dc77d9cac9c3fc331ede4b040f7e3694311ddb5adff577cf90c181a27c196ab93a4569e918fdea8
+DIST pyo3-ffi-0.29.0.crate 88184 BLAKE2B 5891af92a3bcba764c4701dcc0a99edbced010a5ac46df3217d004f5c3a368f18331733c6723bd49e522c6f7105455df13e2be0f07695ed5ce6ae71c15dec438 SHA512 baaf01d13ddc09316ba16b22e9ca15a67e5bda5b861ed7961c3393fd4692fc1c96952f81465d1dcb6531b9083f96c5630981b3d7802cb1ac2af67aafaffbec76
+DIST pyo3-macros-0.29.0.crate 8915 BLAKE2B c12d23753d5aba7333183d4b41f16c8da1d4297a3ff86b3b150e9185c1978fc184ac198e566a41833292a8a78ab59446eafd5ef7169e5cb41493e7cbeaa68280 SHA512 fb6633ac76229d2e0ad88d51136a9318f03823b27c700a62cfbc957b4c834985e2f4c0cdaf5ea5e9993ec9e8ce3d63cd6b3fb823f2a042e65186adbed78da7c2
+DIST pyo3-macros-backend-0.29.0.crate 91943 BLAKE2B 7c2977dd9c80f3dd1f5375b0c65492b46048ca02e6355ad746bc8430cf92eaf25c701f416469eb69724fde5220651b1095c09eb9e3ff860176f862d7c7287407 SHA512 13a7af3958c09969637827d97ab9bbc664c407dda9e4283afaf495757798cf6f84932468bc092160fa75211ce0aafe6efc657f3a390234d77a67362cfb31fe0f
+DIST tiktoken-0.13.0-crates.tar.xz 3133548 BLAKE2B a4958dee4d87af0869202ead56213c25c5b064b3aacd5e2ff11d2cf6ed812d00e6d46c71440e06eb73b684604c5941e99a0bbd85a5208dd0299712f9af0f2221 SHA512 fc06338034ab8de5f56b62ef32e2fe8843d86a4f02da04f8ee1e0db60b18f1bce61ca6ae944de224f81b7b8951528802af8543578a48683a9592d65ffad36fdb
+DIST tiktoken-0.13.0.gh.tar.gz 35626 BLAKE2B 465489183c472e580cbb3f6ca91be2f70e7f3ff9b8ba980c89f1ceabae9056e295243e6ee35609a36c02e7ec7eb03525079aac598095c9544293c04dc55976c2 SHA512 93a1c8715bb656ea819ce73d1b2d4e4481bfdd6426379f81b366da3a868960b49255815c5a06aa9cb7ea7377f61bfa001c358051b923f509c44a1d989f66f2de
DIST tiktoken-encodings-v2026.03.26.tar.xz 2274968 BLAKE2B 951249a33ea830f833a404fcc3adceed08374bbd191e2f9286b660b1d6649385a252431a1d63509c8e65a2493f5df4dc2bfce0770f326993497df51260df11ec SHA512 2678bc6c35c06adb187d15a7a627f3a9e19a8aea9b83241b2cafbd4ad117f287e4a9a8f82f831712bf12bb182d20e259af88f2da9b26d3be0f0a61fd35c5d7a5
-DIST unicode-ident-1.0.24.crate 49298 BLAKE2B 34ba2906a3ebc06f52a4ba77dff96a8f3fb977718d260886fa9e051c5830765641b65a63977110f3a79f31fa177b385f81b01d56c80f6a0324d36eae72e2ebf0 SHA512 7be712d8d0075ac9341790180e312f66264d3e0255c91b38df0951baa5e446dec24551bb2125a66a1cb9b6ca2f1ea37c0cc15fa3dd74f398ecf4d5302c7dc259
-DIST unindent-0.2.4.crate 7422 BLAKE2B 2e7870cd4f78240dbb1e5fb9c0f9b55c57bb40242fe668f105a0e862f1d6300e31efbffe0cdff676a5f96a8d19dfb148f88bfef1cd8a710556d777fd0f4ee37f SHA512 58bd4fd20a0b0a7200e0ea3ea70553cea135a5a8f7a2fb178520c41228f435becce4b9981019b7c73a17df87a2ee9b2a47c4cec29a3011bfe848d48b2473761b
diff --git a/dev-python/tiktoken/files/tiktoken-0.12.0-special-token-roudtrip.patch b/dev-python/tiktoken/files/tiktoken-0.13.0-special-token-roudtrip.patch
index ddf0aae48dcc..b140e0d21055 100644
--- a/dev-python/tiktoken/files/tiktoken-0.12.0-special-token-roudtrip.patch
+++ b/dev-python/tiktoken/files/tiktoken-0.13.0-special-token-roudtrip.patch
@@ -7,7 +7,7 @@ index b77ca13..7ef65d9 100644
enc = make_enc()
- assert text == enc.decode(enc.encode(text))
-+ assert text == enc.decode(enc.encode(text, allowed_special="all"))
++ assert text == enc.decode(enc.encode(text, disallowed_special=()))
@pytest.mark.parametrize("make_enc", ENCODING_FACTORIES)
diff --git a/dev-python/tiktoken/tiktoken-0.12.0.ebuild b/dev-python/tiktoken/tiktoken-0.13.0.ebuild
index 0b2a124ba1ff..d1d8c2f566b8 100644
--- a/dev-python/tiktoken/tiktoken-0.12.0.ebuild
+++ b/dev-python/tiktoken/tiktoken-0.13.0.ebuild
@@ -8,63 +8,40 @@ DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{13..14} )
RUST_MIN_VER="1.85.0"
+# Bump PyO3 to 0.29.0 (RUSTSEC-2026-0176, RUSTSEC-2026-0177)
CRATES="
- aho-corasick@1.1.4
- autocfg@1.5.0
- bit-set@0.5.3
- bit-vec@0.6.3
- bstr@1.12.1
- fancy-regex@0.13.0
- heck@0.5.0
- indoc@2.0.7
- libc@0.2.183
- memchr@2.8.0
- memoffset@0.9.1
- once_cell@1.21.4
- portable-atomic@1.13.1
- proc-macro2@1.0.106
- pyo3-build-config@0.26.0
- pyo3-ffi@0.26.0
- pyo3-macros-backend@0.26.0
- pyo3-macros@0.26.0
- pyo3@0.26.0
- quote@1.0.45
- regex-automata@0.4.14
- regex-syntax@0.8.10
- regex@1.12.3
- rustc-hash@2.1.1
- rustversion@1.0.22
- serde@1.0.228
- serde_core@1.0.228
- serde_derive@1.0.228
- syn@2.0.117
- target-lexicon@0.13.5
- unicode-ident@1.0.24
- unindent@0.2.4
+ pyo3-build-config@0.29.0
+ pyo3-ffi@0.29.0
+ pyo3-macros-backend@0.29.0
+ pyo3-macros@0.29.0
+ pyo3@0.29.0
"
-inherit cargo distutils-r1 optfeature pypi
+inherit cargo distutils-r1 optfeature
+
+# The encodings cache (tiktoken-encodings-*.tar.xz) holds files named after
+# the SHA-1 of their URL. It can be generated from the source directory via:
+# grep -Eo 'https://openaipublic.blob[^"]+' tiktoken_ext/openai_public.py | \
+# sort -u | while read u; do h=$(echo -n "$u" | sha1sum | awk '{print $1}'); \
+# wget -O "$h" "$u" ; done
+# Include the license file from the source repo:
+# https://github.com/openai/tiktoken/issues/92
+TTE_TAG=2026.03.26.0
+TTE_BASE_URI="https://github.com/falbrechtskirchinger/overlay-assets/releases/download"
DESCRIPTION="A fast BPE tokeniser for use with OpenAI's models"
HOMEPAGE="
https://github.com/openai/tiktoken
https://pypi.org/project/tiktoken/
"
-TTE_TAG=2026.03.26.0
-TTE_BASE_URI="https://github.com/falbrechtskirchinger/overlay-assets/releases/download"
-SRC_URI+="
+SRC_URI="
+ https://github.com/openai/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
+ https://github.com/fasys-crate-dist/${PN}/releases/download/${PV}/${P}-crates.tar.xz
${CARGO_CRATE_URIS}
test? (
${TTE_BASE_URI}/v${TTE_TAG}/tiktoken-encodings-v${TTE_TAG%.*}.tar.xz
)
"
-# The encodings cache (tiktoken-encodings-*.tar.xz) holds files named after
-# the SHA-1 of their URL. It can be generated from the source directory via:
-# grep -Eo 'https://openaipublic.blob[^"]+' tiktoken_ext/openai_public.py | \
-# sort -u | while read u; do h=$(echo -n "$u" | sha1sum | awk '{print $1}'); \
-# wget -O "$h" "$u" ; done
-# Include the license file from the source repo:
-# https://github.com/openai/tiktoken/issues/92
LICENSE="MIT"
# Dependent crate licenses
@@ -87,7 +64,7 @@ QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/tiktoken/_tiktoken.*\.so"
PATCHES=(
# test_encoding.py::test_hyp_roundtrip throws ValueError for special tokens
- "${FILESDIR}/tiktoken-0.12.0-special-token-roudtrip.patch"
+ "${FILESDIR}/tiktoken-0.13.0-special-token-roudtrip.patch"
)
EPYTEST_PLUGINS=(
@@ -96,6 +73,11 @@ EPYTEST_PLUGINS=(
)
distutils_enable_tests pytest
+src_prepare() {
+ distutils-r1_src_prepare
+ sed '/^pyo3 =/s/version = "0\.28\.3"/version = "0.29.0"/' -i Cargo.toml || die
+}
+
python_test() {
local -x PATH=${BUILD_DIR}/install/usr/bin:${PATH}
local -x TIKTOKEN_CACHE_DIR="${WORKDIR}/tiktoken-encodings"
diff --git a/dev-python/translate-toolkit/Manifest b/dev-python/translate-toolkit/Manifest
index df0121754961..08ef1593b5df 100644
--- a/dev-python/translate-toolkit/Manifest
+++ b/dev-python/translate-toolkit/Manifest
@@ -1,3 +1,4 @@
DIST translate-3.19.11.gh.tar.gz 1355618 BLAKE2B 65424bb83f67c04566611ebd426ad6dd233cebab252b09768cc5253c44d9291a543fe91a91e23ecbc8fdc5586fdb340fcb40f26028dcbf9973a8a20d7dd91f2c SHA512 776392694ff9802b74e90c5ac01d2f74da9069840c73b24ad6b7f6ffa4c912acd14a4ef8f390fd74acd48e01b0364ac69faf47027725c41775685b03032732a6
DIST translate-3.19.12.gh.tar.gz 1363988 BLAKE2B 2a9b9ffc74de96d31fafef18c3576b56834844bfcd459bff0eb7eff01938bbf48ec9051ac97de4e5862bf5c6438d599c0055a50d0a8e661d816fc2d4f95729d4 SHA512 8ee6753d20d4a5bb460a23c7538c2d90be98023d61661b6e036d88d6003f18d4b51ec4673f3ce562b5ecba903a63e0dfa16205548477366c796f9714a541a2b7
DIST translate-3.19.13.gh.tar.gz 1365289 BLAKE2B 533cbe8be6e5585157bf63518b9f53f359626c04e1c495d8dc713c3ed00ac43fc5591a2db8c6686776ad440c8711d8e5544003abf11fe9bb457df5ea5a3364d0 SHA512 814ad39c2d49f3c96079039173949a09649ef671516f0c77ce749b0c3b7b8978d4217458e7e39f9c10f497f5bd013f80796fa098794cd59ee33c52466beed867
+DIST translate-3.19.14.gh.tar.gz 1375782 BLAKE2B 37f1dfb46592e1f70b5f437ff016e529f4f4432747e7c592cfe065ecd286a6dd0ef30e4babca7007fd3eb536b86d2832d81b744aee4a009f6ca23ea88ddf4715 SHA512 27f71881a498054e367e77f1a19df46e2a58c37325f55e764b2022754b0ac11fc2b574874da473f30e0ffb586ee5f16d4b625e49dd843cae1a920b89a185a6a4
diff --git a/dev-python/translate-toolkit/translate-toolkit-3.19.14.ebuild b/dev-python/translate-toolkit/translate-toolkit-3.19.14.ebuild
new file mode 100644
index 000000000000..87c171eea069
--- /dev/null
+++ b/dev-python/translate-toolkit/translate-toolkit-3.19.14.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+MY_P=translate-${PV}
+DESCRIPTION="Toolkit to convert between many translation formats"
+HOMEPAGE="
+ https://github.com/translate/translate/
+ https://pypi.org/project/translate-toolkit/
+"
+SRC_URI="
+ https://github.com/translate/translate/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S="${WORKDIR}"/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+html +ical +ini +subtitles +yaml"
+
+RDEPEND="
+ app-text/iso-codes
+ >=dev-python/chardet-3.0.4[${PYTHON_USEDEP}]
+ dev-python/cheroot[${PYTHON_USEDEP}]
+ >=dev-python/levenshtein-0.12.0[${PYTHON_USEDEP}]
+ >=dev-python/lxml-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/mistletoe-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-3[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/tomlkit[${PYTHON_USEDEP}]
+ >=dev-python/unicode-segmentation-rs-0.2.0[${PYTHON_USEDEP}]
+ >=dev-python/wcwidth-0.2.14[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ html? ( dev-python/utidylib[${PYTHON_USEDEP}] )
+ ical? ( dev-python/vobject[${PYTHON_USEDEP}] )
+ ini? ( >=dev-python/iniparse-0.5[${PYTHON_USEDEP}] )
+ subtitles? ( media-video/gaupol[${PYTHON_USEDEP}] )
+ yaml? ( dev-python/pyyaml[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ test? (
+ dev-python/phply[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( syrupy )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # strip unnecessary pins
+ sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
+}
+
+src_test() {
+ # unfortunately, this bad quality package doesn't support XDG_DATA_DIRS
+ # correctly, so we need to reassemble all data files in a single directory
+ local -x XDG_DATA_HOME=${T}/share
+ cp -r translate/share "${T}/" || die
+ cp -r "${ESYSROOT}"/usr/share/gaupol "${XDG_DATA_HOME}"/ || die
+
+ distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Fails with network-sandbox (and even with it off but w/ softer fail)
+ 'tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff'
+ 'tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff'
+ )
+ local EPYTEST_IGNORE=(
+ # unpackaged fluent.*
+ tests/translate/storage/test_fluent.py
+ tests/translate/convert/test_fluent2po.py
+ # changes directory and does not change it back, sigh
+ tests/odf_xliff/test_odf_xliff.py
+ )
+
+ if ! has_version "dev-python/iniparse[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ translate/convert/test_ini2po.py
+ translate/convert/test_po2ini.py
+ )
+ fi
+
+ if ! has_version "media-video/gaupol[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ translate/storage/test_subtitles.py
+ )
+ fi
+
+ epytest
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ insinto /usr
+ doins -r translate/share
+
+ if ! use html; then
+ rm "${ED}"/usr/bin/{html2po,po2html} || die
+ fi
+ if ! use ical; then
+ rm "${ED}"/usr/bin/{ical2po,po2ical} || die
+ fi
+ if ! use ini; then
+ rm "${ED}"/usr/bin/{ini2po,po2ini} || die
+ fi
+ if ! use subtitles; then
+ rm "${ED}"/usr/bin/{sub2po,po2sub} || die
+ fi
+}
diff --git a/dev-python/urwid/Manifest b/dev-python/urwid/Manifest
index 0b379c6388fb..4a8887e4f9c4 100644
--- a/dev-python/urwid/Manifest
+++ b/dev-python/urwid/Manifest
@@ -2,3 +2,5 @@ DIST urwid-4.0.2.tar.gz 861918 BLAKE2B 9b549d6e5c16e34b20f30646489d0ef0732c2ef8f
DIST urwid-4.0.2.tar.gz.provenance 9434 BLAKE2B 3b97cfdccb84e4c2436cde05a0d0019d8498fcc87a67047ab0e84bf2b9f7646684be46c78eed31d2567f0fc139a07683200746a8614e1c18949010a48223cadd SHA512 220ddb6d1ba3a8d4504612a4195e7e4b417d26564d5e64239aa71b087151fc4ef9e42755ed3edad9b404440d98d481b1334423b6ab6f256c73e75017363cfb00
DIST urwid-4.0.3.tar.gz 868487 BLAKE2B 5687138af349dc0fa80be8fbf6fcc91f51d15debb3ec6c2f2c9a72bd5019944e98d3706fa09cce361702d2c4508cbcec387f1620d0173ddfd7e4bda1433faaeb SHA512 b3d76e97944b8d46bfe88840b84f251a9acb5e6787e55ae35fa6a18a9425648ef24b6989c6235a8ecf1dc924b185fa4e2ceaeae3f666cc8d4dc3211ba17a91f0
DIST urwid-4.0.3.tar.gz.provenance 9634 BLAKE2B 8c66d760e1bd5bfa507007d5e496b0999d8c99e9d10edb0be752b5615108126ccda910a34f4b55099069692fa305c6c05ca575b610c41b3631977f5672431230 SHA512 a90d927273337bd8afe5b944792d2484dfc335103fe1c33e2fb73cf518e162101171d791256af50baec1d436a4022a10a8cf8176c8cc28338e9e66640b714693
+DIST urwid-4.0.4.tar.gz 872046 BLAKE2B 5323c199d34ab4e7afdc26fbf38baf2fe9583a6b90886b39ed93fc7cedbe927e36b5679aef218c77f8f64302c18a7362cbe7b6c7575f445726d4cc78af79e0e6 SHA512 a97300c143f6375a311c8339eb5963cf36d5415e0f3c8fc19131124ddb73ec9c843b57aa1b5c1ce9356dc388ae709d07d6e06d9aa203ce68ee0490aa50a6737f
+DIST urwid-4.0.4.tar.gz.provenance 9536 BLAKE2B 40ecc86e3ea98984cae6ad124591cc709c2a41950717ae9aee6306bb620254d84304d45e2fdd81bef05c44730cee7b5a5de2cd16bb464273b9881a0b2b7f9aa4 SHA512 e9691a9c57904a82a3d6523979aa4cd022153b64766c270cda18268338f6740a3db9364f8527dfa136abc96f802dfa474d74b7dfceae7cbbf332a4cac11a58ed
diff --git a/dev-python/urwid/urwid-4.0.4.ebuild b/dev-python/urwid/urwid-4.0.4.ebuild
new file mode 100644
index 000000000000..f840d3f28004
--- /dev/null
+++ b/dev-python/urwid/urwid-4.0.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/urwid/urwid
+PYTHON_COMPAT=( python3_{13..14} )
+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 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="examples"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ >=dev-python/wcwidth-0.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed -i -e 's:--cov=urwid::' pyproject.toml || die
+}
+
+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/yt-dlp-ejs/metadata.xml b/dev-python/yt-dlp-ejs/metadata.xml
index 5fb88ec82f25..1ac525672de6 100644
--- a/dev-python/yt-dlp-ejs/metadata.xml
+++ b/dev-python/yt-dlp-ejs/metadata.xml
@@ -6,5 +6,6 @@
<name>Ionen Wolkens</name>
</maintainer>
<stabilize-allarches />
+ <straight-to-stable />
<origin>baldeagleos-repo</origin>
</pkgmetadata>
diff --git a/dev-python/yt-dlp-ejs/yt-dlp-ejs-0.8.0.ebuild b/dev-python/yt-dlp-ejs/yt-dlp-ejs-0.8.0.ebuild
index 6e64fb70665c..8d582e111870 100644
--- a/dev-python/yt-dlp-ejs/yt-dlp-ejs-0.8.0.ebuild
+++ b/dev-python/yt-dlp-ejs/yt-dlp-ejs-0.8.0.ebuild
@@ -16,7 +16,6 @@ SRC_URI+=" $(pypi_wheel_url --unpack)"
LICENSE="Unlicense"
LICENSE+=" ISC MIT" # .js dependencies
SLOT="0"
-# bumps should typically be done straight-to-stable like yt-dlp itself
KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv x86 ~arm64-macos ~x64-macos"
BDEPEND="