summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/automat/Manifest1
-rw-r--r--dev-python/automat/automat-25.4.16.ebuild49
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.37.35.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.37.35.ebuild67
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-1.34.0.ebuild61
-rw-r--r--dev-python/clang/Manifest2
-rw-r--r--dev-python/clang/clang-20.1.3.ebuild54
-rw-r--r--dev-python/kombu/Manifest2
-rw-r--r--dev-python/kombu/kombu-5.5.3.ebuild (renamed from dev-python/kombu/kombu-5.5.1.ebuild)2
-rw-r--r--dev-python/lazy-object-proxy/Manifest1
-rw-r--r--dev-python/lazy-object-proxy/lazy-object-proxy-1.11.0.ebuild49
-rw-r--r--dev-python/lit/Manifest2
-rw-r--r--dev-python/lit/lit-20.1.3.ebuild46
-rw-r--r--dev-python/marshmallow/Manifest3
-rw-r--r--dev-python/marshmallow/marshmallow-3.26.0.ebuild32
-rw-r--r--dev-python/marshmallow/marshmallow-4.0.0.ebuild (renamed from dev-python/marshmallow/marshmallow-3.25.1.ebuild)5
-rw-r--r--dev-python/trimesh/Manifest1
-rw-r--r--dev-python/trimesh/trimesh-4.6.8.ebuild79
-rw-r--r--dev-python/yarl/Manifest1
-rw-r--r--dev-python/yarl/yarl-1.20.0.ebuild67
23 files changed, 539 insertions, 41 deletions
diff --git a/dev-python/automat/Manifest b/dev-python/automat/Manifest
index 46a04a288686..5196f7653b7f 100644
--- a/dev-python/automat/Manifest
+++ b/dev-python/automat/Manifest
@@ -1 +1,2 @@
DIST automat-24.8.1.tar.gz 128679 BLAKE2B 17da0371ac3b7fc46f1521b4ee646395c82838dd811971fcc30e0baf5176686dd914fcbc18be56401e3cbbd92400398c70c46c686b7f9aa26fa2917d70938f28 SHA512 f42344a665f7cf31cf53274e4371c06b008818373a666ab3dfd2874bd9cf9a842c5999f1fa21978e7ccd583ddcadecbf9515d1d1d9b60744164cdc58717fb339
+DIST automat-25.4.16.tar.gz 129977 BLAKE2B 71380c8ef3c9ae90db0b620c70888b0963b48dc1e9bf6e03a0bb1a75fd54c6a224d2b7042b3641daf7e5d2b36bb811ab682eab4ca11d6d4595e47aefdeb0dcb9 SHA512 777e86de51d7197dfd6bf9f4cc88c5a8d0cad5ccc6f83ef58e95c326658429639f39d10b16975422dbe322e4a19f54f8fbca47d1c6f4ee2dcdbb3bf28e67ae33
diff --git a/dev-python/automat/automat-25.4.16.ebuild b/dev-python/automat/automat-25.4.16.ebuild
new file mode 100644
index 000000000000..3274995f9253
--- /dev/null
+++ b/dev-python/automat/automat-25.4.16.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Self-service finite-state machines for the programmer on the go"
+HOMEPAGE="
+ https://github.com/glyph/automat/
+ https://pypi.org/project/Automat/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+IUSE="examples"
+
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/twisted[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ benchmark
+)
+
+python_install_all() {
+ if use examples; then
+ docinto examples
+ dodoc docs/examples/*.py
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ einfo "For additional visualization functionality install both these optional dependencies"
+ einfo " >=dev-python/twisted-16.1.1"
+ einfo " media-gfx/graphviz[python]"
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index f98eb369b493..233b365a04be 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.37.23.gh.tar.gz 920294 BLAKE2B c1bfcb5dd8c883c122b530ac2756c77884d7
DIST boto3-1.37.28.gh.tar.gz 922848 BLAKE2B 134a4054d1142de5f63198f6fd97eef3dc5fe38523e688ccda56960200f2b1cd2ee862d95a275a13744844006e78584d1510850b2873da74d3ebdf53ceecd0a1 SHA512 f794769b083f52dd7e546758fec9a42dbf6fa8e09eef82a631b8d3b9dcb3b449aa85b7e72cb9a1f33c6bcaf89ef2bede4f771110e723efd98b47c9ab5c31c51f
DIST boto3-1.37.33.gh.tar.gz 927758 BLAKE2B ed246a9e8966bfb51a3ef567461a5ec6103cb7e710799db908b5c5e790c09b765a1b977f8b1a0b4f65ecc013178afe1c8e0b03729e1c4ae9f20a22a21e248267 SHA512 373b5eb1340c7da82b3d4e493f63e4b9e4b80fa4fe3a215961ea8c793382efca83de9b3c744456de572c9b6bb7bbb73cffdbc7d892d501da3213ed9073ae2264
DIST boto3-1.37.34.gh.tar.gz 928447 BLAKE2B 6ade9d543c59afba13a523cab308ce655b97862011f73e2b19f71a1a877cb0e5fd67427b95bc22714283595048796dc782df2b2071bee4c5f0c40f0dac35d31b SHA512 36da2ef1bbebfe08e2c9f9dc8ed994e1d7194186aae25c72e676b040f93e56dfad0f1719b90ff6b9fa2ca1176ec9bfdad805b04bd1753cf36335e279f5ab598f
+DIST boto3-1.37.35.gh.tar.gz 929188 BLAKE2B 2c52cb547eb800f445a152e0a3bc870456b127f11701bcb3f9b06b353c644cfa79253652a836e35db5553adbb44b52410c480f3a150283ef8684630a20691a67 SHA512 471519fb2aed853231fea863c48357125e7606b67bb9c796fc551bed0288f04c848e1b906ba90ff1b64bcfe469868f737aa542d44acf83fbf4159b60b3c43184
diff --git a/dev-python/boto3/boto3-1.37.35.ebuild b/dev-python/boto3/boto3-1.37.35.ebuild
new file mode 100644
index 000000000000..dfe05b3d9a81
--- /dev/null
+++ b/dev-python/boto3/boto3-1.37.35.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.11.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 032fa9f293a0..ba8cc8f32a78 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.37.23.gh.tar.gz 14408721 BLAKE2B 6309e847210a3f7f916679078fba54a
DIST botocore-1.37.28.gh.tar.gz 14529730 BLAKE2B aa04a445d45d24ff7dad8553ce19676fc73e6cd852b5ee41c3cc29039aa6b353399ce9e17b8081e21652fd2bb06b1f58822cf1143a0305256c78515f21d64fa9 SHA512 ea757146393a94faee45487d3b0b4ba0927f0d3a5a37349788a2e2a4d1b4950d027d47bc92c3eb021d2253ce80fc4399a5dbfca447382d6b68e49786951fa02f
DIST botocore-1.37.33.gh.tar.gz 14547041 BLAKE2B 65fc9cd205b582dd5b046670dec5708d16e638789edfa3c3c6126f404b83a150210d92bb108156540523b0ed30ad06b5ecaa832ed8c751b99ba49b8cc975e4cd SHA512 e07480e100aa3b58831fb76f58d69e1ccea85c629ce9048909d51072d1b2a66ce10b65f97bfc0b82ba5235257035e85442b31b09a3fe4bbb2dfed7bcbeebfc37
DIST botocore-1.37.34.gh.tar.gz 14549837 BLAKE2B bfa7b68de3bfd1d71396f55f8a7f75bbdf199a034662338e5f7bdb082de120da3a694d906402fce1ba38ac89d9a9857715028409a5d2ca082667f066170a606a SHA512 6a5432b35430edd78a67279d3bb7864c1ee5cb9397a4c5f8a76b251ffa5a2f03c9b4710378f248e4a6fb99567d682dae7d011a9271b67c7d127240c90d1afcfd
+DIST botocore-1.37.35.gh.tar.gz 14551567 BLAKE2B c12d36c1213a05eb1fc616a9b8823409a31df9c33f0f6c0eef4ffeb5c1086cb3e13dd5f1909159ba210dd85e9fd0dff5542aaf006aeefb7fa8b54e3593011252 SHA512 ec3536f9bdc48b9a6f9b21abeefa726bcec4b324591ecafd03dc676ccb3343d4d0e95c3b0b8b3659cf4e3ee73e01c8f680890317da1c756f167fa601e0a83c39
diff --git a/dev-python/botocore/botocore-1.37.35.ebuild b/dev-python/botocore/botocore-1.37.35.ebuild
new file mode 100644
index 000000000000..df85ee0d220c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.37.35.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index 63f80340532b..33f8376638b1 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -3,3 +3,4 @@ DIST cfn_lint-1.32.4.tar.gz 3090585 BLAKE2B 348c0a4326bcd8a7c0c0230d6090774b3001
DIST cfn_lint-1.33.0.tar.gz 3162568 BLAKE2B e2056dc29c6df1b8da62b1ac715ab7360c152ab7287e972f7b65cb2b936332dc07f42dc752089c6e43086fb73ab4ecf9bb2d5706adc4c03dacc84715edbf3ecf SHA512 bf856045ae3a5ce61bb59f50b0d3f445f3ee8e7afef94cc51db807fe02a55e141b83c37750038eb75cc7a9255b2f35c23c57059a8fd955065db4d0a1d52d8379
DIST cfn_lint-1.33.1.tar.gz 3162624 BLAKE2B 24fb34624a6570a04bcb963061784934215194bf87943572218501b1613ae7b68f3e44a604020ba3f610e99e05f2671ef255e915f59d04cacae198a15d320820 SHA512 7bf79c9c5ceadddbadcb8cdc5b72289fc97ef67629def53f09eaffa4fba42f3c5adf69aa6b8b9844bf0dd6ae6e112226ef649adbdd0c38b6ca2fbd1c7b267743
DIST cfn_lint-1.33.2.tar.gz 3163304 BLAKE2B f61d6a55e1fe2edd3229d6e9281b6267b3231afea43376d0ef2046ed941ef1c910c56e1af05b9eec08c8f0bec87fcddc95757a2433e1c46b2c8863280bebae2a SHA512 d935009da692e5003461d9c9f806733d17de426e0598a33a53470d3ee6c8a194c735b542bd346e9b33d462a71a6043f6ae1f8e9ff55cff3b6b942d2f1f49913c
+DIST cfn_lint-1.34.0.tar.gz 3150863 BLAKE2B 83c43e72113cfabc9f3548077fd899dd9f6fd484b9d19d7b10a4a3b1176686715330153d6aaa0d07d681b879f2ce465cfd4da27fdb5104e4f5169ec62b8e6be2 SHA512 89225300054046cbff821d109bddc889b558d3e29d6c6fca619b18083072ebb4ea4e6c0e473b50273b949eab37ae9bf74d08c49610cd0ce39ad40fcbe106f049
diff --git a/dev-python/cfn-lint/cfn-lint-1.34.0.ebuild b/dev-python/cfn-lint/cfn-lint-1.34.0.ebuild
new file mode 100644
index 000000000000..669286dc533a
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-1.34.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.97.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-5[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-77.0.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # different line wrapping somehow
+ test/unit/module/template/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/clang/Manifest b/dev-python/clang/Manifest
index ba49b66e1652..4152b95d916b 100644
--- a/dev-python/clang/Manifest
+++ b/dev-python/clang/Manifest
@@ -11,5 +11,7 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-1cf9f764ac41fb3492e10c78640dd50e616388db.tar.gz 230651433 BLAKE2B b71d459de99a741f9eb5809fcb44e6d9a17d3295bf11755d2b04a83fff6257eb4e5856826581c000e3b2868ff1cfb155ee18c692654f8083af04574d414c8fa2 SHA512 5b8d1e493830b7838b3ca76148dfc2e2af1cbaa660bd80958777698210c3347a1308f0725d40b10f8f12877daf99c4ba4837e4fa857a781ae912ee167369bafd
DIST llvm-project-20.1.2.src.tar.xz 147229028 BLAKE2B 90be4c8b69d44bc3a295f3f63081f999cf35d05e9157ab104d403a5d5b6c3ff97b57a89598d2ec0413988f93a23f97f485b2216bbf0630cade754e9830246621 SHA512 c95e088e471d49c6692c8af1a7e40924467e4c269dada019c44455687c9f0e6a213b9b3ac8afa4e3d20cb3e757afc3400152e7cd06981aeebd61591cac15580d
DIST llvm-project-20.1.2.src.tar.xz.sig 566 BLAKE2B fa4637cd41bddb0425567b17bcb0ba4800ec9a689897610febfba7f49f8218d6aff7bb8f7ecf6bb927397096ca49c0c1817b243e5ba7fc0ba51993ef532dadeb SHA512 d3f6a350ebd9884878442ea202f58328f8e85c30cfb150371e4af7fa8dc560bb421cd0f49f49e6bc95f57de6c06543633f0b2799aab9590750f440e099424e01
+DIST llvm-project-20.1.3.src.tar.xz 147212776 BLAKE2B c738abb66dc82580a8f511829bcf87dd8deb8381bd073cd547e4eb02097c0190fa06488e5500cefce95953315432ee6ae3c103c491d08eca4b019e043691fc12 SHA512 79d6cfd10075ec9d05b9a359c09579e07a2caff9167518519457daee3e37a818100da6712804916880797ecb0b4891b18dc52a03b534e1b9d1d4bb5ba8d5ad1e
+DIST llvm-project-20.1.3.src.tar.xz.sig 566 BLAKE2B 1b584b61f773013f3964dbd0ee026c00e702cfe758acdacc7bffb6793c42eea638cc812bd1a3cddf210a9ad7d98f707d4f1e748d360b66427fded79f24d8610b SHA512 4fd3815cd94113234e66083f955993a95c888cbb89d5baf611b76765511e102af9f1e880cbacc709f0be8785abd5abbfb0ce391793308dfec3c248a9b348e492
DIST llvm-project-f3e6473df46fd920e09e06e57a5549eb8e3a8bd3.tar.gz 229893133 BLAKE2B 20a14a99fb55070c30b05298916875d7f7b5476bc47c72f675204adb62daf1126bc83f2e7e51867042cb0ea415f04ef32653118116d01f666a82dc888fb6e999 SHA512 f11eac15fc1d96232267d588fa1c41ebbff3367b1fccf1cfd43f3290f682b73ffa78f2336a2a155c41ef67cf4e6f43019b152996d790f03acf4b9b732a3cf4b7
DIST llvm-project-fa4ac19f0fc937e30fd7711dad98d0fcdb34f8ba.tar.gz 230556403 BLAKE2B 8fde662380b5a9889cb6399ceeffedf0b42a5b6c329768f2cad15338a4fd4650217057955014de53b56825a6f5770042f5678d8df4118b6310d4d1b12a19c888 SHA512 ef8a3ac7aed43f14b490d198de27f15bad0a63b89273d47daca0aa33a1edf79eecafb26f7f7ec64e6482b99fba5d7e9080c59887e33bb1ce18d8e3ae1938a1ae
diff --git a/dev-python/clang/clang-20.1.3.ebuild b/dev-python/clang/clang-20.1.3.ebuild
new file mode 100644
index 000000000000..1f732ff9189d
--- /dev/null
+++ b/dev-python/clang/clang-20.1.3.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+inherit llvm.org python-r1
+
+DESCRIPTION="Python bindings for llvm-core/clang"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# The module is opening libclang.so directly, and doing some blasphemy
+# on top of it.
+DEPEND="
+ >=llvm-core/clang-${PV}:*
+ !llvm-core/llvm:0[clang(-),python(-)]
+ !llvm-core/clang:0[python(-)]
+"
+RDEPEND="
+ ${DEPEND}
+ ${PYTHON_DEPS}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ llvm-core/clang:${LLVM_MAJOR}
+ )
+"
+
+LLVM_COMPONENTS=( clang/bindings/python )
+llvm.org_set_globals
+
+python_test() {
+ # tests rely on results from a specific clang version, so override
+ # the search path
+ local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
+ local -x CLANG_NO_DEFAULT_CONFIG=1
+ "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
+src_test() {
+ python_foreach_impl python_test
+}
+
+src_install() {
+ python_foreach_impl python_domodule clang
+}
diff --git a/dev-python/kombu/Manifest b/dev-python/kombu/Manifest
index f3dfe8920ab6..11c7d08d1b29 100644
--- a/dev-python/kombu/Manifest
+++ b/dev-python/kombu/Manifest
@@ -1,2 +1,2 @@
-DIST kombu-5.5.1.tar.gz 461398 BLAKE2B c9b26be04e9c2f20ba099d8eb28d6b62fddfbc177510cb92f2b75a3d3e5a4f8453aa3322e0de5e487fa445b7b3a1a24ddcc27c1d83fcf893a303e35f5048d444 SHA512 ddc417107274c2e280b59f994b49f34bb74515dea3e1900b4eeb1426ec65c93b13db859a727b3dc0781d6fe7e84c65397c9ddb41c7647314f0fdf189549e93e3
DIST kombu-5.5.2.tar.gz 461522 BLAKE2B 473c5a413ce497ff2f028873313ef43bb92d4c87d2f119318e36358af1bd60cbcf76ee6c3d387834d7949c9668c35937dad65f6ed5bde96de4a71a7e64a4dce1 SHA512 44dc34066cd68ae604768db8d133defe496e6aae2d6a12af3d45cfa47352120c2549fd528b6fcf64263f6f9d0b4d948b8bd7f14159af3cbf04ae78c7211a3ba3
+DIST kombu-5.5.3.tar.gz 461784 BLAKE2B 92943d69c61e7920018709f40c2d2656bfcd96ca36c673aca62e686a2b240c9535f6a5953581d51de20c0e6697473153b94c37ce2d0c146632183ed36eaac8ee SHA512 0cf17dec475b30cf30169f39d4819f205cc437cc5880de254c19bbf65b9320453ab244187f5b83715ef7e4b1861985097d4d1614c040b9268a018afef5938147
diff --git a/dev-python/kombu/kombu-5.5.1.ebuild b/dev-python/kombu/kombu-5.5.3.ebuild
index 014c78a74a5b..e17dda40b8f5 100644
--- a/dev-python/kombu/kombu-5.5.1.ebuild
+++ b/dev-python/kombu/kombu-5.5.3.ebuild
@@ -22,7 +22,7 @@ IUSE="examples"
RDEPEND="
>=dev-python/amqp-5.1.1[${PYTHON_USEDEP}]
<dev-python/amqp-6.0.0[${PYTHON_USEDEP}]
- dev-python/tzdata[${PYTHON_USEDEP}]
+ >=dev-python/tzdata-2025.2[${PYTHON_USEDEP}]
dev-python/vine[${PYTHON_USEDEP}]
"
BDEPEND="
diff --git a/dev-python/lazy-object-proxy/Manifest b/dev-python/lazy-object-proxy/Manifest
index abb574d0db45..5335085f09e2 100644
--- a/dev-python/lazy-object-proxy/Manifest
+++ b/dev-python/lazy-object-proxy/Manifest
@@ -1 +1,2 @@
DIST lazy-object-proxy-1.10.0.tar.gz 43271 BLAKE2B f2146db4ebb3e48b4af36fa56a1656c3316896eab9e9b9c5450106b18df27a48a04c7ab8609384caf81899f956a20990e54818c836bd20b607766652d9797eca SHA512 0693a2b6d13909580e7b568a030b884f84fc1578b17e49ac4246572e3e8b18c05a2613572f24b908630528ecb606d149a106b46d079f2c42ced5172146e413c5
+DIST lazy_object_proxy-1.11.0.tar.gz 44736 BLAKE2B e620131e34a6862af34aa0bda58f201b0db4a9b94785a4f2f1b27900ce93cce9539c52ac6f8488c94672b7fe3e09965467b568fd596ee4e32b6a88d4763af632 SHA512 1c0fe6a5c8fc549e706109235fc380e45d0ff706d7f0915780f93d1ce19be800bb68983baca9959a80679d10d95e24823ffbd66062f64065364a764737d691d7
diff --git a/dev-python/lazy-object-proxy/lazy-object-proxy-1.11.0.ebuild b/dev-python/lazy-object-proxy/lazy-object-proxy-1.11.0.ebuild
new file mode 100644
index 000000000000..9e502079f859
--- /dev/null
+++ b/dev-python/lazy-object-proxy/lazy-object-proxy-1.11.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2025 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A fast and thorough lazy object proxy"
+HOMEPAGE="
+ https://github.com/ionelmc/python-lazy-object-proxy/
+ https://pypi.org/project/lazy-object-proxy/
+ https://python-lazy-object-proxy.readthedocs.io/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="+native-extensions"
+
+BDEPEND="
+ >=dev-python/setuptools-scm-8[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/ionelmc/python-lazy-object-proxy/pull/79
+ "${FILESDIR}/${PN}-1.10.0-pure-tests.patch"
+)
+
+python_prepare_all() {
+ # No need to benchmark
+ sed \
+ -e '/benchmark/s:test_:_&:g' \
+ -e '/pytest.mark.benchmark/d' \
+ -i tests/test_lazy_object_proxy.py || die
+
+ distutils-r1_python_prepare_all
+
+ if use native-extensions; then
+ unset SETUPPY_FORCE_PURE
+ else
+ export SETUPPY_FORCE_PURE=1
+ fi
+}
diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest
index ba49b66e1652..4152b95d916b 100644
--- a/dev-python/lit/Manifest
+++ b/dev-python/lit/Manifest
@@ -11,5 +11,7 @@ DIST llvm-project-19.1.7.src.tar.xz.sig 438 BLAKE2B 4015140f4ba77de45039bdbdfbaf
DIST llvm-project-1cf9f764ac41fb3492e10c78640dd50e616388db.tar.gz 230651433 BLAKE2B b71d459de99a741f9eb5809fcb44e6d9a17d3295bf11755d2b04a83fff6257eb4e5856826581c000e3b2868ff1cfb155ee18c692654f8083af04574d414c8fa2 SHA512 5b8d1e493830b7838b3ca76148dfc2e2af1cbaa660bd80958777698210c3347a1308f0725d40b10f8f12877daf99c4ba4837e4fa857a781ae912ee167369bafd
DIST llvm-project-20.1.2.src.tar.xz 147229028 BLAKE2B 90be4c8b69d44bc3a295f3f63081f999cf35d05e9157ab104d403a5d5b6c3ff97b57a89598d2ec0413988f93a23f97f485b2216bbf0630cade754e9830246621 SHA512 c95e088e471d49c6692c8af1a7e40924467e4c269dada019c44455687c9f0e6a213b9b3ac8afa4e3d20cb3e757afc3400152e7cd06981aeebd61591cac15580d
DIST llvm-project-20.1.2.src.tar.xz.sig 566 BLAKE2B fa4637cd41bddb0425567b17bcb0ba4800ec9a689897610febfba7f49f8218d6aff7bb8f7ecf6bb927397096ca49c0c1817b243e5ba7fc0ba51993ef532dadeb SHA512 d3f6a350ebd9884878442ea202f58328f8e85c30cfb150371e4af7fa8dc560bb421cd0f49f49e6bc95f57de6c06543633f0b2799aab9590750f440e099424e01
+DIST llvm-project-20.1.3.src.tar.xz 147212776 BLAKE2B c738abb66dc82580a8f511829bcf87dd8deb8381bd073cd547e4eb02097c0190fa06488e5500cefce95953315432ee6ae3c103c491d08eca4b019e043691fc12 SHA512 79d6cfd10075ec9d05b9a359c09579e07a2caff9167518519457daee3e37a818100da6712804916880797ecb0b4891b18dc52a03b534e1b9d1d4bb5ba8d5ad1e
+DIST llvm-project-20.1.3.src.tar.xz.sig 566 BLAKE2B 1b584b61f773013f3964dbd0ee026c00e702cfe758acdacc7bffb6793c42eea638cc812bd1a3cddf210a9ad7d98f707d4f1e748d360b66427fded79f24d8610b SHA512 4fd3815cd94113234e66083f955993a95c888cbb89d5baf611b76765511e102af9f1e880cbacc709f0be8785abd5abbfb0ce391793308dfec3c248a9b348e492
DIST llvm-project-f3e6473df46fd920e09e06e57a5549eb8e3a8bd3.tar.gz 229893133 BLAKE2B 20a14a99fb55070c30b05298916875d7f7b5476bc47c72f675204adb62daf1126bc83f2e7e51867042cb0ea415f04ef32653118116d01f666a82dc888fb6e999 SHA512 f11eac15fc1d96232267d588fa1c41ebbff3367b1fccf1cfd43f3290f682b73ffa78f2336a2a155c41ef67cf4e6f43019b152996d790f03acf4b9b732a3cf4b7
DIST llvm-project-fa4ac19f0fc937e30fd7711dad98d0fcdb34f8ba.tar.gz 230556403 BLAKE2B 8fde662380b5a9889cb6399ceeffedf0b42a5b6c329768f2cad15338a4fd4650217057955014de53b56825a6f5770042f5678d8df4118b6310d4d1b12a19c888 SHA512 ef8a3ac7aed43f14b490d198de27f15bad0a63b89273d47daca0aa33a1edf79eecafb26f7f7ec64e6482b99fba5d7e9080c59887e33bb1ce18d8e3ae1938a1ae
diff --git a/dev-python/lit/lit-20.1.3.ebuild b/dev-python/lit/lit-20.1.3.ebuild
new file mode 100644
index 000000000000..2370c09d76de
--- /dev/null
+++ b/dev-python/lit/lit-20.1.3.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 llvm.org
+
+DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Tests require 'FileCheck' and 'not' utilities (from llvm)
+BDEPEND="
+ test? (
+ dev-python/psutil[${PYTHON_USEDEP}]
+ llvm-core/llvm
+ )
+"
+
+LLVM_COMPONENTS=( llvm/utils/lit )
+llvm.org_set_globals
+
+# TODO: move the manpage generation here (from llvm-core/llvm)
+
+src_prepare() {
+ # flaky test
+ # https://github.com/llvm/llvm-project/issues/72022
+ rm tests/progress-bar.py || die
+
+ cd "${WORKDIR}" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x LIT_PRESERVES_TMP=1
+ local litflags=$(get_lit_flags)
+ ./lit.py ${litflags//;/ } tests || die
+}
diff --git a/dev-python/marshmallow/Manifest b/dev-python/marshmallow/Manifest
index d04f46870f67..2cc05e8f4d13 100644
--- a/dev-python/marshmallow/Manifest
+++ b/dev-python/marshmallow/Manifest
@@ -1,3 +1,2 @@
-DIST marshmallow-3.25.1.tar.gz 217295 BLAKE2B 73f6b1e7430f44bc3ea70c35ae5f5a3d219d6a89b53785ab7c32ec223714cd085822f3f41fef10e5af602ae64fab26d67ba49c2f7ef1f3ac24e8c406e3e18ff1 SHA512 7f67ec90ce4b8933d8e6b3aaac66de314d249b314cde85c2489644271426624136334daaea4aabfda638cb156bcbaf685c9a10e5fd7ecd7f008a0d4bd5a6a72d
-DIST marshmallow-3.26.0.tar.gz 221490 BLAKE2B 72421900002e9c2793c3f27aacbad514d75247e6af6429deec5f9eb7a9ea46c1d2c4d393b43d4ec129b7dfdd60dcde1deeed63ca6851a909f511eb60863f94cd SHA512 6419da36379a5f62978bb66b2b0f12d22dac5b6898ef04c062f529b4327bea9de8ad004325a33a3af035d066e34a6c4ba0f5621388420450023b69cc0a8f9b41
DIST marshmallow-3.26.1.tar.gz 221825 BLAKE2B 37ac0cb401efd046070a406cfbbfb130020dcd0f60e8244f8734b28b9c1a3c151d8550016fb54d83861dd61f7d60c6157469fa575e2df1474f45e70bed7b8cd4 SHA512 b0146313010d03d7c5e4808bfb274e2923df455c34e5d31931a35b76c713dd1e403fdb0da95ba4f0eba3bdb747a57c4f85f296aad870170380e4d54fc6824d1e
+DIST marshmallow-4.0.0.tar.gz 220507 BLAKE2B 0e5256d1a662ccab596491e261d762b7ef58003cd842b9a25fc84f66b6b5b85381fd783465d85c8c3473c66d90d6138a43a94fec3b071a4e9a4b8cfec8a0db64 SHA512 6f0657d02f145722e6fd821d1ad752a2707970b26d7b09b9d63771476b3fefc9af4d1dfc67f253a40b06b641523832758c58de280d59f5009d815f0a4826e1b2
diff --git a/dev-python/marshmallow/marshmallow-3.26.0.ebuild b/dev-python/marshmallow/marshmallow-3.26.0.ebuild
deleted file mode 100644
index 1fe5c6c67a45..000000000000
--- a/dev-python/marshmallow/marshmallow-3.26.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A library for converting to and from native Python datatypes"
-HOMEPAGE="
- https://github.com/marshmallow-code/marshmallow/
- https://pypi.org/project/marshmallow/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND="
- >=dev-python/packaging-17.0[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/marshmallow/marshmallow-3.25.1.ebuild b/dev-python/marshmallow/marshmallow-4.0.0.ebuild
index 1fe5c6c67a45..68665a1169d3 100644
--- a/dev-python/marshmallow/marshmallow-3.25.1.ebuild
+++ b/dev-python/marshmallow/marshmallow-4.0.0.ebuild
@@ -18,13 +18,8 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-RDEPEND="
- >=dev-python/packaging-17.0[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
-"
BDEPEND="
test? (
- dev-python/pytz[${PYTHON_USEDEP}]
dev-python/simplejson[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/trimesh/Manifest b/dev-python/trimesh/Manifest
index 55a4a723b6e7..c195e399c9c5 100644
--- a/dev-python/trimesh/Manifest
+++ b/dev-python/trimesh/Manifest
@@ -1,2 +1,3 @@
DIST trimesh-4.6.5.gh.tar.gz 13625081 BLAKE2B 81c5527ad7cdb1dc78b61a3bfbf2fb3ff6e3b412050b77fdf249a1af7b4be9aacb3bdc19331cc334803eee998be0e5390c3282d400598aa5be3b41fd701ed3f9 SHA512 b1fc5de064fd06c3bf453e507ff6c3e14dcfb2c8d1d909b4a3c2bc2e894e2aac57342b85c0d170b0a161f3ae27b9ca2490df601fb047c1873703cb71ce97f1fa
DIST trimesh-4.6.6.gh.tar.gz 13624837 BLAKE2B 4fa6ae4c23c67a244b94071362c2a6ff8d809982bfdf0889a605a2d2309773a7932c3522687a1fadf41c834167423f67584719fd1805ff88d94fc5b1b0c6066f SHA512 4d1c16fcf91aad40469eadbaa7c8103194d84b4a43fb7cd9064118a08cca9f46944a1349c9d3dc45b034613d7256e243755b3bf453910d6ad8adc8d9050c916b
+DIST trimesh-4.6.8.gh.tar.gz 13624383 BLAKE2B b25d0d5f6adc27ade707fadddb36606b53bed37526e4b8ef0bdfa7353d774e3b42f63ec4af12827921d9a95b37bbb558e3ff650722d043a8eb5342656140d111 SHA512 7b6b063f3a68bc94510ccf194526499095dd7f5737904c703702d2b63725bd8109749adf81b0be0171768511270e6abc30288e194fc9351f968e2ed7abd288c3
diff --git a/dev-python/trimesh/trimesh-4.6.8.ebuild b/dev-python/trimesh/trimesh-4.6.8.ebuild
new file mode 100644
index 000000000000..9a55e3b051f5
--- /dev/null
+++ b/dev-python/trimesh/trimesh-4.6.8.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python library for loading and using triangular meshes"
+HOMEPAGE="
+ https://trimesh.org/
+ https://github.com/mikedh/trimesh/
+ https://pypi.org/project/trimesh/
+"
+SRC_URI="
+ https://github.com/mikedh/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/charset-normalizer[${PYTHON_USEDEP}]
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/networkx[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.20[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pycollada[${PYTHON_USEDEP}]
+ dev-python/pyglet[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ >=dev-python/shapely-1.8.2[${PYTHON_USEDEP}]
+ dev-python/svg-path[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]
+ dev-python/xxhash[${PYTHON_USEDEP}]
+ dev-python/rtree[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mapbox-earcut[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_TIMEOUT=1800
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires manifold3d
+ tests/test_boolean.py::test_multiple_difference
+ # timing nonsense
+ tests/test_bounds.py::BoundsTest::test_obb_mesh_large
+ )
+ local EPYTEST_IGNORE=(
+ # require pyinstrument
+ tests/test_sweep.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
+
+pkg_postinst() {
+ optfeature_header "${PN} functionality can be extended by installing the following packages:"
+ optfeature "making GUI applications with 3D stuff" dev-python/glooey
+ optfeature "2D triangulations of polygons" dev-python/mapbox-earcut
+ optfeature "loading a number of additional mesh formats" dev-python/meshio
+ optfeature "figuring out how much memory we have" dev-python/psutil
+ optfeature "marching cubes and other nice stuff" dev-python/scikit-image
+}
diff --git a/dev-python/yarl/Manifest b/dev-python/yarl/Manifest
index 276635a671e9..7f75c734b272 100644
--- a/dev-python/yarl/Manifest
+++ b/dev-python/yarl/Manifest
@@ -1,2 +1,3 @@
DIST yarl-1.18.3.tar.gz 181062 BLAKE2B 41e0e6173bb257b643d7678e3011af7ea7f6ac8100bd68aae6e5a9af95e36ae95f83c516a11169fd1d1d669742b3a8878267533c81289ec56a66bb0d53b2db25 SHA512 1686c5ef1b5f3e1cebd121abb7916e45f4a9b08d941a80c34861e87f6121187ee7a553a373405a9fef2332177adf55ffe89bc9a3cabbf24e31905357fdeceba3
DIST yarl-1.19.0.tar.gz 184396 BLAKE2B 08e1e1d3aac39a1bace97f3d38f33dfa335309a6a809227d830497fb6fff6c506ff8457ec68de5cfc57f3661e190ecd78fbe2481af7e419d5d889d8f496852e0 SHA512 95cf1f26be8497e39ce150672ac95ff36a4a695b8fbb902edb4811b601cc3f73cf8b72b45625afe957649b7a49d08588db0a7b91b46c449c64c9e55fcbda8e23
+DIST yarl-1.20.0.tar.gz 185258 BLAKE2B 9ffe4d715bcadfa061e4fae7de7c5124c3442abc659cc112b19e02da89691ce13ee434cec1b96be139aca9abbe45afe13d8931a03cea7b41857d43f38cf5f62c SHA512 826bd2d95a8de05630a597b2427a3c37e50b6d44a73d7003ffb20add68abed4742fb5102c7bdfdb69509b39e7e63bf506ffa0f22138715bf9c8c1a3836bb7607
diff --git a/dev-python/yarl/yarl-1.20.0.ebuild b/dev-python/yarl/yarl-1.20.0.ebuild
new file mode 100644
index 000000000000..6159a0fcb9d2
--- /dev/null
+++ b/dev-python/yarl/yarl-1.20.0.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=standalone
+# note: python3_13t is officially supported
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Yet another URL library"
+HOMEPAGE="
+ https://github.com/aio-libs/yarl/
+ https://pypi.org/project/yarl/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions"
+
+RDEPEND="
+ >=dev-python/idna-2.0[${PYTHON_USEDEP}]
+ >=dev-python/multidict-4.0[${PYTHON_USEDEP}]
+ >=dev-python/propcache-0.2.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ dev-python/expandvars[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ local -x YARL_NO_EXTENSIONS=0
+ if ! use native-extensions || [[ ${EPYTHON} != python* ]]; then
+ YARL_NO_EXTENSIONS=1
+ fi
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # benchmarks
+ tests/test_quoting_benchmarks.py
+ tests/test_url_benchmarks.py
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local opts=()
+ # note different boolean logic than for backend (sigh)
+ local -x YARL_NO_EXTENSIONS=
+ if ! use native-extensions || [[ ${EPYTHON} != python* ]]; then
+ YARL_NO_EXTENSIONS=1
+ fi
+
+ rm -rf yarl || die
+ epytest -o addopts= "${opts[@]}"
+}