summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-11-26 07:16:06 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-11-26 07:16:06 +0000
commitf4e04695bcb92ad34025979767e86b66ea8a21e3 (patch)
treee2c5dfec38e5371b01962796feb1359dfd3bb96c /dev-python
parent3adafe6e9c49878e5304ce645a91dc10e2542e19 (diff)
downloadbaldeagleos-repo-f4e04695bcb92ad34025979767e86b66ea8a21e3.tar.gz
baldeagleos-repo-f4e04695bcb92ad34025979767e86b66ea8a21e3.tar.xz
baldeagleos-repo-f4e04695bcb92ad34025979767e86b66ea8a21e3.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.40.59.ebuild2
-rw-r--r--dev-python/boto3/boto3-1.41.4.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.40.59.ebuild2
-rw-r--r--dev-python/botocore/botocore-1.41.4.ebuild67
-rw-r--r--dev-python/calver/calver-2025.10.20.ebuild2
-rw-r--r--dev-python/gmpy2/Manifest2
-rw-r--r--dev-python/gmpy2/gmpy2-2.3.0_alpha2.ebuild45
-rw-r--r--dev-python/kombu/Manifest4
-rw-r--r--dev-python/kombu/kombu-5.5.4.ebuild97
-rw-r--r--dev-python/kombu/kombu-5.6.0_rc2.ebuild92
-rw-r--r--dev-python/kombu/kombu-5.6.1.ebuild (renamed from dev-python/kombu/kombu-5.6.0_rc1.ebuild)0
-rw-r--r--dev-python/krb5/Manifest3
-rw-r--r--dev-python/krb5/krb5-0.9.0.ebuild (renamed from dev-python/krb5/krb5-0.7.1.ebuild)6
-rw-r--r--dev-python/mistletoe/mistletoe-1.5.0.ebuild2
-rw-r--r--dev-python/python-json-logger/python-json-logger-4.0.0.ebuild2
-rw-r--r--dev-python/pyzstd/pyzstd-0.18.0.ebuild2
-rw-r--r--dev-python/regex/regex-2025.10.23.ebuild2
-rw-r--r--dev-python/uv-build/Manifest1
-rw-r--r--dev-python/uv-build/uv-build-0.9.12.ebuild99
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.9.12.ebuild167
23 files changed, 452 insertions, 202 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index f58db06f0dc1..50a2dd305e60 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -6,3 +6,4 @@ DIST boto3-1.40.69.gh.tar.gz 1027290 BLAKE2B 5e68da89d063ee063dc79d3fee9958ea6a8
DIST boto3-1.40.74.gh.tar.gz 1032058 BLAKE2B c24653bac3279f688d240390f53a9070d51d7d13bae6d7179c849c189fe70ddcbf35892ad8ddf6dd77e508ea597901db60ecccc083666aa9178b07d2388ffff7 SHA512 0ab155ccf97335ad29f7d62f4fed3979fffa1b45d2ffa4bf5e949c90c864298179e5c3854ec157a7dfdf2dd9efd91df83307a04060e95b77aa38cfcfe8137033
DIST boto3-1.41.2.gh.tar.gz 1047105 BLAKE2B ac62862f9430604d6056e9ee9c0c6747bc8abd000957365e569d20c96f0672c771c628ce0bd1d644aee6149b22792f455b43f58fce987d5ba00acbfbf56bd7f2 SHA512 98209ea6ded6c1018b98106c89b53d2115fad3de26524f7b9efa0c91f1e4435c9ea2d954c21d8666cb427777ade60bb12a36544d9844dc1d79f925c3206a578f
DIST boto3-1.41.3.gh.tar.gz 1047349 BLAKE2B dbabb10e58a122f654e1b545d966a0f2de31b8fc88ba9b29b71c296fdee6f9e2aefd5061c6c0a05ee52240455af9c9c7ddb374b76400fa4d69fc712f9957fa55 SHA512 2e228ad6a7ee514ed7b588599121719088bb7a5751e713e0971cef9dd44baab3cbd6bc452e39dc66209e3137bbd84605b7c1dfafcf8c88abab1fc655f66a7ff7
+DIST boto3-1.41.4.gh.tar.gz 1047635 BLAKE2B 75e55f4ec2dfb460c1782faf01b896091667ba176c0a31b75e8cfca52f4fc0de3201214ebad798be793936d540e2042f177faf1a35abd4782b3dadfb96b40eb2 SHA512 a391726e7016d314b52e79ae7847929e36e856ae0dfb6be2d552d8a8b29c5e8ef2c9ab7fc603dae348918a055ae6dbb68b83d1899b5375fec45b9244623cf77c
diff --git a/dev-python/boto3/boto3-1.40.59.ebuild b/dev-python/boto3/boto3-1.40.59.ebuild
index cb388ebe6570..24ee9302a8e6 100644
--- a/dev-python/boto3/boto3-1.40.59.ebuild
+++ b/dev-python/boto3/boto3-1.40.59.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
>=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
diff --git a/dev-python/boto3/boto3-1.41.4.ebuild b/dev-python/boto3/boto3-1.41.4.ebuild
new file mode 100644
index 000000000000..217620928fd0
--- /dev/null
+++ b/dev-python/boto3/boto3-1.41.4.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_{10..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 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.15.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 ae45f6a906fc..9bcbf4eeec6c 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -6,3 +6,4 @@ DIST botocore-1.40.69.gh.tar.gz 15265787 BLAKE2B c567c9d2cd25d98e7055b829ca33765
DIST botocore-1.40.74.gh.tar.gz 15284643 BLAKE2B 585f072a5ec39c12e3f74a272b0c5ed7d07d1f69b704058d9154da2c12753008b57c5c1c05e7cc982aa4cf28060aa20c62f7ecb6874534b109e409f3b2fcf05c SHA512 c17d51212481e5e3c4af912679894fb73ae4084d983cc086e99ffa7b3522723ce7bf82e6745cc55cc1db9d2ae1657d0e1a74cbd3b06653e7fc1987125667b18d
DIST botocore-1.41.2.gh.tar.gz 15504253 BLAKE2B 3c3967e3876ec2529ed0fbd192594f963ebc75f27f196188456a3f4999187b92072224da7d0d91d3dba44c109a74eb35229062e61f161d30f5fad69fcd6097ae SHA512 47cbae2cd1c729fbe6ef55ef5ad6102f636dfb62dd4b4011ad8d163dfdd038d94201b49e48847fed4130e5523b0279b921eedcb94ee4611f42e6aa102bb3705f
DIST botocore-1.41.3.gh.tar.gz 15508146 BLAKE2B ee0ef8eeb86c0ed90b30b2bf9fa180e300f015ebc219b58b975e4f835eeed7b411a491aca6de9628b53538d308f20985dfce249f0f3a9bc37d72058f1c36f371 SHA512 09a00793df98c337d6e9a8ed67841af64a95b701f1b54675f764ba6553549efb7f27061ecc5d7f8b3b3affccb20d4044d052648fc3a913b4e5cb901a7d129118
+DIST botocore-1.41.4.gh.tar.gz 15518786 BLAKE2B 3941223f02cc709f3388b725b15eb6b563f134c14beb8084a19899efa1acb4a8f93e44e4a747f9dbbe53f3f4a7b347e7311f381afae6f210a7e45aeda97379c0 SHA512 77ec108112da6e31e62f923c465a33e621257b497732da142fae90df4ec39a37f37cfaa056ea41dfe0858227221aa54db79c33fbd4cb42745bc3467a85f5c4a9
diff --git a/dev-python/botocore/botocore-1.40.59.ebuild b/dev-python/botocore/botocore-1.40.59.ebuild
index ee8074e67dce..83ae573e7294 100644
--- a/dev-python/botocore/botocore-1.40.59.ebuild
+++ b/dev-python/botocore/botocore-1.40.59.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
<dev-python/jmespath-2[${PYTHON_USEDEP}]
diff --git a/dev-python/botocore/botocore-1.41.4.ebuild b/dev-python/botocore/botocore-1.41.4.ebuild
new file mode 100644
index 000000000000..ee8074e67dce
--- /dev/null
+++ b/dev-python/botocore/botocore-1.41.4.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_{10..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 ~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_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/calver/calver-2025.10.20.ebuild b/dev-python/calver/calver-2025.10.20.ebuild
index ac46a1181e32..c7e280fc5897 100644
--- a/dev-python/calver/calver-2025.10.20.ebuild
+++ b/dev-python/calver/calver-2025.10.20.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
BDEPEND="
test? (
diff --git a/dev-python/gmpy2/Manifest b/dev-python/gmpy2/Manifest
index b97be8bd6e79..5d6d8c3ae671 100644
--- a/dev-python/gmpy2/Manifest
+++ b/dev-python/gmpy2/Manifest
@@ -1,2 +1,4 @@
DIST gmpy2-2.2.1.tar.gz 234228 BLAKE2B 80188c6abd30ee5b5ebc4d233d3d97dd78be7f9d21d0649429e87b23d3e6d8b5b9269c792d481f24bd3b43d28e012bdd64ee6bb5d0137e3ac759742c845186c1 SHA512 2a3dc011295a373e10455e1f133aa3063cff24cdac0151cee9f29ce5855c3e44c3e3aab61bf13c11c9df1147b9183c6c387db1cb4dcb270b9dce1a9cb521f5dc
DIST gmpy2-2.3.0a1.tar.gz 244673 BLAKE2B 83ea701d248c610d9b9bc592e45e7cad4e5b8f73c916e05cde700e76e224cb9d40208d7cdf208c1862aa511708c5059f5dba007f1cfbf27cdf7f4a3259f9061a SHA512 caf0ac50e07b62e403c137311c8dff8b2a13c2da43817ec575454e5c6f423ff2ddb73b16f48cc42b54bbf589ca6ae8dd260a911929c7c0736b4a7b2ee840cf31
+DIST gmpy2-2.3.0a2.tar.gz 277418 BLAKE2B 92bdcef15d93c55c413c3fcab8bc4ba0f3460d60fc4ad78022cd7cb6c4f5436e22696e16bb3b869bfe9ace7f6d687c701befb9590c99b929c85bddc1c12d7d42 SHA512 b6277303c4c451ee01cf8a20bf810e407a2c3055f9990d2e5cb6555c7ea438cd268e7b69ad442b75d566abdbd5030e086dfdd982790e20792d86b957b515ba37
+DIST gmpy2-2.3.0a2.tar.gz.provenance 9305 BLAKE2B 0a3e1ad0910a8c0067df63c03f2bad141e5e8f46f4a6867ed1ab0b9e673094631ae28d06e06ff784d351b258aca521b599707f1a2fa3507b5b2206c0277873aa SHA512 5e9b97f8b6bdc7f589a90c0dac0237303f4a2f9ba7a1e4d2a15fbacccf0c5df057bc8584f3be87a065dca1ac83f2c1c94291bf7ff5a65f19a6bf2b9b36886a95
diff --git a/dev-python/gmpy2/gmpy2-2.3.0_alpha2.ebuild b/dev-python/gmpy2/gmpy2-2.3.0_alpha2.ebuild
new file mode 100644
index 000000000000..9e4f3ce8be38
--- /dev/null
+++ b/dev-python/gmpy2/gmpy2-2.3.0_alpha2.ebuild
@@ -0,0 +1,45 @@
+# 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
+PYPI_PN="gmpy2"
+PYPI_VERIFY_REPO=https://github.com/gmpy2/gmpy2
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for GMP, MPC, MPFR and MPIR libraries"
+HOMEPAGE="
+ https://github.com/gmpy2/gmpy2/
+ https://pypi.org/project/gmpy2/
+"
+
+LICENSE="LGPL-3+"
+SLOT="2"
+
+DEPEND="
+ >=dev-libs/mpc-1.0.2:=
+ >=dev-libs/mpfr-3.1.2:=
+ dev-libs/gmp:0=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-python/mpmath[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ rm -rf gmpy2 || die
+ epytest
+}
diff --git a/dev-python/kombu/Manifest b/dev-python/kombu/Manifest
index c4dcc988394b..242b291f4abc 100644
--- a/dev-python/kombu/Manifest
+++ b/dev-python/kombu/Manifest
@@ -1,4 +1,2 @@
-DIST kombu-5.5.4.tar.gz 461992 BLAKE2B 7c81ddd2c151b7abd984c2523e7855785796db23de5c1a43348870019de26079fb9b6475a5174ceea6ca461188cff4a8fe4da76d95345ac611a13d29c3a9848f SHA512 f3227303aa7ad1a4bd480c601f99f7b4ae2db6d3790defd02b4a9e4ccd6875630a9e6582f65f334a04a5111c456c489395fc4af5b2dd4a557e6aa47616859668
DIST kombu-5.6.0.tar.gz 470557 BLAKE2B ca24998244e53cba0a84270e606ecc7b7b2759f93ef7d4018b92916098243054aa4230883e9bdb956d1166c5ec387da22e7118e018267d343b090ca37ecd67a3 SHA512 a69c835a44a2307803c708ade77ff49d0d016f4d9fa19f2881499cbf4a24b981ed8b6a2e50d5ebb2482508303110cc3d14695dd69d30cd9b00875992605e66ec
-DIST kombu-5.6.0rc1.tar.gz 470754 BLAKE2B 8b059617ff7cc846bcb7800bfd74b2d70637e636369dc47f149dd96d81c40bc2ae32d447c46ea625754d9c2ad2246db82b4c400493d9199e5c09ee8232b4c4d6 SHA512 a1b86d5a2b30d23b40b5eccbb4af4e40965d7da0e4fc793aa3abd733152cd4378002334267a091d27dbf607701ec76764c05c6cf4888817f06e72e6a7e15f7ed
-DIST kombu-5.6.0rc2.tar.gz 470604 BLAKE2B ba02d700cae49e1daab5b1f3cd0a95fdef086a0a4b992c83a0cca0ace0c676fc225f7494392d511ad7fcafeba8bd10b3169be6dd67ac78b411e6bbcf51d4951b SHA512 a1425bb5523a71e185544f4d295caf55b412cf767a5aef65b6783c3dfe9c5af960805675ccb6d09b24bf278ed63afcfee4716e3184eacc98e89fce5207b2c93f
+DIST kombu-5.6.1.tar.gz 471548 BLAKE2B aab4d6a9a9b6d4f9a7c874e3998a4d05d1cce9e5ac02126a85ff3de6b6bde494354cf859facef5220528e929919b3c01c23fd5483a7f33558835df3554f1f535 SHA512 0f62917cf2a9ea8231b1709e63198aa8abe29b270ac70e70de7728e5fd90fab60f9663015965b6a67e0a03bbd6a129ab0fefbbd56775d74485b1684f8694db12
diff --git a/dev-python/kombu/kombu-5.5.4.ebuild b/dev-python/kombu/kombu-5.5.4.ebuild
deleted file mode 100644
index ae6f1afc329a..000000000000
--- a/dev-python/kombu/kombu-5.5.4.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# 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_{10..14} )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="AMQP Messaging Framework for Python"
-HOMEPAGE="
- https://github.com/celery/kombu/
- https://pypi.org/project/kombu/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="examples"
-
-RDEPEND="
- >=dev-python/amqp-5.1.1[${PYTHON_USEDEP}]
- <dev-python/amqp-6.0.0[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- >=dev-python/tzdata-2025.2[${PYTHON_USEDEP}]
- dev-python/vine[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- app-arch/brotli[python,${PYTHON_USEDEP}]
- >=dev-python/boto3-1.22.2[${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- >=dev-python/msgpack-0.3.0[${PYTHON_USEDEP}]
- dev-python/pycurl[${PYTHON_USEDEP}]
- >=dev-python/pymongo-4.1.1[${PYTHON_USEDEP}]
- dev-python/pytest-freezer[${PYTHON_USEDEP}]
- dev-python/zstandard[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- >=dev-python/redis-4.2.2[${PYTHON_USEDEP}]
- dev-python/sqlalchemy[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/sphinx-celery
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # unpin deps (notably tzdata, sigh)
- > requirements/default.txt || die
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO
- t/unit/transport/test_redis.py::test_Channel::test_connparams_health_check_interval_supported
- t/unit/transport/test_redis.py::test_Channel::test_global_keyprefix_transaction
- # bad filename assumption?
- t/unit/asynchronous/aws/test_connection.py::test_AsyncHTTPSConnection::test_request_with_cert_path_https
- )
- local EPYTEST_IGNORE=(
- # obsolete Pyro4
- t/unit/transport/test_pyro.py
- # unpackaged azure
- t/unit/transport/test_azurestoragequeues.py
- # unpackage google-cloud
- t/unit/transport/test_gcpubsub.py
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
-
-python_install_all() {
- if use examples; then
- docompress -x "/usr/share/doc/${PF}/examples"
- docinto examples
- dodoc -r examples/.
- fi
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature "Amazon SQS backend" "dev-python/boto3 dev-python/pycurl"
- optfeature "Etcd backend" dev-python/python-etcd
- optfeature "MongoDB backend" dev-python/pymongo
- optfeature "Redis backend" dev-python/redis
- optfeature "sqlalchemy backend" dev-python/sqlalchemy
- optfeature "yaml backend" dev-python/pyyaml
- optfeature "MessagePack (de)serializer for Python" dev-python/msgpack
- optfeature "brotli compression" "app-arch/brotli[python]"
- optfeature "zstd compression" dev-python/zstandard
-}
diff --git a/dev-python/kombu/kombu-5.6.0_rc2.ebuild b/dev-python/kombu/kombu-5.6.0_rc2.ebuild
deleted file mode 100644
index 8da2e4374862..000000000000
--- a/dev-python/kombu/kombu-5.6.0_rc2.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# 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_{10..14} )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="AMQP Messaging Framework for Python"
-HOMEPAGE="
- https://github.com/celery/kombu/
- https://pypi.org/project/kombu/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="examples"
-
-RDEPEND="
- >=dev-python/amqp-5.1.1[${PYTHON_USEDEP}]
- <dev-python/amqp-6.0.0[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- >=dev-python/tzdata-2025.2[${PYTHON_USEDEP}]
- dev-python/vine[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/boto3-1.22.2[${PYTHON_USEDEP}]
- app-arch/brotli[python,${PYTHON_USEDEP}]
- dev-python/hypothesis[${PYTHON_USEDEP}]
- >=dev-python/msgpack-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/pycurl-7.43.0.5[${PYTHON_USEDEP}]
- >=dev-python/pymongo-4.1.1[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- >=dev-python/redis-4.2.2[${PYTHON_USEDEP}]
- dev-python/sqlalchemy[${PYTHON_USEDEP}]
- dev-python/zstandard[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=( pytest-freezer )
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/sphinx-celery
-
-EPYTEST_DESELECT=(
- # TODO
- t/unit/transport/test_redis.py::test_Channel::test_connparams_health_check_interval_supported
- t/unit/transport/test_redis.py::test_Channel::test_global_keyprefix_transaction
- # bad filename assumption?
- t/unit/asynchronous/aws/test_connection.py::test_AsyncHTTPSConnection::test_request_with_cert_path_https
-)
-EPYTEST_IGNORE=(
- # obsolete Pyro4
- t/unit/transport/test_pyro.py
- # unpackaged azure
- t/unit/transport/test_azurestoragequeues.py
- # unpackage google-cloud
- t/unit/transport/test_gcpubsub.py
-)
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # unpin deps (notably tzdata, sigh)
- > requirements/default.txt || die
-}
-
-python_install_all() {
- if use examples; then
- docompress -x "/usr/share/doc/${PF}/examples"
- docinto examples
- dodoc -r examples/.
- fi
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature "Amazon SQS backend" "dev-python/boto3 dev-python/pycurl"
- optfeature "Etcd backend" dev-python/python-etcd
- optfeature "MongoDB backend" dev-python/pymongo
- optfeature "Redis backend" dev-python/redis
- optfeature "sqlalchemy backend" dev-python/sqlalchemy
- optfeature "yaml backend" dev-python/pyyaml
- optfeature "MessagePack (de)serializer for Python" dev-python/msgpack
- optfeature "brotli compression" "app-arch/brotli[python]"
- optfeature "zstd compression" dev-python/zstandard
-}
diff --git a/dev-python/kombu/kombu-5.6.0_rc1.ebuild b/dev-python/kombu/kombu-5.6.1.ebuild
index 8da2e4374862..8da2e4374862 100644
--- a/dev-python/kombu/kombu-5.6.0_rc1.ebuild
+++ b/dev-python/kombu/kombu-5.6.1.ebuild
diff --git a/dev-python/krb5/Manifest b/dev-python/krb5/Manifest
index a812468db31b..570886819f98 100644
--- a/dev-python/krb5/Manifest
+++ b/dev-python/krb5/Manifest
@@ -1,2 +1,3 @@
-DIST krb5-0.7.1.tar.gz 235732 BLAKE2B ea3a984fddf4fe17a06cebeacaeefbb8523f58453178c2f302f58cb3035197b7965f6c5e6aa60473e85102701fc314ff83d6ef450027820301dc2f5a492fffa9 SHA512 63ed8e2ae8afb2ea5c6f6ac0604085da813f11e84f12a45fd4bf936af70d1c931eca2f81d52cc44c20dd91db7c2f65fb2985df837bd328e7966030e2403a80a9
DIST krb5-0.8.0.tar.gz 235540 BLAKE2B f36c1ceedcd7187ea0562789aaf6a147df0078a669729b1e165cb060871f9b45fc594b85bb975d818820cb1203e048abec7a169ca9b8ed1c5b84d830193731d0 SHA512 de4ea8b86acc31b88de5c47454be0901614cb9fe0f53516b96616e46324f689723beee56c49c4fb0bbff97ea7b85a15a0874c69670b5e8bf741a9963439af712
+DIST krb5-0.9.0.tar.gz 236761 BLAKE2B 8b1b35b04ab066d43375aecbe64c2fb361a1ca98649da10f4c32765ae51dacaef6c4a583aa50c34e7b1b3b7b6d2a03019a6724d6230bf8702169d365cb8de7ef SHA512 6f0325ab3415d1719dcc5530f6ee42082ba52035fa13ba23748d399fb1c2f5c92378064517d8b0f58909f1c10d1516b8745eb5911c8f285ce7dba7ecb1a6d797
+DIST krb5-0.9.0.tar.gz.provenance 9378 BLAKE2B f9a6ffdd14dc88d96eee4894f9d85d48cca279365a533f49b1d69fe5709f4c9521d453425a8826702b0082fc5884bc914d795d49cc40456034935fff3f0f760b SHA512 3e5c7e8581731f522f5457df5122de9ae9d5d6b3435c6925739af469bce40d70e564486670682b046b931ffedc1e31dbb9c4495daf5f398d988c5db4433e6833
diff --git a/dev-python/krb5/krb5-0.7.1.ebuild b/dev-python/krb5/krb5-0.9.0.ebuild
index 9e8650efb1bc..97303a8817c7 100644
--- a/dev-python/krb5/krb5-0.7.1.ebuild
+++ b/dev-python/krb5/krb5-0.9.0.ebuild
@@ -5,6 +5,7 @@ EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
+PYPI_VERIFY_REPO=https://github.com/jborean93/pykrb5
PYTHON_COMPAT=( python3_{10..14} )
inherit distutils-r1 pypi
@@ -17,16 +18,17 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~riscv x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
RDEPEND="
virtual/krb5
"
BDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
+ >=dev-python/cython-3.1.3[${PYTHON_USEDEP}]
test? (
dev-python/k5test[${PYTHON_USEDEP}]
)
"
+EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/mistletoe/mistletoe-1.5.0.ebuild b/dev-python/mistletoe/mistletoe-1.5.0.ebuild
index 7561e7c6af14..ed4a45608e27 100644
--- a/dev-python/mistletoe/mistletoe-1.5.0.ebuild
+++ b/dev-python/mistletoe/mistletoe-1.5.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
# NB: pygments is technically optional but we like syntax highlighting
RDEPEND="
diff --git a/dev-python/python-json-logger/python-json-logger-4.0.0.ebuild b/dev-python/python-json-logger/python-json-logger-4.0.0.ebuild
index 79978ebd788f..a367425cefae 100644
--- a/dev-python/python-json-logger/python-json-logger-4.0.0.ebuild
+++ b/dev-python/python-json-logger/python-json-logger-4.0.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~arm arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
BDEPEND="
test? (
diff --git a/dev-python/pyzstd/pyzstd-0.18.0.ebuild b/dev-python/pyzstd/pyzstd-0.18.0.ebuild
index 3711a81af211..935e027619f9 100644
--- a/dev-python/pyzstd/pyzstd-0.18.0.ebuild
+++ b/dev-python/pyzstd/pyzstd-0.18.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 ~x86"
DEPEND="
app-arch/zstd:=
diff --git a/dev-python/regex/regex-2025.10.23.ebuild b/dev-python/regex/regex-2025.10.23.ebuild
index d076ab6792f6..d3302588d4e0 100644
--- a/dev-python/regex/regex-2025.10.23.ebuild
+++ b/dev-python/regex/regex-2025.10.23.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
IUSE="doc"
distutils_enable_tests unittest
diff --git a/dev-python/uv-build/Manifest b/dev-python/uv-build/Manifest
index 52b14caf18eb..e1b4b67bd5ea 100644
--- a/dev-python/uv-build/Manifest
+++ b/dev-python/uv-build/Manifest
@@ -1,5 +1,6 @@
DIST uv_build-0.9.10.tar.gz 335784 BLAKE2B 17b88b25081dcd8f95aa1e35f871663ba7f5910ed78c2d2aa09cefca9d4a7db26bf0731fe2ff468ff4ec049c251485116fe38ba48c8b04ea218bbe213d6c7253 SHA512 0a202b67a19054bd01830d2cfb3382cde90c0edf54118b179ef2bf0d4ea04730dafb7683e4bf932c8a3c7779c35b0deec96bb0fa60cde8baf6a39e6c16420378
DIST uv_build-0.9.11.tar.gz 336407 BLAKE2B 19177207f53ecab919ee875ae5aecd77f76dc971841a2f68f388e69cdfbb4d181a544e1fda08cccea66774839ec7e64600f9cf50d04025b1c827e85777c0f5f7 SHA512 1d0f26d05d1a418c32f4a78de50b256be01de0e4e527f68269ec3f245cbaf943a3f3f140d630a304c9e87463b8202b152e788efc95aa0ca0b87430fa13697079
+DIST uv_build-0.9.12.tar.gz 338778 BLAKE2B b11a99bcd9f130107a2529a204bfcb64a3bdc7116a5f8dacef285f08db1cc999ad55b8b791c820dd6c16ff9d6941c9090dd9d58ffafb3d97da6031c350a736c8 SHA512 84e5231654e133032909a30375ab6284fcad3770140d9e9b9d14ea0fc261f380b7b60be3785acb51e2f09e3cdee1f9c76c8af38daa9ca42513c9728725d6ff44
DIST uv_build-0.9.4.tar.gz 332506 BLAKE2B 3b65cc80192cf3abc33bcf01735c8b7f937a12f2dcd0557d0ae255ce8bd4cb7dbb15522e73802be0e17ac10c4acad6f9075f12d5f853bb1881b0c13f1d120b33 SHA512 c3be52cfbc1cf5a229df91d9e1125925a534e3fca3041e29a16edd2334fa28b055c73e21a6bd1a3d1d63924cf8f112645300530e8cb6139fb549499ca672070f
DIST uv_build-0.9.6.tar.gz 332253 BLAKE2B 2c3fa23dbe36b0866a3a3194b07ee1212cb00acd785c375646c3eb6c97a63435f28c9e934f56c8d6feeec145aace1aad37550b85ae2a611f521fc25a4c7d3bc1 SHA512 e8d8bbd46c92722261722f3d8865b2b24e695edf52652c1d1310adae3cb437ebef5397feda90e3bf863394ca75cf3024eb90a5f80b2b92af24ede4e2f81b0ce1
DIST uv_build-0.9.7.tar.gz 332992 BLAKE2B 069e615f41e78098b61cc073cb01bc77e0e6778f3054ccfcf36985be3755d7e819cc1bd151e875db109461f423cc855cd336467015ec7103e47346f230564679 SHA512 d61249de00640f6e0ab62ab440a8aae1802acbd6cf8ecb8aca3efe26361d7191d057735ab91c174c5772fc04accf0ae3281f447d010c99e2f458829f4c618abc
diff --git a/dev-python/uv-build/uv-build-0.9.12.ebuild b/dev-python/uv-build/uv-build-0.9.12.ebuild
new file mode 100644
index 000000000000..fe8e9650d15e
--- /dev/null
+++ b/dev-python/uv-build/uv-build-0.9.12.ebuild
@@ -0,0 +1,99 @@
+# Copyright 2025 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_{10..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 ~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}/
+uv_build-${PV}/README.md
+uv_build-${PV}/pyproject.toml
+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/uv/Manifest b/dev-python/uv/Manifest
index af56fd1f7fd7..2e821038c2f4 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -7,6 +7,8 @@ DIST uv-0.9.10-crates.tar.xz 46325424 BLAKE2B 44d29933a889fc6cdd94d78a253d238b38
DIST uv-0.9.10.gh.tar.gz 4791512 BLAKE2B 3e4b6499992c7a14741d3c05a9a99703b37fcdeda5f9f8db3becaa2c44e3504c1f0170ca12e2c45cd8a6551cb5aa2b6d59a0ff8ade6e7c3341e5941a2ddd56fa SHA512 d5359ab37c2e7b91ded7875544b637cf1d46164349e36004a801e75aa501dfb5fa68458e7b94a1de947ef1cf3d0c18990695c8d2a2ca37d84f5ecc78ea854689
DIST uv-0.9.11-crates.tar.xz 46466972 BLAKE2B 2d953b33911283ba96474a6d265043ead6b7340b3203c3b5fe98e7eacca0d28f9729080ec40b6174b56300e0fcc1b6fdb1e11a0cd42cfb28a866836498ab01b8 SHA512 ad4e0c987c0ad4942680ba7c848c3c87b6c02e9292573f84c0fdfc4165e8a4002f50b7f254fb2e617ff61fb276c794fe6a447ed0fbd1ebe2abd8580b82683598
DIST uv-0.9.11.gh.tar.gz 4813209 BLAKE2B 3849e3f6156623b7f56aa215b081f6b16675e7f588f21b08a6cdb4738b1bf4866e1ed0ff386a2ba11b1df9bc39b6f7ab1bf253d59c2062ea6c1e5f95a2d4f7a2 SHA512 a3399fa2f68c59c777743990e1b76db7da172486c32e45349ca9ccb27a2f29c6d691f23ecd6095f8805f58a2867925485fed4d0d3a367c592111f79cf62e7d03
+DIST uv-0.9.12-crates.tar.xz 46463392 BLAKE2B 54b504453381a619537155898ab8c19d330e1b7207df43f1c38dec644031e94ed4562219d69c55a4907f33a5ca8b5d6871af5d016e7ffbcf77416477ad81640e SHA512 bbbc5a1713aae4ca5b035a77a5bba96e33cdf67350bcfa2a05058e8d26004b43444ecf99b3a836afd88e2b81465069a63b602fb4868c2238752239d05628bc4a
+DIST uv-0.9.12.gh.tar.gz 4855216 BLAKE2B dc25a9a6fb6ffe6010a6be358d5b3a14eab9cd459f7b563dfa7d18d840d1fdb2d5e9b38478222c7c9e5c1bee7e824b913f4d482cdfd8b53c4671a22e222abb54 SHA512 fa7e8dd846c328c2ad5d7d7c2163432f031286cdc485a3754d8068acc84568a877dc3daf9052d674b69c5b6c54347c612a8ba13dcba100418318b46206464ff0
DIST uv-0.9.4-crates.tar.xz 46093644 BLAKE2B bdce4b138718b91a67ccb36e6d8839358ab2ddeeedec3017bc245b0717e32d890a41f8c9c831983681ec715ce458efa8d43356c189b9b7457df3e71122924e3f SHA512 7047b68db7e05abb6a399250a4a531499985d42f12eff61ad1557823b37d62576b38b51ccbe39a02bc9a98af6341de728466b262c49bb48dd30abb64eb804660
DIST uv-0.9.4.gh.tar.gz 4749319 BLAKE2B b46d44830f7a2a621f3ab420db85e9d999b7c42ddebc21403ea2f11e819e8295af37049f1529848a3fd83ef87ac0de26ce1e1c03bf4177c3032b9adfd6dfe1e8 SHA512 ae11c1e777e3d0e036f0a665e2edfb9a4b5b50a9e107d795113b626bc16d406d3fca12e8a133185e54279b2a64f8e3d276372cefc9a96b2ac5f1ed0ece2c10b0
DIST uv-0.9.6-crates.tar.xz 45696768 BLAKE2B 96cff52c0e5477c4e9648e3863d32bde4b34a1a46b6d96703c48fe340b655319e951471aa6403c09818c313a59b0e54804467efa7e13a8410de34299a98f077b SHA512 46964460f3404304faefd1758bb07bcddf1d48efbdd2b890ddb0d2623841e1a0c86108ac3c9312ed8e2f8fcaefbf9b022b57cd6074fdb6d52f43c35e3b3c2d32
diff --git a/dev-python/uv/uv-0.9.12.ebuild b/dev-python/uv/uv-0.9.12.ebuild
new file mode 100644
index 000000000000..253d1ec065af
--- /dev/null
+++ b/dev-python/uv/uv-0.9.12.ebuild
@@ -0,0 +1,167 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+RUST_MIN_VER="1.89.0"
+
+inherit cargo check-reqs
+
+CRATE_PV=${PV}
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0
+ CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016
+ ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ dev-lang/python:3.13
+ !!~dev-python/uv-0.5.0
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+ rust_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # force thin lto, makes build much faster and less memory hungry
+ # (i.e. makes it possible to actually build uv on 32-bit PPC)
+ sed -i -e '/lto/s:fat:thin:' Cargo.toml || die
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+}
+
+src_configure() {
+ local myfeatures=(
+ git
+ pypi
+ python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+ local -x COLUMNS=100
+ local -x PYTHONDONTWRITEBYTECODE=
+ # fix tests failing because of our config
+ local -x XDG_CONFIG_DIRS=${T}
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+
+ insinto /etc/xdg/uv
+ newins - uv.toml <<-EOF || die
+ # These defaults match Fedora, see:
+ # https://src.fedoraproject.org/rpms/uv/pull-request/18
+
+ # By default ("automatic"), uv downloads missing Python versions
+ # automatically and keeps them in the user's home directory.
+ # Disable that to make downloading opt-in, and especially
+ # to avoid unnecessarily fetching custom Python when the distro
+ # package would be preferable. Python builds can still be
+ # downloaded manually via "uv python install".
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-downloads
+ python-downloads = "manual"
+
+ # By default ("managed"), uv always prefers self-installed
+ # Python versions over the system Python, independently
+ # of versions. Since we generally expect users to use that
+ # to install old Python versions not in ::gentoo anymore,
+ # this effectively means that uv would end up preferring very
+ # old Python versions over the newer ones that are provided
+ # by the system. Default to using the system versions to avoid
+ # this counter-intuitive behavior.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-preference
+ python-preference = "system"
+ EOF
+}