summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-07-30 03:04:49 -0500
committerroot <root@alpha.trunkmasters.com>2026-07-30 03:04:49 -0500
commit0fb86e044f244e00302b1878b3e15e0db0e4b7e5 (patch)
tree01eeaaaafa24d9c759103aa30b91c5999ae52a1d /dev-python
parent8087a9548fbac1dade3245660600d025f43d6732 (diff)
downloadbaldeagleos-repo-0fb86e044f244e00302b1878b3e15e0db0e4b7e5.tar.gz
baldeagleos-repo-0fb86e044f244e00302b1878b3e15e0db0e4b7e5.tar.xz
baldeagleos-repo-0fb86e044f244e00302b1878b3e15e0db0e4b7e5.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiomisc/Manifest2
-rw-r--r--dev-python/aiomisc/aiomisc-18.0.26.ebuild (renamed from dev-python/aiomisc/aiomisc-18.0.19-r1.ebuild)6
-rw-r--r--dev-python/aiomisc/files/aiomisc-18.0.26-fix-finalizers-assertion-error.patch15
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.43.59.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.43.59.ebuild67
-rw-r--r--dev-python/cachebox/cachebox-6.2.1.ebuild2
-rw-r--r--dev-python/cyclopts/Manifest3
-rw-r--r--dev-python/cyclopts/cyclopts-4.21.0.ebuild58
-rw-r--r--dev-python/cyclopts/cyclopts-4.22.1.ebuild (renamed from dev-python/cyclopts/cyclopts-4.16.1.ebuild)0
-rw-r--r--dev-python/deepdiff/deepdiff-9.1.0.ebuild2
-rw-r--r--dev-python/django-crispy-forms/Manifest1
-rw-r--r--dev-python/django-crispy-forms/django-crispy-forms-2.7.ebuild37
-rw-r--r--dev-python/dropbox/Manifest2
-rw-r--r--dev-python/dropbox/dropbox-12.2.1.ebuild (renamed from dev-python/dropbox/dropbox-12.0.2_p20260506.ebuild)16
-rw-r--r--dev-python/filelock/Manifest2
-rw-r--r--dev-python/filelock/filelock-3.32.2.ebuild31
-rw-r--r--dev-python/gitpython/Manifest8
-rw-r--r--dev-python/gitpython/gitpython-3.1.54.ebuild81
-rw-r--r--dev-python/gitpython/gitpython-3.1.55.ebuild81
-rw-r--r--dev-python/gitpython/gitpython-3.1.56.ebuild74
-rw-r--r--dev-python/json-repair/Manifest2
-rw-r--r--dev-python/json-repair/json-repair-0.61.7.ebuild (renamed from dev-python/json-repair/json-repair-0.61.4.ebuild)0
-rw-r--r--dev-python/libcst/Manifest8
-rw-r--r--dev-python/libcst/libcst-1.9.0.ebuild187
-rw-r--r--dev-python/lsp-tree-sitter/Manifest1
-rw-r--r--dev-python/lsp-tree-sitter/lsp-tree-sitter-0.2.14.ebuild (renamed from dev-python/lsp-tree-sitter/lsp-tree-sitter-0.1.1.ebuild)5
-rw-r--r--dev-python/posthog/Manifest2
-rw-r--r--dev-python/posthog/posthog-7.29.0.ebuild (renamed from dev-python/posthog/posthog-7.22.1.ebuild)0
-rw-r--r--dev-python/pydocket/Manifest4
-rw-r--r--dev-python/pydocket/pydocket-0.23.1.ebuild (renamed from dev-python/pydocket/pydocket-0.23.0.ebuild)0
-rw-r--r--dev-python/pyroaring/Manifest1
-rw-r--r--dev-python/pyroaring/files/pyroaring-1.1.0-Link-against-system-CRoaring-rather-than-vendor-copy.patch71
-rw-r--r--dev-python/pyroaring/metadata.xml13
-rw-r--r--dev-python/pyroaring/pyroaring-1.1.0.ebuild64
-rw-r--r--dev-python/rfc3161-client/Manifest71
-rw-r--r--dev-python/rfc3161-client/rfc3161-client-1.0.4.ebuild128
-rw-r--r--dev-python/rfc3161-client/rfc3161-client-1.0.5.ebuild128
-rw-r--r--dev-python/rfc3161-client/rfc3161-client-1.0.8.ebuild132
-rw-r--r--dev-python/stone/Manifest2
-rw-r--r--dev-python/stone/files/stone-3.5.3-unvendor-ply.patch53
-rw-r--r--dev-python/stone/stone-3.5.3.ebuild (renamed from dev-python/stone/stone-3.3.9.ebuild)20
-rw-r--r--dev-python/stripe/Manifest2
-rw-r--r--dev-python/stripe/stripe-15.4.0.ebuild92
-rw-r--r--dev-python/uv-build/Manifest1
-rw-r--r--dev-python/uv-build/uv-build-0.12.0.ebuild100
-rw-r--r--dev-python/uvicorn/Manifest4
-rw-r--r--dev-python/uvicorn/uvicorn-0.52.0.ebuild (renamed from dev-python/uvicorn/uvicorn-0.50.0.ebuild)2
-rw-r--r--dev-python/websockets/Manifest1
-rw-r--r--dev-python/websockets/websockets-17.0.ebuild61
-rw-r--r--dev-python/wrapt/Manifest2
-rw-r--r--dev-python/wrapt/wrapt-2.3.0.ebuild40
-rw-r--r--dev-python/wxpython/Manifest1
-rw-r--r--dev-python/wxpython/files/wxpython-4.2.4-setuptools.patch78
-rw-r--r--dev-python/wxpython/wxpython-4.2.4.ebuild141
56 files changed, 1149 insertions, 811 deletions
diff --git a/dev-python/aiomisc/Manifest b/dev-python/aiomisc/Manifest
index a4f3d2eb79b7..6e8bd826a58c 100644
--- a/dev-python/aiomisc/Manifest
+++ b/dev-python/aiomisc/Manifest
@@ -1 +1 @@
-DIST aiomisc-18.0.19.gh.tar.gz 480681 BLAKE2B 484fb21da132c14b65c341d44f2476f12178a14a99c8708e666c98f3e94a7bc41a079145c8c3f323af1440558a2414bc812cfb463155296172b284333c933207 SHA512 8f6ba5a31ce1fc796e3b4d223628514caaf5efd9af72dc4eb5b5fe956d775aef5abca32cec5918cadbaf146c66ae5e8131a87b9e5135fcd45cffd490cad9dd0e
+DIST aiomisc-18.0.26.gh.tar.gz 496190 BLAKE2B f664ecbf89f7a2fe65c13ced89b83b99afbcdc632e7cb89e521de70260f3cc31d91aaf37811fef16ee69b463a301426723a8291aa777eaf44f5bd0e6b041cf19 SHA512 b8aaae2f36a35b89664cfd273b4218be237f86a9096160800f111fbbdedbfaccff21e7ab04b6f34a3515fd20de43665dd2485cddbfd9fd60116957502e272c9f
diff --git a/dev-python/aiomisc/aiomisc-18.0.19-r1.ebuild b/dev-python/aiomisc/aiomisc-18.0.26.ebuild
index 2b72f5c155fb..0cc1e2bcd5cb 100644
--- a/dev-python/aiomisc/aiomisc-18.0.19-r1.ebuild
+++ b/dev-python/aiomisc/aiomisc-18.0.26.ebuild
@@ -14,7 +14,7 @@ HOMEPAGE="
https://pypi.org/project/aiomisc/
"
-MY_COMMIT="ebfdb45c8d60fda24e42f7589d2fc7fe11ae4f0c" # v18.0.9 (untagged, inferred)
+MY_COMMIT="22d3bc91f27e1bc0b839f3c907dc07b4022d00bb" # v18.0.26 (untagged, inferred)
SRC_URI="https://github.com/aiokitchen/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${PN}-${MY_COMMIT}"
@@ -34,6 +34,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}/aiomisc-18.0.26-fix-finalizers-assertion-error.patch"
+)
+
EPYTEST_PLUGINS=( aiomisc-pytest )
EPYTEST_XDIST=1
distutils_enable_tests pytest
diff --git a/dev-python/aiomisc/files/aiomisc-18.0.26-fix-finalizers-assertion-error.patch b/dev-python/aiomisc/files/aiomisc-18.0.26-fix-finalizers-assertion-error.patch
new file mode 100644
index 000000000000..b108b007dee8
--- /dev/null
+++ b/dev-python/aiomisc/files/aiomisc-18.0.26-fix-finalizers-assertion-error.patch
@@ -0,0 +1,15 @@
+diff --git a/aiomisc/pytest.py b/aiomisc/pytest.py
+index c5368d2..34b96cf 100644
+--- a/aiomisc/pytest.py
++++ b/aiomisc/pytest.py
+@@ -494,10 +494,6 @@ def pytest_fixture_setup(fixturedef, request): # type: ignore
+ except StopAsyncIteration: # NOQA
+ pass
+
+- loop_fixturedef.addfinalizer(
+- partial(fixturedef.finish, request=request)
+- )
+-
+ request.addfinalizer(finalizer)
+ return event_loop.run_until_complete(gen.__anext__())
+
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 554afdfcfe0a..920db816cecb 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -14,3 +14,4 @@ DIST boto3-1.43.55.gh.tar.gz 1190676 BLAKE2B d6e7310829ebc5d7e839a5d826dce95e092
DIST boto3-1.43.56.gh.tar.gz 1191375 BLAKE2B 3e98c6b40c4386ba8f4653af181625376509880f40b36c6ab8101a6d20cd8db4a57f2ab3b31e8934479a7191964455c08e728ebc1f4c291d987fb9991d32cdc9 SHA512 f3990078f144109317a11904b01c8bbbdc74e6caaf0be41f612c0b75076fa8092476aad840a33eb986a587040bbdb3618eb4f7d6ba6ec56d83b5cc97ea561fbd
DIST boto3-1.43.57.gh.tar.gz 1192652 BLAKE2B 1fe7c1bb69e4d234f69554518f07151a9f6ea1a24dac5fb91ca49a867fb4bff1064e96d9bcf0f653e91be8707ff651f5b397500a104ee175702b583d06412bdf SHA512 838301792c71c52de1b293b28771aa5d7a3baa10d56c11da423dd8971ca2d76f64cb3b4f45a9cec6d1ab1de2ef90d0c68800880c7357749da2608aa6c388f602
DIST boto3-1.43.58.gh.tar.gz 1193531 BLAKE2B ac792780b99f2fad11db5a04b5b1784269ca08ee0dcf977990b91ca9a781f5b3d9c0753d092ec4eaead5c6bd44a53431cff35dfbcca3080809e3c351d30b174f SHA512 f19614bf5b8a07d245c2dfb44b66faf5944ba8c5ea0515e12d4d9d5e9e96b5e662c8d93d40211ce14856421037894cd58b12c348d4e3e1bd389abf1b03aa20fd
+DIST boto3-1.43.59.gh.tar.gz 1194595 BLAKE2B 170ddbac49d627ed6032bd71914c53392461aa48be8507ea1517bf3af9ecb345b0d89e93c4fede1c73654f9603061858ad036afcabf9697366e3667898b73caa SHA512 33a9d4b7ebfaa0c42a3e08c12c574c950c184827a3687085f510815152e6c51e9232bdc2a2a6a81a5b3851adbc91f155d274c3e19665e02147bd8e980fe0363f
diff --git a/dev-python/boto3/boto3-1.43.59.ebuild b/dev-python/boto3/boto3-1.43.59.ebuild
new file mode 100644
index 000000000000..93fbbe6dd59b
--- /dev/null
+++ b/dev-python/boto3/boto3-1.43.59.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 c47b7d48240b..93c6a1114b62 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -14,3 +14,4 @@ DIST botocore-1.43.55.gh.tar.gz 16729593 BLAKE2B 50322fd925316103af05e7d656a7281
DIST botocore-1.43.56.gh.tar.gz 16732272 BLAKE2B 4a399f5febf5ff58a49b09f1e1a064630c832102783cd29c9d67165ff61f1538bfde3649bde61a018f0d1bbedcfd0a83ebdfa34eab0bbddb7892fec6d2e8f2a7 SHA512 2e086555d6a32802c929b21f9481b258cc9d9d724dd6b73e0159b642e688e0d2c419a3707f2fe4cdb60ec343ab960477b0424a5f9431e4060b49b8a7167ca0f2
DIST botocore-1.43.57.gh.tar.gz 16738874 BLAKE2B cdb542e910966ad785337eadbfad829a179256d56b1b803b96838ce60ff01ddc0a787ba77d1ce2a56d354008b360e333e14bcd8ff61bab156e1ac37101d5b6e9 SHA512 0ecd214c1d33ec33aa66bf8eb082d379c47481efc59bf96d052e6bfa34183f000fd20c05cb0765490c6ce9cafba8d994ac7bc68c952da02ff3b8ed31d43a0658
DIST botocore-1.43.58.gh.tar.gz 16740851 BLAKE2B 19be86a3b7d0f3a9d62862c0a6bfa53d275fe149b879333cc49be9af4f43e9d1af919c966087d7de2da01f6b9f48c524457209dd7ab1ffe4e8291a185a89fa04 SHA512 3acdd10cbba121f9c32cc3931847c5778e2e273409869dd79e9150d9c5d787da010b9df4df642ce16a97d2b0d351eaa5d8a22e37c9d042f54341e65389fd162d
+DIST botocore-1.43.59.gh.tar.gz 16787137 BLAKE2B 6f2f018b252e7b1ddbb0cd77d0b5b5fa9ce2b9c0e3387ecff69ba8942301697f7fb037df232c8759fccb57fdab2a47293f7d7c86b3252d7a2025afe285884321 SHA512 8162143bcbde8e4552d2ea3b3e5c2819e12e09477e4b5e68b48e48abb3cc8c596fa382843a08af3c1967c2c9a0234647c1733f8b503ed4cfacf61d5306ade698
diff --git a/dev-python/botocore/botocore-1.43.59.ebuild b/dev-python/botocore/botocore-1.43.59.ebuild
new file mode 100644
index 000000000000..a3a161f78545
--- /dev/null
+++ b/dev-python/botocore/botocore-1.43.59.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/cachebox/cachebox-6.2.1.ebuild b/dev-python/cachebox/cachebox-6.2.1.ebuild
index c30c1c74be53..2a52aeb0ab37 100644
--- a/dev-python/cachebox/cachebox-6.2.1.ebuild
+++ b/dev-python/cachebox/cachebox-6.2.1.ebuild
@@ -80,7 +80,7 @@ LICENSE="MIT"
# Dependent crate licenses
LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm64 ~x86"
EPYTEST_PLUGINS=( hypothesis pytest-asyncio )
distutils_enable_tests pytest
diff --git a/dev-python/cyclopts/Manifest b/dev-python/cyclopts/Manifest
index 0b7fc9c2acd2..229143aa2b03 100644
--- a/dev-python/cyclopts/Manifest
+++ b/dev-python/cyclopts/Manifest
@@ -1,2 +1 @@
-DIST cyclopts-4.16.1.gh.tar.gz 2336475 BLAKE2B ac5bc123d9b4286be687c86b77c8203a6933ff3ab3bd7575c06c4570cc44d485bdfc6adb59a6bda3ed5b98bc17677652bb0ac2eba8287d828e70a53bd02a1d3a SHA512 a4d1ca02ad59eee0b262500a587f3040482c7be1d17067a8b0e67a25744224d46a50b174ccb6c0dfabeb9bb94906eec25532bbba3b2b1136887290fc729b9986
-DIST cyclopts-4.21.0.gh.tar.gz 2360305 BLAKE2B 28ee3d5ccb0fe951ea5d96eeb6e220d945582f210bf1fe5649ff80cf5dea279bd865d64148d7737f028807ad4cee08f2046baad7cf0576b9db1dca004c6018a5 SHA512 bd0e699343519ff32a23b2e8031f52190672fc43b38c8a5a56cb72a0f15956059d07e73de453764db9534180fe947890e638bec2d2145985aa9420b2e30b84b8
+DIST cyclopts-4.22.1.gh.tar.gz 2366157 BLAKE2B 22dec31521d7bb8f93a144ce1feeb10d6209be4a4bfe13620d8b58b78fe939725adbe383fe61ee3d7a4bcfe1de0877a48f1f5ffe34765e0070f68d89fb2267d1 SHA512 677a640d14ac8f87edff63416dedef0c07d0bc7a155d1c3a3e58f044a5f7e5b720e3f7c95cb0926c55e2d2cbdad79ae6a62f70ddc659b48a9be1cf2447c6cd21
diff --git a/dev-python/cyclopts/cyclopts-4.21.0.ebuild b/dev-python/cyclopts/cyclopts-4.21.0.ebuild
deleted file mode 100644
index 45e2a2ecbe70..000000000000
--- a/dev-python/cyclopts/cyclopts-4.21.0.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{13..14} )
-
-inherit distutils-r1 optfeature
-
-DESCRIPTION="Intuitive, easy CLIs based on type hints"
-HOMEPAGE="
- https://github.com/BrianPugh/cyclopts
- https://pypi.org/project/cyclopts/
-"
-SRC_URI="https://github.com/BrianPugh/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-RDEPEND="
- >=dev-python/attrs-23.1.0[${PYTHON_USEDEP}]
- >=dev-python/docstring-parser-0.15[${PYTHON_USEDEP}]
- >=dev-python/rich-13.6.0[${PYTHON_USEDEP}]
- >=dev-python/rich-rst-1.3.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- >=dev-python/pydantic-2.11.2[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
- dev-python/sphinx[${PYTHON_USEDEP}]
- >=dev-python/trio-0.10.0[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=(
- pytest-mock
- syrupy
-)
-distutils_enable_tests pytest
-
-EPYTEST_DESELECT=(
- # Requires dev-python/mkdocs
- tests/test_docs_snapshots.py::TestMkDocsDirectiveSnapshots
-)
-EPYTEST_IGNORE=(
- # Requires dev-python/mkdocs
- tests/test_mkdocs_ext.py
-)
-
-export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-pkg_postinst() {
- optfeature "Trio async backend" dev-python/trio
- optfeature "reading YAML configurations" dev-python/pyyaml
-}
diff --git a/dev-python/cyclopts/cyclopts-4.16.1.ebuild b/dev-python/cyclopts/cyclopts-4.22.1.ebuild
index 45e2a2ecbe70..45e2a2ecbe70 100644
--- a/dev-python/cyclopts/cyclopts-4.16.1.ebuild
+++ b/dev-python/cyclopts/cyclopts-4.22.1.ebuild
diff --git a/dev-python/deepdiff/deepdiff-9.1.0.ebuild b/dev-python/deepdiff/deepdiff-9.1.0.ebuild
index 4b4cf27db75c..4af3c96bc3bf 100644
--- a/dev-python/deepdiff/deepdiff-9.1.0.ebuild
+++ b/dev-python/deepdiff/deepdiff-9.1.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
>=dev-python/cachebox-5.2[${PYTHON_USEDEP}]
diff --git a/dev-python/django-crispy-forms/Manifest b/dev-python/django-crispy-forms/Manifest
index 291c766cd5c9..756fe4a5b42f 100644
--- a/dev-python/django-crispy-forms/Manifest
+++ b/dev-python/django-crispy-forms/Manifest
@@ -1 +1,2 @@
DIST django-crispy-forms-2.6.gh.tar.gz 1094540 BLAKE2B 89fac9fe846989f8060996a43584f3c1ffe99025b89a17d72f3ec4dc69226ff35f1f9c4e1d953ba03d4a1fe4ede7bd264bcdd6a7604d4e75b0a64fafd7954bfa SHA512 cab9b9dc0c607210635578fe6390419aab0ac98357f08f3941bc0c4d129e7c4784bdc02eb1a4cfe754b4b30eae59ed3293f493584447c777b62d07fb03a74ea5
+DIST django-crispy-forms-2.7.gh.tar.gz 1094565 BLAKE2B 451c87cb3bd80d4c2a67997c4506651f2f60b9d281114b0d7544fa0e1fa889dcd2aed20b6026359d525f9e1e40495007c2ab6c3a35cac77ad81f40e80838dd7e SHA512 77f662422b412b9cb10a9b9726e63064679c3772031051fd6a1e23e98a5740b13e7198f8068e780b2b4d2eecc470ac4247e80a57be4a81937d3e11d1528f5dc5
diff --git a/dev-python/django-crispy-forms/django-crispy-forms-2.7.ebuild b/dev-python/django-crispy-forms/django-crispy-forms-2.7.ebuild
new file mode 100644
index 000000000000..57c7df23ae75
--- /dev/null
+++ b/dev-python/django-crispy-forms/django-crispy-forms-2.7.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-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="DRY Django forms"
+HOMEPAGE="
+ https://github.com/django-crispy-forms/django-crispy-forms/
+ https://pypi.org/project/django-crispy-forms/
+"
+SRC_URI="
+ https://github.com/django-crispy-forms/django-crispy-forms/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/django-4.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/crispy-bootstrap3[${PYTHON_USEDEP}]
+ dev-python/crispy-bootstrap4[${PYTHON_USEDEP}]
+ >=dev-python/sh-2[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-django )
+distutils_enable_tests pytest
diff --git a/dev-python/dropbox/Manifest b/dev-python/dropbox/Manifest
index 83a2ca7b1595..4810a5c0a92d 100644
--- a/dev-python/dropbox/Manifest
+++ b/dev-python/dropbox/Manifest
@@ -1,2 +1,2 @@
-DIST dropbox-12.0.2_p20260506.gh.tar.gz 1152945 BLAKE2B 728a269669ab835541c71068f05c401131fbe1d06f2f095a59e338d83cb5bd2bae674c8c1d050ae252a6af7db60e95b5be28e4b13f16296ecb35b6abd7efc450 SHA512 68ff810162ff945bcbcd9c6e7fb0cbf255b35b0964aa2391377a3cbe928b87a5408abc3cbccf4c9d2d0cde365393faf4e8186da1cff3b2d400732ac110eb404d
DIST dropbox-12.1.0.gh.tar.gz 1152840 BLAKE2B 61614cefcf4a7bafa5c7f68d906ff6afe772fe9a4a587f0f0eebbd880f152bd191aebccab0dc723c1c58f8fb772b6a956b03312e3b16d94754c21437207fe46b SHA512 8108efcf9bbd979807787bc545b0711e41356dc8a1a421df8eaa643bf0281e339d417e75a48b09ab2f3cd5894cf8c731c21e2d6ab3f5fe75349caf4422c8c28e
+DIST dropbox-12.2.1.gh.tar.gz 1252631 BLAKE2B 45673f0845aa60bcb00a9fad2e5e0f2d6b843ddfd77c7db814dda2a17483264ff3473273829684163e589d759f791550030df9cce1be9adde000bd2335370dd1 SHA512 7247b94dfa97e1225d5e2f60c5dd55e25b3454610621781c4e097cce4cc402cd2eb96261e32990364b6d5eafbef2dd4b0df54b3e93bfa2cf07191ea46414a788
diff --git a/dev-python/dropbox/dropbox-12.0.2_p20260506.ebuild b/dev-python/dropbox/dropbox-12.2.1.ebuild
index f2b982f57ac1..1da37ff88e07 100644
--- a/dev-python/dropbox/dropbox-12.0.2_p20260506.ebuild
+++ b/dev-python/dropbox/dropbox-12.2.1.ebuild
@@ -6,8 +6,6 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{13..14} )
-GIT_HASH="8223031ffad6b4b3ab4ee886658bc606e6f82bac"
-
inherit distutils-r1
MY_PN=dropbox-sdk-python
@@ -15,15 +13,9 @@ MY_P=${MY_PN}-${PV}
DESCRIPTION="The offical Dropbox SDK for Python"
HOMEPAGE="https://www.dropbox.com/developers"
-
# pypi does not have tests, stick with gh
-if [[ ${PV} == *_p* ]] ; then
- SRC_URI="https://github.com/dropbox/${MY_PN}/archive/${GIT_HASH}.tar.gz -> ${P}.gh.tar.gz"
- S="${WORKDIR}/${MY_PN}-${GIT_HASH}"
-else
- SRC_URI="https://github.com/dropbox/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
- S="${WORKDIR}/${MY_P}"
-fi
+SRC_URI="https://github.com/dropbox/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_P}"
LICENSE="MIT"
SLOT="0"
@@ -31,8 +23,7 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="
>=dev-python/requests-2.16.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.12.0[${PYTHON_USEDEP}]
- dev-python/stone[${PYTHON_USEDEP}]
+ >=dev-python/stone-3.5.3[${PYTHON_USEDEP}]
dev-python/urllib3[${PYTHON_USEDEP}]
"
@@ -44,6 +35,7 @@ EPYTEST_DESELECT=(
test/unit/test_dropbox_unit.py::TestOAuth::test_NoRedirect_whole_flow
)
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
src_prepare() {
diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest
index 887a487c8991..7f6cb3416371 100644
--- a/dev-python/filelock/Manifest
+++ b/dev-python/filelock/Manifest
@@ -12,3 +12,5 @@ DIST filelock-3.31.0.tar.gz 180931 BLAKE2B 1921f1ec88d79cb764c30dc5f2ebf9192209d
DIST filelock-3.31.0.tar.gz.provenance 9855 BLAKE2B 9b98e156d7e941a8585d6deb01ac732966ab560cbcf86dc5a6c076c74a7877c7fde9cc7982e084e502f3047a62b2571baffc4e81010d576a2283844b3be64d68 SHA512 4400dda6b091d5efbe61dc2cbc62e03fcaaf5d28f8e80e38e7e3e9cd5bc7f2d53eb969c123c0b8bb9da277e455dad1ef7769fecf7c999e94ad1a691b7b5ea1ff
DIST filelock-3.32.0.tar.gz 213757 BLAKE2B 9abf4e115a12df91fd80859d58ed744461bc5a61d0ac1ee389bc5351dc3760866120de4d445de0495ed5b1137926113bad43b33c87e897a8f76e05133efdc585 SHA512 f3f775890981f4a2dc0ac28636f0951e860c23ff66debc307f041023f58aa3e0684de2c591fc9e97bfd36813d6a5cabb1403148230d6023c3213e7a9b2f39510
DIST filelock-3.32.0.tar.gz.provenance 9761 BLAKE2B 4184fa984794d62eb6572f394659ceea5de17e05c14df023c5ca6b087a610726c3491e23f0ddd139f8b42c539f83f090f1ab1e88c482ca431fc87bfd0e08a61b SHA512 8cd8727bfaf8521e8ce8d95fe67c65188bd3fa5cd0cfff36504d811e088b8dbc36a3fed1aecb8f4a8266fcfbca6d4f61016495441f4aee5277d5b0ad7796f699
+DIST filelock-3.32.2.tar.gz 217172 BLAKE2B 0d225439238f34eb3050ebeef61846279fa76303609c6c6c66b6680f3c2099cbaec04b406c9daf057f400785a567318ff0bb8874aaef7f032ac080c4bbf74984 SHA512 495d99f98c83bd3c307abb70155e04a8e8443de922280170406246468f516632b9b42f6d63a3ff8db38d2b8acd6223ad351dd0fe07b4e62dcc5699c606f2c92b
+DIST filelock-3.32.2.tar.gz.provenance 9530 BLAKE2B dc7b8c939c1d3067535c9670e0ec2e96cc1f2835e478ecfa6bf196fb98489294b623119a74cb22b2e03f32b74638afb05e61a174d0406cf7efc6f62354b3505e SHA512 4561f7f0220ccdfb295502bae784b1346f640de7c356f85403e6c43cc7ccd7a83861514b7966a7cfff9cbaf7036337e87cba155cff7dd4d0ce75a58dada4e093
diff --git a/dev-python/filelock/filelock-3.32.2.ebuild b/dev-python/filelock/filelock-3.32.2.ebuild
new file mode 100644
index 000000000000..1f38026c0588
--- /dev/null
+++ b/dev-python/filelock/filelock-3.32.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2018-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/tox-dev/filelock
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A platform independent file lock for Python"
+HOMEPAGE="
+ https://github.com/tox-dev/filelock/
+ https://pypi.org/project/filelock/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,mock,timeout} )
+EPYTEST_RERUNS=5
+distutils_enable_tests pytest
diff --git a/dev-python/gitpython/Manifest b/dev-python/gitpython/Manifest
index 1d2398396f16..7aa05f2c4bf5 100644
--- a/dev-python/gitpython/Manifest
+++ b/dev-python/gitpython/Manifest
@@ -1,10 +1,2 @@
-DIST GitPython-3.1.54.gitbundle 12994086 BLAKE2B 9709a2bf90eb3ed03517df801b9505d9db0dada09c27359b2c297770fb23a0d359ae62a9518ded8e57b03c82a00b2da2f02bddd312a1e2a3a94ba934e6e70fb9 SHA512 895d4ea52e0853282bbf4a0e524de7ea1e0d544435fcea1db2038a6a97c7be2f0bc1a341d776f2869d5eae84eee8f7c061ab790e4708ba1da75299dd66878f2c
-DIST GitPython-3.1.55.gitbundle 12989001 BLAKE2B 0fa2481fd5d3707e44ad2cc84591ed7061533ae9eb79e6e0baaa4ab97b026ab0395caa5cc1d6318e3d41ff937458ef9d5ce7145e27261f8710cb2fc663b27154 SHA512 7baa8393a3871e041498cc847671f5ee64177c89794500ebff93985209a9b9ea7a795444b7c4755d44ed6c977920f2b07843b771d99a481eab96f6d8e43e5550
-DIST GitPython-3.1.56.gitbundle 13002231 BLAKE2B 90aee4b11b9f8b83243721628743ecd172c728ab45871c367da93e0d2579cfb25a4bd2f3e62be625673a2538f16a6c5e49ebbeb61343ba5e1a343f967565f740 SHA512 9e2c631c557a9039d566d11bc2ffcd2221e9793f627a5883341ffb258c9b8eaa7d8db9d083570cf5df85bbe4e37c19a06918c56472b7a9f5dac0896beabde352
DIST GitPython-3.1.57.gitbundle 12996669 BLAKE2B cccc3058e05a812d0ac20112514e31af5e0dfd3eb5b6d0c27d6fdb46c0eea750a8edaa2aacd71940c60a47ceccdf2f3f2a515ee65619d8b6b5440c917f733815 SHA512 24e7997fb0bf548fb430ff18b632eb3eb3374ca35523e100e1a38c500b3178b53f6238fce0745f3a61d6a3210cac8a1a7af37e7f8dc6a281b4cdd26d4a9643f8
-DIST gitdb-4.0.12.gitbundle 1627457 BLAKE2B 2fb730fb72f682bac9a71a2b70af6ed476f69d57e00b323e669550793bcc330bd4b71575e0d0f008ed58f39e5beb622213ce2a10df6f512f1f5536b72c77871a SHA512 2fc619f511e373ad2ee51a108057e3a558dbfd68cbd7632244d7fd7914ed5fce99c182de5542264273de642e6e7680ee9b54a6da95224c562f43cf65e325db56
-DIST gitpython-3.1.54.tar.gz 225076 BLAKE2B e8f649c3b3c966d488c5d40c57e727e68108c4dc2c32ade4848170689d5258fbf119b39d05929430f3764b3e74bf322c5e79d4cc1d8ac87bcbab5f2c2305fdf8 SHA512 52a1059c21615a9e36072f42e5255ed7bd3b48b0a6a2a75212cefd2cb6f201c62bad3b3391d8b407c2ac3e043cc4ab69930896e3a54268a578986984f86fd28a
-DIST gitpython-3.1.55.tar.gz 225071 BLAKE2B c7f1915d1c188760db3b734e9d4ebab27544d87683863af4fa0eecb99171d4ff54c26c458829e3f7180d718d726e474ee7dfee0ef8206268dd78fc7306956b49 SHA512 478b30b92c421a008144167b821343b4b0d646b3ef222a6bca83efd07acdc1c0e7213f3a33a0c59ddf1e4763e342a9712f6dc8df83ac317b01a8e614dfeb7470
-DIST gitpython-3.1.56.tar.gz 229619 BLAKE2B bbfcc726256e7813b46e7de4b11fd73ddeb170bb323e0f31271d9558a6889ae49fae52d43579753eebe793dbd623c872ff89fdad5c00f5698ee5b5d851d71f02 SHA512 b54cf52ebc624ff658877570fbd1d4974ee274e9ae49676cc482393e422a75a893b7b8d65e86708435e6097abaa534653e60d620ad339d4aa918f4630f72f9f9
DIST gitpython-3.1.57.tar.gz 225898 BLAKE2B e577b3bf6080280869fc53475538415a2681e3d5bd2f86d0536036480e1bd7f2f2b4c3d0c84f9c263b24a4e130394a16015367f762b70e67b57d337d54700622 SHA512 cc60ceb2649c600e8618556c889418b6a481bfd358a037a0c117e475957b57d90d6b43421b392207b7dc308a6ec06b25e55c0733ccc149ed9308d048cec78fb3
-DIST smmap-5.0.1.gitbundle 362567 BLAKE2B 72c8b48ad3250a33b94218c145c02033dee84c1da5f1eea57983a58699262d51844be675330d95c7d64924b6aeaacd4b0a57e9a5acad3be184aaad62102202e7 SHA512 9ca8386bfec25d1562cdf1c2ee85f7edb15fd3f44ecd1abbef738979f12b82f0b0f39a06589203a39f89518d981d7129e35f64f2d855cd162cd964bdd87c8d18
diff --git a/dev-python/gitpython/gitpython-3.1.54.ebuild b/dev-python/gitpython/gitpython-3.1.54.ebuild
deleted file mode 100644
index 1e2b4aa78374..000000000000
--- a/dev-python/gitpython/gitpython-3.1.54.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=GitPython
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 pypi
-
-TEST_P=GitPython-${PV}
-GITDB_P=gitdb-4.0.12
-SMMAP_P=smmap-5.0.1
-
-DESCRIPTION="Library used to interact with Git repositories"
-HOMEPAGE="
- https://github.com/gitpython-developers/GitPython/
- https://pypi.org/project/GitPython/
-"
-SRC_URI+="
- test? (
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${TEST_P}.gitbundle
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${GITDB_P}.gitbundle
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${SMMAP_P}.gitbundle
- )
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-
-RDEPEND="
- dev-vcs/git
- >=dev-python/gitdb-4.0.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/ddt-1.1.1[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=( pytest-mock )
-distutils_enable_tests pytest
-
-src_test() {
- git config --global user.email "travis@ci.com" || die
- git config --global user.name "Travis Runner" || die
-
- git clone "${DISTDIR}/${TEST_P}.gitbundle" "${T}"/test || die
- git clone "${DISTDIR}/${GITDB_P}.gitbundle" \
- "${T}"/test/git/ext/gitdb || die
- git clone "${DISTDIR}/${SMMAP_P}.gitbundle" \
- "${T}"/test/git/ext/gitdb/gitdb/ext/smmap || die
-
- cd "${T}"/test || die
- git rev-parse HEAD > .git/refs/remotes/origin/master || die
- # this tries to fetch again
- sed -i -e '/git submodule/d' init-tests-after-clone.sh || die
- TRAVIS=1 ./init-tests-after-clone.sh || die
- cat test/fixtures/.gitconfig >> ~/.gitconfig || die
-
- distutils-r1_src_test
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # performance tests are unreliable by design
- test/performance
- # unimportant and problematic
- test/test_installation.py
- # Internet
- test/test_quick_doc.py::QuickDoc::test_cloned_repo_object
- # TODO
- test/test_submodule.py::TestSubmodule::test_base_rw
- test/test_submodule.py::TestSubmodule::test_root_module
- )
-
- epytest -o addopts= test
-}
diff --git a/dev-python/gitpython/gitpython-3.1.55.ebuild b/dev-python/gitpython/gitpython-3.1.55.ebuild
deleted file mode 100644
index 696f647771d9..000000000000
--- a/dev-python/gitpython/gitpython-3.1.55.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=GitPython
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 pypi
-
-TEST_P=GitPython-${PV}
-GITDB_P=gitdb-4.0.12
-SMMAP_P=smmap-5.0.1
-
-DESCRIPTION="Library used to interact with Git repositories"
-HOMEPAGE="
- https://github.com/gitpython-developers/GitPython/
- https://pypi.org/project/GitPython/
-"
-SRC_URI+="
- test? (
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${TEST_P}.gitbundle
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${GITDB_P}.gitbundle
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${SMMAP_P}.gitbundle
- )
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-RDEPEND="
- dev-vcs/git
- >=dev-python/gitdb-4.0.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/ddt-1.1.1[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=( pytest-mock )
-distutils_enable_tests pytest
-
-src_test() {
- git config --global user.email "travis@ci.com" || die
- git config --global user.name "Travis Runner" || die
-
- git clone "${DISTDIR}/${TEST_P}.gitbundle" "${T}"/test || die
- git clone "${DISTDIR}/${GITDB_P}.gitbundle" \
- "${T}"/test/git/ext/gitdb || die
- git clone "${DISTDIR}/${SMMAP_P}.gitbundle" \
- "${T}"/test/git/ext/gitdb/gitdb/ext/smmap || die
-
- cd "${T}"/test || die
- git rev-parse HEAD > .git/refs/remotes/origin/master || die
- # this tries to fetch again
- sed -i -e '/git submodule/d' init-tests-after-clone.sh || die
- TRAVIS=1 ./init-tests-after-clone.sh || die
- cat test/fixtures/.gitconfig >> ~/.gitconfig || die
-
- distutils-r1_src_test
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # performance tests are unreliable by design
- test/performance
- # unimportant and problematic
- test/test_installation.py
- # Internet
- test/test_quick_doc.py::QuickDoc::test_cloned_repo_object
- # TODO
- test/test_submodule.py::TestSubmodule::test_base_rw
- test/test_submodule.py::TestSubmodule::test_root_module
- )
-
- epytest -o addopts= test
-}
diff --git a/dev-python/gitpython/gitpython-3.1.56.ebuild b/dev-python/gitpython/gitpython-3.1.56.ebuild
deleted file mode 100644
index ebe35bd5a941..000000000000
--- a/dev-python/gitpython/gitpython-3.1.56.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_PN=GitPython
-PYTHON_COMPAT=( python3_{13..14} )
-PYTHON_REQ_USE="threads(+)"
-
-inherit distutils-r1 pypi
-
-TEST_P=GitPython-${PV}
-GITDB_P=gitdb-4.0.12
-SMMAP_P=smmap-5.0.1
-
-DESCRIPTION="Library used to interact with Git repositories"
-HOMEPAGE="
- https://github.com/gitpython-developers/GitPython/
- https://pypi.org/project/GitPython/
-"
-SRC_URI+="
- test? (
- https://distfiles.gentoo.org/pub/proj/python/GitPython/${TEST_P}.gitbundle
- )
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-
-RDEPEND="
- dev-vcs/git
- >=dev-python/gitdb-4.0.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/ddt-1.1.1[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=( pytest-mock )
-distutils_enable_tests pytest
-
-src_test() {
- git config --global user.email "travis@ci.com" || die
- git config --global user.name "Travis Runner" || die
-
- git clone "${DISTDIR}/${TEST_P}.gitbundle" "${T}"/test || die
-
- cd "${T}"/test || die
- git rev-parse HEAD > .git/refs/remotes/origin/master || die
- TRAVIS=1 ./init-tests-after-clone.sh || die
- cat test/fixtures/.gitconfig >> ~/.gitconfig || die
-
- distutils-r1_src_test
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # performance tests are unreliable by design
- test/performance
- # unimportant and problematic
- test/test_installation.py
- # Internet
- test/test_quick_doc.py::QuickDoc::test_cloned_repo_object
- # TODO
- test/test_submodule.py::TestSubmodule::test_base_rw
- test/test_submodule.py::TestSubmodule::test_root_module
- test/test_remote.py::TestTimeouts::test_timeout_funcs
- )
-
- epytest -o addopts= test
-}
diff --git a/dev-python/json-repair/Manifest b/dev-python/json-repair/Manifest
index cef14af4cd65..3a6498cc413a 100644
--- a/dev-python/json-repair/Manifest
+++ b/dev-python/json-repair/Manifest
@@ -1 +1 @@
-DIST json-repair-0.61.4.gh.tar.gz 2564671 BLAKE2B d406964bcd796d11f09b7950d4f9078b92203388388c555d4d0bbf84f61c07e80c25c9da515d96db44f70b6e99a34bcaa097a6b25d1e536243caa24f20fa3dcb SHA512 2626494e57d5b65b53bc8405b9f94d4a5719d78866ccbd4a520fde3288c9dabff3e7008274cfa059cfba32143154e18f15dd04e07a9fc0c6c538807b3e556152
+DIST json-repair-0.61.7.gh.tar.gz 2565741 BLAKE2B ab5d810f60ddea92ee55e240765960f37cb478bef4411a49ab59bb1f3490866c0a0116109454d1e41eaead2819ae08af6c14f7606b0721d62fc55d3dc2bae71e SHA512 99318e4dc22c15e3fe804b23273d2cc548dc10ae489be4272d4befb7e002f21b3b4a9ec4c34072b37548c0e18f84db5ec6eacd2129a1685457b11c30eccafcab
diff --git a/dev-python/json-repair/json-repair-0.61.4.ebuild b/dev-python/json-repair/json-repair-0.61.7.ebuild
index 7a42b021a172..7a42b021a172 100644
--- a/dev-python/json-repair/json-repair-0.61.4.ebuild
+++ b/dev-python/json-repair/json-repair-0.61.7.ebuild
diff --git a/dev-python/libcst/Manifest b/dev-python/libcst/Manifest
index c4f58180abaa..19f1255b8e00 100644
--- a/dev-python/libcst/Manifest
+++ b/dev-python/libcst/Manifest
@@ -34,6 +34,8 @@ DIST js-sys-0.3.77.crate 55538 BLAKE2B 8a4c04a8e93bf5dab63784a24320a314cc5cb629d
DIST libc-0.2.149.crate 715592 BLAKE2B 21dd5d4f9351f3c75790077c7b025046db665f2d48d7a72cda7667bc60febf79d82708cf7d39a323a594397cd590bd3d2a2f85349b4473b90ea4da918382ed0a SHA512 0def64d400d473d6eed30e985522d36801ee6472b15f90e74dc4592e0a8ffbaf30b731be280de52b30255cf60aeca8efe817b67049227dc7000c807e007d7289
DIST libcst-1.8.6.tar.gz 891354 BLAKE2B f99592fe85a543e5996ebed401478cc27f8cba53d9945fa5e948e109e2b52f35a11da78a44fc66a16c1877be55b99d16015e90cac9811410f37b615ec2d9ddac SHA512 fe6c2b1cb1a9ef2b02e8f73fae3b91fc42af7e2ae78f9c0120dd5417635026aa26ee2cf1413f3ecc1fbbd9655381e2c49a878ec7475c205ab93a89ae7f317100
DIST libcst-1.8.6.tar.gz.provenance 9393 BLAKE2B 3938392a475caaf546df3c0280e956202a016abfdb4566a391e49e02c6d2346ed4ddf683c3d9f6ca6e32288ff06f5e6e1e8537f095fa06b513c5cf5a9ecbe4e3 SHA512 ea4d3e60ffd0d6f7b34f1dad72011c7ef50f03cfed44fec8fa58e1c387ff1b6f748a55c1a2f297fe392573c91a7965adbf92e45d39a4e49fd553718df7a2e788
+DIST libcst-1.9.0.tar.gz 914739 BLAKE2B b7d693757ec6f43dd42128921a37ff69e89edaac5a0da7a00e150c8ecb9777c237f0eea5b930870e312a583b3a3394fa9eb245a3cf56774b2f67e092191fc266 SHA512 1399106b974fef350273beb415a6bfabfd07eac9419a64e68257fabeb350da6903fcfeed2f9e06db3befa59c14cf53e7c450a7e39e5fd991c381cc89fbf41feb
+DIST libcst-1.9.0.tar.gz.provenance 9497 BLAKE2B 5a06306f56d5f1753e00598c922f43e6a1a680c73d99c87534372c77b480a2faed7255b1a1068ee20095731f59297ea5e93fc3ad2ce0f7f2389512dc1e5bb494 SHA512 7a009c9baf04604c6cb0219d376e2379c40a3c74862e3b46b1b7d71497a783f34e039ca23de8abfac6de2b592a86d5ceb842bcc80afa8581134c1a5fe91afe12
DIST log-0.4.17.crate 38028 BLAKE2B b46be3719fc0a53e50b1f342762e188587e9f1ceb692c72473ce2663edfb8253742d30024e68c1444780ab7fc0e2d5b0601b8ea7228dc3405a9342a57548e605 SHA512 2477d88db42b1d92c30708d88823212e236f613b3465e85eb425f83f8d16fadfaf0352f06c2999a1852102edd2f6ffb10ecb539d8a3b6c48f552a25622ccffa2
DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e3223715d52e181babb89b872b46511563985bcc16d7ff4e82f812c6e83ad904b0fe2501b14445119dfa8240e6 SHA512 8d0e8b9c30208897d4b1b920f1bdcccd0c2b75d92a06abe4a1b2407938768abb6487d63de56c6a80419798fe69517210643dfaf11f5f5540185f0eccf220adb2
DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009 SHA512 11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
@@ -51,10 +53,15 @@ DIST plotters-svg-0.3.7.crate 6715 BLAKE2B 1437ad7e1c1b3e82ab1f58660ff6931e510f6
DIST portable-atomic-1.4.3.crate 126291 BLAKE2B 08fbfd391c9eb55c02b8345549a57fb5c3b8cfcd81e3867ca49cba94faa7b2d372e4f2996fbef4a52742d852b117d4b7cc488571df7272b93caf47a9a2680c46 SHA512 89f14902c1e55c37d7663bc9255378441a0951e5d8e21665a8102e06b766135cec6d982f9ed01b4167e872a7853102ad0e9347e9b163ea81d81b00ee2362e9a0
DIST proc-macro2-1.0.95.crate 51820 BLAKE2B 93229d80556ec03bce4031607d13c7902cacc2d7e2586a692ffe8543d52e3f3ba253c9c311ddedf6d9348ce8758ae8ff64577675cda2dac557f936a328de47e3 SHA512 f78e4d47ecd29c1b2315554705e445507bbfb9449afd0bf1b74df28f266ac6382ca8c3ce135ddc55c989eaee64d1794a0933a941c8ff55f543fa21c400016547
DIST pyo3-0.26.0.crate 1151579 BLAKE2B bcc8236785502928bf4a0b7a320e0a8f3d6140c562de4351a52d015aaebb8dd6b4d68fe607c8ea13ec66941c8f01d2c18c4249adfacb521355d4bf158667f3a3 SHA512 e073a4d893f88aa0301ef0ead78048137515edd93c490e6dccbc301ff65a208534c65c1d216b04639d4b1ec1e4b69bc87bd34974e5d0659134c28dcce589c194
+DIST pyo3-0.29.0.crate 1241253 BLAKE2B 29deb7fa70010bf3d7e9e93bbcd87c0b56c4ee7ef0c2e5956181d2fb5f06f4c9b3f28bd1ad280126c26c048808b91b847e1fb69ddd617ef9e9e5e004cf4e48ae SHA512 e6822400de53ebcef4a14c899dc065abae621a126483873139f5eb850877c94f4bccee3a183d4e2a69eadcd3c3b82b0a6f3e1053d926b103be572329607f2f67
DIST pyo3-build-config-0.26.0.crate 34309 BLAKE2B 5ea8b51da2f425674cd3bfcc1090ffdd08da01d2161dc66b08995c20cc859422f9f84077c545e5a0580182910aeb9dbba97838915148a82b86948d1cca3c8722 SHA512 a982d0a0baa4af58c2cef7c0c4b2671e3f559ca7f30586eda9fbd05e842efa2bfea0089ddbc729225b848871f6a25f85e86576e1dff519192ba289cd92c6aa8b
+DIST pyo3-build-config-0.29.0.crate 39616 BLAKE2B 7b62a5976b890db84e5256f3136185c2a9c3b7110782b5b0cdc314a5231fde30a853ddcd17af63b53488b3e8d5e310b01002b6f3c32cfeb1e5c3e168cd6460d7 SHA512 df77e8d7d5fe173749437ff6b90fa1703083377d515ab8a85dc77d9cac9c3fc331ede4b040f7e3694311ddb5adff577cf90c181a27c196ab93a4569e918fdea8
DIST pyo3-ffi-0.26.0.crate 78247 BLAKE2B 65f1c399bc763bf8afc36ccac27d28242ebcccebd08ab8d9b3165ca5c9abb10f76e76fe5a250aa1e0cdc1d1e8a613160660f07bc0dbc2812675acb9dfc8e89c2 SHA512 91c2ae828e997dee5e48d839794727e94576228e9329c358a3bc77a59f8f37fa0ae6c2579229782b3f46ab90725844ce9194b9de4d3849d824adf1d40743bf7e
+DIST pyo3-ffi-0.29.0.crate 88184 BLAKE2B 5891af92a3bcba764c4701dcc0a99edbced010a5ac46df3217d004f5c3a368f18331733c6723bd49e522c6f7105455df13e2be0f07695ed5ce6ae71c15dec438 SHA512 baaf01d13ddc09316ba16b22e9ca15a67e5bda5b861ed7961c3393fd4692fc1c96952f81465d1dcb6531b9083f96c5630981b3d7802cb1ac2af67aafaffbec76
DIST pyo3-macros-0.26.0.crate 8906 BLAKE2B 60eef72d27b5bc922b75f71ae24bb6f380288cb3a619bf2940b0de47b27e86cce0ffdb1fbdc9c0540d3f15c9df4884497aa1e6efec0f1579ac722b414818a428 SHA512 07bcddba0926c3dff7629da3260f9a38593fbb337b6a68d55c223f5944d912885e5319cd635ae1785026fed4adea1fcc19695ae83aca5bea127c5a8868fd2c43
+DIST pyo3-macros-0.29.0.crate 8915 BLAKE2B c12d23753d5aba7333183d4b41f16c8da1d4297a3ff86b3b150e9185c1978fc184ac198e566a41833292a8a78ab59446eafd5ef7169e5cb41493e7cbeaa68280 SHA512 fb6633ac76229d2e0ad88d51136a9318f03823b27c700a62cfbc957b4c834985e2f4c0cdaf5ea5e9993ec9e8ce3d63cd6b3fb823f2a042e65186adbed78da7c2
DIST pyo3-macros-backend-0.26.0.crate 81809 BLAKE2B 73885035855daf00b001e97e0a5ebe09412d212c8f01aa4db6638ef09990bf1bccbacf2e5a7e6ec21929bb1c2beba06587ecdb6ee954eda9e9c51c6c276cea95 SHA512 4146011a8ef18ecaa44b425eebe6e5e1370945063b98aaa83452e57b66aefbf5d483367b1d4d44aa5091303c4ba7f568c6428ecec0cfa6c90ba41631d4e99367
+DIST pyo3-macros-backend-0.29.0.crate 91943 BLAKE2B 7c2977dd9c80f3dd1f5375b0c65492b46048ca02e6355ad746bc8430cf92eaf25c701f416469eb69724fde5220651b1095c09eb9e3ff860176f862d7c7287407 SHA512 13a7af3958c09969637827d97ab9bbc664c407dda9e4283afaf495757798cf6f84932468bc092160fa75211ce0aafe6efc657f3a390234d77a67362cfb31fe0f
DIST quote-1.0.40.crate 31063 BLAKE2B 09036ff3e5ebbd775c466bb936de91d4c070481eb4b98c62a4cddcda57cd7b67d63f979b321f6ec64aabee3f5da6c28e7a3efb83f4647768ba578f1bd0bd0bdb SHA512 45a76e22a2b0bec47e4ba73c3b73cc41d821dfcce9876134c5d8eed514da214aee4ce7612e372c8709f888c0d8b9b7e5442f27adb7a59f3571f0339ed7e2ac99
DIST rayon-1.11.0.crate 182470 BLAKE2B 40a21dac636e7a652d62d9db520bc50a7a0019f0f96aec6a9002dffdef3d7ee0b2a323e4c3022e5cbaa22efe52bc72573bcfc7d399dffc853bec08190ea4eab6 SHA512 24238ba604099b3e58282b7338ccc63e52621e329ac908d7f3799c632f4ff97ae305a5b361479d4d7d0f09b76f49ab3b75c4187c41542caaca0575d51c299d2c
DIST rayon-core-1.13.0.crate 73151 BLAKE2B 31112b2f4ff2a0607daced97e234c6cad1356c79d21c7493f3b19b2747083eca85709d5548c9214bb5186a7e2e5fe0def27c45d69d597cac976bb0956da2aa70 SHA512 dce0adda8f5858d351f628f50168d9097ecca437b77fc0c63ad18fb8b3fcc87f2f513cbcbf57606862e30e81f293a05d245073be75292d1a536d6a4d3e2edb9b
@@ -71,6 +78,7 @@ DIST serde_json-1.0.125.crate 148919 BLAKE2B 551b29a79dd35e20e7432b434a163b62ffc
DIST serde_spanned-0.6.7.crate 9164 BLAKE2B 559a62c0ac00a1559947224bd268842f35c52f65d0d52102c98b5e683dfe4c36acb015edf97c5f79ff818dc575b3ae43c3f100d18eb7afc3ab9c96e348ba6794 SHA512 d0ef413867a705080fa68f84a059b4d04b604bec59323329ded7ae03e0caec49c89fc53640c1e58c27bb23b5c9f260ed176ac52f3a93d25d8d7643252dba037f
DIST syn-2.0.101.crate 299250 BLAKE2B 7018cdede66dca82e7d7a7e07e52a178687957fcfd69f1a2862094497d2fb9d78ada14b94761679bbc5f6c76c808a63e948ed071e4f65c2f9580a40bf58c9426 SHA512 05e4233a51f4d229dd4c9bd23c5224c42ec5554d02fd316dad10dfdb876aa1d379c7ea30b1ace979537da91ee746ca4fdcef7690885f83fd41ec8c9dc5984101
DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
+DIST target-lexicon-0.13.5.crate 26928 BLAKE2B f8c62cb91f68a635e6ce3fc254df9ce378b5e8f62c1147404c967484b9ed97fb33d7993b4671611db76566063e999d658d201f856f70196ec678d72cc758cf6d SHA512 956df27c01e1186c5356117ffd07810fc0b62fb919d5bfd215955ba85be00ef675212a3c0dc36679986be7b825442fec5c93c7643b7e1e19c04572e6463546fc
DIST target-triple-0.1.4.crate 7143 BLAKE2B 2e950355a9a51b6f3512497c18f5ca1e1359bc65711cfe35fac622ade0409e1a1dc0df0fb68f3722083d3d8d4f999e504ce56140357fa42fd887f5cc793f03a7 SHA512 ae57684930546887776670c2216517532410f325542d7ddeca1e561f1f212635689d00c5d4e2c3cbb884222bae1ceb8b9f32461704896adf5537d19e2a096501
DIST termcolor-1.1.3.crate 17242 BLAKE2B 5aef69c0004081bd3cc4d531d13d63627cc02313868c0faab62358d13abfa7b4ba82f142c2801d25a6ae46ecbc8b7bdbeaa21c9105ea3b8950ab6a38cdb88513 SHA512 5838fcbfd70f300cb4b62aab50565db52074c56b152ccc8ac1173e4676c0d5a636271bf5a645a77da6e1d4edbf0091af2cd4dd6d73b85c3d198c760898c06f3a
DIST thiserror-2.0.12.crate 28693 BLAKE2B 1145357098af4342f8d5f5cbe329acee408cf35b86ea97a0cbdca1cecd18a67f4798518266bce21f154a8b3baa0291b7bfd8edfbe29879364cc86e76e7c714d7 SHA512 aeb6de221b28443adba6a03337e7c70c54f99fe9500e39f904c3a8e612d895bc65025fb72c861890c7c011595d2b36832f4b642781847513edce1416b30f309c
diff --git a/dev-python/libcst/libcst-1.9.0.ebuild b/dev-python/libcst/libcst-1.9.0.ebuild
new file mode 100644
index 000000000000..909b50943219
--- /dev/null
+++ b/dev-python/libcst/libcst-1.9.0.ebuild
@@ -0,0 +1,187 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/Instagram/LibCST
+# TODO: add freethreading when the deps are done
+PYTHON_COMPAT=( python3_{13..14} )
+
+RUST_MIN_VER="1.93.0"
+CRATES="
+ aho-corasick@1.0.4
+ anes@0.1.6
+ annotate-snippets@0.11.5
+ anstyle@1.0.10
+ autocfg@1.1.0
+ bumpalo@3.12.0
+ cast@0.3.0
+ cfg-if@1.0.0
+ ciborium-io@0.2.0
+ ciborium-ll@0.2.0
+ ciborium@0.2.0
+ clap@4.5.38
+ clap_builder@4.5.38
+ clap_lex@0.7.4
+ criterion-plot@0.5.0
+ criterion@0.6.0
+ crossbeam-deque@0.8.1
+ crossbeam-epoch@0.9.9
+ crossbeam-utils@0.8.10
+ difference@2.0.0
+ either@1.6.1
+ equivalent@1.0.1
+ glob@0.3.0
+ half@1.8.2
+ hashbrown@0.14.5
+ heck@0.5.0
+ indexmap@2.4.0
+ itertools@0.10.5
+ itertools@0.13.0
+ itertools@0.14.0
+ itoa@1.0.2
+ js-sys@0.3.77
+ libc@0.2.149
+ log@0.4.17
+ memchr@2.7.4
+ memoffset@0.6.5
+ num-traits@0.2.15
+ once_cell@1.21.3
+ oorandom@11.1.3
+ paste@1.0.15
+ peg-macros@0.8.5
+ peg-runtime@0.8.5
+ peg@0.8.5
+ plotters-backend@0.3.7
+ plotters-svg@0.3.7
+ plotters@0.3.7
+ portable-atomic@1.4.3
+ proc-macro2@1.0.95
+ 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
+ quote@1.0.40
+ rayon-core@1.13.0
+ rayon@1.11.0
+ regex-automata@0.4.9
+ regex-syntax@0.8.5
+ regex@1.11.2
+ rustversion@1.0.21
+ ryu@1.0.10
+ same-file@1.0.6
+ scopeguard@1.1.0
+ serde@1.0.208
+ serde_derive@1.0.208
+ serde_json@1.0.125
+ serde_spanned@0.6.7
+ syn@2.0.101
+ target-lexicon@0.13.5
+ target-triple@0.1.4
+ termcolor@1.1.3
+ thiserror-impl@2.0.12
+ thiserror@2.0.12
+ tinytemplate@1.2.1
+ toml@0.8.19
+ toml_datetime@0.6.8
+ toml_edit@0.22.20
+ trybuild@1.0.105
+ unicode-ident@1.0.18
+ unicode-width@0.2.0
+ walkdir@2.3.2
+ wasm-bindgen-backend@0.2.100
+ wasm-bindgen-macro-support@0.2.100
+ wasm-bindgen-macro@0.2.100
+ wasm-bindgen-shared@0.2.100
+ wasm-bindgen@0.2.100
+ web-sys@0.3.77
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-util@0.1.5
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+ winnow@0.6.18
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="A concrete syntax tree with AST-like properties for Python"
+HOMEPAGE="
+ https://github.com/Instagram/LibCST/
+ https://pypi.org/project/libcst/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT Apache-2.0 PSF-2"
+# Dependent crate licenses
+LICENSE+=" Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv"
+
+RDEPEND="
+ >=dev-python/pyyaml-6.0.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/black[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/libcst/native.*"
+
+export PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
+
+src_unpack() {
+ pypi_src_unpack
+ cargo_src_unpack
+}
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # do not require the freethreading fork for regular 3.13
+ sed -i -e '/pyyaml-ft/d' pyproject.toml || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ libcst/codemod/tests/test_codemod_cli.py::TestCodemodCLI::test_codemod_formatter_error_input
+ )
+ local EPYTEST_IGNORE=(
+ # fuzzing, require hypothesmith
+ libcst/tests/test_fuzz.py
+ # require pyre-check
+ libcst/metadata/tests/test_type_inference_provider.py
+ # requires `python -m libcst.codegen.generate` which has extra
+ # deps and needs patching to work in our venv
+ # TODO: figure out if we don't need that for revdeps anyway
+ libcst/codegen/tests/test_codegen_clean.py
+ )
+
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ # fixtures
+ ln -s "${S}/native" . || die
+
+ nonfatal epytest
+ local ret=${?}
+
+ rm native || die
+
+ [[ ${ret} -ne 0 ]] && die "Tests failed on ${EPYTHON}"
+}
+
+python_test_all() {
+ cd native || die
+ cargo_src_test
+}
diff --git a/dev-python/lsp-tree-sitter/Manifest b/dev-python/lsp-tree-sitter/Manifest
index c29e5f8f4269..f77f8c04e8c9 100644
--- a/dev-python/lsp-tree-sitter/Manifest
+++ b/dev-python/lsp-tree-sitter/Manifest
@@ -1 +1,2 @@
DIST lsp_tree_sitter-0.1.1.tar.gz 66914 BLAKE2B 6e04a3bd5fd0b2fd642056e9a8c5f6d34e80714ed0a8394744469cdd1360e8ec14d16fc59cb5df9b495a71619790ee6c0a02a527b2cc32fb3019a4e095ededb5 SHA512 51588344e8c37a8abc89aec94a9ec0ecacc3853cdcf2470b33c154e725bc50348943960f2f954ff83fc23ca78defb66f03df55f2be2dad1695b3ff35be17b248
+DIST lsp_tree_sitter-0.2.14.tar.gz 11901 BLAKE2B dbaac75e1f233f51fa48c585c39c8ac83e481e4f516dbf93a75d0afdef5b60c75d69ddf22d610e7e85a1fdca7b3c7fb1e03d29913e39c87f01a150d08985e3fb SHA512 89a52af5fde6c218cf3244493a0970a9a318535e692723489a3aed445373415689bcdb128fd3b07f4630e2ac50e82460fd01a2fc981f959e62c5c085590f237d
diff --git a/dev-python/lsp-tree-sitter/lsp-tree-sitter-0.1.1.ebuild b/dev-python/lsp-tree-sitter/lsp-tree-sitter-0.2.14.ebuild
index 60f2affc923b..4102726a27f6 100644
--- a/dev-python/lsp-tree-sitter/lsp-tree-sitter-0.1.1.ebuild
+++ b/dev-python/lsp-tree-sitter/lsp-tree-sitter-0.2.14.ebuild
@@ -1,9 +1,9 @@
-# Copyright 2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_USE_PEP517=uv-build
PYTHON_COMPAT=( python3_{13..14} )
inherit distutils-r1 pypi
@@ -28,4 +28,5 @@ RDEPEND="
"
BDEPEND="test? ( ${RDEPEND} )"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/posthog/Manifest b/dev-python/posthog/Manifest
index f6188ef451a9..744a42364e2b 100644
--- a/dev-python/posthog/Manifest
+++ b/dev-python/posthog/Manifest
@@ -1,2 +1,2 @@
-DIST posthog-7.22.1.gh.tar.gz 4130713 BLAKE2B 327d68ae63093ff86cd0ce07fa9e79ed590ac1544ea7676e90cd342f7a780f333349149ef2c9d197f6e286a053ef43c3c8f8bbb7d99c180ec6d6e2ca950eb9db SHA512 2d240219b2fd3025eb8555aa752d3692a7a258be743ea141f10249351a1448c0b44905749755d4e8fa2a6e14f9d0d5adb0fc6d369117614c1f9619c62b2bc709
DIST posthog-7.26.0.gh.tar.gz 4256844 BLAKE2B 71d571f263da57411dae9d6b46ad4604e0be2130cd40df80cb3d2c1cc3825c82fe972ae5384d98d516f9a06c48e1933ec653d65d37350f0e3043613e9ef89845 SHA512 47879a9196bf1d2ff473b59d48f37b287ffa738bb96c85f03916a34376ef9a20a53d037c41f6d01db3b5d7597aee2e3fe359a7015e9b52b6290e4a2354d897c3
+DIST posthog-7.29.0.gh.tar.gz 4326596 BLAKE2B 79b9ca48093f8e5a1771898c685db492db1c882db5f3f869d8ccc49bc1380874d31a99390d33534706b6cef0bbde2dfa9a7c42735eb198c081bbd888b9389630 SHA512 764ac5fb40ca61a465da6df1c0504fc7c10f766963f1ad7fea87bddbd9282ae97d08c09c882b90c323cce05cbd82e3332a52faed72f86e55ca17cd691040b934
diff --git a/dev-python/posthog/posthog-7.22.1.ebuild b/dev-python/posthog/posthog-7.29.0.ebuild
index 8bb2058a9a6e..8bb2058a9a6e 100644
--- a/dev-python/posthog/posthog-7.22.1.ebuild
+++ b/dev-python/posthog/posthog-7.29.0.ebuild
diff --git a/dev-python/pydocket/Manifest b/dev-python/pydocket/Manifest
index de1b229402f4..55ab7c17e3e1 100644
--- a/dev-python/pydocket/Manifest
+++ b/dev-python/pydocket/Manifest
@@ -1,2 +1,2 @@
-DIST pydocket-0.23.0.tar.gz 424266 BLAKE2B 0fee0a9428216eeb0266b22bcaa3d23d185070634d4e6970bdd8df2db3ce00982faa4f111a128e7cd3a465706352ab8da45334a9e8a9c4b247c9731c639ff5b6 SHA512 15a7a4627fe19bd19fd1a84f5ce220e8761cd4226cd4aa1d71846c845821c068f04fda4a5cd627d00471740c78a9720bd806c9f99d90f2bd65f13f17f27d4e19
-DIST pydocket-0.23.0.tar.gz.provenance 9776 BLAKE2B aa0b313e6300a090880d9b337c3b190dbc6fc5d873127394bc8dd3e9754dd119c145b2de6ba0e3f90d940a07480d21fe9d50f8d95fd36056d6ab286404480118 SHA512 12f7e6644d9d59034134809b862a1a2608c2b1652971ae7613545c7bbf2a48147fa248bfe5b3ac2923c26747c575eb794069e71f3edb496c95e69e94867c55ce
+DIST pydocket-0.23.1.tar.gz 425621 BLAKE2B add4e25a96788102098f38ebba560307c3c6e34c2d6c9e7b4e4d383812da7bb5d5e98e1707b3623b09c3141fdeb4b2fd6d508e51cfa9a4214e13c367b0475838 SHA512 730ff86e76cca054c005f4694bd6fc61343dbca85812827dbca0626c1fbfbb6258d7e08b1d60bd14ee1d4e20a5be02e60561f45fd37a6f2a14ea2a85c8c23924
+DIST pydocket-0.23.1.tar.gz.provenance 9580 BLAKE2B 9c7636cc1e63fb7ff0c935553bae011ce6b93f4ae1c54678b39ac5c6c9262984829136dd6135678745b9ee8db96db2c3a50809bf5ebca16fb7f48c8a418c145c SHA512 9028a4d496e36bb7c6c2cb8611ddd3c07fa95f1b7cd6a69cba13b5bae5915296e87de127e8eed34b750a8304c51ad9cc497804459bd7a063bfb878fabe96a822
diff --git a/dev-python/pydocket/pydocket-0.23.0.ebuild b/dev-python/pydocket/pydocket-0.23.1.ebuild
index bdcf20f6d939..bdcf20f6d939 100644
--- a/dev-python/pydocket/pydocket-0.23.0.ebuild
+++ b/dev-python/pydocket/pydocket-0.23.1.ebuild
diff --git a/dev-python/pyroaring/Manifest b/dev-python/pyroaring/Manifest
new file mode 100644
index 000000000000..4761ad3562c7
--- /dev/null
+++ b/dev-python/pyroaring/Manifest
@@ -0,0 +1 @@
+DIST pyroaring-1.1.0.tar.gz 217093 BLAKE2B 1e26acb0b464e17e7ee4e77558045233d63429b2fb2f0f1878f2e6e9eb9b1697589e7318c034347c2d07e9fe58c0e87c27885e440ab3bd89377edea04cda6466 SHA512 b125a48e124b57c1be7cec55cdf84afde8333712b3b96d64f4a0e6b86d909b275a1a9be7f5ca269d062b5774e43c301e2542fd2444ecb2496eea94b5801158f9
diff --git a/dev-python/pyroaring/files/pyroaring-1.1.0-Link-against-system-CRoaring-rather-than-vendor-copy.patch b/dev-python/pyroaring/files/pyroaring-1.1.0-Link-against-system-CRoaring-rather-than-vendor-copy.patch
new file mode 100644
index 000000000000..0b925d653815
--- /dev/null
+++ b/dev-python/pyroaring/files/pyroaring-1.1.0-Link-against-system-CRoaring-rather-than-vendor-copy.patch
@@ -0,0 +1,71 @@
+https://salsa.debian.org/tti0/python3-pyroaring/-/blob/debian/latest/debian/patches/0001-Link-against-system-CRoaring-rather-than-vendor-copy.patch
+
+From 1092a1ea9bc5ae6d185a00a9949dbf1cb8b84499 Mon Sep 17 00:00:00 2001
+From: Theodore Tucker <theodore@tti0.net>
+Date: Tue, 17 Mar 2026 16:55:38 +0000
+Subject: [PATCH] Link against system CRoaring rather than vendor copy
+Forwarded: not-needed
+
+--- a/setup.py
++++ b/setup.py
+@@ -33,54 +33,19 @@ except (IOError, ImportError, RuntimeError):
+ print('Could not generate long description.')
+ long_description = ''
+
+-
+-if PLATFORM_WINDOWS:
+- # MSVC defaults to C++14, so no explicit C++ standard flag is needed.
+- # roaring.c requires C11 for features like alignof and _Static_assert.
+- ext_compile_args = []
+- c_compile_args = ['/std:c11']
+-else:
+- c_compile_args = ['-D__STDC_LIMIT_MACROS', '-D__STDC_CONSTANT_MACROS', '-D _GLIBCXX_ASSERTIONS']
+- if PLATFORM_MACOSX:
+- c_compile_args.append('-mmacosx-version-min=10.14')
+- if 'DEBUG' in os.environ:
+- c_compile_args.extend(['-O0', '-g'])
+- else:
+- c_compile_args.append('-O3')
+- if 'ARCHI' in os.environ:
+- if os.environ['ARCHI'] != "generic":
+- c_compile_args.append('-march=%s' % os.environ['ARCHI'])
+- # The '-march=native' flag is not universally allowed. In particular, it
+- # will systematically fail on aarch64 systems (like the new Apple M1 systems). It
+- # also creates troubles under macOS with pip installs and requires ugly workarounds.
+- # The best way to handle people who want to use -march=native is to ask them
+- # to pass ARCHI=native to their build process.
+- # else:
+- # c_compile_args.append('-march=native')
+- ext_compile_args = c_compile_args + ['-std=c++11']
+- c_compile_args = c_compile_args + ['-std=c11']
++compile_args = ['-D__STDC_LIMIT_MACROS', '-D__STDC_CONSTANT_MACROS', '-D _GLIBCXX_ASSERTIONS']
+
+ pyroaring_module = Extension(
+ 'pyroaring',
+ sources=[os.path.join(PKG_DIR, 'pyroaring.pyx')],
+- extra_compile_args=ext_compile_args,
++ extra_compile_args=compile_args + ["-std=c++11"],
+ language='c++',
++ libraries=['roaring'],
+ )
+
+-# roaring.c is compiled as a separate static library because it must be compiled
+-# as C (not C++), with a C11 standard flag.
+-libraries = [(
+- 'croaring',
+- {
+- 'sources': [os.path.join(PKG_DIR, 'roaring.c')],
+- 'cflags': c_compile_args,
+- },
+-)]
+-
+ setup(
+ name='pyroaring',
+ ext_modules=[pyroaring_module],
+- libraries=libraries,
+ package_data={'pyroaring': ['py.typed', '__init__.pyi']},
+ packages=['pyroaring'],
+ version=VERSION,
+--
+2.47.3
+
diff --git a/dev-python/pyroaring/metadata.xml b/dev-python/pyroaring/metadata.xml
new file mode 100644
index 000000000000..55972d60ad61
--- /dev/null
+++ b/dev-python/pyroaring/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zyx@envs.net</email>
+ <name>zyxhere💭</name>
+ </maintainer>
+ <longdescription>
+ An efficient and light-weight ordered set of integers. This is a Python
+ wrapper for the C library CRoaring.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/dev-python/pyroaring/pyroaring-1.1.0.ebuild b/dev-python/pyroaring/pyroaring-1.1.0.ebuild
new file mode 100644
index 000000000000..f9ccc5f65c53
--- /dev/null
+++ b/dev-python/pyroaring/pyroaring-1.1.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 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} )
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="Python wrapper for the C library CRoaring"
+HOMEPAGE="https://github.com/Ezibenroc/PyRoaringBitMap"
+# tests not included in pypi tarballs
+SRC_URI="
+ https://github.com/Ezibenroc/PyRoaringBitMap/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+
+S="${WORKDIR}/PyRoaringBitMap-${PV}"
+
+LICENSE="MIT"
+SLOT=0
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-libs/croaring
+"
+
+RDEPEND="${DEPEND}
+"
+
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ test? ( dev-python/hypothesis[${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-Link-against-system-CRoaring-rather-than-vendor-copy.patch
+)
+
+EPYTEST_PLUGINS=(
+)
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # make sure we are not bundling croaring
+ rm ${PN}/roaring.{c,h} || die
+
+ distutils-r1_src_prepare
+}
+
+src_configure() {
+ # fatal error: roaring.h: No such file or directory
+ append-cppflags $(pkg-config --cflags roaring)
+
+ distutils-r1_src_configure
+}
+
+python_test() {
+ epytest test.py
+}
diff --git a/dev-python/rfc3161-client/Manifest b/dev-python/rfc3161-client/Manifest
index 32f984743613..db7cf30ed955 100644
--- a/dev-python/rfc3161-client/Manifest
+++ b/dev-python/rfc3161-client/Manifest
@@ -1,58 +1,118 @@
+DIST anyhow-1.0.102.crate 48658 BLAKE2B d9c7b7c50b7319be0e67bb236e0420a67e3fd6d6f4bd53a84cafc7a5385785275151832be472c0063405e6d458b5add3907b670ba5e300e08efaae699ab77c44 SHA512 18064a92b6d577151b6f1be3df0985fdefdc5f7089ac0aa9bc92a2034c780eac5b71b8fbb260217aea122bee7c950ff00abf4b6d8f4143dff889b7164c7d6f0b
DIST asn1-0.21.3.crate 40295 BLAKE2B 83135948a525b0ed432bd8e76e87f7400c56887c4a7cc505210014b8f4c9e47f9d139f723bf61165dfc772b9d86c0fe6a471336e480613ec556114afcf9fee83 SHA512 5f7b484e6081569cb1bd86b690ffcb49b51c5dff20dc08fedd9f803d634265fb4c157e2912b4763152cf8baf5556807aee109787618c3ecdb4a7307863502417
+DIST asn1-0.24.1.crate 50502 BLAKE2B ebb6ec767929765aa37a34f25c9ace8cebabc4b01268245c71691a247317d920e3f5dc6ff4026711e1ba99701f55d84eb1b8b66d79e9b88ad50d25606070a746 SHA512 72ab6700bc365456f6038f9d6d5ccb29a3baf378596f538b68e0e11d3668e57cebaabf72145d8fa86b6441d66eafe38aaadab41eb7b61731fd356a75ff5c45ee
DIST asn1_derive-0.21.3.crate 8570 BLAKE2B 3b94274d1c1ecbf5dd1c70cbacfbf6885a68734483eb990b090f230b6d8da3b7f2400355ce944c456b8712a1ae01b1b5a42cc277609ba752acb664337751dcec SHA512 b7feb53a380fec0a2db010a0af2ba1228aa45de99246ac7d388f5164735beff12ca882356eaa2c0eb710a099ac51ec8e739080715790af8f3d1ced6b3ff6c69e
+DIST asn1_derive-0.24.1.crate 9534 BLAKE2B e498f5af8fef329668554673a2c583b1d0049a235ed70f2a7a26ab724304240b277c44b33995749437600568e084aaf018430b96c7011d8483bb6965ba0e9bfa SHA512 00990444fb13a033ea831f0688611ecbe33f8cdb63717382cdbccaa0834f953302383f05ae425525d8c336908780d7b80be0db430e1f233bded0544f32c9c199
DIST autocfg-1.4.0.crate 17712 BLAKE2B 7f7300439899be03d001dd32b7e797bc4b9a58103081b6f7353c4b5897813cedf870b3fb1fa25d320a75326b334b44d8287e8603de34fc560d0b567143915cc6 SHA512 3b5e7c30bc73e105e4bfcab584c24fc4016db41fac9c356c6649fd841051704bbe8848e09546eb50d7c1f18ea8ce1cb72fbc268a620d5c609b3472114b5be73c
+DIST bitflags-2.11.1.crate 49082 BLAKE2B c9c875b54e0a12115ecd846ef0a66bc7070d38892285a4142f1b1f26b07d407fa440a2943f310046f5fbc9a2428fcc56f2e44d06360e551d4b27c9b8cf93eab0 SHA512 c91b5a8b420d8e875a0906ef9b518a392487fba5399355aa5e908132149ddea7cc4222dd271cd5072e50dd9abd6e56420f4205652ba32a57af46bf07636604b7
DIST bitflags-2.6.0.crate 45357 BLAKE2B 3a368bd2eb58c095b7b4a46680cc2d90a28e24b2e37c854bbf8647c861c4b8fb37eca827599673c5c7df763048149dd82123d1ede1f8a0e58a6bc23c8250f7e6 SHA512 f9bb3c48931ed7e7e05ec6d13305af5da6b6c18861ff307d7dc17c658f63972c87b70b0527287b3625c8592befc207cfe15550654995faf3862bb12a6d95bacf
DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58d3ed85c3339bd677a3e111f85cb1ff624a54d7802ab79a6e1d9221115f66388568340480fe83eae1cb448f19f5b11 SHA512 b7d436d8e627e16e6ddc300ee8f706a6cef28ff6f09eff848eedee46f84bdcd03601303c92ab8996042e55922866a59259948177c0a4496eed723523e77f6fdb
+DIST block-buffer-0.12.0.crate 14926 BLAKE2B 8c62650f39117c337c167027d356339ca8e20277e78b0e045e32cc3692b8b5b1d8023bfde5887edb22be6dd5d787fa423380b53d18fb8359c43501d28a88f3d5 SHA512 3ebe9faa231d777f76dbb7b78c72eebd913b109cf929b0a66399758d06829a7c1cc9ab06f8ac951739d91be0cb402a49bff918228359399367ce8e69a112da78
DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
DIST cc-1.2.2.crate 98719 BLAKE2B 7a7722721f98869bfe773ce90c6d756bb5ab76df05b516067528d7285c47cbc80d965aca97c7d7a118515035326c843b1721429e12afd6b15f187f0c59fe18c0 SHA512 5364d3822a566573d45e40a6076d3f9aef20c67f1a5687895f5a76be210a48cc44857ac778e2cce58d3a5dfb07255a3e6e541dd97be8492ae6f66fa18222492c
+DIST cc-1.2.60.crate 97051 BLAKE2B 292350c3fe7dc3e023fe4f7cd07b3a5a7233996963b42391243948f834a17cf69781bab32cf46d62722c45437f50123450811dce8aa0e96ee63f35480cc15d90 SHA512 d67fd7400bd1d20f26f7a6743ac02ad09dba0b8002172b87907f4a7ae2487ee41feb2f24fe375ca91a3ac4fde1dc8b48b6703b74297c9eb42bd1e91ac8fe4e80
DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cfg-if-1.0.4.crate 9360 BLAKE2B beadbfb273ee97cbb6e3740891fbace57511399ad203459b66b397587d794677a9515cde4e9ec4320c3795518bf1551d72b9a889f8ac4b225168f493288b7c19 SHA512 176e04df7ba783b7143bb84397b777f5c5a1305c08a5c3a218d4a66830620be89ed68992ba27686165bcd3fb2f34b2daf80b2a1d4b481ecc267c988e84d28e9d
+DIST chacha20-0.10.0.crate 38763 BLAKE2B 84d3d12379495b724b33accdbafe0209d0ddfeec74115b59228fb03e02089f1531f1396783a408b26cfb90372670c809bee8ab056cc847102cfc92ea065656aa SHA512 97e50d8e16118070ec75c086bae3695513b63c2ad3c5d43e3fb57892f21c9634977bc506c0c094aeb61bc8864518cee3eabf6b81504128ab0a876b2f6860b43a
+DIST const-oid-0.10.2.crate 61449 BLAKE2B 47249f191178e370ea39e4fc31f9ec9cd81b7ad7e89bc14a02eb81932128ec15d51a36baa28b792b05b95329410ff5aef9de3285c4718f1bb2cf3c9d54c73742 SHA512 9ad6ecce2c1d4c177b53d602b9b610442701e72daffa370af71553a380cdfdbea800fb8d7413aa2df273121dd6d0a511fac4b64a10bcd2e046ec19b4eadad007
DIST cpufeatures-0.2.16.crate 13405 BLAKE2B 06d061cb2577057bd2afbc8cd6783488595701dbc46772533645d86aed71ba8b20905625b897840c90aaebb41360a286935824ca49bdebc0763a81df4bd64402 SHA512 97707ae1b533ecd3a6fe412a22fb70cf4ac278c2d7dba407fa7dbebd110d06f88a7b3aee3fb7cf4b0b5ca88f6fecf390c4d3e5ccbd4d18a75fc2f93a647e7074
+DIST cpufeatures-0.3.0.crate 14156 BLAKE2B 9408d9b8f314a21702bde22f272d47263ef06e8f6fac116edb2464109ae2ff0d10b9d4f54d465bb6c55bea5722326bb8ee541352e6f5e03116a449930fa8375a SHA512 a842c5e7fe435c4339ba0e12169bcf1a2c2ebf4b0d02cf200f91d88a736607a930ba840a7db6a71afc6b125649a9f14ce0977599db917ee78880ec1ed9600f88
DIST crypto-common-0.1.6.crate 8760 BLAKE2B f2422bfb89c15d47a8f91c8f6695e05eb56990a922e3cdf3d426044736f9932324c0d899a151a6df4d6683e6a6b21659c657d3988734014c02cd854bb4b924e7 SHA512 471dbc43f517089d2cfe0868e29510c6ca579875b3bb5d013c70796db969b609b6c4bb35c9a07b9a2917012dc5708b717d48e317a20038adbe7e7039bf3ada6f
+DIST crypto-common-0.2.1.crate 15165 BLAKE2B 3a5fa1cef6576582bb1630a57b95b8baae9f1c4a8a4427191319f40aba4646613a9a735660071c8d2cf32c39b3e9df090b2df8ff973303ae809f7661f0605db5 SHA512 d13dc1662ddad2ab5cbd350a9bfe22a1143ec4748d1be2b707bdf32461a3988e9bef20f5a74eab2dc1365c532f653f425450eef9c80498ce16ed4f071cf38ac6
DIST cryptography-678c0c59f743e3b301fbd34f1d26112db0cc2216.gh.tar.gz 36158811 BLAKE2B a6297849c1ac24ce7dc33b1e7d2a9bd1a0e3a7b58f3af0e857f2ed32142c438f8aa93c6378deaf4b7093ba2e8144d6cbcb455e72f2bc65183b834008cb376c45 SHA512 7e9c4f9fba4fcaaa0cf31a0f3478822021f897ff30f2d64cc9585bf25e1e3bc31d077cb7ff582e42ca0c6482f1f74857adbf5d053d2d820ac6ce5cf4a2f1b8f1
+DIST cryptography-e300bbe2f1bec75e5ee7e0ab7b196958831b3db6.gh.tar.gz 58460059 BLAKE2B 10615c02c7496818cc68e8040769db711d6d34db56c2f711807f5ca713017d7a96e81fdce588d8df44aa03422d66739fff0e5509614d2cd21adabf060e73adbc SHA512 0f6b8ec15d465843418d3884c837c422fd8225e5fee8f60d5355bf93e40092306031ba9d45ef05423b2a4072e32360670982bf7d2875d1cf84d761d1ebdbe902
DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
+DIST digest-0.11.2.crate 28579 BLAKE2B 5c44ee46951bde52ed453c616e14ae9c18f27a1ec9a1acd7207af449b4f5c70d392b5f362e4b6dea4dfba3807a078d4ce6c8db51071b74aa7715b476c63946f4 SHA512 3896a79e584f406ba424f263886e4a169bf757a0871f2e2c8203b5feab75482b7e9fae4aeec33f78ac0f7f14101ee012c32c0476fbebf4d2900532a97c61d849
+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 foreign-types-0.3.2.crate 7504 BLAKE2B 520818b702d990d296ecd31a8646850202509ccfa18edd0e1b260289619a6c351e758f317ec0824bd76eccb209b6f087057c25f1bd01a47897715013dd834867 SHA512 bf27b8243ed482c202d120383374f19ff09422535e24b9c1aebccc66529bf300ca17b8bbc76d67f98ac092e614497afe3add9dc68aa69c93074df05762f91232
DIST foreign-types-shared-0.1.1.crate 5672 BLAKE2B d2e42e04b6657e7a69fe0bd20c672176629c743e49a55fd007bb30e289710b70045d445ae9cae0eeaa747ee708c90e8abd9b5fc39bad8ec0666befe1b696d4f1 SHA512 bafdb2143e136fb0818e2ffd90b5c862b7181647d6568947d4e4531012bbf7a57b597221ec7056c1b562dfc0c3b5dead26d1a4111ebc15e7863737a873518a4a
DIST generic-array-0.14.7.crate 15950 BLAKE2B e74c785e3127095625951da192a018281ea9976aaeb11019f9088c3f27748c5fed1ef25d577150864486dc48b5138d6892e42f99979339f711a66fc70756c82b SHA512 363a7b04e4102f9ca63d429721c1ada6272be6bf0a2e97da681faf76381f73f0e3acb86623b9ce2dae441de9fda704088391779b9769ec02b3c8c9f9f35f897d
DIST getrandom-0.3.1.crate 42449 BLAKE2B dd70e0abfd27a7c363ce1b91746ef7568edf1d176d5575201623b6403f3a503b5d8503d10ba01d055f9de61cd8092729d34ac8f0f4f9fc6ad79b9fce926720d1 SHA512 431682efdc2ba82114e173925b99e1059d4915ebec6b0432d4a7683e56ccff7b4b45b9ee9cf5d0ee53067d5ae1ba733524c18577379c8414c385189718fbbcfe
+DIST getrandom-0.4.2.crate 53905 BLAKE2B 23aca6717b8fc8bdbc26bffaa1ae3aa35666f82951ced24e1d7b7530feae7eb5e66a9c81b738bbd2b09ead6efa030d2850e0ffb314dc82972fe72af361b961b6 SHA512 191d847be8c21369067b707c2c20cd56531478aca534ce902271e2693e84f6d74306a690759b17a8b1e9c46c639fe0e7be3b2fe41469eba4d7c27bb1c11a442f
+DIST hashbrown-0.15.5.crate 140908 BLAKE2B 6a360eaa2e174ddd1e9761bc19edc4b57b80f84c36bb5d64003c7206755d4175a05f39c001acaf000ec69ced9e28c3853bd64702e2927aa7c38527a53abf2201 SHA512 654682535882733b56dad632851fed93a17ad0b2d3e13e3390d7802450781501e275b0e0b39fa32a6eae092132858ed79b305238cd5771c08987c5d26af6d692
+DIST hashbrown-0.17.0.crate 154597 BLAKE2B 1fd03ebd3df85e88abbc498ae8166d3d15f3196c52ce17cd29751be5aaca18d62629b96c1a4fd431e8b38c313e4aefbf78dedbf65bc202d9e4e69dbc1b03f780 SHA512 248f5333b23cb83fd8e439a17df85d0f5bea6dadb0e7cf2cd2d3bd0049494c125ea4fdf74ce2623884d2a3884d444689a0a7cfc9b52ad3d8de40f7498c56ef06
DIST heck-0.5.0.crate 11517 BLAKE2B 5365ec43b2239a76b33a174f1a4292ece4147f9d382a68c6c60db78fdc8bad0afb1d51a65bcb25e96675372faa4ea37c318265030b0546ba51942f7c929e1835 SHA512 f044fc9c3d22466629fd8f772ec0555350fd611c0cfadca51d99a3d2f10e155f77c1091916c8a95a6b9b499f366c2e99a5fbf45b010f988bfb9b2501bf9f6a76
DIST hex-0.4.3.crate 13299 BLAKE2B deab49bf3d97f6fd7c0a0855b50232422443b226362bc7a4a19e57c2e662fff2cb046d4c5bd7618ddd523045f3d8c78754508f862f9a8ca29ca9247da6d6ec79 SHA512 fd8ff33b68eea2d6f2c6b02a6d82a2807cbcdc209ca5a76e3e3e5d006917ee151f236b6d18e2646cc9a9674bcdda1d6ce6ee363a89cadd99bef00d0eea9989e6
+DIST hybrid-array-0.4.10.crate 35046 BLAKE2B da3f60a8f1b76607ee648949c8eb98b7ed37bf98f55384db2f0693429b92d28bdba237a353f382aba00665a19a49f04c72c29872515ba2192b3eda4e65abd058 SHA512 12a5884b11b4ec82a03028bbd9d65d19e5e5e4a78ff2e6d46c4cffbc256684831fff850653d6d7c6a6583a6f2c91ba6ed184a1f2ec30341ae4110f33a5341d6d
+DIST id-arena-2.3.0.crate 12883 BLAKE2B 2a7f498c3ea5632af4a369d46f90106e642bccbb8e36ac7fe37be05c2125989ea2cf625db92a782408ecb5f68d3efbf3006413b5b748815ee42b9dcfb28d0ba2 SHA512 99652279014e63680d66bc8022ec3d2373d6e476646ee5551346fc9e62d1fd94b28c945bfc30df14c85d085aefc7fbb9051fe11012f63a9254bc11f03133f116
+DIST indexmap-2.14.0.crate 104085 BLAKE2B 828d8eede906c2908baecac840757ca8795587a552cc9dbcccde89a3b81444d99395670fd71404c33033aa5a1b905ed0621fc39236024c8b8b385e5d29ca6b5e SHA512 fa6bcaaf1b9bacabc72ae9d0569065325a6741b9ba5dff168ada6ece460175be47741d906d9326b48d30f6c55805d33fb64bfb497490482b4e412ac15a8ea55f
DIST indoc-2.0.5.crate 14396 BLAKE2B fe838c6a855d6ff7396675a3fe9b2e0b06a93cfd4013b0b843d24d2fb81f6566528bfd1753c649646f06cb7e59262bd6ec3ed79d4e6f01d740cf0682355f2e5a SHA512 095fb56a3d87946c42a63065a8b276c2d4b9b835800014b400bb987593bf56701bad9f55d947f090740fdb7641a4f3c87fe8bfa5724709e95254d1e8e2e3616f
DIST itoa-1.0.14.crate 11210 BLAKE2B b2d33dc384757963eab3ae7d80bb672d828a549967986e3af8c70fe71a0ad46c4a278da2db4dfccef99e804e6cd4934067e97c0697a33ac3302cafbc46eeb416 SHA512 ea2d38df373652ddacccd11e610dfdad4e3ae7f0d476514e6ac58092733c817bd834e8cd88c3bc4178dd5a646ba628ae626195e0aa407e8534ae3c2a7b049987
+DIST itoa-1.0.18.crate 15935 BLAKE2B 8e41446056ccd94979f6f5a8fe8c48d6c47abaab99a41715cca31816f859b56e0cbacb998f300b62be8b719a6470f8a087f1439b72f2f6662d1cdd3d552ede5b SHA512 8dbad156e2863c28e2b380901a92414ef00e39f1fcdb06d91a0f3fb73108c2f7f36b699ccd93287808c24c29cca7f1783d48d5ca95f2173502963c0abcb2d09c
+DIST leb128fmt-0.1.0.crate 14138 BLAKE2B 6353a2520bb93e0a3cfaade09ffbd8cf981d2cf75579e865941f3fea0dc745c54472b369873b1ef4f26dd7f356860e563bc7ca6e7615d600b272c698a55e54eb SHA512 82fbc7f0786185453fbf11fb3ae58e71fce9780f81eb6a56d7b559e3a0c6825751dd8b64f1266aab73fe65f7483a206e42f31ee1a1b7b1801246c6dc9c2ea817
DIST libc-0.2.167.crate 757723 BLAKE2B 38f1657dea6d13cb6cc87c8cbededa9f0ac280e4f141f780719164451c941ef873cf6348fef7ab249ba7eed1cbf6768c6a8dc9a51796007c8ce31cdd2f90ecaa SHA512 f6690776266836371e5f9e20ec3a93bb17bc4296219755750e4e70e745016245dab9e247fe564e0f21d10d0c7c97ae97bf54da5068464a48ebfac244cf699166
+DIST libc-0.2.185.crate 821775 BLAKE2B e0e93466a29c9d19f7d9ab3581b491908d06873a9c57a96b0cae2eed0f0d1cb184ebe80bc61e36d5ab316ab35dca529a322b29e6895f7f339e72c79cca7f8ca2 SHA512 c8dbcaaf2e5d8377a4d1003af4a7210fbfe4f9b1e8497f07d88a231a8d5c9f67014e650a5e18e913e7b4d6a1835c4cbc9c31ce0cd224ea28acbdbb39034a300e
+DIST log-0.4.29.crate 51515 BLAKE2B 3f5dc889e895428f27ef107a63004c1b321793b865c29b20293adca81db4e25443e24354af37018c9a60dff1d54897c3b7b2c014a64280523f4a3586a7eeed24 SHA512 31bcf1669c27980f0a8500082c4d0cc500f6cc943518a3dacacc3ad4d8a0c238517f23c2c1969e5a22dbb5d25614adbf4e914c0557e45e1ebc8e7385b2ed14b3
+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.20.2.crate 33394 BLAKE2B 79dd394fcf1637adfef28b4159ec653c8b71d2bda0e0e36a940c04e3d87698f039dc30c97f26648ecf0d9742962f1f0a117568f7c705a8a3fc167085b0ca3e80 SHA512 bc6005bdab7a154c01e2203fb553a68695727475a9a882cf906d49c054ce886ad92cb491d380b6b9fe71a81b2fd690ce91c9a6cf8dfa8508470ac9acfc8a31c8
+DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
DIST openssl-0.10.73.crate 283994 BLAKE2B 06675b7c6bb1c73b10826577d7d928f4d001494a4c2add24a593c8dd82731a91974147981a63f56b2f11f769b1b93194b9cbcd14e77a578d6d649ad8119e856c SHA512 be1b5384ba72984fbca1aec534764d7b5180cbafe33433cda9662c492fcf219a3a3fe4148fc3c0702aeef63e2570ae7f27dc6a8dba95c7471d4a4c20f7ab1926
+DIST openssl-0.10.81.crate 311187 BLAKE2B a66963c92f34d6efaa80363681664eafdf21af640727132155b2aa1f8c167a9af081091addb675e901ffa352145d1a155b2917df90c4a7917b01c722a592d559 SHA512 533c23b4f1e9b942ff30eb3d22232298135c370fc31c97940f4ac18c73291acca6be4e03284efecbd01096999a6529d1a33a63db332efb4aee478cbcb3f37eba
DIST openssl-macros-0.1.1.crate 5601 BLAKE2B 69dc1c1f3b7bc4f934cae0dce64c3efa501162e5279efd6af3b74f7a7716c04b6996b306b310f1c045cfa2eff2895314a47ecbb020a817e461c6d77d0bc11e92 SHA512 57e75c84f78fb83f884eeaedb0dd135ecb40192dad2facd908e6a575c9b65b38a2c93bca4630e09ea5a82c77d8bc8364cb2f5778cbfe9d8f484cafe3346b883c
DIST openssl-src-300.4.1+3.4.0.crate 9945831 BLAKE2B 5ea47b7a9d934bc25999bdbf38e35b6d860c02444367277744c2ce4b43e1ee127f6662076ad1c3e80aa538c957c3e0028df6828c0a01df19cb5e9fa03779a770 SHA512 f0d5ba6af60cdbe7fa926412e1da9cef57c83fd41d9e451a9ed3e69d294e233823bc23ba1b897c40dbaa833274b5b8e2ff30ad6e801e51f26a93cb1594695480
+DIST openssl-src-300.6.0+3.6.2.crate 7191232 BLAKE2B 9fa476c2e22e3c0a32da495607b0d51f6120b02558bc3260e3a09f3dcc146b19ed708f99c6cfd6021bb5682003f5c2a86f559b5217f8bd5e497134af96e04f83 SHA512 1d81acf3a6516b24498880861d85df0f6fe7ff36bfe15bda2046ecc10e02822d3b59f16924d109bb35456a0545c371a60f972f0f6cf90db2e24060721bc0ff0f
DIST openssl-sys-0.9.109.crate 78247 BLAKE2B 3bf1da4b999a0c9a0891baafccdc541809169921837166b31381590aedc5356992cd71f21a374877dea4cf8015eaf5d8ac7c7ffccb11511893d5d0b8e57e037c SHA512 2dbb01e3b734554d85f9fedfbf9f3ef55132fdd5a328e2930ce056d05ed55a579c3fb12b907f3989ffe15344e7f1633ccd610524d56fe6c9a687acba2d0e6fc9
+DIST openssl-sys-0.9.117.crate 76045 BLAKE2B 074b44386a0a0833db961f8f8a249abdbacbc43a5428f8957e2284263206f4c2513c3eb7b38c96975f11ae75654656eb5d6d7d438c31bb5336835d9ed067e9b6 SHA512 89eeb0bfaa2c1ac3e0a8d268a46f8bfaa9942b0f840b0403faa15474961066559b3a1d24f672b445e1029301e6a99c7e2d84dec27528183523a409e9fb57b242
DIST pkg-config-0.3.31.crate 20880 BLAKE2B ab7676e810751f89639b60ae70bdebe1d57edc76319f83077c3680049a701a26e72e8cc485fe77cdc4346fe3571d32c59e7384c8c86fef17e00d7d81df5daf43 SHA512 ac3e8062ee8831a4e4fc717b5247dc7f113da7bf6d64ec95cbca7875959a2afa1497bf81d9dfc27206b5fb10027a2509d51dd9ca1c10139d7b4c78128864fdf4
+DIST pkg-config-0.3.33.crate 21590 BLAKE2B 576349a975cd4b9ff08c7f797f300cb2774425c72ed7baced19e0ba6231246f4479939c61bcc9efeb9174a2d6917bf009f02e93c26800c65e798b9e51ccf4d8b SHA512 af931d889e72f51e0ae41c880a1f5aa6215b93148cf7041378664e4ba013d0c83d654e560a73c9d7b301b5a008c221e48ac81b413d1123786e003c97f7fff63a
DIST portable-atomic-1.10.0.crate 174760 BLAKE2B 9a05d6162c95f5140709cbd005c1997449fb6373700e8ed3966e3379898e95f3cbdb90b387f1c7deb3f1eb33125378852a7168d0d22b433813f6c082112b0365 SHA512 fb47ab53fe240d5b0824dd068c6dda473d3e71ae6f5dfccaa17262a8b6de0e1dde05d83975e53bbfcf43f10ef5c634fc024f94613937927ae93f1adad1dadb19
+DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3
DIST ppv-lite86-0.2.20.crate 22478 BLAKE2B 9d68dc36d8148047d571c0147ed29f586f3c6ac9394b56bd955c8ae5bb18f5a8da5369809f7b8c3199074e23660325158c32c62e1bf69a16cb1f5da2a01f5df0 SHA512 6d171f63b42296f7765732fce3af7ea05d0d81f1541ffb3ad86e81210715ef4afe5bc9e58926e97e757aea6ff96a8012c8411eac78be0fd080898318ed21d7d1
+DIST prettyplease-0.2.37.crate 72033 BLAKE2B 997c8d855023ba6dcc7aa3a8f1c0ac6f6ca72dab2804cfcfb0987832ae044ffc5f5d7541e66d7ff5b0679065e5217078a832333e6cb92d89a93660aedaf0b447 SHA512 3273621f42cd2f4f892ee81e130f50e7d30f7254f922a84e55e454c0157bd0a59c678ee352e05007fdb0a62cdab2d7693185990354b81d2b1f5d08b51cff77d0
+DIST proc-macro2-1.0.106.crate 59765 BLAKE2B 87f95795621c4c992c370dc3a1240a2d5580e3362356525efe640f8f26ad0492b3c88755d575c080ff7db11376b0d82f31141bf6f86c895249b85e46c081220f SHA512 b726e2c92af434bfa88cd4f53c3fe6db647503567675fb439890dee3d15f5111137e3242b28d164114ce081c10acf3fd11950753ddb349190c87ee04e7d97744
DIST proc-macro2-1.0.92.crate 52353 BLAKE2B 9aa29fa6f1c56c0392a94a81b4c61953f4d185012cdca37e356817845535da79d7094bf43472ce63109ce479a2fd0cbef4d802afd61daf92c4db303bcac60e7e SHA512 e614f08acc0a7e97ef580479cf5b682378df1ca16f09bfb2296ebb3490a435229dea9d682c621c54ce57e8e1d3b7803eb8ff83c88bd02e07228dba6d02f14aee
DIST pyo3-0.25.1.crate 1121993 BLAKE2B 79a982131fc4c4f9292e97bc8d938d236ee9cefb99bb90646a84703660ad506aee8ae1f1e626d985aa62c695722510f2697544581fa5c3a01f193be2bc2779fe SHA512 9c842c89d274dba0c8a3085a8524736245d65f07e5c05bc13fc89167cfdeb1a4ff2b4a9da9467eee918e45d01777473f39bda11efe0052859969d4fdeac1adc6
+DIST pyo3-0.29.0.crate 1241253 BLAKE2B 29deb7fa70010bf3d7e9e93bbcd87c0b56c4ee7ef0c2e5956181d2fb5f06f4c9b3f28bd1ad280126c26c048808b91b847e1fb69ddd617ef9e9e5e004cf4e48ae SHA512 e6822400de53ebcef4a14c899dc065abae621a126483873139f5eb850877c94f4bccee3a183d4e2a69eadcd3c3b82b0a6f3e1053d926b103be572329607f2f67
DIST pyo3-build-config-0.25.1.crate 34126 BLAKE2B ca905f1f74e26f38ab63a4f5754055c9dff01f9396f81ece09b7ce067181b657e6746db3b373f7177805f6564d0df0db064b5fcab8160d5edc357e64dd32d0fc SHA512 d6fe4a46111188203a839c8c73b9835f98cd6bc5982868cbcc9f502c5a09b35c3e61117b50ef8372470051b5bc4959731907748ffca89f42f300a3081b7b0467
+DIST pyo3-build-config-0.29.0.crate 39616 BLAKE2B 7b62a5976b890db84e5256f3136185c2a9c3b7110782b5b0cdc314a5231fde30a853ddcd17af63b53488b3e8d5e310b01002b6f3c32cfeb1e5c3e168cd6460d7 SHA512 df77e8d7d5fe173749437ff6b90fa1703083377d515ab8a85dc77d9cac9c3fc331ede4b040f7e3694311ddb5adff577cf90c181a27c196ab93a4569e918fdea8
DIST pyo3-ffi-0.25.1.crate 78058 BLAKE2B 351fe00c99008a34a003e50cd4f6d25e6dae5a446928358cd5146ac9924254614724a015ae77d8aade7bcb497cf5e5b5018021ff5d89a8efa6412f5ccb48744e SHA512 35ab63888f49df13fab8b96b87f6c705186173923fd5898abe8730675156426f020ee517019926ba5e06cdb4fc5f91a75f648ce9eba892e9eaf3ee17864a8ec7
+DIST pyo3-ffi-0.29.0.crate 88184 BLAKE2B 5891af92a3bcba764c4701dcc0a99edbced010a5ac46df3217d004f5c3a368f18331733c6723bd49e522c6f7105455df13e2be0f07695ed5ce6ae71c15dec438 SHA512 baaf01d13ddc09316ba16b22e9ca15a67e5bda5b861ed7961c3393fd4692fc1c96952f81465d1dcb6531b9083f96c5630981b3d7802cb1ac2af67aafaffbec76
DIST pyo3-macros-0.25.1.crate 8886 BLAKE2B aad9c975c90ff93429be24287d76edd945578b546a927f54d82b6d4bf184f1f8d426ac112307205346e85999a1e89b097f68310de647f27474790bff01c3517a SHA512 08387f3d1ddb0cc253eed376e6e8ebe5722b31664ec742f16c0454b52f1fbcadbe7720ae9e2d3870fe0ca2690916cf6e3e032f5a3e65d767322c068432f6d470
+DIST pyo3-macros-0.29.0.crate 8915 BLAKE2B c12d23753d5aba7333183d4b41f16c8da1d4297a3ff86b3b150e9185c1978fc184ac198e566a41833292a8a78ab59446eafd5ef7169e5cb41493e7cbeaa68280 SHA512 fb6633ac76229d2e0ad88d51136a9318f03823b27c700a62cfbc957b4c834985e2f4c0cdaf5ea5e9993ec9e8ce3d63cd6b3fb823f2a042e65186adbed78da7c2
DIST pyo3-macros-backend-0.25.1.crate 76006 BLAKE2B 02225f8591585a6cbea7d6e53503bfbac395253cb0f45c588a2eb38908bf241034412832f2fcf4e9301318b5b9b82a888755d970f544f402a4f0cf9e4a6eefe9 SHA512 4c9006424630ab9bcd5dcdd45fe927a95a40a61757f0950396eb9f0c3f1794772092a19773c102220489cc621ad65d81dbbe459a1be472f6cd3211c50ef33cc2
+DIST pyo3-macros-backend-0.29.0.crate 91943 BLAKE2B 7c2977dd9c80f3dd1f5375b0c65492b46048ca02e6355ad746bc8430cf92eaf25c701f416469eb69724fde5220651b1095c09eb9e3ff860176f862d7c7287407 SHA512 13a7af3958c09969637827d97ab9bbc664c407dda9e4283afaf495757798cf6f84932468bc092160fa75211ce0aafe6efc657f3a390234d77a67362cfb31fe0f
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
+DIST quote-1.0.45.crate 31564 BLAKE2B 1b2c2c3e6ebabfe10affa4c43ca0bfd1f52d8fd49e1df463e13e63a82de41272089c8e09e4c02e8a33cfee768ace26d4d42a50752de8fb5a776c59806139ad5d SHA512 df96ede01ebd0ed642b758bf1d0862d0e116fc2b3343e14edb657ce5438ccabe743dec4a0a40de4dee98c134d169af9aba459faadf9c7a832b26377e755d49b0
+DIST r-efi-6.0.0.crate 65303 BLAKE2B 79a28aa1e41721ad39ad95837d60a7034f9eedf0f5a32017849e7f4abebf6eb55e79cc144cea52030cade11d6be6fc5ba863e711a74038ffcc67b0d6eef47bfd SHA512 65f8c75c0201c3b922e6bf032ba9e6c648840f60939615565287b9c64d44f3fccbde209d8fe691937949cd76307b59c53801e6bd43ed7b8ada46d5d8fccf7012
+DIST rand-0.10.2.crate 104493 BLAKE2B 3aa9c466444f67d7baefa1ee063a8fb3f63edd0676914596ce904dd2d1675394e1e150fbfc6f2519934ef4e3eee2e090a08ff57104f1a503a8aab2ccc2eeb0c1 SHA512 1c50a5ddceb5cfc0282774ab3252dc76a15d19cfa5d8350064d120ea5264d260beb024f2c86244a58631b4baff5b8c8b03f71a3c857f7c4988e4a81e9f8af387
DIST rand-0.9.1.crate 97986 BLAKE2B 98e230dcc51093e9dd842ecfd7fc5727ecbfee1384be2eea49c66dbd529d3c41e4383f876d21569cf57f757589fd89b60550a1932ee9ca359e908b914b2dfbc5 SHA512 0740e083fdad176ae332cbd759c020b0a477fbf22ed71df602adaf7448d76fe2e8f7c770c84cdb492e493275a23171e56a1afe35440572d2a7de56dd78a9a242
DIST rand_chacha-0.9.0.crate 18258 BLAKE2B aa0efd158877a116b2587177f2da84832ba8153b629aaf8181ca7622bc8ea624b5a5d205d1b745caafaad78d5a55aa08a4f35822b8925acdf7d1212baf62abeb SHA512 f62a7bb067ff984049c96cddccc841cd9931daeb5b25bb69f056bfe577f62b1b35c08f2bb5028590eefa04a9369beead4e6b03607eec97256e0383b20542af96
+DIST rand_core-0.10.1.crate 22833 BLAKE2B 2fb3972c7a83060afd88e3e1c97c26ac2236222c02259b421109406047fa7599e3408db34d22037eac42887d129692d163b5466190c87cb18b97ea6e12f1ea6b SHA512 7095ef3932cb731fd52a18208100aa01e27cc66aaafd933b70444158258ab2e9542ef0f1d0564f2db8846da597c9b4be5a3c0f865e68607b7d1725582282b94d
DIST rand_core-0.9.0.crate 23441 BLAKE2B 8f1543e2f33622edba457c340bdb4c266f8a3c9cdd95a3afaadf487f8dca7760548316227c1decc481a7e1ca5475f6915cfadb1ffd3860631c7a91494ea7f25a SHA512 def4746229c8405ceb46eb9300838918693f17a39a749e6ca42ad73fd02b0f0e14dca0dd26b3f030338db45da0d149d8c563d95cbd71c31995c5ab6294bd087a
DIST rfc3161-client-1.0.3.gh.tar.gz 56144 BLAKE2B 7ddfa2bfd837eb3d07a782f38e288bcb448e3a2d694e1d8aff1ccc4ea899df43d3dbff34fe46e67a3785db95c502e58cdbc1b06f712ed5717105519e70a3764a SHA512 b40b813c4fa6f348a330400b4a11be36cd2b31e4620c5141d522b005f80de329f5c07ff5ef7b83fc5e4c3be4fa7ee7a452d58b45c8811d9cd52cf6d4a630956b
-DIST rfc3161-client-1.0.4.gh.tar.gz 57899 BLAKE2B b1abb505dedf010383988dbeb2dd5cfb49ef19a5d3b479d6c6253458b21a745bc300b34e90dcf37e286c7284d9588091b290d7c37dfc53ab2548cb332f37fe86 SHA512 96bf1ff902ad9280d7af6e7e337adea7e70da84169938db3291c8c50db4accd2cecb90d7d8ed1c72062132b05edef35ccceb06106aff23c8379047b359fe813f
-DIST rfc3161-client-1.0.5.gh.tar.gz 57950 BLAKE2B d17595ef21abda0c49f15a0e06250015afb67bf297a605a19a439e8b43154f817d888406521a0a046b008d4c073fdf8316c9ee0f3e2e70691a8ab2c8f3de18fa SHA512 720dcf6f1aca60c6204da47ef63c4d08ba9bc61d7d4d3a253ddf67955e0ee034600c12743df102378dde48b28cf1e7a4cf631d5bf5662ccf493f402bd85346c2
DIST rfc3161-client-1.0.6.gh.tar.gz 107790 BLAKE2B bf82f0bd3bc91758a3b5f725f34b274bc16415e822e642145c4ff795dcb8bc3ae719faa85e7ae9c57180db895dce3e04a98dba1cf60aaf20c2f62a4f8ec4102b SHA512 6f9ccacd73afe5c34de6a76afeea7f1794a2cf458fbd8438504e9bb9fa5f62061571f4ce6064672050a35198f9fc83e14d4eca2a877c940704d068f430ee4a1e
+DIST rfc3161-client-1.0.8.gh.tar.gz 108810 BLAKE2B 029a2b1787f6b70bd35c9d382def7f778e381fb048a2aa275fc33d10182bf232c069136a8afd93c6443f6241da5fee091a4f0220e4ac69052f23e8c0160bd1c4 SHA512 9edbfe72622ba78c8f6d0b16e7255e1547917505a0b30bc6c3db84eafd3f733e3d6f1b9cc3dd4183b8f9989d97936a8e18bf2f3fad1d25c33bdfb97be50a90d2
DIST self_cell-1.2.0.crate 16883 BLAKE2B 56bd187fabc138c530aa23dfc69a330a7d0a8f86609801924fd1f4b0cefc43a99a8ba21d05e59272c9d32b83405b4c980df4f01e529772b760a9564dd8eb0c0a SHA512 41addc9b737d0379c0236b1821d6051d31dca6a76f463e6e56c3bac9015da4243f9fedc3d57e051f68f6f0aa610383a0b2cade07b1ea17e92173e2088a625af0
+DIST self_cell-1.3.0.crate 23869 BLAKE2B ab5a81d1ceac0f7221390fc346376ea764839893baf4af0372b47cb8852b4fcd986fc04c1386068c4f796d6180f70f8def48d7bff4ef057202ded6e2d9adbbfb SHA512 b7a629dafc90702468a9b4d97bab7f222e6f7263b3755709fe8da3311ee50245c304006ee3f12401f0226807ab1f0a44d25759caf2b84a33757fc76f9867036d
+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 sha2-0.10.9.crate 29271 BLAKE2B 1d614e0efe085cdb40e05726578a9b4ca6bce93f6d3324f5dc0444cb37054912cdaf5d28d468eac2c0046030d920fced2ccd006953b80865ce8a2d43ef3daa81 SHA512 963adeeb4ed8b0e7fc19085e8721ea13e9b3aea5d115ca1b3dbca495ad14810c6450991dd3753807c293c415aaeb1054b8b4124c72e7090cd9e86f09fcbb4f80
+DIST sha2-0.11.0.crate 33969 BLAKE2B 3b3cf6f843096de127e2eb72c9eb0115715658c34aed44be423f59779450af204bad47f2f3320f3ee89db03f9b20d22b04033b0f93a72e275a0ee9106ae489b4 SHA512 04164d47ac648dc498f05245e3eb4313bd61234aaa33f1ba13f6fab0cf8cd8716dc88a9c71e8264e0d6cd020ff732461cec00d92bc294e9c261a646c1988f906
DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
+DIST syn-2.0.117.crate 306011 BLAKE2B bbaec02c4322f522bdfc87caa4ce6fd1e09bbf8f4a102d9ed8728efacdd843a2750f616dce5b2d3a3e46bbb7d57439fbd10e328bc1d4a01e980986cd815798af SHA512 035c2e63542592b6a4058a2a82d4c2c1f5793f84fb1b04cbd393337a26fcf661a1f3bea439ce98a1fe943b1c4d36d2bda16df3bbc3fa6ca35e1548d530dc8416
DIST syn-2.0.90.crate 290584 BLAKE2B 9f469001c1439ffe57c578119653d3021c2709767e8e881441459a190402679f4fb78aa65e7822ff20913801c3be00d9b8f115189ea8e63ed94ed359b40fc9e1 SHA512 44606124f113c259c19edcb2adc1378d8292b422d800604c0e0d1ba89bd2d13d518cf4a6afa58daded54da9cb285464aadb113815406a0f09c5e18f865789ae0
DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
+DIST target-lexicon-0.13.5.crate 26928 BLAKE2B f8c62cb91f68a635e6ce3fc254df9ce378b5e8f62c1147404c967484b9ed97fb33d7993b4671611db76566063e999d658d201f856f70196ec678d72cc758cf6d SHA512 956df27c01e1186c5356117ffd07810fc0b62fb919d5bfd215955ba85be00ef675212a3c0dc36679986be7b825442fec5c93c7643b7e1e19c04572e6463546fc
DIST typenum-1.17.0.crate 42849 BLAKE2B a6d1162050679e2c4ab2467f3a77d301f6861882eb7c9749f31d047f383dd5bd2ed5846ad63eed99ccc04d6ac36cc697a305861e1d65880b4d2ef04ee0a79b94 SHA512 99773d5d9f850c0602db4bb67dd062b0ade6f086e155216f1bb2fb6569461ba7e1b7c2f2af81ea8833bc3bfcf3fe5033edecb7c438adae63f59d3e30cf63a508
+DIST typenum-1.19.0.crate 76414 BLAKE2B 8083988e0bf1d7927377112b8939607f32af098f198a2bfcc2c5302170d9f6e5b29cf02d3cab16c1ecd0fb9f0a45ea3c6bd4a4e4baaf2dfdf8f694093300deeb SHA512 09ebcd7a2cc11f422469cf4fe706f1988bcd81d628e2bab3f54ae82b0aa5486d03a4392187a3736c13dc0c2027053387f89ac656caff72f36365c8be38bc7ff4
DIST unicode-ident-1.0.14.crate 47547 BLAKE2B 30e0b6d7f3a967aaf5b9d91237008a60c3a8ded53bda901696e23cea3931dd71b01ddab866dca9e31e17c395d5f5a68f2a938655b693e894962568c2cff5ca15 SHA512 7c6dcd1724e8cfedc37546d1abd49088b633dad228097acc73d7b6cab255b223e830c541144e05a00388fd8ca8066f27c18792419cfa58ee9da4460a38d0bc0a
+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 unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
DIST vcpkg-0.2.15.crate 228735 BLAKE2B 6b6bacd9a7fa38919241f45a97f58cae957e58d3aac99df208a26aa718e4f1644f4ccefa31b09151e5c1952288e0e5837c363918b98c7f55079a948a952c1c50 SHA512 7322a21e8811b2fe4e79e09dc321458068ecdf1953f05d36233f3278ecc0b1dfc64194db7010dd46fcf692285f42475beb090c6c6cac0c8f9fe0eb5c770e3172
DIST version_check-0.9.5.crate 15554 BLAKE2B 131e75cc287518831e142430e2a39b48e4275874f4473780d47a27552294097aa1cddb65c385583e1022478f940b495eb43c24a8b1617b8ac5a24af3340c0d72 SHA512 d11d5a2240ab0c67ea69db56561ce202201edeef9a8e5eda3d9ae7ab7bb5752d8f343fe7f6536d8383de8d55f9024efa84f66a0c21e69563b7a38c4a628014db
DIST wasi-0.13.3+wasi-0.2.2.crate 136754 BLAKE2B a17e2670caed033c1b2e2bd709a79c1dff5d0ff46b32e9d9b0faceac2b3350397e7bc6ce113a9275c400537121c9d853130b4bd546afbf0bcd248f4c69d8a708 SHA512 c0b0ce3c4d82ad7350e017fda565a69cf91186ebc41a1c5bc21a6e2fd2f0d8e7d90bcd60488074da6062ac1fa39c684ddd8ee1d8efd66e82eff36ddb16682abd
+DIST wasip2-1.0.2+wasi-0.2.9.crate 129778 BLAKE2B f41afceba3c586d12829d2c59f45198c61ae04a0dfe72d6bad6176a3d38189a097cf633f34accff83d7ccc238a35a833381e98291e5fd37f2f4d6e08138af2c4 SHA512 284571c833a1770fcadd9a70155d8b507e9f7f0590015e1a07ad0512ac0a7f0ca4693ccd1aa1ab27e74ec58cb75f314770b66562a2167cd6b5086a7871527eb1
+DIST wasip3-0.4.0+wasi-0.3.0-rc-2026-01-06.crate 123354 BLAKE2B d8251ea31999f954eb1264bbc7792ba16a90aec3ed3112fe84b9a93dd8a0e493390b899be9e5e215ebebf644697d3bab680cb07d5e64617cbb57e6b2a28ae95f SHA512 fb136a5475fb4696902d4f4be43e0d5d28cf3bc1b6c83e5e7837499ee038f995c9f084064e2e4585dbc3bd260e0c7c95371526b04933f2c60fb6ce302416215d
+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 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
@@ -62,8 +122,15 @@ DIST windows_i686_msvc-0.52.6.crate 901163 BLAKE2B 99ed34e052db5ba77bab240ed5d38
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-core-0.51.0.crate 35048 BLAKE2B 1ce5f1bd6d1ceceaeb91d247f63745abfd25b539b57dc12321a2342f55da1207c697641a778ad6bff2bbece300fa52a788c7890e8dc49c5357f48292fed2a693 SHA512 eec78ac1566cc4f03b1d0d7d2e84c3d0fc2458a649c01a45c9c3781034078ed51b4a9852760fe96115006fb3415bcb31b1bf429cb3cac6e51e09a1c0cfc32ed0
DIST wit-bindgen-rt-0.33.0.crate 3357 BLAKE2B 7c5227e835eb405b681ba36a2472fb3330b9e44f8e9cef06ae5de326691d4e4535cfd09843241963572060f4ccb048aa088fb8692591f9253cd215f510969420 SHA512 fffae2da775fcb5066398aba5cd02119a07f5bb5ab2282c74f1665656de0278ba13352b8ccc6ff107677aec3ec5d401729158332f653e0a2e7b393d1aa018b8a
+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 zerocopy-0.7.35.crate 152645 BLAKE2B 8f13123c9d9257ac5a5c6954d38c3510fa658624442f7e03cdcc6db5a0977d9f26bb4e277be172b7872ec365cf6e58ac742e5578636f7698f9f37093e9249d9a SHA512 17fcb31c029ae89c01e5bae5fb2bb46bd434120199a3dc2c7fe0012dbbcfe2a0bb38934c4a7d3a4920e3fe47c097403beee554fefa54b66cb390f8b1de638d3c
DIST zerocopy-0.8.14.crate 229188 BLAKE2B 9a77e34a409cd2e02bde03ac27b5c676ba24deee2044ea40df3733c7c917b7b007b5eeb3770787215c5562f539a10df63bef3b2e14fc1907b884b5ab142315ba SHA512 3fa3186cc509fe92ecc305f331b3422a2b622803fa088028d4a8c07bb74a670e4289d8c3b5c617ce1315cd09192058e1491ee87d78c81efb2840d187d6805f30
DIST zerocopy-derive-0.7.35.crate 37829 BLAKE2B badeb7fa5e0bfe93a6788d93fd297604ed31de526b121549300ead3c49d450f49265f499e2e7ce606dcce2b59dd01f7fa817b8fbb3f237475185c5b42f5299c4 SHA512 dbe23573b62a6267d7bc8c744320b75b2fbda03b908c1d175211f7394374fe182bce58021e25485c10671d726b2007f250565dfe53134d51c89293bb607e9feb
DIST zerocopy-derive-0.8.14.crate 80308 BLAKE2B f66557cddeae39596cd6cdbd86f4444622281fdec823660250a19ebb2610e1a611341560025ee11d31898e844edb33c8de62e1623243babe9d59529eedd81131 SHA512 7204b9584cc6bdbcb1bf2408be26ebc5266ec3084816c2eafbc7e0712437eeceaf479851388534a11a310d354b43261c1cdc0b01391bf2550ce0efd9fc4ab461
+DIST zmij-1.0.21.crate 26665 BLAKE2B e958b58e2213ad13185ec6df55d07e6c80169afa56133038fa66cefb4a9f49aa786249a486dc09b2d0a2f74e41c0d0d713135f38a84dff8f6239636a6bf3cadb SHA512 a488f11ec8721ddfe42e61d028a128818551de8fccd69d7824504e4ae2efccdc38f716fa5a10ef4de07a8a087e75e819c4a1e0790817e8539b5db697bde14585
diff --git a/dev-python/rfc3161-client/rfc3161-client-1.0.4.ebuild b/dev-python/rfc3161-client/rfc3161-client-1.0.4.ebuild
deleted file mode 100644
index b07d9961a273..000000000000
--- a/dev-python/rfc3161-client/rfc3161-client-1.0.4.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 2024-2025 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} )
-
-CRATES="
- asn1@0.21.3
- asn1_derive@0.21.3
- autocfg@1.4.0
- bitflags@2.6.0
- block-buffer@0.10.4
- byteorder@1.5.0
- cc@1.2.2
- cfg-if@1.0.0
- cpufeatures@0.2.16
- crypto-common@0.1.6
- digest@0.10.7
- foreign-types-shared@0.1.1
- foreign-types@0.3.2
- generic-array@0.14.7
- getrandom@0.3.1
- heck@0.5.0
- hex@0.4.3
- indoc@2.0.5
- itoa@1.0.14
- libc@0.2.167
- memoffset@0.9.1
- once_cell@1.20.2
- openssl-macros@0.1.1
- openssl-src@300.4.1+3.4.0
- openssl-sys@0.9.109
- openssl@0.10.73
- pkg-config@0.3.31
- portable-atomic@1.10.0
- ppv-lite86@0.2.20
- proc-macro2@1.0.92
- pyo3-build-config@0.25.1
- pyo3-ffi@0.25.1
- pyo3-macros-backend@0.25.1
- pyo3-macros@0.25.1
- pyo3@0.25.1
- quote@1.0.37
- rand@0.9.1
- rand_chacha@0.9.0
- rand_core@0.9.0
- self_cell@1.2.0
- sha2@0.10.9
- shlex@1.3.0
- syn@2.0.90
- target-lexicon@0.13.2
- typenum@1.17.0
- unicode-ident@1.0.14
- unindent@0.2.3
- vcpkg@0.2.15
- version_check@0.9.5
- wasi@0.13.3+wasi-0.2.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-rt@0.33.0
- zerocopy-derive@0.7.35
- zerocopy-derive@0.8.14
- zerocopy@0.7.35
- zerocopy@0.8.14
-"
-
-declare -A GIT_CRATES=(
- [cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
-)
-
-inherit cargo distutils-r1
-
-DESCRIPTION="An Opinionated Python RFC3161 Client"
-HOMEPAGE="
- https://github.com/trailofbits/rfc3161-client/
- https://pypi.org/project/rfc3161-client/
-"
-# no tests in sdist, as of 0.0.4
-SRC_URI="
- https://github.com/trailofbits/rfc3161-client/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="Apache-2.0"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0
-"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-RDEPEND="
- >=dev-python/cryptography-43[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/pretend[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # unpin
- sed -i '/cryptography/s:,<[0-9]*::' pyproject.toml || die
-}
-
-python_test() {
- epytest
-
- # need this for (new) python versions not yet recognized by pyo3
- local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
- cargo_src_test
-}
diff --git a/dev-python/rfc3161-client/rfc3161-client-1.0.5.ebuild b/dev-python/rfc3161-client/rfc3161-client-1.0.5.ebuild
deleted file mode 100644
index b07d9961a273..000000000000
--- a/dev-python/rfc3161-client/rfc3161-client-1.0.5.ebuild
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright 2024-2025 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} )
-
-CRATES="
- asn1@0.21.3
- asn1_derive@0.21.3
- autocfg@1.4.0
- bitflags@2.6.0
- block-buffer@0.10.4
- byteorder@1.5.0
- cc@1.2.2
- cfg-if@1.0.0
- cpufeatures@0.2.16
- crypto-common@0.1.6
- digest@0.10.7
- foreign-types-shared@0.1.1
- foreign-types@0.3.2
- generic-array@0.14.7
- getrandom@0.3.1
- heck@0.5.0
- hex@0.4.3
- indoc@2.0.5
- itoa@1.0.14
- libc@0.2.167
- memoffset@0.9.1
- once_cell@1.20.2
- openssl-macros@0.1.1
- openssl-src@300.4.1+3.4.0
- openssl-sys@0.9.109
- openssl@0.10.73
- pkg-config@0.3.31
- portable-atomic@1.10.0
- ppv-lite86@0.2.20
- proc-macro2@1.0.92
- pyo3-build-config@0.25.1
- pyo3-ffi@0.25.1
- pyo3-macros-backend@0.25.1
- pyo3-macros@0.25.1
- pyo3@0.25.1
- quote@1.0.37
- rand@0.9.1
- rand_chacha@0.9.0
- rand_core@0.9.0
- self_cell@1.2.0
- sha2@0.10.9
- shlex@1.3.0
- syn@2.0.90
- target-lexicon@0.13.2
- typenum@1.17.0
- unicode-ident@1.0.14
- unindent@0.2.3
- vcpkg@0.2.15
- version_check@0.9.5
- wasi@0.13.3+wasi-0.2.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-rt@0.33.0
- zerocopy-derive@0.7.35
- zerocopy-derive@0.8.14
- zerocopy@0.7.35
- zerocopy@0.8.14
-"
-
-declare -A GIT_CRATES=(
- [cryptography-x509]='https://github.com/pyca/cryptography;678c0c59f743e3b301fbd34f1d26112db0cc2216;cryptography-%commit%/src/rust/cryptography-x509'
-)
-
-inherit cargo distutils-r1
-
-DESCRIPTION="An Opinionated Python RFC3161 Client"
-HOMEPAGE="
- https://github.com/trailofbits/rfc3161-client/
- https://pypi.org/project/rfc3161-client/
-"
-# no tests in sdist, as of 0.0.4
-SRC_URI="
- https://github.com/trailofbits/rfc3161-client/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
- ${CARGO_CRATE_URIS}
-"
-
-LICENSE="Apache-2.0"
-# Dependent crate licenses
-LICENSE+="
- Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0
-"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
-
-RDEPEND="
- >=dev-python/cryptography-43[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/pretend[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # unpin
- sed -i '/cryptography/s:,<[0-9]*::' pyproject.toml || die
-}
-
-python_test() {
- epytest
-
- # need this for (new) python versions not yet recognized by pyo3
- local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
- cargo_src_test
-}
diff --git a/dev-python/rfc3161-client/rfc3161-client-1.0.8.ebuild b/dev-python/rfc3161-client/rfc3161-client-1.0.8.ebuild
new file mode 100644
index 000000000000..319035a93a29
--- /dev/null
+++ b/dev-python/rfc3161-client/rfc3161-client-1.0.8.ebuild
@@ -0,0 +1,132 @@
+# Copyright 2024-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.87.0"
+CRATES="
+ anyhow@1.0.102
+ asn1@0.24.1
+ asn1_derive@0.24.1
+ bitflags@2.11.1
+ block-buffer@0.12.0
+ cc@1.2.60
+ cfg-if@1.0.4
+ chacha20@0.10.0
+ const-oid@0.10.2
+ cpufeatures@0.3.0
+ crypto-common@0.2.1
+ digest@0.11.2
+ equivalent@1.0.2
+ find-msvc-tools@0.1.9
+ foldhash@0.1.5
+ foreign-types-shared@0.1.1
+ foreign-types@0.3.2
+ getrandom@0.4.2
+ hashbrown@0.15.5
+ hashbrown@0.17.0
+ heck@0.5.0
+ hex@0.4.3
+ hybrid-array@0.4.10
+ id-arena@2.3.0
+ indexmap@2.14.0
+ itoa@1.0.18
+ leb128fmt@0.1.0
+ libc@0.2.185
+ log@0.4.29
+ memchr@2.8.0
+ once_cell@1.21.4
+ openssl-macros@0.1.1
+ openssl-src@300.6.0+3.6.2
+ openssl-sys@0.9.117
+ openssl@0.10.81
+ pkg-config@0.3.33
+ portable-atomic@1.13.1
+ prettyplease@0.2.37
+ proc-macro2@1.0.106
+ 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
+ quote@1.0.45
+ r-efi@6.0.0
+ rand@0.10.2
+ rand_core@0.10.1
+ self_cell@1.3.0
+ semver@1.0.28
+ serde@1.0.228
+ serde_core@1.0.228
+ serde_derive@1.0.228
+ serde_json@1.0.149
+ sha2@0.11.0
+ shlex@1.3.0
+ syn@2.0.117
+ target-lexicon@0.13.5
+ typenum@1.19.0
+ unicode-ident@1.0.24
+ unicode-xid@0.2.6
+ vcpkg@0.2.15
+ wasip2@1.0.2+wasi-0.2.9
+ wasip3@0.4.0+wasi-0.3.0-rc-2026-01-06
+ wasm-encoder@0.244.0
+ wasm-metadata@0.244.0
+ wasmparser@0.244.0
+ 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-component@0.244.0
+ wit-parser@0.244.0
+ zmij@1.0.21
+"
+
+declare -A GIT_CRATES=(
+ [cryptography-x509]='https://github.com/pyca/cryptography;e300bbe2f1bec75e5ee7e0ab7b196958831b3db6;cryptography-%commit%/src/rust/cryptography-x509'
+)
+
+inherit cargo distutils-r1
+
+DESCRIPTION="An Opinionated Python RFC3161 Client"
+HOMEPAGE="
+ https://github.com/trailofbits/rfc3161-client/
+ https://pypi.org/project/rfc3161-client/
+"
+# no tests in sdist, as of 0.0.4
+SRC_URI="
+ https://github.com/trailofbits/rfc3161-client/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="Apache-2.0"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT Unicode-3.0 ZLIB
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-43[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pretend[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_test() {
+ epytest
+
+ # need this for (new) python versions not yet recognized by pyo3
+ local -x PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
+ cargo_src_test
+}
diff --git a/dev-python/stone/Manifest b/dev-python/stone/Manifest
index dd2314b9f4b4..6e8182aeff2d 100644
--- a/dev-python/stone/Manifest
+++ b/dev-python/stone/Manifest
@@ -1,2 +1,2 @@
-DIST stone-3.3.9.gh.tar.gz 290882 BLAKE2B ad6e579d98b95d1828d0050ec29c53c6e5e52968def1fc10d315d311afdb8f350e9a7fd26330dce692c8f2419fe62ee22dba5ae54f0bcc91f09f51d7a7368f9c SHA512 916e8bce6e46114da8e684af25666d15257aa33bb0abb571c10f84457cfb958c309ca35bd3884f816ef8091c877e20b56b392cf5c85a760fab95f116efc7b321
DIST stone-3.5.0.gh.tar.gz 289745 BLAKE2B cbc1b2fb37b097ac8e6e9167a973b376377912e3a69ccc1a05c2e686d61c15212d767614cce1167535717ee4530b2013a2f13dbc86af3ca23150c7e8ac6497f0 SHA512 f595308e0bb11e5a27d9c8652db13b9a0f1f3646b9a54ff48b1e39a4041c88f0a41a2eae4437c31f7c9ae7a31e3634aa41da0b4b4c3ed7caa90dbf852efe3071
+DIST stone-3.5.3.gh.tar.gz 329020 BLAKE2B 1e4d677a05f8a5e69f4320938b7af554ba60736d80f359b62b1a658d008dc46bebbd7d32bd23d3b692393b7ed7d5239e68bdaa9139707b2d7865f89b89fee05e SHA512 2e7220b91a3416459b0de64fd1345a18d022e96b7009e51cea0e875909401110ffd9086f8bca809c798cc2bedc190fa154ac1cece1c328a2e60b731af3ba8f9e
diff --git a/dev-python/stone/files/stone-3.5.3-unvendor-ply.patch b/dev-python/stone/files/stone-3.5.3-unvendor-ply.patch
new file mode 100644
index 000000000000..09f75b436932
--- /dev/null
+++ b/dev-python/stone/files/stone-3.5.3-unvendor-ply.patch
@@ -0,0 +1,53 @@
+Upstream vendored dev-python/ply, but we can keep using the one in ::gentoo
+
+--- a/setup.py
++++ b/setup.py
+@@ -20,8 +20,6 @@
+ },
+ packages=[
+ 'stone',
+- 'stone._vendor',
+- 'stone._vendor.ply',
+ 'stone.backends',
+ 'stone.backends.python_rsrc',
+ 'stone.frontend',
+@@ -29,7 +27,6 @@
+ ],
+ package_data={
+ 'stone': ['py.typed'],
+- 'stone._vendor.ply': ['LICENSE', 'README.md'],
+ },
+ zip_safe=False,
+ author_email='kelkabany@dropbox.com',
+--- a/stone/cli_helpers.py
++++ b/stone/cli_helpers.py
+@@ -1,6 +1,6 @@
+ import abc
+
+-from stone._vendor.ply import lex, yacc
++from ply import lex, yacc
+
+ _MYPY = False
+ if _MYPY:
+--- a/stone/frontend/lexer.py
++++ b/stone/frontend/lexer.py
+@@ -1,7 +1,7 @@
+ import logging
+ import os
+
+-from stone._vendor.ply import lex
++from ply import lex
+
+ _MYPY = False
+ if _MYPY:
+--- a/stone/frontend/parser.py
++++ b/stone/frontend/parser.py
+@@ -1,7 +1,7 @@
+ import logging
+ from collections import OrderedDict
+
+-from stone._vendor.ply import yacc
++from ply import yacc
+
+ from .ast import (
+ AstAlias,
diff --git a/dev-python/stone/stone-3.3.9.ebuild b/dev-python/stone/stone-3.5.3.ebuild
index 3f3995f80782..d38498524f7f 100644
--- a/dev-python/stone/stone-3.3.9.ebuild
+++ b/dev-python/stone/stone-3.5.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Gentoo Authors
+# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,7 +24,23 @@ RDEPEND="
dev-python/jinja2[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/ply[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5.3-unvendor-ply.patch
+)
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_prepare() {
+ default
+
+ # Unvendor ply
+ rm -r stone/_vendor || die
+ rm test/test_vendored_ply.py || die
+ rm test/test_version.py || die
+}
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index 10de79860e0a..00eaec756756 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1,3 +1,5 @@
DIST stripe-15.2.1.tar.gz 1520402 BLAKE2B 92d8aae6f9911db5c9e47512c37d0ea13819c5976e0c6e34a13469a1bd8182ebe8afe251ae191d5029cfd03b731ae9d8c37640d9cec088cdd19b85da05942246 SHA512 0712b879ebf9d12ecda58264d787986c2552a7158c2ffe2755962095a2df27d1b07629af417370356c7af3453a433e54b4a36c92e7a9a716af9fd6f3684bd4f9
DIST stripe-15.3.1.tar.gz 1516385 BLAKE2B cfdc04afa2c1cbba575cc67bf77375f84487c31a81641a903e82d24157d7f9121fc8ef9e23f57552763af07c7bfde36792d8a37b14053159672437795a968288 SHA512 f2a8c287b94672a9b73152fdaa20e1fcdd0e6d3cbcc6183b3b546a8fce9381a62d1a40e2d2c60756713590a92d5913e4745bd429e868cc58a5dd1404661fc884
DIST stripe-15.3.1.tar.gz.provenance 9712 BLAKE2B 6b312c68c711c6afa03fd0650a1719535f76edbb0a34c49e3088fad2b97d76071938135ffd8dc78be01b93ba96a6855c2d22a3e13c9d3ba7d0f00f25eb90cd74 SHA512 1eb4547c84982b1eb50fcf49efc509207a42fb8673c35ea273ac833f4311af1a9ac21d01b9aea8d00a88547cbbf3fc9028458e5eaafc373a2387149d64e250b1
+DIST stripe-15.4.0.tar.gz 1538270 BLAKE2B e2fed8eb46ec91a8f27ca3408b6b32a0c3b365059a92d6997c5d266c11bb0b11d101f9198ca48c0dfd43e3b6d746eaf26996a6b4d21cc432fe020d3e6dd8caf8 SHA512 544d6c8c2dc47d7f68c097f2eac5cb3075397742031b59fde01d2141e15655feb879b9a9c575dbf65ed5c9d37e4c75adcb53291f9b7e072af625ede33eb3cc2c
+DIST stripe-15.4.0.tar.gz.provenance 9618 BLAKE2B 7772df6031e1cebb15bbbfff575dc6e7a0b86477dbc6c261221aab1398da0f35c3524f925e92f6931c5fd30195a054421d7241644ed32452af2f0c06f288682d SHA512 c05853f5a4841b2f6e9a1bba6c27eab320f10392b2c922e1bacaaac0fbd3bbd21e6eae7375dc50ea4c9e2dbab1a5a1f5536d88f14d628bead3477968daa93cfb
diff --git a/dev-python/stripe/stripe-15.4.0.ebuild b/dev-python/stripe/stripe-15.4.0.ebuild
new file mode 100644
index 000000000000..d87b66115eea
--- /dev/null
+++ b/dev-python/stripe/stripe-15.4.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit-core
+PYPI_VERIFY_REPO=https://github.com/stripe/stripe-python
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Stripe Python bindings"
+HOMEPAGE="
+ https://github.com/stripe/stripe-python/
+ https://pypi.org/project/stripe/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="telemetry"
+
+RDEPEND="
+ >=dev-python/requests-2.20[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.7.0[${PYTHON_USEDEP}]
+"
+# please bump dev-util/stripe-mock dep to the latest version on every bump
+BDEPEND="
+ test? (
+ >=dev-util/stripe-mock-0.201.0
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ net-misc/curl
+ )
+"
+
+EPYTEST_PLUGINS=( anyio pytest-mock )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ if ! use telemetry; then
+ sed -i -e '/enable_telemetry/s:True:False:' stripe/__init__.py || die
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_http_client.py::TestLiveHTTPClients::test_httpx_request_async_https
+ 'tests/test_integration.py::TestIntegration::test_async_raw_request_timeout[asyncio-aiohttp]'
+ # timing
+ tests/test_integration.py::TestIntegration::test_passes_client_telemetry_when_enabled
+ )
+
+ epytest -o addopts= tests
+}
+
+src_test() {
+ local stripe_mock_port=12111
+ local stripe_mock_max_port=12121
+ local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
+ # Try to start stripe-mock until we find a free port
+ while [[ ${stripe_mock_port} -le ${stripe_mock_max_port} ]]; do
+ ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
+ stripe-mock --http-port "${stripe_mock_port}" &> "${stripe_mock_logfile}" &
+ local stripe_mock_pid=${!}
+ sleep 2
+ # Did stripe-mock start?
+ curl --fail -u "sk_test_123:" \
+ "http://127.0.0.1:${stripe_mock_port}/v1/customers" &> /dev/null
+ eend ${?} "Port ${stripe_mock_port} unavailable"
+ if [[ ${?} -eq 0 ]]; then
+ einfo "stripe-mock running on port ${stripe_mock_port}"
+ break
+ fi
+ (( stripe_mock_port++ ))
+ done
+ if [[ ${stripe_mock_port} -gt ${stripe_mock_max_port} ]]; then
+ eerror "Unable to start stripe-mock for tests"
+ die "Please see the logfile located at: ${stripe_mock_logfile}"
+ fi
+
+ local -x STRIPE_MOCK_PORT=${stripe_mock_port}
+ distutils-r1_src_test
+
+ # Tear down stripe-mock
+ kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
+}
diff --git a/dev-python/uv-build/Manifest b/dev-python/uv-build/Manifest
index adf54c749045..560a85ef53b4 100644
--- a/dev-python/uv-build/Manifest
+++ b/dev-python/uv-build/Manifest
@@ -4,3 +4,4 @@ DIST uv_build-0.11.25.tar.gz 404894 BLAKE2B 6922a5e91c5c657ca5ed90edb0250cbd7192
DIST uv_build-0.11.29.tar.gz 411484 BLAKE2B 4a9250bd8ecb4967c222f5ed0842c6415963a3423b593f59dfb87a2fa343839abb0d77f1cb1f90d69ac45c54722cde8ff68e3e567478f54a0b21ba74fd4d55fd SHA512 c9722cb2575d9d0b50ba36b53b8cb2eae35f18e2da92ea7eab74743354e8b17034172f2c932e381cf158d2d748103d9bcb97ba383e465f7770efc2dc11ae2dc6
DIST uv_build-0.11.32.tar.gz 413653 BLAKE2B 8951cd4ddc44655a177c6cccbf81fe871306f1096161ea46cec8bf52b56de713b4d91c469e44913c140229ae61595cbdcbd5b2e0cbb7c791f7937c9fc9db898c SHA512 3732f141b2ffeaed8f08dadadb2b5e72c2d60e0cb9a13c7d6b7360471606afbaae88d841db655b79ca2753ef4e2e18dbb51464e6669c57aed98ee19219fa5b56
DIST uv_build-0.11.33.tar.gz 413871 BLAKE2B 8a662d0a80fc32cc22b4fa4df5bf38338e715eaddc6316348ac56cb5411b2433e5b36fad545f90719d4a83e989bc29e55be2cfc40ecd60c4fc94d91fb7b0bc4b SHA512 30001c3c49959ae09243a947d9c02bc46e391bd2e055476ce89c489b15cde789091f2461fffea8ac298805fd944c98c60aabbb804b6e13875569e659c0d8c28b
+DIST uv_build-0.12.0.tar.gz 411983 BLAKE2B 3c6f6f32fa096d03426c63e001c86eed2d17b5a130fbc02a96271ca9073432393c4f9d14baa1c6d7993adadda88f0d45fd32e7c54d50669b3d54ef79c95314ff SHA512 719a2f6ae6c257a72d09e8f850cd217458e57162329adcbe7efcf59a0a62f83a6310e9da27d80ec9caf6bdf280eaee652b3267bd01955b9d22b7308f194c16d2
diff --git a/dev-python/uv-build/uv-build-0.12.0.ebuild b/dev-python/uv-build/uv-build-0.12.0.ebuild
new file mode 100644
index 000000000000..65d94f2051ae
--- /dev/null
+++ b/dev-python/uv-build/uv-build-0.12.0.ebuild
@@ -0,0 +1,100 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Maturin compiles uv-build executable for every impl, we do not want
+# that, so we use another backend. And since we use another backend,
+# why not dogfood it in the first place?
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="PEP517 uv build backend"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv-build/
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/uv-${PV}
+"
+BDEPEND="
+ test? (
+ app-arch/unzip
+ dev-python/build[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # use the executable from dev-python/uv instead of building
+ # a largely overlapping uv-build executable (at least for now)
+ sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die
+
+ # replace the build-system section
+ sed -i -e '/\[build-system\]/,$d' pyproject.toml || die
+ cat >> pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["uv_build<9999"]
+ build-backend = "uv_build"
+ backend-path = ["src"]
+ EOF
+
+ # rename to make uv-build find it
+ mv python src || die
+}
+
+python_test() {
+ "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}"
+
+ local zip_result=$(
+ unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die
+ )
+ local zip_expected="\
+Archive: dist/uv_build-${PV}-py3-none-any.whl
+ testing: uv_build/ OK
+ testing: uv_build/__init__.py OK
+ testing: uv_build/__main__.py OK
+ testing: uv_build/py.typed OK
+ testing: uv_build-${PV}.dist-info/ OK
+ testing: uv_build-${PV}.dist-info/WHEEL OK
+ testing: uv_build-${PV}.dist-info/METADATA OK
+ testing: uv_build-${PV}.dist-info/RECORD OK
+No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\
+"
+ if [[ ${zip_result} != ${zip_expected} ]]; then
+ eerror ".zip result:\n${zip_result}"
+ eerror ".zip expected:\n${zip_expected}"
+ die ".whl result mismatch"
+ fi
+
+ local tar_result=$(
+ tar -tf "dist/uv_build-${PV}.tar.gz" || die
+ )
+ local tar_expected="\
+uv_build-${PV}/PKG-INFO
+uv_build-${PV}/pyproject.toml
+uv_build-${PV}/pyproject.toml.orig
+uv_build-${PV}/
+uv_build-${PV}/README.md
+uv_build-${PV}/src
+uv_build-${PV}/src/uv_build
+uv_build-${PV}/src/uv_build/__init__.py
+uv_build-${PV}/src/uv_build/__main__.py
+uv_build-${PV}/src/uv_build/py.typed\
+"
+ if [[ ${tar_result} != ${tar_expected} ]]; then
+ eerror ".tar.gz result:\n${tar_result}"
+ eerror ".tar.gz expected:\n${tar_expected}"
+ die ".tar.gz result mismatch"
+ fi
+}
diff --git a/dev-python/uvicorn/Manifest b/dev-python/uvicorn/Manifest
index 0540695c6ff8..fd633a7043f4 100644
--- a/dev-python/uvicorn/Manifest
+++ b/dev-python/uvicorn/Manifest
@@ -1,8 +1,8 @@
DIST uvicorn-0.49.0.tar.gz 91284 BLAKE2B 44bc012868fe519132fba4485f0b8f7c6d9eb586ad7d710a00b9c43147b72ea88433a92121ee4ea0b8a83b017c7f4f8e953f9410341b313b2d04017feecdc3d2 SHA512 7aa56da2baa5f2aebee97a3ebb94f77bef68e4f160657c6ace770bd43c92d66234a2d7d692ff3bc2809a8f8149904ef38692b81f7ff08df8a5b765d4a47bd586
DIST uvicorn-0.49.0.tar.gz.provenance 9600 BLAKE2B 8b104211313a3da23431a693b7d6aa778f174ffc1e66e20b46f34b7986c02739559babd73f34490b07fe32dc8422bd1f5fa9a3f0fff6348a7d63bfe2d865bbf6 SHA512 075901986512a504961048faaf3e99600cd97f2940c2418616344843520e1924060d57acb214962d648c3c570f40cf1b3bce547bdf929d36adaf8a32f7ad8a5f
-DIST uvicorn-0.50.0.tar.gz 93257 BLAKE2B bc666cbdb981a35aa94bd1faf9636c7c0dae5a85268993beeb0b77e1542d70941d9da7b5e129711c8ff1904e23ed80909ead86409720147c7ee7cdf14cc8acb9 SHA512 682ffb55076452931c82b7ddaf643b0aea9aa869a709721bee30d0dc0b33bf2b36e362864f970841d2b69c2d0cbe98c55c86dc22cc0fa8395e0c51a0624b09cd
-DIST uvicorn-0.50.0.tar.gz.provenance 9741 BLAKE2B 2521229c05cf3b8fc31e208a12a27f767dd7d348c8fed1ae6452928859883ceb354448aab8d5709230c5e9c667a4cf2674e8a88f3ae9ade2f8dda8bccca80ca6 SHA512 8713deb05751d3897dc0b00965cc72e1c2c3ceef39c02b71ae43bbe6ecfe7ad88682114ef7be050d085cc984b7ff7781a30f31a4c132be58db4d90590ed00a9b
DIST uvicorn-0.50.2.tar.gz 93716 BLAKE2B db4840c3fe19daa5e63aba7e4c9d328fa0e840d96c4e74580ec1e3f6a7b9346c1ed91ed6d9a4cb594ebb771c21099b4f81657cf9797c2c7f78f8742e03f58e30 SHA512 f3504ced038d6e5521a6f4c266b4ca87d6bb49c21bf3b5f9f32097fc75c81c6a755b1d6b11835590bc58dc9e0d5030f7df2041cf993f629ac93303010b272680
DIST uvicorn-0.50.2.tar.gz.provenance 9690 BLAKE2B d34f5564c33341c1f781eb1e4c2349de39091ccf095596ab939613b74be45b816196c095c7d0d97da37439bccdc928ec2a9739aaefda75dcb643da8a21c1c552 SHA512 70281746bc4c67dbc19b001a516c5708dc2ee8d6ae9abbc1a9f4c09966a1d2cf7ff8f9e576ea3d2b767b6a193caa2be09abd26b6ec8f50287fa53b51bc81dabc
DIST uvicorn-0.51.0.tar.gz 94412 BLAKE2B 80334c8fbde6624072a2b13391d80493affe6aebcb95e79652f8bb32804924046c452355e3ba889e7e852ecdcc86fee1877346303cb75ce54f9905ee0cce4955 SHA512 f88e95fbe3ca145b5ae2cb841d7aeb3d42ee8dbdfdade3f84db88416a5eb78444c22f04c8f95d26afb72b1a71968b2ffe8b0dd0a461765008ee5507d4ab4e242
DIST uvicorn-0.51.0.tar.gz.provenance 9737 BLAKE2B 2ec83d01d615cecd97da8478ac37bae91759e01f9b37c73be204a4c0f08d00710e7eda005f6161191dd6466845a058bf5030fb999f9ea3a3d4a2aba3ce86a9ef SHA512 2acd44c85fde7059e1f857544cd611c12d2b243e870a2875767ddd07f794b42243c93fdbeadf1f5d2a867558ea397dcd8ef7e98a942c4f11ea802a9d1ef2b58b
+DIST uvicorn-0.52.0.tar.gz 97504 BLAKE2B cfd59f482ca7486216ae7d3258bd25fc8ec4817effa3ba6ecf7e018dd907ebc212c2e49f65609378723f45488a36c184777e3132a3d5217217b4ad0b0868183b SHA512 c6bf0d8e245f5aff49e118f88ec190cbf41f0e488ba0266a193687621591216c725e98c65908ff768f477b342d73578475380a1a8c781f90b3322814bee4fd30
+DIST uvicorn-0.52.0.tar.gz.provenance 9408 BLAKE2B 06d9600da36e56db84eb33da15188086f8a616e68282c3a00c5ce8ae76316bc79b2122981295609524e1b82616e703a8ea43dfc9534bd73f971ea927e0ea1c21 SHA512 2a423dd758c5c93dd3fe5321024ac05d2e31033838c2aad1e9357844d6bcfd5b2c0f3aac4c7699177aa5becaf92750c8a14a9219b1fc3112f2940cb5e21245cd
diff --git a/dev-python/uvicorn/uvicorn-0.50.0.ebuild b/dev-python/uvicorn/uvicorn-0.52.0.ebuild
index 0f30968ddef0..177e8e69f7c1 100644
--- a/dev-python/uvicorn/uvicorn-0.50.0.ebuild
+++ b/dev-python/uvicorn/uvicorn-0.52.0.ebuild
@@ -34,7 +34,7 @@ BDEPEND="
dev-python/python-dotenv[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
dev-python/typing-extensions[${PYTHON_USEDEP}]
- >=dev-python/websockets-11.0[${PYTHON_USEDEP}]
+ >=dev-python/websockets-13.0[${PYTHON_USEDEP}]
dev-python/wsproto[${PYTHON_USEDEP}]
test-rust? (
dev-python/cryptography[${PYTHON_USEDEP}]
diff --git a/dev-python/websockets/Manifest b/dev-python/websockets/Manifest
index abd77661ee7a..e143f2b819f5 100644
--- a/dev-python/websockets/Manifest
+++ b/dev-python/websockets/Manifest
@@ -1,3 +1,4 @@
DIST websockets-16.0.gh.tar.gz 458014 BLAKE2B 409323f84f919064f758ad06bccf526d1aafac7aee791b9fd35908081ad13cbd252ca49cefbfdc870e5526da82e641750ee46f0103e53c10f0e9b35f9483982f SHA512 ed0bfe6e6402c1504680e9afcb7478e06a5f1af6c0761e35a9a6192569b59c5cce5d0a9f0aaea35922e499a3968dba409cb8d398829e9dff6466db5cb5b98b98
DIST websockets-16.1.1.gh.tar.gz 461500 BLAKE2B 65cf3cb3d755ce131d9f342ef57c3db4fdc7434479eb2e6a86728976ef4245c18245380a7ffad2f135f9b459fe0f54c9682299caa13e3286535f6766985a0438 SHA512 7eeff69ebf0b92c93149ce030fd92440787c3d3b9007b5b0669f0f37cc4c297bb2a207a7742e0450e3ecf1b973fe0306ac9e5dcb96c0d2d907956279c41b6cbd
DIST websockets-16.1.gh.tar.gz 461790 BLAKE2B 961b0d16b8310f0fccd62ed00abf8922cb9a1713389a83c93094c1aa5104a42c88c5fa1ca03b06cfb46f51e4650af9b2c8215f1527e7523e126b54e0940ad7ea SHA512 9c45fee3eb7bf9e027289a97154bfed0f99ad5e8be29c77fd68a65f6de0de557421fafeda937b10ef1aa9359f9d5b77383dc3cf5b6ba7527de1bc25b674cf30b
+DIST websockets-17.0.gh.tar.gz 518980 BLAKE2B 20a9c63a46e0a6dac6659b1e6b62ffef94a8a9b0c54bb5873a03084312338ae65e5b0798031ea7f043725c2766d97c5a053c38f5fd2ca5a195aca6c05137200a SHA512 1dc5bd2e932a937056a8702c84925d99e98a73009f06fe39e633c60e3e39f07c3f4d7803b50e58107832e5a566120db311286c8534e6bd70379fe413ec3587ec
diff --git a/dev-python/websockets/websockets-17.0.ebuild b/dev-python/websockets/websockets-17.0.ebuild
new file mode 100644
index 000000000000..fa4f27c47d22
--- /dev/null
+++ b/dev-python/websockets/websockets-17.0.ebuild
@@ -0,0 +1,61 @@
+# 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Library for building WebSocket servers and clients in Python"
+HOMEPAGE="
+ https://websockets.readthedocs.io/
+ https://github.com/python-websockets/websockets/
+ https://pypi.org/project/websockets/
+"
+# tests are missing pypi sdist, as of 16.0
+SRC_URI="
+ https://github.com/python-websockets/websockets/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions"
+
+BDEPEND="
+ test? (
+ dev-python/trio[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_RERUNS=10
+distutils_enable_tests pytest
+
+python_compile() {
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]] ; then
+ local -x BUILD_EXTENSION=yes
+ else
+ local -x BUILD_EXTENSION=no
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires DNS access
+ # https://bugs.gentoo.org/909567
+ tests/legacy/test_client_server.py::ClientServerTests::test_explicit_host_port
+ tests/legacy/test_client_server.py::SecureClientServerTests::test_explicit_host_port
+ # TODO
+ tests/asyncio/test_server.py::ServerTests::test_close_server_keeps_handlers_running
+ )
+
+ epytest tests --reruns-delay=2
+}
diff --git a/dev-python/wrapt/Manifest b/dev-python/wrapt/Manifest
index 8d4ccabe47cd..ecc8104a7714 100644
--- a/dev-python/wrapt/Manifest
+++ b/dev-python/wrapt/Manifest
@@ -2,3 +2,5 @@ DIST wrapt-2.2.1.tar.gz 127620 BLAKE2B ff7bc0478d1e780ed059eba5af5f2c40c2399dcfb
DIST wrapt-2.2.1.tar.gz.provenance 9958 BLAKE2B 2115dcad4d151dc9d10a2f8a0c16c9cf2ef94ebedc1d44c680019b8ad099f9fb14cc88624a01222809f8e416bcd56ad5478c6b450480881dfce95d50daaf4e2a SHA512 2efed0a393170f9520507ecf57ec5877fb1bc2ff8f783e81d259d1711e480dd827cc4717686b269bc4f3a1a59c7522bf7c0f85e94ddcfed5683497525821f9f8
DIST wrapt-2.2.2.tar.gz 129068 BLAKE2B 6883abedc321b7ec047e0a31ffd78b8a297be4db7ab4cb1ca98a4f73b1021707a5c0c0e3c7166f29b7add693b298215e197c056d5ea9dd37c9e8e6ce5fc81ffd SHA512 2b9865d1d54c3e58191220e08a83eb7bd1739c9779b17f3bd4101489f02ffb6c6d4ab9abfa7cdb7c621b35d90e24e648254737f0046f2019755c5b29978b1bb6
DIST wrapt-2.2.2.tar.gz.provenance 10194 BLAKE2B a001104495c74bf3f5644753a7c509e1144945030f9ed4f25c0d7daf158fd625c2f2ef449f86597e40c9b1285591eb8ea99c68b9a2e7b42bc39a79fef04eb3ea SHA512 24b82551e3624fbbfcde21b97d7ade1fb7e29406f55c18522b5f41723ab22a3f9cfd7f142ae85dee8fb0aa1bc3ded9dbe14e0fe6b5e38c447c529b9c6319c47f
+DIST wrapt-2.3.0.tar.gz 131509 BLAKE2B 6cbc4c7af17e1dbaccaa0c9999331fe7219b9bd8dfd8059ab006e2d33ecdac9a051edc368171e245fee885384a1dd50f056409277e181669b88fbb6ab3fecc2f SHA512 60605992677fe99fdf3328197486b77ec55d1b22e0072c4ab03eff423b5e91a31007fd780cd20676040714f895d3f7cf26b324b6c74bf53a02ceee1224a4c0ea
+DIST wrapt-2.3.0.tar.gz.provenance 10335 BLAKE2B f941e218d992f29ac5cf5027c17951f490482fdb7d3234faedde6d20e9a5ba54c290c66cd8d8bff336fd38c27cdb7573c3134891f0af206c508ce3339d8e2d6e SHA512 7e945775ace3936f825bd7f79b1bd58f2f0f8c40a2fc410e3ddfad18838fcbe0e35475f9af0240538fb3a76bbb257c02400b2d0db1375cb6539cd4bbf32ba1c4
diff --git a/dev-python/wrapt/wrapt-2.3.0.ebuild b/dev-python/wrapt/wrapt-2.3.0.ebuild
new file mode 100644
index 000000000000..c0b172cb4e24
--- /dev/null
+++ b/dev-python/wrapt/wrapt-2.3.0.ebuild
@@ -0,0 +1,40 @@
+# 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
+PYPI_VERIFY_REPO=https://github.com/GrahamDumpleton/wrapt
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit distutils-r1 pypi
+
+MY_P=${P/_}
+DESCRIPTION="Module for decorators, wrappers and monkey patching"
+HOMEPAGE="
+ https://github.com/GrahamDumpleton/wrapt/
+ https://pypi.org/project/wrapt/
+"
+
+LICENSE="BSD"
+SLOT="0"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+fi
+IUSE="+native-extensions"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # skip mypy tests, they are fragile
+ rm -r tests/mypy || die
+}
+
+python_compile() {
+ local -x WRAPT_INSTALL_EXTENSIONS=$(usex native-extensions true false)
+ distutils-r1_python_compile
+}
diff --git a/dev-python/wxpython/Manifest b/dev-python/wxpython/Manifest
index 2c3655c62f8b..135fc72988a3 100644
--- a/dev-python/wxpython/Manifest
+++ b/dev-python/wxpython/Manifest
@@ -1,4 +1,3 @@
DIST wxPython-4.2.3.tar.gz 58861286 BLAKE2B 2c674227ff109564be1431f2a86a212250ffac809fed4ca8934f7473c93616603e252098511e443ffdf460ab546b5eb17b3f29ab275fb8b5433041a4d47e48cb SHA512 c7b9f0758b9d77dbeab436e8069c024796b6f252af5043615e14083b3f62fb44386c5f325a118f9e2d99c15eeb7687bb1cc1a13a00263114689b32e2126364a7
-DIST wxpython-4.2.4.tar.gz 58583054 BLAKE2B 03b236deb44a345beb989273af605228f5336eaa8b4a3a18b5654536007457b8a31b4a266e31ca8445a7b948c6d6af4040f9b005930ec5c653394e97af539a0f SHA512 4ae124bced8a0d357a34763c981ef370b7c0c978dfba0f941f37e83227816881fee2e65eb7eaa2a114bbaded14afd8e96ad17dba5a9886b38ac35bc75ec82737
DIST wxpython-4.2.5.tar.gz 58732217 BLAKE2B 767238e3279c92c3a15fdcd8752ccab47325ca5e3fb3750f47e8d7a13882024dfc84470dfefb885c7aff121a385feb205db211a4c66d850230953e6ddbfd7e47 SHA512 a094faab4f901e46c6a771168160b0e3fec336e937507fedab97a0645df55671af046e673344a37d3d6997fadcb83c5490a673c2475c200841ef9eb12bc19763
DIST wxpython-4.2.5.tar.gz.provenance 9350 BLAKE2B 98ce7cd4cad7ac0a0c937d91ef2b680b60cb35f94a079d6f042acd2b80dfd875aa02eddbba40c9414dd97c925b5b5fe7d09b8a66f7baa99f43b7eaa5ed03ac11 SHA512 1cf3d1f4b9b2c7c29d4126c81cf657d5777568630b49828304cf659c37e0a6c252cd7644fcb0990dbff88cb8f62193c8940b125ed6626f52ce1e9b1a3575a388
diff --git a/dev-python/wxpython/files/wxpython-4.2.4-setuptools.patch b/dev-python/wxpython/files/wxpython-4.2.4-setuptools.patch
deleted file mode 100644
index 06e8bfd2e90e..000000000000
--- a/dev-python/wxpython/files/wxpython-4.2.4-setuptools.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-https://github.com/wxWidgets/Phoenix/commit/b91db9a2eff6460dd7189e24020bff1573c63211
-
-From b91db9a2eff6460dd7189e24020bff1573c63211 Mon Sep 17 00:00:00 2001
-From: Scott Talbert <swt@techie.net>
-Date: Fri, 6 Feb 2026 20:31:33 -0500
-Subject: [PATCH] Fix build with setuptools 81+
-
-Unfortunately distutils changed the API of copy_file and
-copy_tree, so we need to replace our monkey patched versions.
-
-(cherry picked from commit 1dec4c8fc560795b01bb54ca5f62a598fda2d8dd)
----
- setup.py | 33 +++++++++++++++++++++++++++++++--
- 1 file changed, 31 insertions(+), 2 deletions(-)
-
-diff --git a/setup.py b/setup.py
-index 71d57d699..9bcef61c5 100644
---- a/setup.py
-+++ b/setup.py
-@@ -9,6 +9,7 @@
- # License: wxWindows License
- #----------------------------------------------------------------------
-
-+import inspect
- import sys, os
- import glob
- import stat
-@@ -260,9 +261,29 @@ def wx_copy_file(src, dst, preserve_mode=1, preserve_times=1, update=0,
- os.symlink(linkdst, dst)
- return (dst, 1)
-
-+def wx_copy_file_new(src, dst, preserve_mode=True, preserve_times=True,
-+ update=False, link=None, verbose=True):
-+ if not os.path.islink(src):
-+ return orig_copy_file(
-+ src, dst, preserve_mode, preserve_times, update, link, verbose)
-+ else:
-+ # make a new, matching symlink in dst
-+ if os.path.isdir(dst):
-+ dst = os.path.join(dst, os.path.basename(src))
-+ linkdst = os.readlink(src)
-+ if verbose:
-+ from distutils import log
-+ log.info("%s %s -> %s", 'copying symlink', src, dst)
-+ if not os.path.exists(dst):
-+ os.symlink(linkdst, dst)
-+ return (dst, True)
-+
- import distutils.file_util
- orig_copy_file = distutils.file_util.copy_file
--distutils.file_util.copy_file = wx_copy_file
-+if 'dry_run' not in inspect.signature(orig_copy_file).parameters.keys():
-+ distutils.file_util.copy_file = wx_copy_file_new
-+else:
-+ distutils.file_util.copy_file = wx_copy_file
-
-
-
-@@ -271,9 +292,17 @@ def wx_copy_tree(src, dst, preserve_mode=1, preserve_times=1,
- return orig_copy_tree(
- src, dst, preserve_mode, preserve_times, 1, update, verbose, dry_run)
-
-+def wx_copy_tree_new(src, dst, preserve_mode=True, preserve_times=True,
-+ preserve_symlinks=False, update=False, verbose=True):
-+ return orig_copy_tree(
-+ src, dst, preserve_mode, preserve_times, True, update, verbose)
-+
- import distutils.dir_util
- orig_copy_tree = distutils.dir_util.copy_tree
--distutils.dir_util.copy_tree = wx_copy_tree
-+if 'dry_run' not in inspect.signature(orig_copy_tree).parameters.keys():
-+ distutils.dir_util.copy_tree = wx_copy_tree_new
-+else:
-+ distutils.dir_util.copy_tree = wx_copy_tree
-
-
- # Monkey-patch make_writeable too. Sometimes the link is copied before the
-
diff --git a/dev-python/wxpython/wxpython-4.2.4.ebuild b/dev-python/wxpython/wxpython-4.2.4.ebuild
deleted file mode 100644
index cfedabd6bf02..000000000000
--- a/dev-python/wxpython/wxpython-4.2.4.ebuild
+++ /dev/null
@@ -1,141 +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_{11..14} )
-PYPI_NO_NORMALIZE=1
-PYPI_PN="wxPython"
-WX_GTK_VER="3.2-gtk3"
-
-inherit distutils-r1 multilib multiprocessing virtualx wxwidgets pypi
-
-DESCRIPTION="A blending of the wxWindows C++ class library with Python"
-HOMEPAGE="
- https://www.wxpython.org/
- https://github.com/wxWidgets/Phoenix/
- https://pypi.org/project/wxPython/
-"
-# >=4.2.4 has all lowercase sdist
-SRC_URI="$(pypi_sdist_url ${PN} ${PV})"
-
-LICENSE="wxWinLL-3"
-SLOT="4.0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="test webkit"
-RESTRICT="!test? ( test )"
-
-# wxPython doesn't seem to be able to optionally disable features. webkit is
-# optionally patched out because it's so huge, but other elements are not,
-# which makes us have to require all features from wxGTK
-DEPEND="
- >=x11-libs/wxGTK-3.2.7:${WX_GTK_VER}=[gstreamer,libnotify,opengl,sdl,tiff,webkit?,X]
- media-libs/libpng:=
- media-libs/tiff:=
- media-libs/libjpeg-turbo:=
-"
-RDEPEND="
- ${DEPEND}
-"
-BDEPEND="
- app-text/doxygen
- dev-python/cython[${PYTHON_USEDEP}]
- >=dev-python/sip-6.11.1-r1[${PYTHON_USEDEP}]
- test? (
- ${VIRTUALX_DEPEND}
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-PATCHES=(
- "${FILESDIR}/${PN}-4.2.0-flags.patch"
- "${FILESDIR}/${PN}-4.2.1-x86-time.patch"
- "${FILESDIR}/${PN}-4.2.2-setuppy.patch"
- "${FILESDIR}/${PN}-4.2.4-setuptools.patch"
-)
-
-python_prepare_all() {
- if ! use webkit; then
- eapply "${FILESDIR}/${PN}-4.2.0-no-webkit.patch"
- fi
-
- local build_options="build_py --use_syswx --no_magic --jobs=$(makeopts_jobs) --verbose --release"
-
- DISTUTILS_ARGS=(
- --verbose
- build
- --buildpy-options="${build_options}"
- )
-
- distutils-r1_python_prepare_all
-}
-
-src_configure() {
- setup-wxwidgets
-}
-
-python_compile() {
- # Patch will fail if copy of refreshed sip file is not restored
- # if using multiple Python implementations.
- # TODO: Could we do this in python_compile_all() instead? It would
- # save a lot of time.
- DOXYGEN="$(type -P doxygen)" ${PYTHON} build.py dox touch etg sip --nodoc || die
-
- cp "${S}/sip/cpp/sip_corewxAppTraits.cpp" "${S}" || die
-
- eapply "${FILESDIR}/${PN}-4.2.2-no-stacktrace.patch"
-
- distutils-r1_python_compile
-
- # This package's built system relies on copying extensions back
- # to source directory for setuptools to pick them up. This is
- # hopeless.
- find -name "*$(get_modname)" -delete || die
-
- cp "${S}/sip_corewxAppTraits.cpp" "${S}/sip/cpp/" || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # virtx probably
- unittests/test_display.py::display_Tests::test_display
- unittests/test_frame.py::frame_Tests::test_frameRestore
- unittests/test_mousemanager.py::mousemanager_Tests::test_mousemanager1
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardChar
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardKeyDownUp
- unittests/test_uiaction.py::uiaction_KeyboardTests::test_uiactionKeyboardText
- unittests/test_uiaction.py::uiaction_MouseTests
-
- # assertion (TODO)
- unittests/test_aboutdlg.py::aboutdlg_Tests::test_aboutdlgGeneric
- unittests/test_lib_agw_piectrl.py::lib_agw_piectrl_Tests::test_lib_agw_piectrlCtor
-
- # seems to rely on state from a previous test (sigh)
- unittests/test_lib_agw_persist_persistencemanager.py::lib_agw_persist_persistencemanager_Tests::test_persistencemanagerRestore
- unittests/test_lib_agw_persist_persistencemanager.py::lib_agw_persist_persistencemanager_Tests::test_persistencemanagerPersistValue
-
- # requires Spanish localization
- unittests/test_intl.py::intl_Tests::test_intlGetString
-
- # TODO
- unittests/test_tipwin.py::tipwin_Tests::test_tipwinCtor
- unittests/test_lib_pubsub_provider.py::lib_pubsub_Except::test1
- unittests/test_windowid.py::IdManagerTest::test_newIdRef03
- )
- local EPYTEST_IGNORE=()
- if ! use webkit; then
- EPYTEST_IGNORE+=( unittests/test_webview.py )
- fi
-
- rm -rf wx || die
- # We use pytest-forked as opensuse does to avoid tests corrupting each
- # other.
- virtx epytest --forked unittests
-}