summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-02-28 19:46:44 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-02-28 19:46:44 +0000
commit4b9f95125b5c774c45668477e8dc5edf306d0753 (patch)
treeb1442ef294cb293d4025b80403901517779aed86 /dev-python
parent7a42e8577d50dc5ee7861983fe0ae2c8a611bc8c (diff)
downloadbaldeagleos-repo-4b9f95125b5c774c45668477e8dc5edf306d0753.tar.gz
baldeagleos-repo-4b9f95125b5c774c45668477e8dc5edf306d0753.tar.xz
baldeagleos-repo-4b9f95125b5c774c45668477e8dc5edf306d0753.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/agate/Manifest4
-rw-r--r--dev-python/agate/agate-1.14.2.ebuild (renamed from dev-python/agate/agate-1.14.0.ebuild)2
-rw-r--r--dev-python/blessed/Manifest1
-rw-r--r--dev-python/blessed/blessed-1.31.0.ebuild52
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.42.59.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.42.59.ebuild67
-rw-r--r--dev-python/google-auth-oauthlib/Manifest3
-rw-r--r--dev-python/google-auth-oauthlib/google-auth-oauthlib-1.3.0.ebuild (renamed from dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.3.ebuild)22
-rw-r--r--dev-python/griffe-inherited-docstrings/Manifest1
-rw-r--r--dev-python/griffe-inherited-docstrings/griffe-inherited-docstrings-1.1.3.ebuild26
-rw-r--r--dev-python/jsonschema-path/Manifest3
-rw-r--r--dev-python/jsonschema-path/jsonschema-path-0.4.0_beta8.ebuild50
-rw-r--r--dev-python/jsonschema-path/jsonschema-path-0.4.3.ebuild (renamed from dev-python/jsonschema-path/jsonschema-path-0.4.1.ebuild)0
-rw-r--r--dev-python/lxml-html-clean/Manifest3
-rw-r--r--dev-python/lxml-html-clean/lxml-html-clean-0.4.2.ebuild31
-rw-r--r--dev-python/lxml-html-clean/lxml-html-clean-0.4.4.ebuild (renamed from dev-python/lxml-html-clean/lxml-html-clean-0.4.3.ebuild)7
-rw-r--r--dev-python/multipart/Manifest1
-rw-r--r--dev-python/multipart/multipart-1.3.1.ebuild22
-rw-r--r--dev-python/openapi-spec-validator/Manifest2
-rw-r--r--dev-python/openapi-spec-validator/openapi-spec-validator-0.8.2.ebuild55
-rw-r--r--dev-python/pypdf/Manifest1
-rw-r--r--dev-python/pypdf/pypdf-6.7.4.ebuild52
-rw-r--r--dev-python/pyqt5/metadata.xml1
-rw-r--r--dev-python/pyqt5/pyqt5-5.15.11.ebuild8
-rw-r--r--dev-python/pytest-check/Manifest1
-rw-r--r--dev-python/pytest-check/pytest-check-2.7.2.ebuild27
-rw-r--r--dev-python/pytest-salt-factories/Manifest1
-rw-r--r--dev-python/pytest-salt-factories/pytest-salt-factories-1.0.5.ebuild88
-rw-r--r--dev-python/python-glanceclient/Manifest2
-rw-r--r--dev-python/python-glanceclient/files/python-glanceclient-4.6.0-test-py3.13.patch66
-rw-r--r--dev-python/python-glanceclient/python-glanceclient-4.11.0.ebuild (renamed from dev-python/python-glanceclient/python-glanceclient-4.9.0.ebuild)13
-rw-r--r--dev-python/python-keystoneclient/Manifest2
-rw-r--r--dev-python/python-keystoneclient/python-keystoneclient-5.8.0.ebuild (renamed from dev-python/python-keystoneclient/python-keystoneclient-5.6.0.ebuild)12
-rw-r--r--dev-python/regex/Manifest2
-rw-r--r--dev-python/regex/regex-2026.2.28.ebuild (renamed from dev-python/regex/regex-2025.11.3.ebuild)4
-rw-r--r--dev-python/uv-build/Manifest1
-rw-r--r--dev-python/uv-build/uv-build-0.10.7.ebuild99
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.10.7.ebuild164
-rw-r--r--dev-python/virtualenv/Manifest7
-rw-r--r--dev-python/virtualenv/files/virtualenv-21.1.0-ensurepip.patch28
-rw-r--r--dev-python/virtualenv/virtualenv-20.35.3-r1.ebuild130
-rw-r--r--dev-python/virtualenv/virtualenv-20.36.0.ebuild133
-rw-r--r--dev-python/virtualenv/virtualenv-21.1.0.ebuild (renamed from dev-python/virtualenv/virtualenv-20.39.0.ebuild)5
-rw-r--r--dev-python/whitenoise/Manifest2
-rw-r--r--dev-python/whitenoise/whitenoise-6.12.0.ebuild (renamed from dev-python/whitenoise/whitenoise-6.11.0.ebuild)4
-rw-r--r--dev-python/whitenoise/whitenoise-6.9.0.ebuild34
49 files changed, 789 insertions, 507 deletions
diff --git a/dev-python/agate/Manifest b/dev-python/agate/Manifest
index 73775e5381cf..6c72e00629d0 100644
--- a/dev-python/agate/Manifest
+++ b/dev-python/agate/Manifest
@@ -1,4 +1,4 @@
-DIST agate-1.14.0.tar.gz 204175 BLAKE2B 859997a6f4e325a4d6ea2c6127bf2d162622ce15d3c4a2239ac213cc0182d2a37722fc91e8f5242b62a0dd0f810364dc3ebdb38e58edfafa0380ee2579df055d SHA512 c6668914bded602c4b689e44b05194db775cd6b0abff4688f9465207db8369d2f94e42d7a9330d61b76f0196d72838c4dedc3b80a882727ebb6220d0d9f0e164
-DIST agate-1.14.0.tar.gz.provenance 9151 BLAKE2B 831ec89ffc6e991624207b06a63cfe9f6f9b00088f7050de50960fd58675052e201f903f5310022acb384af27aefbea59d0a12299787308bce8f28d24b2bc6a0 SHA512 a43af1b073fade52c44e1e8e19f1198e260670e174ad3cd4d8ee25ac68ccf41aa0d91431d0e35698811813ca7ff7a199a621bd5a9bdfc657a698d449c54217e3
DIST agate-1.14.1.tar.gz 204140 BLAKE2B 5bfbf63bed15845d3cb72e8f34545908391fd9a15edc94dc783ba52eb3c877cbde9057d8695cc3ca98790871180c7b44048903ae764004e8810aa6bd42d7ba12 SHA512 7eb046220fdba66db25f5d832f7dc0f5a2a72a561321f5137c09b8ba28c83df794bf4f62e5484246e56d1acf709563d9414af929a9feb8ea21e9353e7fcc5507
DIST agate-1.14.1.tar.gz.provenance 9398 BLAKE2B cf62dc49957c0b77dc510419332e1d0fac8ea9dede570ebc0065591c29abf6d2382a0eb48be04bdba1fad9cf920a2de4cfeca6b2c5c163510b6dbead04c463aa SHA512 f416dd6f9246f14b6fcc2ce31f978dc82eafcbb37e4812ab258dc1737374ebac3b886feefd52e0058872bf1b0ff91261dacd971c8cf4b2a594ae77f953c2ccc3
+DIST agate-1.14.2.tar.gz 204186 BLAKE2B 4fe987e1030d49b35d4ec6af772188ff5fab92b295280ca46fa89479b6cec26de5f9f8622abfb17046eb00fe14ecd97e90fc894f80e985a2f73fda9048cbb17f SHA512 351572afc4d7c9f1911472924c028043bedad04aabdabd49346e167864822a90d5a0c706a26012d8559a3481f782e44497b9a27a46b665981b58069a52c64931
+DIST agate-1.14.2.tar.gz.provenance 9258 BLAKE2B bbeeadd1e10219340227988c3d0b8b76db27f0e3b0cd2409d4716867c7100f1fabb94054e8e68b1c2df163b38cce2d2b68a2fbd9575ed9dfe27de555cd667dea SHA512 07f19634c6e208bae4ba7cd305a8d931f26942bb74711f7b1037fe9641c5d801974e5688d86c19e0e432bf5729e65831f9fc9aea425c4df09cb2ea3b045b4e81
diff --git a/dev-python/agate/agate-1.14.0.ebuild b/dev-python/agate/agate-1.14.2.ebuild
index ea4ff62e0b6f..2464405f554a 100644
--- a/dev-python/agate/agate-1.14.0.ebuild
+++ b/dev-python/agate/agate-1.14.2.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
diff --git a/dev-python/blessed/Manifest b/dev-python/blessed/Manifest
index a99acf4fd8fd..7b7544103247 100644
--- a/dev-python/blessed/Manifest
+++ b/dev-python/blessed/Manifest
@@ -4,3 +4,4 @@ DIST blessed-1.27.0.tar.gz 6761573 BLAKE2B 1549bc7e327cdd445d1c70033e637dbdb35bb
DIST blessed-1.28.0.tar.gz 13950742 BLAKE2B 585b3db3a388db79f30d262187bacd983a6c5b48a19579c5598ec8296ef4443200e1b996dec7aa2df1dfcefc416ba2fee92be178c2f11f85fae9e194666d8888 SHA512 4772e917e2164120867e9ce454ae7bf9b31f90e85367ae5b1c737cb4656cd1c57bf4cf7501223d4306493ba5d03ab73d9c195803865dc33da7366a46b30d3d09
DIST blessed-1.29.0.tar.gz 13950929 BLAKE2B c1b6bbf71ad75f95c566b99bcf83aaa4cd9eb543f97f5dd6b0787ddf63ddcfc6fb1ed78cbf0ff983f36e21977d3a2e999256feba18dac2171be6a7cc2e00bf00 SHA512 943648d9ae52aedb24e6af4f36ea603db836e4b7755935eb04bdeb6ae2c3633551b1f9b30186b5dbff710f6d521eb36904f3c916e72f56f6771d787a7e269431
DIST blessed-1.30.0.tar.gz 13948932 BLAKE2B 4e8411ba7e032f882763e92cf2043d222a0d7299a028a186dc5bf4857717f9456bc8744d7a2a756c721452272aaabb22c0b480f3a2d674026f5aeef872b0c1a6 SHA512 425faf1ecf1ede489774944694754d59d1c4f234f32d4c5bd3afe604acc7ef52077774d39247c08d72548f0b951ea7646dbd41f288ddf34b154d7ccc120d2107
+DIST blessed-1.31.0.tar.gz 13977216 BLAKE2B 59fa4c742d5496836aac63bcb4319c70a1293ce11756d72805c6307b94e2b852236f4d0cdc20bad13f51a6424afdf06b3018ae69ff384c66279676bae58213f4 SHA512 a04571dcc84347488834c44c64bec3e989e0a67e78f7c795d1ae7b252e9f1d2d4795c96ff13c82bfe80b099ec97e071a0a30a7b7737a3f2a72b6e38ea3aa4c40
diff --git a/dev-python/blessed/blessed-1.31.0.ebuild b/dev-python/blessed/blessed-1.31.0.ebuild
new file mode 100644
index 000000000000..5cb638d58c13
--- /dev/null
+++ b/dev-python/blessed/blessed-1.31.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for making terminal apps using colors, keyboard input and positioning"
+HOMEPAGE="
+ https://github.com/jquast/blessed/
+ https://pypi.org/project/blessed/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/wcwidth-0.6[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
+
+EPYTEST_PLUGINS=()
+# tests are flaky with xdist
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # Skip those extensions as they don't have a Gentoo package
+ # Remove calls to scripts that generate rst files because they
+ # are not present in the tarball
+ sed -e '/sphinxcontrib.manpage/d' -e '/sphinx_paramlinks/d' \
+ -e '/^for script in/,/runpy.run_path/d' \
+ -i docs/conf.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fragile to timing
+ tests/test_sixel.py::test_sixel_height_and_width_fallback_to_xtwinops
+ )
+
+ # COLORTERM must not be truecolor
+ # See https://github.com/jquast/blessed/issues/162
+ local -x COLORTERM=
+ # Ignore coverage options
+ epytest --override-ini="addopts="
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 1fed1f3622dd..6f0a72179b59 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -15,3 +15,4 @@ DIST boto3-1.42.55.gh.tar.gz 1088949 BLAKE2B fee5acfd89f82682e0b508dde5f4bc7dfac
DIST boto3-1.42.56.gh.tar.gz 1089923 BLAKE2B 47a20b523662bb4d1db0c7c84f54c560ec0cad5c40b526d70aaa21fea3a22b60a38ffe0fcb16c1b3aa33b2ceaa465b818a135470e6aae17a9cc1c8c16187418c SHA512 b3351b1e77a648b5b8adcc9072ca1cc56f6a409648214576b52a4f35092c00a1c47fb8e2f6a3a67db26d46d0e55bc8549ef4a40834a4dc936f23d5373a644cb0
DIST boto3-1.42.57.gh.tar.gz 1090375 BLAKE2B 1e595744c11b1f0a6ea5f1ce919023706580e7e10d322371286886c7443a2c09bdbe8c79e313f19a2414c4ce1a24cce37c89e9f8ea1c1331320a0103784f7720 SHA512 ab1bd99840c1371ca458cd47a8bc6ecad04abe285cef3fdcf0504be436e7dae20a50b69e5c3215a0ea261bb9860d0faff7c1b6d4bf36d9cec22ae22c540270ec
DIST boto3-1.42.58.gh.tar.gz 1091132 BLAKE2B a1156afe1a294b216117ed842cb638e388c703957a1e7e3eba909229dfdebb53c313bd2562cb63e600c526c35ca62eeaf5593030757211f2ae4d2036fff902c7 SHA512 793a8f22d2b3ab8db2ae8b85f6dbba2920413a1ec5163ee71422d35c7f24680c2c6730f3a8b67bfc92ed3bd9f587f298fda4fe7ffe355d3a6a97f896e1862706
+DIST boto3-1.42.59.gh.tar.gz 1092344 BLAKE2B 90cef2aa61be1e7627f8a1c7b566097a5cf8986d644aec63e4637a5ebc5044bf73fefe4d5cede5cccb4998e846681bcefbe20831a002e415c0471adc17f87beb SHA512 dc1f9d23d90c27adda8736b371000f52c176b51f75513a7178590ea26d71c9ff080f5e4866a56d45cc5541e58eb78c43aa9d034867736be255431c938b3fc485
diff --git a/dev-python/boto3/boto3-1.42.59.ebuild b/dev-python/boto3/boto3-1.42.59.ebuild
new file mode 100644
index 000000000000..6e5f06a012ad
--- /dev/null
+++ b/dev-python/boto3/boto3-1.42.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_{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"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.16.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 41bb702c90c4..2fc1a7ebf33f 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -15,3 +15,4 @@ DIST botocore-1.42.55.gh.tar.gz 15814283 BLAKE2B b97e4be1a5e14706670742fb706e3d8
DIST botocore-1.42.56.gh.tar.gz 15829334 BLAKE2B 534b02792685089ede7ce7c9514a4225d1fc78161847bda26b0772ed9aa3a9bedfd9ce20067b1d207af70eb4e028c5ced23146262bfa313af3d4e184db253a0c SHA512 dd0e7bc7703ebe846562a357fb581654c0c678df882399ec8b6d783b01bbac01f638cbd51a891ced08d97f087a240c7f02adc635dc6974d8a3f1392da19e00df
DIST botocore-1.42.57.gh.tar.gz 15831429 BLAKE2B 894a693b9d4b769011f493fba546fa473ab570dfe3cc31ea4ce4699378295df343f158a9beaadb1724a1b88dce8dd262c29b0dc40f8d0644fd60e98d20a362b6 SHA512 76ebd7f3e442e2b9cde912deeedc15a0d6729413724040b6ef5b490e4dfab4aab9188eb49d5fa84a3535afab67330a827f6f0d51d9c6eac1798c6a6326eeebdd
DIST botocore-1.42.58.gh.tar.gz 15832682 BLAKE2B 66fc32d1a251fe4cdfd5c09a5f5ccc6131bc3b2b0e95e3e977a75aec65b02262b00bdb390f32fcbebd167967a9ba0879ff765ee922fcacef1786322dfe676599 SHA512 9aea418130e44d199a5c4406914034b38b4d0a4e4bd6d2a0d1745f3d934f4cfc55de92a4698fd1f957050648d49a53584168d73ca63a76fc150a9371d740bc5f
+DIST botocore-1.42.59.gh.tar.gz 15839997 BLAKE2B 6adafebe89e98b9a609d93cba72dcde9bdaababb7ccec6199917b3b59e898c3fdf88b9ebc54d42bd59f74a596a1eddabc1846054453400c820f31de0724048e7 SHA512 fc26447e76b8cbc8520563a469c5047a2fa872449c277a21799396bf5c0b7f61f61dcae9403f9cc3e523bfe549cb45a105b7eff153aced7aa0ca7a7cc49664fb
diff --git a/dev-python/botocore/botocore-1.42.59.ebuild b/dev-python/botocore/botocore-1.42.59.ebuild
new file mode 100644
index 000000000000..f6ce0d9ed8d5
--- /dev/null
+++ b/dev-python/botocore/botocore-1.42.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_{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"
+
+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/google-auth-oauthlib/Manifest b/dev-python/google-auth-oauthlib/Manifest
index df44eb508bdf..2434f5ba4e98 100644
--- a/dev-python/google-auth-oauthlib/Manifest
+++ b/dev-python/google-auth-oauthlib/Manifest
@@ -1,2 +1,3 @@
-DIST google-auth-library-python-oauthlib-1.2.3.gh.tar.gz 54146 BLAKE2B c40f0a772887158286856e9f5c3a6e598f3395ef223928249bf7d7c85fc3e0ec20c31374b899b0c39c7e7b3beb83b1c0e75c59038ff997806a1774247a4b1e68 SHA512 7c69bb377be65321cd88c0fd0317f69d10b430d4d505346c2c0d557d0488c05d225e4f24d850f9f09fafd908626551b34594c9a4f8587cb0a5e0674b6f3c2c45
DIST google_auth_oauthlib-1.2.4.tar.gz 21185 BLAKE2B c84119a17820665ccf3eb1307cb40747bf4931571af079562bd55044ec836265338f25ee4f4339aed4cff9ebf458b9fe2cfd923d9b671f7cb339e4d0f2a3399b SHA512 ffd35449faddeb32b8a22e4bbc4ef26412227ec161d2c2746436bd505b34695f0800cb9214f098b200d4ae0d572d8e002d110bd72f0f6adc444a6b286fc277c7
+DIST google_auth_oauthlib-1.3.0.tar.gz 21777 BLAKE2B 6f2a0267a1f013445b008b6400fcbbfd7fc314b32a2c992a7057e0f59c58a1457f4bb6f5ff6bb5bf5e762e02c9a739d9fc8e34b9503fa619cc93904bc2c8f56e SHA512 8071a136d7ccb6c7ab7208e3ec684a4c36c61cfdf11a9463a58374f3d3e57f420a80f69601231a2c9fe2f7b3f5c27c3d4601a85f9877e472356c556047453e98
+DIST google_auth_oauthlib-1.3.0.tar.gz.provenance 5760 BLAKE2B 4244bbc32f17cbcdff4a863920a5921ee0c48e594f3dda9217f337ceb9be92825b026d8d1f16a454e0581ce16f3f3b9bd35f0d0bf577758ca10c7c7e2c575ef6 SHA512 b72f2509c3e097dfdf5881eb91647278512591150fc02fe0a57b3b60698820bbdf8597fbd65075606ff1c2a135ea877cc10f7d6cf0388901cdcbed5d2647847c
diff --git a/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.3.ebuild b/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.3.0.ebuild
index 1d5e2e342b16..f90827d4a987 100644
--- a/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.2.3.ebuild
+++ b/dev-python/google-auth-oauthlib/google-auth-oauthlib-1.3.0.ebuild
@@ -1,12 +1,13 @@
-# Copyright 1999-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
+PYPI_VERIFY_REPO=gcp:google-cloud-sdk-py@oss-exit-gate-prod.iam.gserviceaccount.com
PYTHON_COMPAT=( python3_{10..14} )
-inherit distutils-r1
+inherit distutils-r1 pypi
MY_P=google-auth-library-python-oauthlib-${PV}
DESCRIPTION="Google Authentication Library"
@@ -14,11 +15,6 @@ HOMEPAGE="
https://github.com/googleapis/google-auth-library-python-oauthlib/
https://pypi.org/project/google-auth-oauthlib/
"
-SRC_URI="
- https://github.com/googleapis/google-auth-library-python-oauthlib/archive/v${PV}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
@@ -26,19 +22,9 @@ KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
>=dev-python/click-6.0.0[${PYTHON_USEDEP}]
- <dev-python/google-auth-2.42.0[${PYTHON_USEDEP}]
- >=dev-python/google-auth-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-2.46.0[${PYTHON_USEDEP}]
>=dev-python/requests-oauthlib-0.7.0[${PYTHON_USEDEP}]
"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
-
- # remove mock dependency
- # https://github.com/googleapis/google-auth-library-python-oauthlib/pull/351
- find -name 'test_*.py' -exec \
- sed -i -e 's:import mock:from unittest import mock:' {} + || die
-}
diff --git a/dev-python/griffe-inherited-docstrings/Manifest b/dev-python/griffe-inherited-docstrings/Manifest
index 4cfdf8cf90ac..94653ccd6733 100644
--- a/dev-python/griffe-inherited-docstrings/Manifest
+++ b/dev-python/griffe-inherited-docstrings/Manifest
@@ -1 +1,2 @@
DIST griffe_inherited_docstrings-1.1.2.tar.gz 27541 BLAKE2B 02aefb1a8c00a6ba6d3ed4ccbd9c065bbc5cf229a93ea2b34b0534dee6c1e3b8dab6ee0984e2d74f91b78ef1cc55adf01d884e022052feb55013681d0c57a5bd SHA512 001ece4cda21fb7f13bf00aa50f4f308f2abd9192f722cf6d27eabd2937423caa8dde3cdb9e2de9eef9cd7e6f01e96e80b056c9235a9e58ba6b78ef74f4ef8e8
+DIST griffe_inherited_docstrings-1.1.3.tar.gz 26738 BLAKE2B da518a4c1d3cdb00f82114b3336ecb02503f662e2b8235b0e938b07b8534ed6c844c4a36bc365d05be1334ffd0154fd5aa5c31feba7a6f2401c11b8c1e1b45bb SHA512 14d99a041feb93acc24ee7cfd14afe3122b6ed42a2398e186127f2ca81c50b89d6a8653cfbafc40cdf0d394df98acfd9b82106820440be9c9c7c0da1e8e4a811
diff --git a/dev-python/griffe-inherited-docstrings/griffe-inherited-docstrings-1.1.3.ebuild b/dev-python/griffe-inherited-docstrings/griffe-inherited-docstrings-1.1.3.ebuild
new file mode 100644
index 000000000000..1f8742ee6697
--- /dev/null
+++ b/dev-python/griffe-inherited-docstrings/griffe-inherited-docstrings-1.1.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2025-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Griffe extension for inheriting docstrings"
+HOMEPAGE="
+ https://github.com/mkdocstrings/griffe-inherited-docstrings/
+ https://pypi.org/project/griffe-inherited-docstrings/
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/griffe-2.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/jsonschema-path/Manifest b/dev-python/jsonschema-path/Manifest
index 7ca60ac195f5..c30a97537174 100644
--- a/dev-python/jsonschema-path/Manifest
+++ b/dev-python/jsonschema-path/Manifest
@@ -1,4 +1,3 @@
DIST jsonschema-path-0.3.4.gh.tar.gz 40126 BLAKE2B cc7884ab41a0cdcfbd292831f9ed2a03f82af30f4482499c7940633741560228df59c4157457e8c44c57fb73f0f6142f10ad23d36f444fea71a84cf6309d953d SHA512 85b791a374d61bedf66a0ca44b6906ec74f02ffe991c1cb220267c85c0e7b493375d712d7ca0828681c9c15f170bc29d4b808b00778895fb13f1f7ff3cdf2a9c
-DIST jsonschema-path-0.4.0b8.gh.tar.gz 59277 BLAKE2B 7b3fb5cc410f26b5e4960b300851194a887e27e50c05ca5818e7cd1e118f6657a55841092f2cdac130f166eddeca81e48d06fb25c60a5380859581531d9c05bb SHA512 719b57f6581e540d152863365ab85f7c9aafb0ab79880e6ccfca462f2d64892636276d741acc09662cdba242ce1e54833a42bd38048ce6c7299d9609715f9bac
-DIST jsonschema-path-0.4.1.gh.tar.gz 59800 BLAKE2B 8e049c88d73772216f76975048f66b55bacf1be680a4ea79926db6f3a76012ca263bf348bff46065a1e9eac8bcd82c159d7230592a8b754bb9fd2d5e64dea04c SHA512 92f5c6a8102e19b0df4b24118db8270f7de68f62804a59c55a0bed21697187c5f3ee4ae18c77ca9ffaf5de8f3611eecfc789b96d906735ed0d0c4552642fe3cd
DIST jsonschema-path-0.4.2.gh.tar.gz 60092 BLAKE2B 89a51a04a6740a145b4101ffcca3f0915e16b80d4d97ac8072bcab26e6710457a9bfb1908f2ac902946883210953a5c8ee038470f8c9137e6d52b6406fe19174 SHA512 65b10a1d7e9ec9bb5cdaf0ed8a509468affc09d5f4a998e0e673511df1f8d89e9bdf1ce6c786f1cd6227ed154779dd1311b4a77511285e1c20df05eb1576a7f3
+DIST jsonschema-path-0.4.3.gh.tar.gz 61504 BLAKE2B 33dcc7b6989d10eaa5d6c718aa5468f4dcd2d8f751a1d327e3f0ac409d048a9ae436ed8b2aa4de461a10c482356c2a441b116fb91a9b07e4333127c673337416 SHA512 2b06aa6d9b536c307714acbac801052adcc803824c8fe430192a62dc91493021de2b8a02c11a00e8e540973e297981cb2707901c07b1f218a8bc597216037276
diff --git a/dev-python/jsonschema-path/jsonschema-path-0.4.0_beta8.ebuild b/dev-python/jsonschema-path/jsonschema-path-0.4.0_beta8.ebuild
deleted file mode 100644
index d0864dd1f159..000000000000
--- a/dev-python/jsonschema-path/jsonschema-path-0.4.0_beta8.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2023-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{10..14} )
-
-inherit distutils-r1
-
-MY_P=${P/_beta/b}
-DESCRIPTION="JSONSchema Spec with object-oriented paths"
-HOMEPAGE="
- https://pypi.org/project/jsonschema-path/
- https://github.com/p1c2u/jsonschema-path/
-"
-SRC_URI="
- https://github.com/p1c2u/jsonschema-path/archive/${PV/_beta/b}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-SLOT="0"
-if [[ ${PV} != *_beta* ]]; then
- KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
-fi
-
-RDEPEND="
- >=dev-python/pathable-0.5.0_beta6[${PYTHON_USEDEP}]
- >=dev-python/pyrsistent-0.20.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
- >=dev-python/referencing-0.28.1[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- test? (
- dev-python/responses[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_PLUGINS=()
-distutils_enable_tests pytest
-
-src_prepare() {
- sed -i -e '/--cov/d' pyproject.toml || die
- # remove random pins
- sed -i -e 's:\^:>=:' -e 's:<[0-9.]\+:*:' pyproject.toml || die
- distutils-r1_src_prepare
-}
diff --git a/dev-python/jsonschema-path/jsonschema-path-0.4.1.ebuild b/dev-python/jsonschema-path/jsonschema-path-0.4.3.ebuild
index 53a954549088..53a954549088 100644
--- a/dev-python/jsonschema-path/jsonschema-path-0.4.1.ebuild
+++ b/dev-python/jsonschema-path/jsonschema-path-0.4.3.ebuild
diff --git a/dev-python/lxml-html-clean/Manifest b/dev-python/lxml-html-clean/Manifest
index fae081c4b402..600bb304613a 100644
--- a/dev-python/lxml-html-clean/Manifest
+++ b/dev-python/lxml-html-clean/Manifest
@@ -1,2 +1 @@
-DIST lxml_html_clean-0.4.2.tar.gz 21622 BLAKE2B 796db28e480e88baffc6f57bc9d1c9c47b898afa28349a65456c46cef61a3ba73d88c8c241857e134da9eee1854877df32d69b795186b30d6806b866d11823e2 SHA512 6d4e55e17dfb174694dc0ba9159a8d59581b8cc374546ed286a4c5fb8f46f06169959a0dca43406126d486ccdfbe079aba18ab4975b04682f76eb95554090c52
-DIST lxml_html_clean-0.4.3.tar.gz 21498 BLAKE2B 1005bbeb906090542e648e7c4d08b5735160fe530c498c82f856f421a13a9de454a28fbeeedffa641d7fca19eb52e0649514dd538523e408aa9fd6e6c8dbe606 SHA512 677037adeaa2649c5209015498672e11b131fc14a799b6fcda8eec9552fae626942f0905f7bc6e29f03075f48e0b5915f214c4afe8b22d72d035907afb9a099e
+DIST lxml_html_clean-0.4.4.tar.gz 23899 BLAKE2B f30f19abfff66dc9ba408078f817b417d1320e2dc61aa6c6e11a669da2490657b92447466c6dd04ff5c75a3f341b207da2ff1d493da937a32dc67413e840c9fa SHA512 3d287269be30bf585aa6e02990ecb2c4cc4169bac7451ce05d24b8e08232760ec5c220aec435f8317624a779c203a1608fa2bbcdb5174ee454fba6a2d4d0a9fe
diff --git a/dev-python/lxml-html-clean/lxml-html-clean-0.4.2.ebuild b/dev-python/lxml-html-clean/lxml-html-clean-0.4.2.ebuild
deleted file mode 100644
index cda4c29b6741..000000000000
--- a/dev-python/lxml-html-clean/lxml-html-clean-0.4.2.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2024-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 pypi
-
-DESCRIPTION="Separate project for HTML cleaning functionalities copied from lxml.html.clean"
-HOMEPAGE="
- https://github.com/fedora-python/lxml_html_clean/
- https://pypi.org/project/lxml-html-clean/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~arm64"
-
-RDEPEND="
- >=dev-python/lxml-5.2.0[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests unittest
-
-python_test() {
- eunittest
- "${EPYTHON}" -m doctest -v tests/*.txt ||
- die "Doctests failed on ${EPYTHON}"
-}
diff --git a/dev-python/lxml-html-clean/lxml-html-clean-0.4.3.ebuild b/dev-python/lxml-html-clean/lxml-html-clean-0.4.4.ebuild
index cda4c29b6741..ce2b6006c84e 100644
--- a/dev-python/lxml-html-clean/lxml-html-clean-0.4.3.ebuild
+++ b/dev-python/lxml-html-clean/lxml-html-clean-0.4.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2024-2025 Gentoo Authors
+# Copyright 2024-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,7 +25,10 @@ RDEPEND="
distutils_enable_tests unittest
python_test() {
+ # see tox.ini
eunittest
- "${EPYTHON}" -m doctest -v tests/*.txt ||
+ # test_clean_embed.txt unhappy about >=dev-libs/libxml2-2.15
+ # https://github.com/fedora-python/lxml_html_clean/issues/29
+ "${EPYTHON}" -m doctest tests/test_{clean,autolink}.txt ||
die "Doctests failed on ${EPYTHON}"
}
diff --git a/dev-python/multipart/Manifest b/dev-python/multipart/Manifest
index 1d5d744db1fd..8c4cda286626 100644
--- a/dev-python/multipart/Manifest
+++ b/dev-python/multipart/Manifest
@@ -1 +1,2 @@
DIST multipart-1.3.0.tar.gz 38816 BLAKE2B 60d07adcb8a8ae4c165a3449377e64adc2000e936a0e51b4e8d26794a11800a8c66d1ff5582f66b2096eccb2e16718d009bcedf8f8660ded2cff161def6cd24f SHA512 da7cb2743d9cb6102f064da8313561478083bf3b1a711ec82cad13ec1a1319703d0d72aba9d122ef79a8dd6539ac459189c278978fa2d1e55c131f938fb42a00
+DIST multipart-1.3.1.tar.gz 38929 BLAKE2B 03560a8c2fef4c07129f94daf28f5857649cae43aaeaae6f3cd00ff810892f2450af399da691723306c4d2eec44cad4e8035a4ec0f99079c8aceae52b29f2624 SHA512 a8292c63ec312777e58a36e308f69949ae9ac86a8f4dd543de2f5bbdde510753f33904b100173efba07d85eed32f7bc53d743d51824b7a362b8438059714efff
diff --git a/dev-python/multipart/multipart-1.3.1.ebuild b/dev-python/multipart/multipart-1.3.1.ebuild
new file mode 100644
index 000000000000..30a68539dca4
--- /dev/null
+++ b/dev-python/multipart/multipart-1.3.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Parser for multipart/form-data"
+HOMEPAGE="
+ https://github.com/defnull/multipart/
+ https://pypi.org/project/multipart/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/openapi-spec-validator/Manifest b/dev-python/openapi-spec-validator/Manifest
index 50f2664b8be5..9be4b9ae7ea1 100644
--- a/dev-python/openapi-spec-validator/Manifest
+++ b/dev-python/openapi-spec-validator/Manifest
@@ -1,3 +1,5 @@
DIST openapi_spec_validator-0.7.2.tar.gz 36855 BLAKE2B 87914f72a4bcaa2a1b190902b4649dd46e0c5079a2dd8d56839f795aac4a2df4c1563b7529ee4db87a3f90607afbb74070525994b0a8fa5bb882514c952de704 SHA512 83ca3f7c731680962c113a0982592842cc42df4f7f5f21bcbd9ba28c1c7b5376fe8197c43b15b0b34bf506b6ba59eb928aa5b73372c7395da7c950fb4cdc1584
DIST openapi_spec_validator-0.8.0.tar.gz 1744560 BLAKE2B 6ac56b686c0d11b657cae6b117b25c785465f571ba893b4a375bb9d9c1c7dead3ccad17e946973c9446bd44a61e543096c788d189cd56ed4bc4289e9b879d0f9 SHA512 598a4dd47154bd10ced9bdae5243373dc329b5fd57baa5de5a9ef2c9cfa2466db5945009c50312b9e07043d771145c14b3dd357a4b5a2638a20f82783ab5406c
DIST openapi_spec_validator-0.8.0.tar.gz.provenance 9722 BLAKE2B e867db7f88cf437f505f93399aa503d9f95a892ecbe724c81f108675635ff04209c51a02fa8b658f65e33cabfd9b3feb281b6afb573c355ac670d9e254235aec SHA512 5912574f9ac632011c7f8519730943af0e3fcef9ed7270a308192154ae47c0fa798d35e1f140429dffccc4ea66763d5fe1b96d2de8b111bc615661904d8e7807
+DIST openapi_spec_validator-0.8.2.tar.gz 1752944 BLAKE2B ce5ba3d73ec7d7522d53b41540f1e82fcb96e2ce7a91fa109233244f9a17410fcf3157e6f75d5592d1755b4c90e36e3fd71248563242e49a751f27bf591c8a81 SHA512 8d5f413c96813667f0298eba6d01c7e107e615eb796913814dceedffffaa99be01b73933397cb5e5afd4c446f8c1dae0d635fc99e555fe5467951765c6567fa3
+DIST openapi_spec_validator-0.8.2.tar.gz.provenance 10005 BLAKE2B a9318bb3d775d4d23f54a817d7785ef3cca721e9bf403d7390d71d2ecbd9766e92b5d6a371831a361c6746d874dabec9dd0da1fa1d67887ae9967f6bafce8f3b SHA512 024e0e44e15713b724585334b3ac6ea343a786ad8591b891260729d5f7032ce76ade2df543cada49cad31125c4b3a4abe5852b7b95dfe289fcd6ac9edb170de8
diff --git a/dev-python/openapi-spec-validator/openapi-spec-validator-0.8.2.ebuild b/dev-python/openapi-spec-validator/openapi-spec-validator-0.8.2.ebuild
new file mode 100644
index 000000000000..f4a1bff65ffd
--- /dev/null
+++ b/dev-python/openapi-spec-validator/openapi-spec-validator-0.8.2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 2022-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYPI_VERIFY_REPO=https://github.com/python-openapi/openapi-spec-validator
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="OpenAPI 2.0 (aka Swagger) and OpenAPI 3.0 spec validator"
+HOMEPAGE="
+ https://github.com/python-openapi/openapi-spec-validator/
+ https://pypi.org/project/openapi-spec-validator/
+"
+
+LICENSE="BSD"
+SLOT="0"
+if [[ ${PV} != *_beta* ]]; then
+ KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+fi
+
+RDEPEND="
+ >=dev-python/jsonschema-4.24.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-path-0.4.2[${PYTHON_USEDEP}]
+ >=dev-python/lazy-object-proxy-1.7.1[${PYTHON_USEDEP}]
+ >=dev-python/openapi-schema-validator-0.7.3[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # Internet
+ tests/integration/test_shortcuts.py::TestPetstoreV2Example
+ tests/integration/test_shortcuts.py::TestApiV2WithExampe
+ tests/integration/test_shortcuts.py::TestPetstoreV2ExpandedExample
+ tests/integration/test_shortcuts.py::TestPetstoreExample
+ tests/integration/test_shortcuts.py::TestRemoteValidatev2SpecUrl
+ tests/integration/test_shortcuts.py::TestRemoteValidatev30SpecUrl
+ tests/integration/test_shortcuts.py::TestApiWithExample
+ tests/integration/test_shortcuts.py::TestPetstoreExpandedExample
+ tests/integration/test_validate.py::TestPetstoreExample
+ tests/integration/test_validate.py::TestApiWithExample
+ tests/integration/test_validate.py::TestPetstoreExpandedExample
+ tests/integration/validation/test_validators.py
+)
+
+src_prepare() {
+ sed -i -e '/--cov/d' pyproject.toml || die
+ # remove meaningless upper bounds
+ sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/pypdf/Manifest b/dev-python/pypdf/Manifest
index 6e9ca26e4f8e..0910d8bb18bb 100644
--- a/dev-python/pypdf/Manifest
+++ b/dev-python/pypdf/Manifest
@@ -1,3 +1,4 @@
DIST pypdf-6.7.2.gh.tar.gz 8385062 BLAKE2B f2d11b6c3c0c47cc229f187ce962ea25d4d792bc6b934ce267ea7a7f950b7902f887a0e007cf591699314db81820e1e115c46fb017e2defc9ff25b6db7c50952 SHA512 fb9ea3da1c5de7e63d3872321df5f12f895f6cd3197161e49d8434ed07f4ea4e386e4dc367d20dcefdd1643a65c1b19342c72271ee5a9ef9b3af628847b9f561
DIST pypdf-6.7.3.gh.tar.gz 8385676 BLAKE2B 97e76e6c7f7ceaa278eb32ba47aef6801cb83adb3dbf6a90c1504c7aaff82ab3233edb5d49e0480b52d6679004d9eac2e7f19bde9d64ec70564c23c517be764f SHA512 0c9f6ae7b3796dc1cbd445605ca2dfe4ba5ca222c50cab7b817b361af3cc29dd27831c375132eb7bb17e6ef669ccf536ca5b566cc81c047d012bd11e81356c23
+DIST pypdf-6.7.4.gh.tar.gz 8386627 BLAKE2B 91b9e5b2086ee9b56afe45c5d2e1b765d0860ab2cff367eb839b96074efc283734c90002210a98eb5289292002e984661a0fb7c2ac285f4aa3d3ab4b29d59235 SHA512 7b0e2417036cbf524bc31430b55f317b7d8efabdf7a96cab9c05a2fc6b5a3ca022a4b8e3bad71d259b5cb06e8eab058255dd84c972d6929820e0a3a151cd95b7
DIST pypdf-sample-files-8c405ece5eff12396a34a1fae3276132002e1753.gh.tar.gz 11748093 BLAKE2B c5989200893b28a3c2062bb024a5cfc6f3389dc259ec129857979fa43469e1274559612b4d555499e2c7e16cf34be07825229932bf4d147fa6d7324d043e97d5 SHA512 c9771129b7668a2fd1fa79bb859ae9213f3d60341cf1b9937ff0eaab0de9bf4c35adcb7b896e93329038dc0f3809a0c697c523f8fe41b43030b0b029a88058e3
diff --git a/dev-python/pypdf/pypdf-6.7.4.ebuild b/dev-python/pypdf/pypdf-6.7.4.ebuild
new file mode 100644
index 000000000000..6a4b0c6b2c64
--- /dev/null
+++ b/dev-python/pypdf/pypdf-6.7.4.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+SAMPLE_COMMIT=8c405ece5eff12396a34a1fae3276132002e1753
+DESCRIPTION="Python library to work with PDF files"
+HOMEPAGE="
+ https://pypi.org/project/pypdf/
+ https://github.com/py-pdf/pypdf/
+"
+SRC_URI="
+ https://github.com/py-pdf/pypdf/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://github.com/py-pdf/sample-files/archive/${SAMPLE_COMMIT}.tar.gz
+ -> ${PN}-sample-files-${SAMPLE_COMMIT}.gh.tar.gz
+ )
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ >=dev-python/pillow-8.0.0[jpeg,jpeg2k,tiff,zlib,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ media-libs/jbig2dec[png]
+ )
+"
+
+EPYTEST_PLUGINS=( pytest-timeout )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+ if use test; then
+ mv "sample-files-${SAMPLE_COMMIT}"/* "${S}"/sample-files/ || die
+ fi
+}
+
+python_test() {
+ epytest -o addopts= -m "not enable_socket"
+}
diff --git a/dev-python/pyqt5/metadata.xml b/dev-python/pyqt5/metadata.xml
index ee6c1deeca54..c3a7ab6f41d2 100644
--- a/dev-python/pyqt5/metadata.xml
+++ b/dev-python/pyqt5/metadata.xml
@@ -16,7 +16,6 @@
<use>
<flag name="dbus">Build bindings for the QtDBus module</flag>
<flag name="declarative">Build bindings for the QtQml and QtQuick modules and enable the qmlscene plugin</flag>
- <flag name="designer">Build bindings for the QtDesigner module and enable the designer plugin</flag>
<flag name="gui">Build bindings for the QtGui module</flag>
<flag name="multimedia">Build bindings for the QtMultimedia module</flag>
<flag name="network">Build bindings for the QtNetwork module</flag>
diff --git a/dev-python/pyqt5/pyqt5-5.15.11.ebuild b/dev-python/pyqt5/pyqt5-5.15.11.ebuild
index 99ba713e4cf0..9949958d5941 100644
--- a/dev-python/pyqt5/pyqt5-5.15.11.ebuild
+++ b/dev-python/pyqt5/pyqt5-5.15.11.ebuild
@@ -18,7 +18,7 @@ SLOT="0"
KEYWORDS="amd64 arm arm64 ~loong ~ppc ppc64 ~riscv x86"
IUSE="
- dbus debug declarative designer examples gles2-only gui multimedia
+ dbus debug declarative examples gles2-only gui multimedia
network opengl printsupport sql +ssl svg testlib widgets x11extras
"
@@ -26,7 +26,6 @@ IUSE="
# in project.py and from the output of 'grep -r "%Import " ${S}/sip'
REQUIRED_USE="
declarative? ( gui network )
- designer? ( widgets )
multimedia? ( gui network )
opengl? ( gui widgets )
printsupport? ( gui widgets )
@@ -45,7 +44,6 @@ DEPEND="
sys-apps/dbus
)
declarative? ( >=dev-qt/qtdeclarative-5.15:5[widgets?] )
- designer? ( >=dev-qt/designer-5.15:5 )
gui? ( >=dev-qt/qtgui-5.15:5[gles2-only=] )
multimedia? ( >=dev-qt/qtmultimedia-5.15:5[widgets?] )
network? ( >=dev-qt/qtnetwork-5.15:5[ssl=] )
@@ -103,7 +101,6 @@ python_configure_all() {
$(pyqt_use_enable dbus QtDBus)
$(pyqt_use_enable declarative QtQml QtQuick \
$(usev widgets QtQuickWidgets))
- $(pyqt_use_enable designer QtDesigner)
$(pyqt_use_enable gui QtGui \
$(use gles2-only && echo _QOpenGLFunctions_ES2 || echo _QOpenGLFunctions_{2_0,2_1,4_1_Core}))
$(pyqt_use_enable multimedia QtMultimedia \
@@ -120,6 +117,7 @@ python_configure_all() {
# no longer supported in Gentoo for PyQt5, use PyQt6
--disable=QtBluetooth
+ --disable=QtDesigner
--disable=QtHelp
--disable=QtLocation
--disable=QtPositioning
@@ -129,6 +127,7 @@ python_configure_all() {
--disable=QtWebChannel
--disable=QtWebSockets
--disable=QtXmlPatterns
+ --no-designer-plugin
$(usev debug '--debug --qml-debug --tracing')
@@ -137,7 +136,6 @@ python_configure_all() {
# plugins when using wheels w/ pep517 so, *if* something does need
# them, it will need to be handled manually
$(usev !declarative --no-qml-plugin)
- $(usev !designer --no-designer-plugin)
$(usev gles2-only --disabled-feature=PyQt_Desktop_OpenGL)
$(usev !ssl --disabled-feature=PyQt_SSL)
diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest
index 71c9f3bf3327..7000a5160f7b 100644
--- a/dev-python/pytest-check/Manifest
+++ b/dev-python/pytest-check/Manifest
@@ -1,2 +1,3 @@
DIST pytest_check-2.6.2.tar.gz 27988 BLAKE2B f6f3e7b5d49d10bb398d562899954f3b76271859057a8ee292506e6e117c9b54630c44b8037977234f8892b3a9727acdc5b2a7e32930d22ae42d774977f71e60 SHA512 7afd2fd0d578f0e0c027fcd2807a57e0fd8af65a88218e1e09882e06eb5108c4110359af6cc38a004bbad74753735b9f38542bb64cec949ea1138153d5145e42
DIST pytest_check-2.7.0.tar.gz 30153 BLAKE2B e5248dc993670ddebf92dbaeb12a71ec48128fbf96819e1ffa7705c60f7110d2525a7f758daacb4308ee1c76b3f351637137e4da7e68e60045bf7ca05d4c6a02 SHA512 54c1696d18feec5dee0e6875347266b4dd5cd2e12497cbda944b65c0dcc205c99dabe159462338641bf1abd1791e55fdc0a1943d2eec64ca5e9b5ff812297c26
+DIST pytest_check-2.7.2.tar.gz 32694 BLAKE2B 77aca51ec63797ac43865ad3560fb8b3e12d91dd1ecff5cfc1b37eab949acbd90f8d944822656fc27385ae6315fbdebe17631fe12519adfb3a74f4e1d178909a SHA512 e63c3df5b232a3836ff0fdf27b3642cf1cfd8bb1c7e3572c898edd3654ff5e6fae421ca36f7c6a01130073820d69cba81fe16ab1b2062fc0942435ea139c7dd4
diff --git a/dev-python/pytest-check/pytest-check-2.7.2.ebuild b/dev-python/pytest-check/pytest-check-2.7.2.ebuild
new file mode 100644
index 000000000000..d2399b155e54
--- /dev/null
+++ b/dev-python/pytest-check/pytest-check-2.7.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="pytest plugin that allows multiple failures per test"
+HOMEPAGE="
+ https://github.com/okken/pytest-check/
+ https://pypi.org/project/pytest-check/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGIN_LOAD_VIA_ENV=1
+EPYTEST_PLUGINS=( "${PN}" )
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-salt-factories/Manifest b/dev-python/pytest-salt-factories/Manifest
index cda1c2e66546..8663b1a7fc41 100644
--- a/dev-python/pytest-salt-factories/Manifest
+++ b/dev-python/pytest-salt-factories/Manifest
@@ -1,2 +1,3 @@
DIST pytest-salt-factories-1.0.0_rc29.gh.tar.gz 168690 BLAKE2B d365cdef727e6ed0c0d2d06ce3c8731ddf67181d4d8386d106b7569c709fc5336529c72e907d44496463b47b18659376a64c79b08d45aaa5aa7d8d927a646db3 SHA512 7dd0e9d5bb6e4b292ef145f6fec770435f1cd23a07be67c98e155b1aa3a34bec1c542d97a6cae0302ad46e5c2f4e35eadb45bd7ea8979c05c6ddf1aacde9f755
DIST pytest-salt-factories-1.0.1.gh.tar.gz 169610 BLAKE2B 7f24d25ac9713204b3ba922aefbbb7e41de400128670eeba05679f85e6ee838ca8d595908ed442c8760e08be7c0041f936ee0ccfec651de767a4b660e47c136f SHA512 598486f15f00654509a68b0a216d84e1f790b4b9a28c2fd85b809d357d030299db6137e1b15883dc682b3eaa4f29f47b76bd06c1d1a9994028dc0332af972991
+DIST pytest-salt-factories-1.0.5.gh.tar.gz 169829 BLAKE2B 715818a9b79be5313aceb596b3046bea4cf3e44ad3c3682d24e558cba6664f03657d35856cb09dcc7f78dcd8043ab53e42ab1a2bb0a488b304c947f71a008a26 SHA512 33e9d58f57b64f3d9edce401cecd526ede0365c1991c0ea2e5263a131601425eca5cd4e71a7b82415f4ce6b078fd0f913c2e14fdf63e0b1edbab364c69d574d4
diff --git a/dev-python/pytest-salt-factories/pytest-salt-factories-1.0.5.ebuild b/dev-python/pytest-salt-factories/pytest-salt-factories-1.0.5.ebuild
new file mode 100644
index 000000000000..3fcc42e60566
--- /dev/null
+++ b/dev-python/pytest-salt-factories/pytest-salt-factories-1.0.5.ebuild
@@ -0,0 +1,88 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="The new generation of the pytest-salt Plugin"
+HOMEPAGE="
+ https://github.com/saltstack/pytest-salt-factories/
+ https://pypi.org/project/pytest-salt-factories/
+"
+SRC_URI="
+ https://github.com/saltstack/pytest-salt-factories/archive/${PV//_/}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/${P//_/}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/docker[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ dev-python/pytest-skip-markers[${PYTHON_USEDEP}]
+ dev-python/pytest-system-statistics[${PYTHON_USEDEP}]
+ >=dev-python/pytest-shell-utilities-1.4.0[${PYTHON_USEDEP}]
+ dev-python/pyzmq[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ >=app-admin/salt-3005.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/importlib-metadata[${PYTHON_USEDEP}]
+ dev-python/pyfakefs[${PYTHON_USEDEP}]
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_prepare() {
+ sed -i -e 's:helpers_namespace:pytest_&.plugin:' tests/conftest.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ "tests/functional/test_manager.py::test_system_service_cli[system-service(True)]"
+ "tests/functional/test_manager.py::test_system_service_config_fixture[system-service(True)]"
+ tests/integration/factories/daemons/ssh/test_salt_ssh.py::test_salt_ssh
+ tests/integration/factories/daemons/sshd/test_sshd.py::test_connect
+ tests/scenarios/examples/test_echoext.py::test_echoext
+ )
+
+ local ret tempdir x
+ # ${T} is too long a path for the tests to work
+ tempdir="$(mktemp -du --tmpdir=/tmp salt-XXX)" || die
+ addwrite "${tempdir}"
+
+ local -x SHELL="/bin/bash" TMPDIR="${tempdir}"
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=saltfactories.plugins
+ PYTEST_PLUGINS+=,pytest_helpers_namespace.plugin
+ PYTEST_PLUGINS+=,pytestsysstats.plugin
+ PYTEST_PLUGINS+=,pytest_subtests
+ for x in factories markers sysinfo event_listener log_server loader
+ do
+ PYTEST_PLUGINS+=,saltfactories.plugins.${x}
+ done
+
+ nonfatal epytest --no-sys-stats
+ ret=${?}
+
+ rm -rf "${tempdir}" || die
+ [[ ${ret} -ne 0 ]] && die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/python-glanceclient/Manifest b/dev-python/python-glanceclient/Manifest
index 35e0abddc395..3e0c70e7d575 100644
--- a/dev-python/python-glanceclient/Manifest
+++ b/dev-python/python-glanceclient/Manifest
@@ -1,2 +1,2 @@
DIST python_glanceclient-4.10.0.tar.gz 210540 BLAKE2B ac725a3c2f786d1792a13d5fd3e33060d3b5e64e23550e9457938899d7515d9482b02ab3e3e8a7c4efae5ab90a35dde72e2a25efd626c1fa99b8801799b4cdef SHA512 1a8fe169c5cb1431909f96ae467d179f357575f4cdf0831c8bc3fd20ae4885f6d42e30dcf620f3ce16f47b0f52fc9205d475ae5911349cfdfbe44067c1335ede
-DIST python_glanceclient-4.9.0.tar.gz 208601 BLAKE2B 5a66cb7c49eefebbd46737c373e5397557e97a19c72653c8da176cd0c46576c14fa9ed2803148ee71cfee0203e9e0ef29f831e17b3ee080c4f74280d4cb20dee SHA512 f3e04de7b2cc424344f4778a202cde3a2aae72bcc792beff1efd4cf9636289153b4dc5b90ed177cdda246b3413a4ed8a6b82197a134f26d25a71027ca3eb2dcc
+DIST python_glanceclient-4.11.0.tar.gz 210930 BLAKE2B b4386364c012b454fd7aaa60f203f53495b790f36886a77b34b62bab4d2d28b34dba0cc54acbd0cd5f0acfb075b11afabeb83219d24c4d1de6129030814b9d4d SHA512 b07869cf5b71cb2a3ed214128dd660fba25cd5789b3fbbdf5874a260583cefc9d8617e0da9a14081fe2afcdb45712e16e514e1c3677bb068c3861953c7fe0318
diff --git a/dev-python/python-glanceclient/files/python-glanceclient-4.6.0-test-py3.13.patch b/dev-python/python-glanceclient/files/python-glanceclient-4.6.0-test-py3.13.patch
deleted file mode 100644
index b1760f8b87af..000000000000
--- a/dev-python/python-glanceclient/files/python-glanceclient-4.6.0-test-py3.13.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 6aa007080e1db0f95b04824f42a6b52cbd5ff886 Mon Sep 17 00:00:00 2001
-From: Petr Vaněk <arkamar@atlas.cz>
-Date: Mon, 08 Jul 2024 12:01:15 +0200
-Subject: [PATCH] Python 3.13 test fixes
-
-Python 3.13 newly calls close in mock_open [1], which makes two
-_cache_schemas related tests fail because they expect different amount
-of mock_calls. This fix makes the expected check results conditional
-based on python version.
-
-[1] https://github.com/python/cpython/commit/3f7c0810f6158a7ff37be432f8d7f9511427489f
-
-Change-Id: I8b019f73fe3a9f28f114c95321a1da0feadf750f
-
-Upstream-PR: https://review.opendev.org/c/openstack/python-glanceclient/+/923628
-
-diff --git a/glanceclient/tests/unit/test_shell.py b/glanceclient/tests/unit/test_shell.py
-index 4a123ab..ea835c4 100644
---- a/glanceclient/tests/unit/test_shell.py
-+++ b/glanceclient/tests/unit/test_shell.py
-@@ -786,14 +786,19 @@ class ShellCacheSchemaTest(testutils.TestCase):
- client = self.shell._get_versioned_client('2', args)
- self.shell._cache_schemas(args, client, home_dir=self.cache_dir)
-
-- self.assertEqual(12, open.mock_calls.__len__())
-+ # see https://github.com/python/cpython/commit/3f7c0810f6158a7ff37be432f8d7f9511427489f
-+ expected_count = 12 if sys.version_info < (3, 13) else 15
-+ open_idx = 4 if sys.version_info < (3, 13) else 5
-+ write_idx = 6 if sys.version_info < (3, 13) else 7
-+
-+ self.assertEqual(expected_count, open.mock_calls.__len__())
- self.assertEqual(mock.call(self.cache_files[0], 'w'),
- open.mock_calls[0])
- self.assertEqual(mock.call(self.cache_files[1], 'w'),
-- open.mock_calls[4])
-+ open.mock_calls[open_idx])
- actual = json.loads(open.mock_calls[2][1][0])
- self.assertEqual(schema_odict, actual)
-- actual = json.loads(open.mock_calls[6][1][0])
-+ actual = json.loads(open.mock_calls[write_idx][1][0])
- self.assertEqual(schema_odict, actual)
-
- @mock.patch('builtins.open', new=mock.mock_open(), create=True)
-@@ -809,14 +814,19 @@ class ShellCacheSchemaTest(testutils.TestCase):
- client = self.shell._get_versioned_client('2', args)
- self.shell._cache_schemas(args, client, home_dir=self.cache_dir)
-
-- self.assertEqual(12, open.mock_calls.__len__())
-+ # see https://github.com/python/cpython/commit/3f7c0810f6158a7ff37be432f8d7f9511427489f
-+ expected_count = 12 if sys.version_info < (3, 13) else 15
-+ open_idx = 4 if sys.version_info < (3, 13) else 5
-+ write_idx = 6 if sys.version_info < (3, 13) else 7
-+
-+ self.assertEqual(expected_count, open.mock_calls.__len__())
- self.assertEqual(mock.call(self.cache_files[0], 'w'),
- open.mock_calls[0])
- self.assertEqual(mock.call(self.cache_files[1], 'w'),
-- open.mock_calls[4])
-+ open.mock_calls[open_idx])
- actual = json.loads(open.mock_calls[2][1][0])
- self.assertEqual(schema_odict, actual)
-- actual = json.loads(open.mock_calls[6][1][0])
-+ actual = json.loads(open.mock_calls[write_idx][1][0])
- self.assertEqual(schema_odict, actual)
-
- @mock.patch('builtins.open', new=mock.mock_open(), create=True)
diff --git a/dev-python/python-glanceclient/python-glanceclient-4.9.0.ebuild b/dev-python/python-glanceclient/python-glanceclient-4.11.0.ebuild
index 5e8e867b8061..e5d3bdc57b09 100644
--- a/dev-python/python-glanceclient/python-glanceclient-4.9.0.ebuild
+++ b/dev-python/python-glanceclient/python-glanceclient-4.11.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,13 +17,13 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~riscv x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/keystoneauth1-3.6.2[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
>=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
>=dev-python/pyopenssl-17.1.0[${PYTHON_USEDEP}]
>=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
@@ -31,10 +31,11 @@ RDEPEND="
>=dev-python/wrapt-1.7.0[${PYTHON_USEDEP}]
"
BDEPEND="
- >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
test? (
dev-python/ddt[${PYTHON_USEDEP}]
dev-python/fixtures[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.10.0[${PYTHON_USEDEP}]
dev-python/requests-mock[${PYTHON_USEDEP}]
dev-python/tempest[${PYTHON_USEDEP}]
dev-python/testscenarios[${PYTHON_USEDEP}]
@@ -49,10 +50,6 @@ PATCHES=(
# https://bugs.launchpad.net/python-glanceclient/+bug/2069684
# https://bugs.launchpad.net/python-glanceclient/+bug/2069682
"${FILESDIR}/${PN}-4.6.0-test.patch"
-
- # py3.13 added close() to mock_open calls
- # https://review.opendev.org/c/openstack/python-glanceclient/+/923628
- "${FILESDIR}/${PN}-4.6.0-test-py3.13.patch"
)
python_test() {
diff --git a/dev-python/python-keystoneclient/Manifest b/dev-python/python-keystoneclient/Manifest
index 082cb881c62b..7eabe2601809 100644
--- a/dev-python/python-keystoneclient/Manifest
+++ b/dev-python/python-keystoneclient/Manifest
@@ -1,2 +1,2 @@
-DIST python_keystoneclient-5.6.0.tar.gz 322179 BLAKE2B be57c26f4a4d7a295e7b6ce8a2f566f9a4815952c7f551fcda90f0f3517a296ea950c7e071aa052b7e34cabf6f6eff3ce626fef5ec3ab9b7a8a7dc1fb67e2238 SHA512 2f6843c46351e385eb5b0ca739222ce9787f36cf8eaf0b6f62a9db4f9c70adf9269acae2b294fefbf741caaada92b02da4c135972e845575d45f5d69262a4217
DIST python_keystoneclient-5.7.0.tar.gz 322387 BLAKE2B dc7d00a87937aafd5b70ef463916e039e74522d88953cfa25c76f0a7c3664c2f0a25a23c4c86dcb0bbb5b6792eced411445b50d2af910ac7a8c3f9ba58f3c5cf SHA512 04e987df7d04ee9b30fbe2c06de2f87aa6d97b8045d951139b23438ccec5b105629dd77d5a51176eee20da1c2a4284e22f95ed2a0a0818d79ffb75e816302cd3
+DIST python_keystoneclient-5.8.0.tar.gz 322844 BLAKE2B 507a5c344cbea9e86dc49111ee4019bd0b9a4779bc1e68bac8c06fe042db80f7472cc26f7ece774e73b5e10b5cd92f4225ebf71e100193def2715a50ff4a6631 SHA512 61ef89ce1cf6ced77ad9c8bfc79ec4aa7f32c300d93be80055f7575420990ea11d0a6ed7103c70aaaf936d3ebba7e447cf6df4f6153bfb5ada31c60a2dc66e64
diff --git a/dev-python/python-keystoneclient/python-keystoneclient-5.6.0.ebuild b/dev-python/python-keystoneclient/python-keystoneclient-5.8.0.ebuild
index 945ce533970b..b98cda331b6b 100644
--- a/dev-python/python-keystoneclient/python-keystoneclient-5.6.0.ebuild
+++ b/dev-python/python-keystoneclient/python-keystoneclient-5.8.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,27 +17,27 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~riscv x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
RDEPEND="
- >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
>=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
>=dev-python/keystoneauth1-3.4.0[${PYTHON_USEDEP}]
>=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
>=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
>=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
"
BDEPEND="
- >dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
test? (
>=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
>=dev-python/lxml-4.5.0[${PYTHON_USEDEP}]
>=dev-python/oauthlib-0.6.2[${PYTHON_USEDEP}]
- >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.10.0[${PYTHON_USEDEP}]
>=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
>=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
>=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
diff --git a/dev-python/regex/Manifest b/dev-python/regex/Manifest
index a57ec670114d..2053f668e151 100644
--- a/dev-python/regex/Manifest
+++ b/dev-python/regex/Manifest
@@ -1,3 +1,3 @@
-DIST regex-2025.11.3.tar.gz 414669 BLAKE2B df6ddec6ab70f9119ecc780a5a69061cd19ed2067d8d5311712e2804b2d039988e243921366224c2e983cbbc4d4c38516839f7683b710e956a77e66d0ec1efc8 SHA512 929c4de507416c435343d7e27f2ce05520166c1b7499887747055c10dd05e7a424e009d3bf9661038707fbe99bd3cd0eda1eab2d5743d5bd8cae4bfd576390c4
DIST regex-2026.1.15.tar.gz 414811 BLAKE2B c8e75bc8981dea96bc40e5599e0244407c03c0bd2e85789577f8b600e3c1526996abaaeb67c7d26e4f2e2f0db8531863a09951f21c1cb72d166c2df66621bd5b SHA512 38d3b0dcb4c2cf705dd9cceeb57ddc7ee1b7612ccd3f00cc97f4b21f99ae716f0d411bbb5fb1aab489558d9892cefb269a286ab790b15644175e6fb250aca7ef
DIST regex-2026.2.19.tar.gz 414973 BLAKE2B 6d0bb23520da74d6f5d00603e2bdec3136fb19118ba7dc8393523430f0391f36913921969e7f79b64945575d793316214201359a1250ff25d98db9a5fdf3270d SHA512 4a546d90e755d58d899ee5d80381bd24b1d38718dedb3903e8c5e286620a7e54a0631a77f5d8ac4f2807265b4dc8d22d29779853255e97a1ce57162c93ee044c
+DIST regex-2026.2.28.tar.gz 415184 BLAKE2B a63f281600c6b7c929825558cc0e6deb762e668cc97381c95d21efadb05eebe450511bed401f7ee0a10126c53e3bf4b7e3367bbce31cf0d217c27d39c9c5336e SHA512 ea8e4265bfb25deb74b9bc62c4a52b74545b87d2ab6c8eb25758e35ebfe83f14d2c4e78eed7ff475b3bca62762c8228a350e88c1b217a08e7d6d887192194dd6
diff --git a/dev-python/regex/regex-2025.11.3.ebuild b/dev-python/regex/regex-2026.2.28.ebuild
index 889fce2af7f8..aefc54aa0166 100644
--- a/dev-python/regex/regex-2025.11.3.ebuild
+++ b/dev-python/regex/regex-2026.2.28.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -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 05d478850820..d3d7989dce53 100644
--- a/dev-python/uv-build/Manifest
+++ b/dev-python/uv-build/Manifest
@@ -4,6 +4,7 @@ DIST uv_build-0.10.3.tar.gz 362506 BLAKE2B 36e938850caef030cc3492c89a30c15ce7a83
DIST uv_build-0.10.4.tar.gz 362535 BLAKE2B 2c392629b8e8ff6e81bb04fe182453c97b88320746ba813c40b742b9356be9b0ab9becd9f0d365d4d87b798aeb8fc21e16584270d56f63a52e31530ff5f601ab SHA512 f7d6ff75d8f5e457ade32943aa4eb80d393299d83324608df8822b5f1fb232b66a1fe2e1c218b1e8165d13c37937f3b56d9e3fc97a325b8989d73a11ae30a7b9
DIST uv_build-0.10.5.tar.gz 373244 BLAKE2B 797281dcd3de242af57179dcf8134cf572ee88524534c2be294b6d4946b4621ec19d5b921fc3f3d5d118b1bbad811838b8c2a1b49c824ec2f7e0fb793e12044a SHA512 739586480180602830cb48d6e5900007a4ea24eb82a8e6045c3be689b58fd9965f48fd4f2ba668665f15996037a3ce5ef62b8bb720064686fcd92b582bdbec58
DIST uv_build-0.10.6.tar.gz 373654 BLAKE2B a7c543f1029d81a86fdd7c7fb93f051eea1e2acdf151f4f3503c0fa8a13365d63ef933be187febfaa70567328ddef8dff07f08b9c57587611bf0abe450be3d7a SHA512 90e48a44a24d2f874c16aba345cb73d598f4b8937a51d8823c226b6f4ac44a9cbc77ad2bb2b7525db1a1caa1defe59a4e27944a5fec59c64f55c96c147e3465b
+DIST uv_build-0.10.7.tar.gz 373660 BLAKE2B 377637bd594ee3aba5098769c11474a58c9a819b22b1a0247284c7ab998630b9efc953fb9b5f9dc239b1b17b39952f1778a9993aba2c576d6e09e166a576fc8d SHA512 af6c89eaf880c506cf99d91188f7ca076b746b59d95d0639bc389e1482fb1594ef6c8fdfd4e6ccbbc764fd755cc5e590249f744f389a9374d4ca3b80b689bf9d
DIST uv_build-0.9.15.tar.gz 354021 BLAKE2B a47350ead8d9672d09967bbd7f9ac2f8e231e1dd5afb8c20e59926429792d3872feb1f8e4d7a9318ec447a99ce8add0503dfba0be2b970b2f192f954b472f1a7 SHA512 11fa1ebb1cfc184bd5bedf5e11fb28f14abf118183d94cbe0ac9a1b83f150a69836f0547a671e8cf16527d84ec61dd5b2983efafe5aeccd86e94cda79e1de664
DIST uv_build-0.9.21.tar.gz 357539 BLAKE2B 721e12e0260301d3234f3fbc76d5944c9b15e14b345876d3f231314f64f15c5e6c37c8c7155e24605c928dbe52b12b3b02cd2f0a1373b8d93b017f2c122ddf19 SHA512 1e2885f978fa45e1481a72a35d5734ef80d3ab7da0213fc41cad8c4e49756bf0b172cea570d25a6b0461c6dd13fead8a8fae356b11ec758f8bd7b915faa322c4
DIST uv_build-0.9.25.tar.gz 359005 BLAKE2B b0c8307919092aa0abbca7da379efd315f54c4d70c066633a3524fb1a78fcff0831e071086050b240536a123d965706337f09c716814e5655c9051cd4d879a19 SHA512 601eea260c615b6102c0e6a766d7c5fd0585c72005fb813a22cdc3f568c2f57042f72d3d16822f1c1773e1f9e8580d1f77b1e73b940a026c0a8e8783ef817f7b
diff --git a/dev-python/uv-build/uv-build-0.10.7.ebuild b/dev-python/uv-build/uv-build-0.10.7.ebuild
new file mode 100644
index 000000000000..639745396c25
--- /dev/null
+++ b/dev-python/uv-build/uv-build-0.10.7.ebuild
@@ -0,0 +1,99 @@
+# 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_{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 a6473b26b423..700201f24c36 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -10,6 +10,8 @@ DIST uv-0.10.5-crates.tar.xz 41620476 BLAKE2B a8391e50bede2a9472f9449e95c179c502
DIST uv-0.10.5.gh.tar.gz 4964729 BLAKE2B 10e13b772f2a175e066a49c0819531d332f716dfb608a81d38e31a7651bfc3e1da23cd4b89147484538dba891bf2161e927f6d19c0992ff83a12a723a0ca7e1a SHA512 7a01860e173f386f7feef10a33f9c49958e872a52df85627aadf7c09a54d4f8b01e429e91a83d96bcf7ac14ff9de01c2406fe7cb45b0128836328cd4a79895f9
DIST uv-0.10.6-crates.tar.xz 41620476 BLAKE2B a8391e50bede2a9472f9449e95c179c502456da1030995eda3d5c2cdb922c7d45f95e95665233ef944380b19cf2360e1cf1ca43e851b898a3305f9e9f541e232 SHA512 bd78dc089160da67e4f503fd8307ed07d33255545f3cd226f6085919c1e6867c1b3cbdb2dc93dd1e854e5da549228db74ea595199fa87460b84b11596d53c3e7
DIST uv-0.10.6.gh.tar.gz 4969125 BLAKE2B e820fd59458e890ba847d0334efdc3e3cdc0692e06d820fae742f2a8f801f96559de75d9f2fdfc8bb1bff9e644fb1af3f83de4b5b960304b247d8f485b7d4a1a SHA512 5237b6961677d981af3320bb53958712c43f95de17af1d172015ba2ea80e02189b5ff9ea35d594211a4341bcaf8f55858a68ca5625c5d3dc7d17e5acaf39837d
+DIST uv-0.10.7-crates.tar.xz 41627264 BLAKE2B 59f9c7cf092da54748ba38d6bea9c841d533e28db66f6fd3ac6017cf8729c069663ca683890419078cec8bd484bafdaad3d1753ff5e3dfbcec541decf2b53277 SHA512 ae1fe88cf1db2bcb9e360b1cfc804da49976e73748cb0910737857464993a0eddfe63b974488df0415af577dfb7ac0de4db39dce6e732996099d5971e99b5349
+DIST uv-0.10.7.gh.tar.gz 4970310 BLAKE2B f8e807cdb5e5f16a84f9d53afb3da1cc5c5953567b3de48398d41ed4deb12f260a853a5a3150cdc8a9a714a1bddbd969e744cc3302af3522503c79d570c506d9 SHA512 9a3c6fa356c655afad15c5b454efac9c7db4a4b4870903232a7a75bfdd778a18b7d5a59aa88a561445e5898d0b2c76e33c87081b113283c8bbd43f15645d404f
DIST uv-0.9.15-crates.tar.xz 46539408 BLAKE2B 57e582f56e12858292d1dfaec10292eb58fb118051618875eab0d2dcd4f55aa89de6f788b3aa5013ce5e03068bb404ef04faae633d5c208f382366ac5ddf70df SHA512 4db7549d6902682db7af385e5099e74bbd82e54aaf45a44fe64416fda91e065f4bf978b9db55ab72f2872f9e8933b49020102b959c1d2bcef4b9a9877ac1e789
DIST uv-0.9.15.gh.tar.gz 4887603 BLAKE2B 422a3c004abdf052438b145400675010b1adfc8cb8d49979367544e2d381389594188276fe603ffa983f5926be624f5d863053bd79342eeee10caf1260b2a479 SHA512 2605e2e7d5f6fdbb5ec4839363f65c8e71559944ec003cb9c69040be08094eb5c041831151b669e2dbbcf1799e862f484a21a592090524f79686469eac0e3381
DIST uv-0.9.21-crates.tar.xz 48642776 BLAKE2B 4ce225a3639d02ea05014c2132a7fd8baf53f3bd0bf3cafc6ebde144f2cea982426835f91bcb587e8dba122afe381c5a0ffa654667d4677f0b0b18b4b63a2f2e SHA512 db391109602bf1afbe868740ee977e76f92911136f61a9db8918ca89bcabdad02b75f1892cef200a370ea91829e177fd6c775aff9522f72fb90f2fc9d3acb22a
diff --git a/dev-python/uv/uv-0.10.7.ebuild b/dev-python/uv/uv-0.10.7.ebuild
new file mode 100644
index 000000000000..73993f9a17fd
--- /dev/null
+++ b/dev-python/uv/uv-0.10.7.ebuild
@@ -0,0 +1,164 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+RUST_MIN_VER="1.91.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 BZIP2
+"
+# 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="
+ virtual/pkgconfig
+ 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
+
+ # uv is now forcing bundled liblzma, sigh
+ sed -i -e '/xz/s:"static"::' Cargo.toml || die
+}
+
+src_configure() {
+ local myfeatures=(
+ test-git
+ test-pypi
+ test-python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ 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
+}
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index d0b0895cb037..7a4cb8f278ac 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -1,18 +1,15 @@
DIST virtualenv-20.34.0.tar.gz 6003808 BLAKE2B ea13d8952b67c1b9fc1547d726b014d8d971fc83341fbd471c0697adf3d616e12b1d9f1eda9aee18b9abee15bedbfb1e6abddfb25c6bf0bb8ff8a036647b626b SHA512 0dbea6cc8ea4f2bd5fae5560e87d6fae1bc1230c4f04992749c6a274f1740b1bf262767329b667670d642501ef3c3ac1eecff5ce4c95a1d943db110bea0079b2
-DIST virtualenv-20.35.3.tar.gz 6002907 BLAKE2B 8063752921737a6befbcfb94edaf82a45c726fd45cc5480825d891a9c259076f6bbdeb252d49999f2ad1f641a5e0714d2e9450fa5c59df04ad6f3805694744e2 SHA512 620061cfb7c291b76a7bee161664d935d602b0deb7768a94e341ae83d2b841f25bc658ed46e663bf7980142c9fe4f829ca47e3ee67c66f246f5d3fe243273b26
DIST virtualenv-20.35.4.tar.gz 6028799 BLAKE2B e4796544d04a5cf71b2f0c98c8b09e08db6b09613048a86948fe19d4359cf1c32a298e246c76b7342ea18c840b74c0fefe731ef84d6d43f4319075263518b293 SHA512 07027f64631416c535ca7c262dfcf753a961e2371c5b8562b0921ff9eb873b76e7380910f4080845ee329f59f295816376e8ff9d1f328a2efcc40e87157a1741
DIST virtualenv-20.35.4.tar.gz.provenance 9393 BLAKE2B 5e95b323b078ef6d520bd4463a272f9ae11ee5d182e44be80d95d67667375059504f882b85e329e42d42cb66b0cfc86a301ad60ec91885c88d69c9f0e115175b SHA512 f4b7cef5f95fdfeb7ea04ee5f90fe705079580ed4f4d519f4551d138c6a5fad73c862ee67681841ac1d2e258c8aac137ffdd468fd72b442d4c7a7713e7dc0192
-DIST virtualenv-20.36.0.tar.gz 6032237 BLAKE2B 864f1542d6e5c7c3b78cfe2695d171d9a545f27e3c2d10adb92e3615f128f47897345b88a7be7c3099fd4a0ad70b2ea7e6801878bdd102a4927296c2820fdd67 SHA512 62a0ffa9a6c1303fead8bc77ce23fa73075bf5fe79c26c612e9a510cd3b7466f5370b549748861410a014bdc96453552d7761ba5c9e4bb20845f6bac3adef941
-DIST virtualenv-20.36.0.tar.gz.provenance 9242 BLAKE2B 11401266d08513c5d50e2c846301a887919b4b5e9243966637a4fb2fab96b3be8815ccddf02d6c9ad9f46900abdf904c9d0c81d0c6213c6e542f40d764eefaae SHA512 fa46c395648177b48860a82f81044f6268dbf2ba12398547b4ae46e3012ef352603d7b605b1f7ed49b364a15c29e1cd65ffb7c18fd9224ed7d464f76670d06fb
DIST virtualenv-20.36.1.tar.gz 6032239 BLAKE2B 9d4cd6e28275ab1e5737e12e0661c4e772a0095dfa7cbd1bad76a0c90d55821ae819d6b65fd5b314d3076570f661eb2fe05b4be41c406f8e423df8389feaac06 SHA512 08da448fadd89f43526e27c3dd3c9a1c5a4c8532093db8c73f34d1d88e48ddff5b983d28343f4efcdec30428fa2ac10acc27ab57c647bd3fc8e261dbd9a9b639
DIST virtualenv-20.36.1.tar.gz.provenance 9246 BLAKE2B 4ee139a4eef0092c20d791db0e3e9901f65db574367ac234bc84cc02998e386a713314d474b7401d484df35dabe52ad9f9bc14cdf0230566853cb84e58e3d660 SHA512 a8b9ec9269848716e6496578b0de27f416327228d205a8fca8f60373c6e72ff11af3da0f241dbbdef660253cb604b9a35c96575eaad4476892a98cc168198aff
DIST virtualenv-20.37.0.tar.gz 5864710 BLAKE2B e3a86f35f68df45e10a2a6e2d2fc6cd67233752957efc1410de3142e4a3282a49bc40039c4eb2ea2990a74ae41af93b56082b218591bc350bf90631333bd1f9d SHA512 3425d19797d313039fde54f8a94e7079d2fb2e998b3f7135854597089cbf9d2e1d09299a3eb7f091c25709a5b8a962ad317dec79d0633367abd7d59cdab3aa14
DIST virtualenv-20.37.0.tar.gz.provenance 9304 BLAKE2B 194fde1f7781211ad66bd66239bfffed818aec5c757e0f236bd7abad86caac6eaf7dcd5382d4b56e3f5ed836abeb096e2c5fee0ba3498ae101f780f36b355d59 SHA512 76ea2857f8131e61742b61f9d1edb8b7d791a2862f47185d960ca03b1ec382ff8b445689c4da9acbc84147b0c664f6a4e89efdc992b19f2afc0f3ef37197ed70
DIST virtualenv-20.38.0.tar.gz 5864558 BLAKE2B b085b7813b1f29d854842346dcf3c45e30e084d3a993e1af27a93e777918ae75a742dec0cd858d945c220c6f4c5897bf2d598300e3812ba0be1ab397f1b21775 SHA512 336d2bbf6a33a664c07d42b26c1000710cbdebacaedd7fa13cd6598d7002e320551b9c60454b6b8b29fb318f1b0138581fa733e42dfe68a9ed2c149070fd571d
DIST virtualenv-20.38.0.tar.gz.provenance 9633 BLAKE2B eb7f486f5bf39c05dd73c0c82fa5dfb4ddf74dd560f6566d3c4faf6ab351afe680ee11095f46fb68cb5c80dd5b2a1c461d48fc5c92cbbddc0cbc53efdedff403 SHA512 d821d2a4c406cee74dda97bcaeb61c1de4cce5340b13c17710e0554fda7b46e755f00cd1862a6c436bd40abd49169e5b9b4e0ee619680d979ff048d5f9361d57
-DIST virtualenv-20.39.0.tar.gz 5869141 BLAKE2B 382ae1d0cd95e7401cf43f8269c0f81cf171abbab29172a7c2d25d21ad6f1447b8781856b3b8ac26580897b1a1318d47b60bc1bbb5fc321efde9c038ec9d158c SHA512 2efd0675fd0dc7010d5e2dc22cd694a1c9b363eca35ffcae96a5910dd53edfa3ecd505f18ba99279adb672040b9fcc995194028cacc1571340890a3d8a8c533a
-DIST virtualenv-20.39.0.tar.gz.provenance 9492 BLAKE2B 177bbccf5bb17e44cf78e4e646f69a321684cac89bf892e5bf5464e636b18a1934cc1bd8d567b10a724dfbbfd344a84a0e7650e4b75042c6fe98e8aa94573584 SHA512 22945883f27ddb456341db8975e55db1481b4055b9fd5b57a7ffb35e2d6fbce8fff9b0e0c0495feeb2044f06f7c604d9ee5c3f17be6fd6527436cfc29a5de436
DIST virtualenv-20.39.1.tar.gz 5870061 BLAKE2B 30fb2c107616c080935ede0ea2e72e5b70bc184d46d7eb26e08f612f8cc6be26dde2a8c53c8d415b586904749e5dd4bfc5f82ff6c186cdc51815a480e1dbbe80 SHA512 8d8fb281cd55bf60065b4d57e37963a90bf116e46e67eb3688177f40d975da93a558e1ad67b6d7ee8ecfd1a005cd3d4dccc4c50c72569fad221634136a61e23d
DIST virtualenv-20.39.1.tar.gz.provenance 9445 BLAKE2B 39909e09db2ab5b8fdd9a192943e3e8279a16efd2c55a88dca6c2f76bb86b78d569d6e9a8a6ef8415a6805d42a0967f0862609eb9a59a5ef7bf35dbfb3a55a51 SHA512 6c7f752fc702cfb00005215186fc6062a30f319d5d22457abc7a98ee9fbc8e7e466aa6b0af319ff3a98dde013e98759f16100003012c00e644ae91982ceaf157
DIST virtualenv-21.0.0.tar.gz 5836591 BLAKE2B de13338edd22cf251a69834416e19556d7fe8a543bac1d7c7a5596c799b4bdb96e3668fcb0b961cf88c5cc3a144c9526d84607d5f32b3b02b42e121df3bd8cc2 SHA512 9969ed76b32e70183a3935304efbf58e4141305edb9848d208ff29d595a71dbcff9ce914c27983c6f98a258bc72c73ebc52e2ccb207412a0684f2ebbe523f5e6
DIST virtualenv-21.0.0.tar.gz.provenance 9374 BLAKE2B 9bab5b3cb5445578f37554f9b7def3d8119bbd9dd1b876cc2411a65a86a2cb00502ceed80f1b35fd90d8637fb2adfe1da1e5d794fcf37ade1d1fc1bee43b6bba SHA512 1ddfd8a1852b09705bf8b2d98da40b4a9604d287555b4dc004d120573aa0ae235952407594b1c0367475e78246f6f7513691f3c084e4bb6034635960cb4dd188
+DIST virtualenv-21.1.0.tar.gz 5840471 BLAKE2B b6c97e13c2473481ea627d1527ac0482165f784e8b5c4952ebdf3f6a38d6e182ee04e114842ac16ee747063a18bf6b54ccda4fcf09407312f848eb8860e2348e SHA512 966a2851a8f524f8281f401119eb36a972bcdb6cb5ceacd65e1460bf7ed7a302fb0533ddff80a3db609929666d3b82d2c15b8c0ad25ab9e678891377c71cf108
+DIST virtualenv-21.1.0.tar.gz.provenance 9148 BLAKE2B e88443aa95a98ddf5eed097a429199d1ce6c757c44c7567dd992ae7dd1019300c96879ee25127b86166f742087d4dfb6cde21284d4c4ba2df40daa4251a06353 SHA512 973f37921bbc46d1783fca8e421197ff74f8e67c9b8ac2b9d82a500d0cefde080790bafd8377c28145febf28cb8d564013828fa37f62a20b50df6164c2fba8c0
diff --git a/dev-python/virtualenv/files/virtualenv-21.1.0-ensurepip.patch b/dev-python/virtualenv/files/virtualenv-21.1.0-ensurepip.patch
new file mode 100644
index 000000000000..660d53fdd80c
--- /dev/null
+++ b/dev-python/virtualenv/files/virtualenv-21.1.0-ensurepip.patch
@@ -0,0 +1,28 @@
+From 82ccbc4b41acf12298c8471ba46fe783827065da Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 22 Jun 2024 14:28:23 +0200
+Subject: [PATCH] [Gentoo] Use ensurepip wheels instead of local bundle
+
+---
+ src/virtualenv/seed/wheels/embed/__init__.py | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/virtualenv/seed/wheels/embed/__init__.py b/src/virtualenv/seed/wheels/embed/__init__.py
+index f9947a11..f4d43134 100644
+--- a/src/virtualenv/seed/wheels/embed/__init__.py
++++ b/src/virtualenv/seed/wheels/embed/__init__.py
+@@ -44,6 +44,14 @@ MAX = "3.8"
+
+
+ def get_embed_wheel(distribution: str, for_py_version: str) -> Wheel | None:
++ # Gentoo hack: get wheel from ensurepip directory
++ import sysconfig
++ bundle_dir = Path(sysconfig.get_config_var("WHEEL_PKG_DIR"))
++ try:
++ return Wheel.from_path(next(bundle_dir.glob(f"{distribution}-*.whl")))
++ except StopIteration:
++ return None
++
+ mapping = BUNDLE_SUPPORT.get(for_py_version, {}) or BUNDLE_SUPPORT[MAX]
+ wheel_file = mapping.get(distribution)
+ if wheel_file is None:
diff --git a/dev-python/virtualenv/virtualenv-20.35.3-r1.ebuild b/dev-python/virtualenv/virtualenv-20.35.3-r1.ebuild
deleted file mode 100644
index 6614debaa658..000000000000
--- a/dev-python/virtualenv/virtualenv-20.35.3-r1.ebuild
+++ /dev/null
@@ -1,130 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_TESTED=( python3_{11..14} pypy3_11 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Virtual Python Environment builder"
-HOMEPAGE="
- https://virtualenv.pypa.io/en/stable/
- https://pypi.org/project/virtualenv/
- https://github.com/pypa/virtualenv/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
- >=dev-python/filelock-3.12.2[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
-
- dev-python/ensurepip-pip
- >=dev-python/ensurepip-setuptools-70.1
- dev-python/ensurepip-wheel
-"
-# coverage is used somehow magically in virtualenv, maybe it actually
-# tests something useful
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- $(python_gen_cond_dep '
- dev-python/coverage[${PYTHON_USEDEP}]
- >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
- dev-python/wheel[${PYTHON_USEDEP}]
- >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' python3_{11..14})
- $(python_gen_cond_dep '
- >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
- ' 'pypy3*')
- )
-"
-
-src_prepare() {
- local PATCHES=(
- # use wheels from ensurepip bundle
- "${FILESDIR}/${PN}-20.31.1-ensurepip.patch"
- )
-
- distutils-r1_src_prepare
-
- # workaround test failures due to warnings from setuptools-scm, sigh
- echo '[tool.setuptools_scm]' >> pyproject.toml || die
-
- # remove useless pins
- sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
-
- # remove bundled wheels
- rm src/virtualenv/seed/wheels/embed/*.whl || die
-}
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping testing on ${EPYTHON}"
- return
- fi
-
- local EPYTEST_DESELECT=(
- tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
- # tests for old wheels with py3.7 support
- tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke
- tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support
- # broken by different wheel versions in ensurepip
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none
- tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output
- # hangs on a busy system, sigh
- tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe
- # TODO
- tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions
- # random resource leaks or xdist
- tests/unit/test_file_limit.py::test_too_many_open_files
- )
- case ${EPYTHON} in
- pypy3.11)
- EPYTEST_DESELECT+=(
- # these don't like the executable called pypy3.11?
- tests/unit/activation/test_bash.py::test_bash
- tests/unit/activation/test_fish.py::test_fish
- tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
- )
- ;;
- esac
-
- local -x TZ=UTC
- local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} )
- if [[ ${EPYTHON} == pypy3* ]]; then
- EPYTEST_PLUGINS+=( pytest-freezer )
- else
- EPYTEST_PLUGINS+=( time-machine )
- fi
- local EPYTEST_RERUNS=5
- local EPYTEST_TIMEOUT=180
- local EPYTEST_XDIST=1
- epytest -o addopts=
-}
-
-src_install() {
- distutils-r1_src_install
-
- # remove bundled wheels, we're using ensurepip bundle instead
- find "${ED}" -name '*.whl' -delete || die
-}
diff --git a/dev-python/virtualenv/virtualenv-20.36.0.ebuild b/dev-python/virtualenv/virtualenv-20.36.0.ebuild
deleted file mode 100644
index f69ea1399283..000000000000
--- a/dev-python/virtualenv/virtualenv-20.36.0.ebuild
+++ /dev/null
@@ -1,133 +0,0 @@
-# Copyright 1999-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/pypa/virtualenv
-PYTHON_TESTED=( python3_{11..14} pypy3_11 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Virtual Python Environment builder"
-HOMEPAGE="
- https://virtualenv.pypa.io/en/stable/
- https://pypi.org/project/virtualenv/
- https://github.com/pypa/virtualenv/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
- >=dev-python/filelock-3.20.1[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
-
- dev-python/ensurepip-pip
- >=dev-python/ensurepip-setuptools-70.1
- dev-python/ensurepip-wheel
-"
-# coverage is used somehow magically in virtualenv, maybe it actually
-# tests something useful
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- $(python_gen_cond_dep '
- dev-python/coverage[${PYTHON_USEDEP}]
- >=dev-python/pip-22.2.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- >=dev-python/setuptools-67.8[${PYTHON_USEDEP}]
- dev-python/wheel[${PYTHON_USEDEP}]
- >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' python3_{11..14})
- $(python_gen_cond_dep '
- >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}]
- ' 'pypy3*')
- )
-"
-
-src_prepare() {
- local PATCHES=(
- # use wheels from ensurepip bundle
- "${FILESDIR}/${PN}-20.31.1-ensurepip.patch"
- )
-
- distutils-r1_src_prepare
-
- # workaround test failures due to warnings from setuptools-scm, sigh
- echo '[tool.setuptools_scm]' >> pyproject.toml || die
-
- # remove useless pins
- sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
-
- # remove bundled wheels
- rm src/virtualenv/seed/wheels/embed/*.whl || die
-}
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping testing on ${EPYTHON}"
- return
- fi
-
- local EPYTEST_DESELECT=(
- tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
- # tests for old wheels with py3.7 support
- tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke
- tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support
- # broken by different wheel versions in ensurepip
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact
- tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none
- tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output
- # hangs on a busy system, sigh
- tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe
- # TODO
- tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions
- # random resource leaks or xdist
- tests/unit/test_file_limit.py::test_too_many_open_files
- # Internet
- tests/unit/create/test_creator.py::test_create_distutils_cfg
- )
- case ${EPYTHON} in
- pypy3.11)
- EPYTEST_DESELECT+=(
- # these don't like the executable called pypy3.11?
- tests/unit/activation/test_bash.py::test_bash
- tests/unit/activation/test_fish.py::test_fish
- tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable
- )
- ;;
- esac
-
- local -x TZ=UTC
- local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} )
- if [[ ${EPYTHON} == pypy3* ]]; then
- EPYTEST_PLUGINS+=( pytest-freezer )
- else
- EPYTEST_PLUGINS+=( time-machine )
- fi
- local EPYTEST_RERUNS=5
- local EPYTEST_TIMEOUT=180
- local EPYTEST_XDIST=1
- epytest -o addopts=
-}
-
-src_install() {
- distutils-r1_src_install
-
- # remove bundled wheels, we're using ensurepip bundle instead
- find "${ED}" -name '*.whl' -delete || die
-}
diff --git a/dev-python/virtualenv/virtualenv-20.39.0.ebuild b/dev-python/virtualenv/virtualenv-21.1.0.ebuild
index 99756ea15499..051df07f64d1 100644
--- a/dev-python/virtualenv/virtualenv-20.39.0.ebuild
+++ b/dev-python/virtualenv/virtualenv-21.1.0.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~amd64 ~riscv ~s390"
IUSE="test"
RESTRICT="!test? ( test )"
@@ -27,6 +27,7 @@ RDEPEND="
>=dev-python/distlib-0.3.7[${PYTHON_USEDEP}]
>=dev-python/filelock-3.24.2[${PYTHON_USEDEP}]
>=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}]
+ >=dev-python/python-discovery-1[${PYTHON_USEDEP}]
dev-python/ensurepip-pip
>=dev-python/ensurepip-setuptools-70.1
@@ -61,7 +62,7 @@ BDEPEND="
src_prepare() {
local PATCHES=(
# use wheels from ensurepip bundle
- "${FILESDIR}/${PN}-20.31.1-ensurepip.patch"
+ "${FILESDIR}/${PN}-21.1.0-ensurepip.patch"
)
distutils-r1_src_prepare
diff --git a/dev-python/whitenoise/Manifest b/dev-python/whitenoise/Manifest
index 4417c36e5265..33f72343ba6c 100644
--- a/dev-python/whitenoise/Manifest
+++ b/dev-python/whitenoise/Manifest
@@ -1,2 +1,2 @@
DIST whitenoise-6.11.0.gh.tar.gz 104789 BLAKE2B ee099506e856f7f8a360961073fc0218e1ceadc6c56a4f7783c6048e255f5505f2b466f38719be7ab5df379a7ed51425814a3077e3d83f78224f9a7467c493c9 SHA512 e8871cb298a81c39f4cbc3d8dcbf13675e33e857813d29ce62b44219653e4c8d2d970f21e5aa8fdc9df64bca4d57df9a227251f52a166add0dc81cc59715f99d
-DIST whitenoise-6.9.0.gh.tar.gz 57497 BLAKE2B 8badfeeda6da1502bbb5cd170879dbcc266c804aba5dfeeeebb733aed17e4a58ed7987e66c53f1f0bfe31369fbadef8dd1579822d054e7c938d935799584f1fb SHA512 d47d3cdf7357009a78d939af9bee920636030c9b03d56e8b8753ea569c5f1016d8bcbc9277659feefa1192ba7aae3ff7b5782d299e0a9e1f19b8973e127a5822
+DIST whitenoise-6.12.0.gh.tar.gz 107611 BLAKE2B 539d0adf21f4377d7654603dc9563f1369ccb59c19245cd09aea3f9766714d175b385b5b9fbb59697fd2477d82add8950fa149a946a07397177a54475d8d9a1a SHA512 40d8731f3419489208e3bbd9f89ed379b5795cd5f25b18c9cca38ab45aa91d852d486247a48a6212d779755448ad1e4c76e92ef7ee8505e4c2a1369bf375e968
diff --git a/dev-python/whitenoise/whitenoise-6.11.0.ebuild b/dev-python/whitenoise/whitenoise-6.12.0.ebuild
index 636caf5e655c..b891e1c54239 100644
--- a/dev-python/whitenoise/whitenoise-6.11.0.ebuild
+++ b/dev-python/whitenoise/whitenoise-6.12.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2025 Liguros Authors
+# Copyright 2025-2026 Liguros Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,7 @@ SLOT="0"
KEYWORDS="~amd64"
DEPEND="
- <dev-python/django-6.0[${PYTHON_USEDEP}]
+ dev-python/django[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
diff --git a/dev-python/whitenoise/whitenoise-6.9.0.ebuild b/dev-python/whitenoise/whitenoise-6.9.0.ebuild
deleted file mode 100644
index 9290d4b19aba..000000000000
--- a/dev-python/whitenoise/whitenoise-6.9.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2022 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
-
-DESCRIPTION="Radically simplified static file serving for Python web apps"
-HOMEPAGE="https://github.com/evansd/whitenoise"
-SRC_URI="https://github.com/evansd/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- <dev-python/django-5.3[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- app-arch/brotli[python,${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/furo
-
-pkg_postinst() {
- optfeature "brotli compression" "app-arch/brotli[python]"
-}