summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-13 06:57:23 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2025-04-13 06:57:23 +0000
commitb18f2b8c41b131a2f84a9ba4b0b37e775f817868 (patch)
tree03613b932b49f370ec3c64d860d07093fb99d3eb /dev-python
parent7e219bec8c8fb44fd3bbc9506b51a6345c1673f2 (diff)
downloadbaldeagleos-repo-b18f2b8c41b131a2f84a9ba4b0b37e775f817868.tar.gz
baldeagleos-repo-b18f2b8c41b131a2f84a9ba4b0b37e775f817868.tar.xz
baldeagleos-repo-b18f2b8c41b131a2f84a9ba4b0b37e775f817868.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/autopage/autopage-0.5.2.ebuild4
-rw-r--r--dev-python/bashate/bashate-2.1.1.ebuild4
-rw-r--r--dev-python/configargparse/configargparse-1.7.ebuild4
-rw-r--r--dev-python/constantly/constantly-23.10.4.ebuild2
-rw-r--r--dev-python/cramjam/Manifest7
-rw-r--r--dev-python/cramjam/cramjam-2.10.0.ebuild234
-rw-r--r--dev-python/css-parser/css-parser-1.0.10.ebuild4
-rw-r--r--dev-python/cssselect/cssselect-1.3.0.ebuild2
-rw-r--r--dev-python/extras/extras-1.0.0-r2.ebuild2
-rw-r--r--dev-python/fixtures/fixtures-4.2.4_p1.ebuild2
-rw-r--r--dev-python/funcparserlib/funcparserlib-1.0.1.ebuild4
-rw-r--r--dev-python/genson/genson-1.3.0.ebuild4
-rw-r--r--dev-python/greenlet/greenlet-3.1.1.ebuild4
-rw-r--r--dev-python/irctokens/irctokens-2.0.2.ebuild12
-rw-r--r--dev-python/logutils/logutils-0.3.5-r1.ebuild2
-rw-r--r--dev-python/markdown/markdown-3.7.ebuild3
-rw-r--r--dev-python/markdown/markdown-3.8.ebuild3
-rw-r--r--dev-python/parameterized/parameterized-0.9.0.ebuild2
-rw-r--r--dev-python/pillow/Manifest1
-rw-r--r--dev-python/pillow/pillow-11.2.1.ebuild168
-rw-r--r--dev-python/pytest-testinfra/Manifest2
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-10.1.1.ebuild54
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-10.2.1.ebuild59
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-10.2.2.ebuild2
-rw-r--r--dev-python/python-engineio/Manifest3
-rw-r--r--dev-python/python-engineio/python-engineio-4.10.1.ebuild59
-rw-r--r--dev-python/python-engineio/python-engineio-4.12.0.ebuild (renamed from dev-python/python-engineio/python-engineio-4.11.1.ebuild)2
-rw-r--r--dev-python/python-memcached/python-memcached-1.62.ebuild2
-rw-r--r--dev-python/serpent/serpent-1.41.ebuild2
-rw-r--r--dev-python/shtab/Manifest1
-rw-r--r--dev-python/shtab/shtab-1.7.2.ebuild28
-rw-r--r--dev-python/tavern/Manifest1
-rw-r--r--dev-python/tavern/tavern-2.15.0.ebuild68
-rw-r--r--dev-python/typing-extensions/typing-extensions-4.12.2.ebuild2
-rw-r--r--dev-python/typing-extensions/typing-extensions-4.13.1.ebuild2
-rw-r--r--dev-python/typing-extensions/typing-extensions-4.13.2.ebuild2
-rw-r--r--dev-python/websocket-client/websocket-client-1.8.0.ebuild3
-rw-r--r--dev-python/zc-lockfile/zc-lockfile-3.0_p1.ebuild2
-rw-r--r--dev-python/zconfig/zconfig-4.2.ebuild2
-rw-r--r--dev-python/zope-hookable/zope-hookable-7.0.ebuild4
-rw-r--r--dev-python/zope-interface/zope-interface-7.2.ebuild3
41 files changed, 576 insertions, 195 deletions
diff --git a/dev-python/autopage/autopage-0.5.2.ebuild b/dev-python/autopage/autopage-0.5.2.ebuild
index 6e906174c43b..b480f53370ee 100644
--- a/dev-python/autopage/autopage-0.5.2.ebuild
+++ b/dev-python/autopage/autopage-0.5.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2024 Gentoo Authors
+# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -21,6 +21,8 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/bashate/bashate-2.1.1.ebuild b/dev-python/bashate/bashate-2.1.1.ebuild
index 2e226d8d2702..c91bb71da867 100644
--- a/dev-python/bashate/bashate-2.1.1.ebuild
+++ b/dev-python/bashate/bashate-2.1.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,6 +13,8 @@ HOMEPAGE="https://pypi.org/project/bashate/"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm64 x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
>dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
diff --git a/dev-python/configargparse/configargparse-1.7.ebuild b/dev-python/configargparse/configargparse-1.7.ebuild
index 5d24cd9eb7b7..42d0353bb0c9 100644
--- a/dev-python/configargparse/configargparse-1.7.ebuild
+++ b/dev-python/configargparse/configargparse-1.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -22,6 +22,8 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/constantly/constantly-23.10.4.ebuild b/dev-python/constantly/constantly-23.10.4.ebuild
index 58bd42cc8c73..c44414d7a98d 100644
--- a/dev-python/constantly/constantly-23.10.4.ebuild
+++ b/dev-python/constantly/constantly-23.10.4.ebuild
@@ -21,6 +21,8 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
dev-python/versioneer[${PYTHON_USEDEP}]
diff --git a/dev-python/cramjam/Manifest b/dev-python/cramjam/Manifest
index 732a1de9551a..79e0594c4cf9 100644
--- a/dev-python/cramjam/Manifest
+++ b/dev-python/cramjam/Manifest
@@ -35,6 +35,7 @@ DIST cmake-0.1.52.crate 18119 BLAKE2B 03025cec724f080a9911505405a3bfc489709f5571
DIST cmake-0.1.54.crate 18955 BLAKE2B 8ea4f8c4e5a383e406436343e3635449662788cf8e32f0dd5222ade92b6c0fdad4e5444c6a319531d8d87ba4e376f1ffaa7bcd1073878e26e7fcbd6383158a51 SHA512 ab4bf69dc77337c6d398b74738ea28a7fc1239e6991f8baa72fc78d3f9f6a77197e7517574e4f4d245ff6fbcfbf9b768c9f814d9ad74b74314f19c1d491f3009
DIST colorchoice-1.0.3.crate 7923 BLAKE2B 7055fe61677143f0d4445ed5f6be2cbc284c155aa6ceac04df6f3fa2563a225e440ba708bf40e298ad09775ab7c7e1842b5f6dd78422b06dbd1250908e3227ee SHA512 fc26696189d3935d5510a1237504339c1f354d03ffd3b4e830b7080335aa778bc72787ac5fa9a67a731b9bde2788da778d497f2ef97ec68bdec5145fedf4cd14
DIST copy_dir-0.1.3.crate 5831 BLAKE2B de7e655e9716500db72cdb16394cf76a50f7b9861b9df6e0bd0a450b9475112f7e3ba3bc53ffde2c74ce540f4a48e2703f8e5ce83ad8cbfae06e51c16b2cdc63 SHA512 cd83244960be0bae32ab0480d1057c8a99e4bfd1c4622eb0b85692f2255ccac38678e608c663cf76ccf11d8c0d2415b15ebfd8328efdfbb37bca448245338fa2
+DIST cramjam-2.10.0.tar.gz 47801 BLAKE2B ff567e7abdb36e959ed502f38402c5257609c30dad3c0d1beda6699a5567d31f22ab075bbaf20ec9fe0512d06131ce912ec9f40e1b08137d1a3904ed19878921 SHA512 0c44643844c6278160d9e2efa3005da265e464edb1d3dd670cadc3effaa744c21c772c0bfeac1ceec6e5f7e8a9a02440d79e5080c432e4dcb73984e613281ad2
DIST cramjam-2.10.0rc1.tar.gz 47814 BLAKE2B 3d961889634718af17b955720d85945af94f57398a55a112c6c4c47da82fb629a434d5bc08c31fb4786fe9ba1e6ee41c34562db53c92164034eb4864510d419c SHA512 b1aa5481d0c4d0c44389f20bc2933d8b6979636dfaf2aca1ef83abb462134f2ab421993a5730471b58b49e55614100bb8279916ed68f4a7477453b82407a7c0a
DIST cramjam-2.9.1.tar.gz 47892 BLAKE2B c62ed8dca32df3d3e895c0c647d5f450409aaf69af69747fa85b3a5119fe9bc43ca5eb639623d58a10362ab2d9edd279eb3829b002e2dbbf0c58ce4d18bd85fc SHA512 a2bcb6f98c8f7ffdf026fe9ffc061b3a462368a9bb69eea79697f7cba5091b1beb52cde9c298423d3a7538f86c1d6b15fdd083ccfd26fa2700c024c6d2a0437f
DIST crc32fast-1.4.2.crate 38491 BLAKE2B aaa3acca66e5814a45f12a90ae09f6ff5fc14ca94c8539184dab6ed928abc68cd1d37e539c268c1effd50ab3af20de6038593fb9c6bd6a664785dac52f6939fd SHA512 c7608d33022062e217d3576f536ffbd51479855a5e5874529c71db2bf6a937ce04d814c39cf777309c38445393bf43cb9996161947e28738abd432f11beb7266
@@ -88,14 +89,19 @@ DIST proc-macro2-1.0.92.crate 52353 BLAKE2B 9aa29fa6f1c56c0392a94a81b4c61953f4d1
DIST proc-macro2-1.0.93.crate 52388 BLAKE2B dae4493215b88f68cc485bc0ae80f0a48ebad68e0260839b1c367832d1ab778197bf040647b3fe36cfe9d5f7a496e05cd71b5914f531eb129c2d458d5f0be896 SHA512 1ae650e390e4f1b18d05f42d2ffcd025cabf72568a326cd85496c722600108b0aa0ab0161b39fcc931b8b302427f678650e703f4db57aa1a60f1751db881dc6c
DIST pyo3-0.22.6.crate 546746 BLAKE2B 2a6f8c5ce2ee96e1812177a11c5fad7e15f3a73d9e30850edf0855b13db6cc95427e186883b4aae25a2d2466d3fe82f56180a39f3e6e0a54bb0a3ef78d495400 SHA512 d746007eae22f5b7bbf173759c61cbd2aa893898d88b8be5680a0237deec4d113246edf5f62fbbec3579ad4bd7307499b94b887ec306112ffe3df5190fe70e44
DIST pyo3-0.23.5.crate 1088533 BLAKE2B 2efae0a42c1d33e25c5871e3f61a3cea9890d278a20e2777307752b544ab3a634059bba896a1df0df4eadd0ae3c2e63b6d637aecd6699b31fac4107e3a43a387 SHA512 efd3a86dd70c199304463c0ae18dbdf4d9176d1af13b664bdd05a1e218cffda3f29f06d868d0d852d51c3e85b7e07c39617206b3feddc913b3b622f3fcf59d5f
+DIST pyo3-0.24.1.crate 1113050 BLAKE2B 5a203f8c845b08b40ed64561d385d2e4134a38916723ef6b0b4be8f44fa9de594c4eca138c318ad83a156f66273b20b55acb19897dca3eba5d479e6333be815e SHA512 6c2a8f9d554a3cf151a796ee20610b596ebdbf9e642d6b2ddc35d0142841d7be51e739ddef4332cfa8c4625c972d9705eae5f694b4d8907882bec4add7c6c6ed
DIST pyo3-build-config-0.22.6.crate 31369 BLAKE2B a1a72de120c4ac4f23a3faaf9b2e340231d7a778a29083ef25fd863fa213afb2a9b720333e3d46a6e1d32105f63073276a23b9bcd999a97fe71eaff3afc7db99 SHA512 9ab44c830e56ddb9ee537ce438fc690664d2c5416f01cdf72498ce062e4c1e7192eac8b7dc2de86c9f2212890b133b69a66209b1615c4eabdf4eaa6882a980fe
DIST pyo3-build-config-0.23.5.crate 33885 BLAKE2B 14e3897186abb772bcde147a9ebf2a70f5cbd634cb0240e1dbba71079acd2f9cd61fd263a5d32bc583e188ec84b6db8b93f018ab954ac9da66f423183ad5c176 SHA512 72aac032e3026554761eb81dc9c57591abc4d0c329c46918da13a8cc93c0532eba2fe3d971699a50890c66d8853b93a67840b0e8f1c15747d184b873dec2894a
+DIST pyo3-build-config-0.24.1.crate 34020 BLAKE2B 34ed5a2385de138fde0308439c5fcd8a92a48b215b41799838d5b3106b0845f70023ccd97d60c39cea4729cd8bd850e1ef4e372ac332a06037dc5dd574b09834 SHA512 6008f6737685882b2fd958fcc5f171c0ddc10520631904ca759f857117241dc0a648d4cf30d9a84483662bfbc435eccc3deed9981f98b88016b12a5944ae3ff7
DIST pyo3-ffi-0.22.6.crate 69352 BLAKE2B 99eea6ed87001b23fdeb263937bc14be0fadadc1ad77d4fa8834045ba2fc6ba5c0b89f4051916a058b7640be655afe22785b1da42aac8a32d10209b7b37bf810 SHA512 616e51a0eae1207830fe95251d5b62f126daf446bec68ac98cb1b8538aaa59761dbde62d446a9ee205c23453dbd32bd8ecb15e26265ed1fa1e5e2056efd96369
DIST pyo3-ffi-0.23.5.crate 74867 BLAKE2B 5c80f7ac77ee516a891c1cb367e27fa396e55a7504dc8f92312219a90860baba3861ca2e83a1410839b99b6b3beb4c068703b841e18ea1854f70d04fef7404bd SHA512 37c25b21acc3718eab842c04489b0c16c04d33a30fe7f3f58cd80943048203375d8788ce84153ba3720df695fc95bf9f7bccacfa02b0e669a5ddbfc44d65f86c
+DIST pyo3-ffi-0.24.1.crate 76435 BLAKE2B 1fc7b122f0c1064382bf304491617abfd5a8f275ab7511cf31ed892576728b7b55814ea454761bb0fb4d01e263daf8f2c302504fc624970fc9940a5a2cb143fe SHA512 b06265f3852f419a2a788fef049cf9032a5dd4fa6ca818d8d5ceae24b3642164497c61e67492a6576f1c8b22d66e2d887b295c48317fee94f8db8e14de25a71e
DIST pyo3-macros-0.22.6.crate 8182 BLAKE2B 81998e4f4cb325763e4d3477af05b332e184cabf6391761f850d23508cebcf8d496ce12f747ea241523bb3899886eb20494b076a0651151744bb81d52901a1b4 SHA512 63f7a7b42e099742518c8a3bbc7647e98debb5500d08c39e11e8140fc146e790ab06e005d8d14c89aba79ebc5bf04fe1c92c0e9c5b13421307d3a4682d044179
DIST pyo3-macros-0.23.5.crate 8856 BLAKE2B 56e7dea9cc630e21f9e8aa43319db27f3d287baad4035bf8d921b2c8e737142e5a89decf6a04bcc095f97e035cfe4a5edd7091bba79dd68bc110b7420c29477b SHA512 bf9c12b02597cf6f119e92fe827016f393d13cfa21376811ab9bf8f49cbfd6447afe9dcbef564ad2b5b72db5338520c37c77429db8ee1ccb74de3944fc9fce7f
+DIST pyo3-macros-0.24.1.crate 8866 BLAKE2B 48436f5f1a6a6e93d916873be5e18cfdc892d59479e4963f267d2a1805bd134eed6890d53915fdafa8ff93c7458d136b57fbf783bee18f34a6087f7819c9dd92 SHA512 7b9fc55232284d7b138e3e9c9a9c864a1b0d9b5317c3263a057df5dc1976087e934558d6c046d784735e063f1009df35b91776c850ad709800ca8b2be8e993d8
DIST pyo3-macros-backend-0.22.6.crate 66312 BLAKE2B ec0b11bee1ad2192e8d95cebab0075d6ec5bf628e3344b86fb8e20a6d0bc1f891b56ccfa4622840a609480581f32bd211b9a3d1dd989716cf255efe3fdc89331 SHA512 87463939b5a5674e30e8ca05ae747f652f8679f0c5c85d20967e9910ad853768a769a914580e82e409188fe4add80a3117ccb9da24c250406bc6f76fe4453799
DIST pyo3-macros-backend-0.23.5.crate 70938 BLAKE2B 20d5b00edf806ff19de3e3a03d10a23a29b16d544faf2bb5781032e51c3e07cd7f1a979e00b9f1abca36bc7cf1546b702ee83f85d021d74ac819b8b13bf8d140 SHA512 5e9a971d98a7b70424bf93b1f7fb326564010562dd376789be2fa6b13b89c3d34f760eb61ed49f0b013bbdfff2658d874d24a8a0b65d8f82d10d8f34b8ef5b53
+DIST pyo3-macros-backend-0.24.1.crate 72588 BLAKE2B 35f1810f5d1da5b5f0b5533d0c9e832ea7c7a7a5be20711d9694b84aad62d13b8a9a1c498c61a9a1f2679fda7d25bf508536d38cded43520ed97524681dcfabe SHA512 8378154aa74c75a4d4533de673515298d8ada8377feb687694688bcf21fc5c2bcf856c2db7ce172cb038936b407e57a665ad6c3b9ce1a499a474e54c6bf119ff
DIST python3-dll-a-0.2.11.crate 83622 BLAKE2B 4bb801097422fc59be57b64edebeaee851dbad6ccb334d2fb672d279458d8925a08ae5a00c8603c8ab51e4210753483dba81bde189724ec47d1019bd9c4f4dee SHA512 3a5bee1eaec72650fc093105a4139f14c1f65012903a1311aa4ab754fbf7104936f743f0e7c69ee6d7b8d344ec25746c1fd415bdcd0a959c3828a28f9b63ce52
DIST python3-dll-a-0.2.13.crate 85018 BLAKE2B 4531172b7e985041fe3cf7d164c67dc74e5974fbdbc80f1b7fb5e351d8115cda0a7a8f64c037ff7fcf4c20918fa2a53a29c8784035c571e0c46be39cdc7faff4 SHA512 01438c7af7a936ae6b95e1b81f4596627043a4b02eea85241a18ed137c23dff644f3e8d8eeb45b8e64ef1fd2693ab47fde47b6341dfc56f6c4eca032da46647c
DIST quote-1.0.37.crate 28558 BLAKE2B a7d007a69e619f853af94333e1066bb767013312bd99f147b1b153611242bcfa9c76768b1ba47278589db309a9acd61a772c8ec3b567e48439bb9d831f9326d4 SHA512 c4ed21428c1f89cf22b85d80720a7869831a9c129d694617b0ce8c258278114ab98846f3f653abf736d1c86bc9224bbd695e9a7b06aa3adf292d02e1ef14cc05
@@ -125,6 +131,7 @@ DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e
DIST syn-2.0.90.crate 290584 BLAKE2B 9f469001c1439ffe57c578119653d3021c2709767e8e881441459a190402679f4fb78aa65e7822ff20913801c3be00d9b8f115189ea8e63ed94ed359b40fc9e1 SHA512 44606124f113c259c19edcb2adc1378d8292b422d800604c0e0d1ba89bd2d13d518cf4a6afa58daded54da9cb285464aadb113815406a0f09c5e18f865789ae0
DIST syn-2.0.98.crate 297807 BLAKE2B b17e2bb4f151fba26debb722bda8e8677dcc4f57f0e88bec214f8b06e9b15c48731ca3f63d1453a44f34845c9895b3519008ce6cfb69746486324d7a8e0e0c20 SHA512 792dc70249d55face151b5481b0ebabbd3d290de78cff8b5dad8bee08e5a932ee22e54ca5fc5980e0b218197d19822c3672e02eb92ca74c8ac1328081d4d2cbf
DIST target-lexicon-0.12.16.crate 26488 BLAKE2B e7950e4a302059a1bfc9bc15618a3c1b971a17cffae117a6e8f5f63a0d82fd2bd02680301d15338612d5426d349dd24cfee30ee787a15a7d3187f2a6825e69ce SHA512 092639957c4a0391560b6442b31c47159c04d12e971010f730a6ec9cb5389e4be903ef3d7daa06db95e64dc78b6970731fb647179ebaad2b12e9ed5e9b24da27
+DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
DIST tempfile-3.14.0.crate 35065 BLAKE2B d155a39f6ed6e846bfd572ffdc73f306d30942642e07f2b497963ae150b8ef774dd046bfb3ce410fa326c8e1df27b0cada804100215e01d02272d6059d5294e3 SHA512 98c1ab70eb3efd2d8b16ed58c8c83f8599663af7ef269304e908a04c38334f659a4d0b1647a13dc0d1eb90a293f1b37ec8ff0b9b45ef5b7ff1b4452bbfcdcb15
DIST tempfile-3.17.1.crate 39240 BLAKE2B 92e3094e47a04054805a2e4dfa19048632be6954ecea640c952876dcac5a68339cdf3136997fb1e7cdc0f12e0a44e3129dd95a305596804b5ebe8c9421ecdc07 SHA512 52eb23b3c4daebd6731338b0fb21ab625a5b910c75310a58c1b339500c32bb77fc9a31c2f5d88ade11e60cc49df478cf86b7b8a81416401a5bbaa284c3293efd
DIST termcolor-1.4.1.crate 18773 BLAKE2B 34676efbde8e242415857d6d40a287ae3459678d8222f5144faefb8c84d635686f640e79588d98635c8f25b7628ec6663a01b16e1e462705b5cba7e8b8e61f44 SHA512 b66aad157c4fa2985f764321d157dfb1f0325fd633811870db7919b5579bf7bc19fefe99e1c706cdfa67504c37dc2ca3d283e11d1bb516edcfaf1eb7747a778a
diff --git a/dev-python/cramjam/cramjam-2.10.0.ebuild b/dev-python/cramjam/cramjam-2.10.0.ebuild
new file mode 100644
index 000000000000..9137c7822a34
--- /dev/null
+++ b/dev-python/cramjam/cramjam-2.10.0.ebuild
@@ -0,0 +1,234 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Note: you need to use top-level Cargo.lock to generate the crate list.
+CRATES="
+ adler2@2.0.0
+ alloc-no-stdlib@2.0.4
+ alloc-stdlib@0.2.2
+ anstream@0.6.18
+ anstyle-parse@0.2.6
+ anstyle-query@1.1.2
+ anstyle-wincon@3.0.7
+ anstyle@1.0.10
+ autocfg@1.4.0
+ bitflags@2.9.0
+ blosc2-rs@0.4.0+2.15.2
+ blosc2-sys@0.4.0+2.15.2
+ brotli-decompressor@4.0.2
+ brotli@7.0.0
+ bzip2-sys@0.1.13+1.0.8
+ bzip2@0.4.4
+ cbindgen@0.27.0
+ cc@1.2.16
+ cfg-if@1.0.0
+ clap@4.5.31
+ clap_builder@4.5.31
+ clap_lex@0.7.4
+ cmake@0.1.54
+ colorchoice@1.0.3
+ copy_dir@0.1.3
+ crc32fast@1.4.2
+ equivalent@1.0.2
+ errno@0.3.10
+ fastrand@2.3.0
+ flate2@1.1.0
+ getrandom@0.3.1
+ hashbrown@0.15.2
+ heck@0.4.1
+ heck@0.5.0
+ indexmap@2.7.1
+ indoc@2.0.5
+ is_terminal_polyfill@1.70.1
+ isal-rs@0.5.3+496255c
+ isal-sys@0.5.3+496255c
+ itoa@1.0.14
+ jobserver@0.1.32
+ libc@0.2.170
+ libcramjam@0.7.0
+ libdeflate-sys@1.19.3
+ libdeflater@1.19.3
+ linux-raw-sys@0.4.15
+ lock_api@0.4.12
+ log@0.4.26
+ lz4-sys@1.11.1+lz4-1.10.0
+ lz4@1.28.1
+ lzma-sys@0.1.20
+ memchr@2.7.4
+ memoffset@0.9.1
+ miniz_oxide@0.8.5
+ once_cell@1.20.3
+ parking_lot@0.12.3
+ parking_lot_core@0.9.10
+ pkg-config@0.3.31
+ portable-atomic@1.11.0
+ proc-macro2@1.0.93
+ pyo3-build-config@0.24.1
+ pyo3-ffi@0.24.1
+ pyo3-macros-backend@0.24.1
+ pyo3-macros@0.24.1
+ pyo3@0.24.1
+ python3-dll-a@0.2.13
+ quote@1.0.38
+ redox_syscall@0.5.9
+ rustix@0.38.44
+ ryu@1.0.19
+ same-file@1.0.6
+ scopeguard@1.2.0
+ serde@1.0.218
+ serde_derive@1.0.218
+ serde_json@1.0.139
+ serde_spanned@0.6.8
+ shlex@1.3.0
+ smallvec@1.14.0
+ snap@1.1.1
+ strsim@0.11.1
+ syn@2.0.98
+ target-lexicon@0.13.2
+ tempfile@3.17.1
+ toml@0.8.20
+ toml_datetime@0.6.8
+ toml_edit@0.22.24
+ unicode-ident@1.0.17
+ unindent@0.2.3
+ utf8parse@0.2.2
+ walkdir@2.5.0
+ wasi@0.13.3+wasi-0.2.2
+ winapi-util@0.1.9
+ windows-sys@0.59.0
+ windows-targets@0.52.6
+ windows_aarch64_gnullvm@0.52.6
+ windows_aarch64_msvc@0.52.6
+ windows_i686_gnu@0.52.6
+ windows_i686_gnullvm@0.52.6
+ windows_i686_msvc@0.52.6
+ windows_x86_64_gnu@0.52.6
+ windows_x86_64_gnullvm@0.52.6
+ windows_x86_64_msvc@0.52.6
+ winnow@0.7.3
+ wit-bindgen-rt@0.33.0
+ xz2@0.1.7
+ zstd-safe@7.2.3
+ zstd-sys@2.0.14+zstd.1.5.7
+ zstd@0.13.3
+"
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Thin Python bindings to de/compression algorithms in Rust"
+HOMEPAGE="
+ https://github.com/milesgranger/cramjam/
+ https://pypi.org/project/cramjam/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT MPL-2.0
+ Unicode-3.0
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~sparc ~x86"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/libdeflate:=
+ app-arch/lz4:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+ dev-libs/isa-l:=
+"
+# dev-libs/c-blosc2:=
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/cramjam/cramjam.*.so"
+
+src_prepare() {
+ sed -i -e '/strip/d' pyproject.toml || die
+ distutils-r1_src_prepare
+ export UNSAFE_PYO3_SKIP_VERSION_CHECK=1
+
+ # strip all the bundled C libraries
+ find "${ECARGO_VENDOR}"/*-sys-* \
+ -name '*.c' -delete || die
+
+ # https://github.com/10XGenomics/lz4-rs/pull/39
+ pushd "${ECARGO_VENDOR}"/lz4-sys* >/dev/null || Die
+ eapply -p2 "${FILESDIR}/lz4-sys-unbundle-lz4.patch"
+ popd >/dev/null || die
+
+ # https://github.com/milesgranger/isal-rs/pull/25 (cheap workaround)
+ sed -i -e '/default/d' "${ECARGO_VENDOR}"/isal-sys*/Cargo.toml || die
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+
+ # unpin C library versions
+ sed -i -e '/exactly_version/d' \
+ "${ECARGO_VENDOR}"/libdeflate-sys-*/build.rs || 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
+
+ local features=(
+ extension-module
+
+ snappy
+ lz4
+ bzip2
+ brotli
+ zstd
+
+ xz-shared
+ igzip-shared
+ ideflate-shared
+ izlib-shared
+ use-system-isal-shared
+ gzip-shared
+ zlib-shared
+ deflate-shared
+ # https://github.com/milesgranger/cramjam/issues/204#issuecomment-2692307708
+ # blosc2-shared
+ # use-system-blosc2-shared
+ )
+ local features_s=${features[*]}
+
+ DISTUTILS_ARGS=(
+ --no-default-features
+ --features="${features_s// /,}"
+ )
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # try to make hypothesis less flaky
+ local -x CI=1
+ epytest tests
+}
diff --git a/dev-python/css-parser/css-parser-1.0.10.ebuild b/dev-python/css-parser/css-parser-1.0.10.ebuild
index a6bd255645bc..b8a1bc87e287 100644
--- a/dev-python/css-parser/css-parser-1.0.10.ebuild
+++ b/dev-python/css-parser/css-parser-1.0.10.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,6 +18,8 @@ HOMEPAGE="
LICENSE="LGPL-2.1+"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ~loong ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/cssselect/cssselect-1.3.0.ebuild b/dev-python/cssselect/cssselect-1.3.0.ebuild
index 1fcca463f1f0..b8165fe72b6c 100644
--- a/dev-python/cssselect/cssselect-1.3.0.ebuild
+++ b/dev-python/cssselect/cssselect-1.3.0.ebuild
@@ -22,6 +22,8 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/extras/extras-1.0.0-r2.ebuild b/dev-python/extras/extras-1.0.0-r2.ebuild
index 5d2994dd2bf0..3263ac5eb258 100644
--- a/dev-python/extras/extras-1.0.0-r2.ebuild
+++ b/dev-python/extras/extras-1.0.0-r2.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/fixtures/fixtures-4.2.4_p1.ebuild b/dev-python/fixtures/fixtures-4.2.4_p1.ebuild
index 0155203c0246..75fc5cc972d5 100644
--- a/dev-python/fixtures/fixtures-4.2.4_p1.ebuild
+++ b/dev-python/fixtures/fixtures-4.2.4_p1.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="|| ( Apache-2.0 BSD )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
dev-python/hatch-vcs[${PYTHON_USEDEP}]
diff --git a/dev-python/funcparserlib/funcparserlib-1.0.1.ebuild b/dev-python/funcparserlib/funcparserlib-1.0.1.ebuild
index 551482ba111c..ca78e4238130 100644
--- a/dev-python/funcparserlib/funcparserlib-1.0.1.ebuild
+++ b/dev-python/funcparserlib/funcparserlib-1.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -21,6 +21,8 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/genson/genson-1.3.0.ebuild b/dev-python/genson/genson-1.3.0.ebuild
index c74fdd033a13..796daaf84c9f 100644
--- a/dev-python/genson/genson-1.3.0.ebuild
+++ b/dev-python/genson/genson-1.3.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/greenlet/greenlet-3.1.1.ebuild b/dev-python/greenlet/greenlet-3.1.1.ebuild
index 7bb01ed65897..7d0f8a460679 100644
--- a/dev-python/greenlet/greenlet-3.1.1.ebuild
+++ b/dev-python/greenlet/greenlet-3.1.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,6 +20,8 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 -hppa ~m68k ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/irctokens/irctokens-2.0.2.ebuild b/dev-python/irctokens/irctokens-2.0.2.ebuild
index a776dffcb96b..aa3181ff3be3 100644
--- a/dev-python/irctokens/irctokens-2.0.2.ebuild
+++ b/dev-python/irctokens/irctokens-2.0.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023-2024 Gentoo Authors
+# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -22,10 +22,8 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.0.2-exclude-tests.patch
-)
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
@@ -34,3 +32,7 @@ BDEPEND="
"
distutils_enable_tests unittest
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.2-exclude-tests.patch
+)
diff --git a/dev-python/logutils/logutils-0.3.5-r1.ebuild b/dev-python/logutils/logutils-0.3.5-r1.ebuild
index 2cf438455758..0895c341b458 100644
--- a/dev-python/logutils/logutils-0.3.5-r1.ebuild
+++ b/dev-python/logutils/logutils-0.3.5-r1.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm64 ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/markdown/markdown-3.7.ebuild b/dev-python/markdown/markdown-3.7.ebuild
index 587e55900732..e52962ad2b77 100644
--- a/dev-python/markdown/markdown-3.7.ebuild
+++ b/dev-python/markdown/markdown-3.7.ebuild
@@ -19,7 +19,8 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="doc"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/markdown/markdown-3.8.ebuild b/dev-python/markdown/markdown-3.8.ebuild
index bcbebdff67c9..8f0c4c0e1365 100644
--- a/dev-python/markdown/markdown-3.8.ebuild
+++ b/dev-python/markdown/markdown-3.8.ebuild
@@ -19,7 +19,8 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="doc"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
BDEPEND="
>=dev-python/setuptools-77[${PYTHON_USEDEP}]
diff --git a/dev-python/parameterized/parameterized-0.9.0.ebuild b/dev-python/parameterized/parameterized-0.9.0.ebuild
index 4d4999c9d931..798eea8b7777 100644
--- a/dev-python/parameterized/parameterized-0.9.0.ebuild
+++ b/dev-python/parameterized/parameterized-0.9.0.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/pillow/Manifest b/dev-python/pillow/Manifest
index f6b090d7ebd5..2b8cc0a12e7f 100644
--- a/dev-python/pillow/Manifest
+++ b/dev-python/pillow/Manifest
@@ -1,4 +1,5 @@
DIST pillow-11.1.0.gh.tar.gz 46815201 BLAKE2B 7990683c90359e0a72e17a13e1a29455bc3ace8ce3616d6af59360edfc1ac87541bd1fd6967160bd8d7dd25cfedfc9d2e9b058c3ed433a6208379834f15bc312 SHA512 bb0622fae0b9c3903ddd945dced8e2b94348b2bd06c14bc74da00d8aa3a795aab2daaff39ca6c40b712dcce4f10218cd30739f0eb616c9dfbc16efcf80886f1e
DIST pillow-11.2.0.gh.tar.gz 47097571 BLAKE2B d59e87e7249e7a2b64dd420702d08f6da1d29d91fd32d7043eacac7c5cf33e4cef6d378545454bcb460ea1ae49052e2e684335966e00f6003e018e9241ad50eb SHA512 4ab01472accb056ef48feab6c945a3792b622053c1dc166daf0095597a2df846562ae5ee56e66e595d65e76e7b7bfaf3d5b0cf7847777603a1abdc7af135ec44
+DIST pillow-11.2.1.gh.tar.gz 47086538 BLAKE2B 306c3f4292681caea75835dc972229854e12260190f7e7b63ad5292091fcbb28a16fe102c9b2359fe72b99ad97821fa37715f5934bfe79a983efa81b07abf2a4 SHA512 4b5eee712b6cedf175e251ca29bb6e6dda27491585d343ef71ed416819e91510c4add6be50fe1151ab5f178f4686968de111beff4143a978b7a32519293a5725
DIST pillow-test-images-716bdc4adaf97601e5b9a31c9be25f8975381ee1.gh.tar.gz 57416881 BLAKE2B 8ea5fff2231567f957fc911120c1b50610722477da99559639317e4513e4bc4e73b8b49368a6d95c6938333f0c48db7672c3713eaef70494f7896dadd07cc42d SHA512 b00009be0f5ca85ec0c761fa780f0e650c1877b456b9a9426a4d2300a0c5654358495299e129ded411fccb641e4add7e460bcb3ca7be055f3b207407ccefb33c
DIST pythoncapi_compat.h 61109 BLAKE2B 9b8d9f774a6803dee73aedc5465519f2956c284bf70314f5e046d0d5522a10891bf55358a85fea5a156d4063736424c0f019bc71dd18592bbf56c364db7b6bce SHA512 d0ca43186fdc3cd8d0e993135b50fc86eeea05e8b84cba529d89f60ce28bc9502f8d3825eb508be5d68d1fbfc53423a69756c0e79fe0fe7adf94c602b1cf79ff
diff --git a/dev-python/pillow/pillow-11.2.1.ebuild b/dev-python/pillow/pillow-11.2.1.ebuild
new file mode 100644
index 000000000000..22b1745db19a
--- /dev/null
+++ b/dev-python/pillow/pillow-11.2.1.ebuild
@@ -0,0 +1,168 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+# setuptools wrapper
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+PYTHON_REQ_USE='tk?,threads(+)'
+
+inherit distutils-r1 toolchain-funcs virtualx
+
+MY_PN=Pillow
+MY_P=${MY_PN}-${PV}
+
+# upstream always fetches from main
+TEST_IMAGE_COMMIT="716bdc4adaf97601e5b9a31c9be25f8975381ee1"
+
+DESCRIPTION="Python Imaging Library (fork)"
+HOMEPAGE="
+ https://python-pillow.org/
+ https://github.com/python-pillow/Pillow/
+ https://pypi.org/project/pillow/
+"
+SRC_URI="
+ https://github.com/python-pillow/Pillow/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ test? (
+ https://github.com/python-pillow/test-images/archive/${TEST_IMAGE_COMMIT}.tar.gz
+ -> pillow-test-images-${TEST_IMAGE_COMMIT}.gh.tar.gz
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="HPND"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
+IUSE="avif examples imagequant +jpeg jpeg2k lcms test tiff tk truetype webp xcb zlib"
+REQUIRED_USE="test? ( jpeg jpeg2k lcms tiff truetype )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ avif? ( media-libs/libavif:= )
+ imagequant? ( media-gfx/libimagequant:= )
+ jpeg? ( media-libs/libjpeg-turbo:= )
+ jpeg2k? ( media-libs/openjpeg:2= )
+ lcms? ( media-libs/lcms:2= )
+ tiff? ( media-libs/tiff:=[jpeg,zlib] )
+ truetype? (
+ media-libs/freetype:2=
+ media-libs/harfbuzz:=
+ )
+ webp? ( media-libs/libwebp:= )
+ xcb? ( x11-libs/libxcb )
+ zlib? ( sys-libs/zlib:= )
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/olefile[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ || (
+ media-gfx/imagemagick[png]
+ media-gfx/graphicsmagick[png]
+ )
+ )
+"
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ # https://github.com/python-pillow/pillow/pull/7634
+ "${FILESDIR}/${PN}-10.2.0-cross.patch"
+ )
+
+ distutils-r1_src_prepare
+
+ if use test; then
+ mv "${WORKDIR}/test-images-${TEST_IMAGE_COMMIT}"/* \
+ Tests/images || die
+ fi
+}
+
+usepil() {
+ usex "${1}" enable disable
+}
+
+python_configure_all() {
+ cat >> setup.cfg <<-EOF || die
+ [build_ext]
+ debug = True
+ disable_platform_guessing = True
+ $(usepil avif)_avif = True
+ $(usepil truetype)_freetype = True
+ $(usepil jpeg)_jpeg = True
+ $(usepil jpeg2k)_jpeg2000 = True
+ $(usepil lcms)_lcms = True
+ $(usepil tiff)_tiff = True
+ $(usepil imagequant)_imagequant = True
+ $(usepil webp)_webp = True
+ $(usepil xcb)_xcb = True
+ $(usepil zlib)_zlib = True
+ EOF
+ if use truetype; then
+ # these dependencies are implicitly disabled by USE=-truetype
+ # and we can't pass both disable_* and vendor_*
+ # https://bugs.gentoo.org/935124
+ cat >> setup.cfg <<-EOF || die
+ vendor_raqm = False
+ vendor_fribidi = False
+ EOF
+ fi
+
+ tc-export PKG_CONFIG
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO (is clipboard unreliable in Xvfb?)
+ Tests/test_imagegrab.py::TestImageGrab::test_grabclipboard
+ # requires xz-utils[extra-filters]?
+ Tests/test_file_libtiff.py::TestFileLibTiff::test_lzma
+ )
+
+ case ${ARCH} in
+ ppc)
+ EPYTEST_DESELECT+=(
+ # https://github.com/python-pillow/Pillow/issues/7008
+ # (we've reverted the upstream patch because it was worse
+ # than the original issue)
+ Tests/test_file_libtiff.py::TestFileLibTiff::test_exif_ifd
+ )
+ ;;
+ esac
+
+ "${EPYTHON}" selftest.py --installed || die "selftest failed with ${EPYTHON}"
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # leak tests are fragile and broken under xdist
+ epytest -k "not leak" -p timeout || die "Tests failed with ${EPYTHON}"
+}
+
+python_install() {
+ python_doheader src/libImaging/*.h
+ distutils-r1_python_install
+}
+
+python_install_all() {
+ if use examples ; then
+ docinto example
+ dodoc docs/example/*
+ docompress -x /usr/share/doc/${PF}/example
+ fi
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pytest-testinfra/Manifest b/dev-python/pytest-testinfra/Manifest
index e04113595964..ab9a9e60ada7 100644
--- a/dev-python/pytest-testinfra/Manifest
+++ b/dev-python/pytest-testinfra/Manifest
@@ -1,3 +1 @@
-DIST pytest-testinfra-10.1.1.tar.gz 86567 BLAKE2B b9dd9ea4023b1b7d9399615fbf6493efb094ec7f2478f65b46118173f6b20f545b645d06f20b42544325d68a917812a55f902ca28774b8ffb8743ac8182c3970 SHA512 6173937b03eaefb84a95b6fca616092ea0649f880fd1bccef6364f338b859bda8d09d706b517625b81cff4f663ababa766dac82d4d094c38683d9b170909f6c9
-DIST pytest-testinfra-10.2.1.gh.tar.gz 84124 BLAKE2B 3a967f22da4da4cd03f41e4d38ce0d1c5b62852ba8c18ab448db3c92fce740b48528dc45408187d6eae9f755c1eed55dc262c25b9ca1e8b70b6825ae1688e9ea SHA512 d36e7d7cae1da82a947c60be762562ed14d94f1d20c3173798226bb443b18cf96dbe09d54797d744328370b947f3ee8e3c9742548369f8ddd3a1e9152d07aed8
DIST pytest_testinfra-10.2.2.tar.gz 76153 BLAKE2B 85d25268eacbdbf97fcbfdd32cea92228475a76cc057cd633fd096375a1e5397f31628cffed1cafcbb41ef5f29ef5ea55f5134c3455d562e3d644006a897b706 SHA512 bcbc4d60bfbc030d0ca37f710c3b300890f18275830e0e7758bbceee3eb37ed020b9053e32ece1f5ce0be6cb341adff87e2842dabb2100280f4ec8f4acec1113
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-10.1.1.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-10.1.1.ebuild
deleted file mode 100644
index 2690fca77c90..000000000000
--- a/dev-python/pytest-testinfra/pytest-testinfra-10.1.1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Write unit tests in Python to test actual state of your servers"
-HOMEPAGE="
- https://github.com/pytest-dev/pytest-testinfra/
- https://pypi.org/project/pytest-testinfra/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~riscv"
-
-RDEPEND="
- dev-python/pytest[${PYTHON_USEDEP}]
-"
-# Ansible is called via its CLI
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- app-admin/ansible
- dev-python/paramiko[${PYTHON_USEDEP}]
- dev-python/pywinrm[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x EPYTEST_DESELECT=()
-
- # This is the only test which actually fails if salt cannot be imported
- if ! has_version "dev-python/salt[${PYTHON_USEDEP}]"; then
- EPYTEST_DESELECT+=(
- test/test_backends.py::test_backend_importables
- )
- fi
-
- epytest
-}
-
-pkg_postinst() {
- elog "For the list of available connection back-ends and their dependencies,"
- elog "please consult https://testinfra.readthedocs.io/en/latest/backends.html"
-}
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-10.2.1.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-10.2.1.ebuild
deleted file mode 100644
index 09ba20ef60e5..000000000000
--- a/dev-python/pytest-testinfra/pytest-testinfra-10.2.1.ebuild
+++ /dev/null
@@ -1,59 +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_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Write unit tests in Python to test actual state of your servers"
-HOMEPAGE="
- https://github.com/pytest-dev/pytest-testinfra/
- https://pypi.org/project/pytest-testinfra/
-"
-SRC_URI="
- https://github.com/pytest-dev/pytest-testinfra/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
-
-RDEPEND="
- dev-python/pytest[${PYTHON_USEDEP}]
-"
-# Ansible is called via its CLI
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
- test? (
- app-admin/ansible
- dev-python/paramiko[${PYTHON_USEDEP}]
- dev-python/pywinrm[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x EPYTEST_DESELECT=()
-
- # This is the only test which actually fails if salt cannot be imported
- if ! has_version "dev-python/salt[${PYTHON_USEDEP}]"; then
- EPYTEST_DESELECT+=(
- test/test_backends.py::test_backend_importables
- )
- fi
-
- epytest
-}
-
-pkg_postinst() {
- elog "For the list of available connection back-ends and their dependencies,"
- elog "please consult https://testinfra.readthedocs.io/en/latest/backends.html"
-}
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-10.2.2.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-10.2.2.ebuild
index 249bc6a00f7a..6770d7f50ea6 100644
--- a/dev-python/pytest-testinfra/pytest-testinfra-10.2.2.ebuild
+++ b/dev-python/pytest-testinfra/pytest-testinfra-10.2.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
+KEYWORDS="amd64 arm64 ~riscv"
RDEPEND="
dev-python/pytest[${PYTHON_USEDEP}]
diff --git a/dev-python/python-engineio/Manifest b/dev-python/python-engineio/Manifest
index 446eab1f1ba1..5cf69234746e 100644
--- a/dev-python/python-engineio/Manifest
+++ b/dev-python/python-engineio/Manifest
@@ -1,3 +1,2 @@
-DIST python-engineio-4.10.1.gh.tar.gz 317153 BLAKE2B 3e75591bc79bc705dd844283485e7087a97a5493a1a8db0095bbbb2935de60deba394fae2f0136167692170ab5dc21713a7683819f49528f8912c58d9d9b51ca SHA512 6fa6828803143579564b89c6ba121dd3430d884e09eff2d2a0f9018056b2c88a0b7ecaa792ff5d1d12c86fabaf48d171af266ca9a0e9aee9cee80dc02af06210
-DIST python-engineio-4.11.1.gh.tar.gz 319420 BLAKE2B 8c6f56da262f824f5880fe7a5b955bedd39973de922ad9cf274f2c16d2546b7aaa5d55cc4c35a4a8b5dfa6c0611447cf1ea2f3137883023e41cf4cf59962977d SHA512 e87f62229b0d45da015d4837bbe13a2310e895f27ec24daad21a1d4d077bc5ca73b20672fa20d1c0141ea6cbcd9e842ccd495bac79fc3f33e1e7bd068aeb232c
DIST python-engineio-4.11.2.gh.tar.gz 319497 BLAKE2B d3f97f34c6e8043b0079c1555a8b4acb12f068883a1d117b19e0875d445239cc3c24e884f9b63c82268e9a8c67f3bbac193acc417cdd441e6f9d07cc79b97ccf SHA512 05f7fad64c3ddb136bb9fe4762bc5125d1e72813bd8f28d0c567c016ab3db9ff3b99719eafa106b997ce90da71be5aafb2bd34460d5097a9f68cf4dc7db34ba7
+DIST python-engineio-4.12.0.gh.tar.gz 319601 BLAKE2B 3da3382dd568f74ed5a0362b36641cd9cbe60fd0370e4e4172455251250ad6470662e1bfdb1903eb7b2dd934cbb895994e407ab8487a80a9dd2f629c87a55f89 SHA512 4d4996183b837b656566bc94f17f8bed7551a18d46985cb83aca44f040a1c9031ad48abac8f33ec63826cff506bb015826a4c080d3d42d47ee684d67948d0708
diff --git a/dev-python/python-engineio/python-engineio-4.10.1.ebuild b/dev-python/python-engineio/python-engineio-4.10.1.ebuild
deleted file mode 100644
index 61061b5ea9d5..000000000000
--- a/dev-python/python-engineio/python-engineio-4.10.1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python implementation of the Engine.IO realtime server"
-HOMEPAGE="
- https://python-engineio.readthedocs.io/
- https://github.com/miguelgrinberg/python-engineio/
- https://pypi.org/project/python-engineio/"
-SRC_URI="
- https://github.com/miguelgrinberg/python-engineio/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- dev-python/aiohttp[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- >=dev-python/simple-websocket-0.10.0[${PYTHON_USEDEP}]
- dev-python/websocket-client[${PYTHON_USEDEP}]
-"
-# Can use eventlet, werkzeug, or gevent, but no tests for werkzeug
-BDEPEND="
- test? (
- dev-python/tornado[${PYTHON_USEDEP}]
- dev-python/websockets[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/alabaster
-
-python_test() {
- local EPYTEST_IGNORE=(
- # eventlet is masked for removal
- tests/common/test_async_eventlet.py
- )
-
- local EPYTEST_DESELECT=(
- # also eventlet
- tests/common/test_server.py::TestServer::test_async_mode_eventlet
- tests/common/test_server.py::TestServer::test_connect
- tests/common/test_server.py::TestServer::test_service_task_started
- tests/common/test_server.py::TestServer::test_upgrades
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/python-engineio/python-engineio-4.11.1.ebuild b/dev-python/python-engineio/python-engineio-4.12.0.ebuild
index 5345bcc039c4..af34606f1566 100644
--- a/dev-python/python-engineio/python-engineio-4.11.1.ebuild
+++ b/dev-python/python-engineio/python-engineio-4.12.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/python-memcached/python-memcached-1.62.ebuild b/dev-python/python-memcached/python-memcached-1.62.ebuild
index 94512050080e..38da3d7bc675 100644
--- a/dev-python/python-memcached/python-memcached-1.62.ebuild
+++ b/dev-python/python-memcached/python-memcached-1.62.ebuild
@@ -21,6 +21,8 @@ SRC_URI="
LICENSE="PSF-2.4"
SLOT="0"
KEYWORDS="amd64 arm64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/serpent/serpent-1.41.ebuild b/dev-python/serpent/serpent-1.41.ebuild
index fb45a27c78b9..26afe51c465f 100644
--- a/dev-python/serpent/serpent-1.41.ebuild
+++ b/dev-python/serpent/serpent-1.41.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm64 ppc ppc64 x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/shtab/Manifest b/dev-python/shtab/Manifest
index 54da4f6c8642..9e52aa90dcd5 100644
--- a/dev-python/shtab/Manifest
+++ b/dev-python/shtab/Manifest
@@ -1 +1,2 @@
DIST shtab-1.7.1.tar.gz 45410 BLAKE2B 15ed00feb1bb051ad3ec21bab9a3300175b22e677db905b714e29b10308489bec6273a7f1e226b3dd70088c74b0dd5f2c7d8958a130e339d197ba290ea6710f4 SHA512 749f21e5b4eba75744a270809b761e7c795e4404727f8e6da87f6620622e42dc6e35aa923c7f8df34bec27af45ec16496fdab11b8450edb09067df9c830ae219
+DIST shtab-1.7.2.tar.gz 45751 BLAKE2B 420f1249456ee954266e5071da7eded9abbaf64d0a525b8c0b7dd49a0c6e61b5b81fb737493e7b44c3ae6f42dc76d2e7be4e407198bc9feecbfa05283cdd2481 SHA512 a9b94774430d70dfab9cbfe9870c7d06e6589571523915a7bd460d1129ce606dec41692fbeeed4f4c86c0e07caa2200c243a234711d70128d3cb969bfa2197c3
diff --git a/dev-python/shtab/shtab-1.7.2.ebuild b/dev-python/shtab/shtab-1.7.2.ebuild
new file mode 100644
index 000000000000..8deda0e4fe48
--- /dev/null
+++ b/dev-python/shtab/shtab-1.7.2.ebuild
@@ -0,0 +1,28 @@
+# 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_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Automagic shell tab completion for Python CLI applications"
+HOMEPAGE="
+ https://github.com/iterative/shtab
+ https://pypi.org/project/shtab/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+BDEPEND="dev-python/setuptools-scm[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # Disable pytest-cov
+ epytest -o addopts=
+}
diff --git a/dev-python/tavern/Manifest b/dev-python/tavern/Manifest
index 94271fb7614b..23d672023a69 100644
--- a/dev-python/tavern/Manifest
+++ b/dev-python/tavern/Manifest
@@ -1 +1,2 @@
DIST tavern-2.14.0.gh.tar.gz 239905 BLAKE2B f16a9e328933ae46df4238bfd79908171852ac2ebf2b1f6b2348870e9c6bd1aeb4330368237de4143cab709d43102215f2e4713b38aa0b50cdf5b98a357bca42 SHA512 c88a6045bf0e660f63fd709ced3592a4afd3f2fa2f9e1f925b6e8e99383524a8b69fb19089f59ca360b44373254e668e5994d08351a18e7589924759720298d7
+DIST tavern-2.15.0.gh.tar.gz 240494 BLAKE2B df6876138aa661ff4298b00315eef7b75050e24c076f2c33fad55c3c096d8e4593ae396ddfc29fb09e673e56fb2a708b1c16922b85cee272ba8699d1e63603a8 SHA512 b39ee0150cd631ee33132b91cf1c480f0c5c3afb6a7573f3fba3cb59257e61a0a90eee1b05c3e048e33e8646cd16e9300ae2fe4f7f2dbeda32a5cfc0c3c2c575
diff --git a/dev-python/tavern/tavern-2.15.0.ebuild b/dev-python/tavern/tavern-2.15.0.ebuild
new file mode 100644
index 000000000000..e9909c270d57
--- /dev/null
+++ b/dev-python/tavern/tavern-2.15.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="A tool, library, and Pytest plugin for testing RESTful APIs"
+HOMEPAGE="
+ https://github.com/taverntesting/tavern/
+ https://pypi.org/project/tavern/
+"
+SRC_URI="
+ https://github.com/taverntesting/tavern/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/jmespath-1[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4[${PYTHON_USEDEP}]
+ >=dev-python/paho-mqtt-1.3.1[${PYTHON_USEDEP}]
+ >=dev-python/pyjwt-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/pykwalify-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7[${PYTHON_USEDEP}]
+ >=dev-python/python-box-6[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.22.0[${PYTHON_USEDEP}]
+ >=dev-python/simpleeval-1.0.3[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/faker[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # strip unnecessary pins, upstream doesn't update them a lot
+ sed -i -E -e 's:,?<=?[0-9.]+::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires grpc
+ tests/unit/test_extensions.py::TestGrpcCodes
+ # broken with paho-mqtt-2
+ tests/unit/test_mqtt.py::TestClient::test_context_connection_success
+ )
+ local EPYTEST_IGNORE=(
+ # require grpc*
+ tavern/_plugins/grpc
+ tests/unit/tavern_grpc
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p tavern
+}
diff --git a/dev-python/typing-extensions/typing-extensions-4.12.2.ebuild b/dev-python/typing-extensions/typing-extensions-4.12.2.ebuild
index 637d07d55093..2d134fcd78fe 100644
--- a/dev-python/typing-extensions/typing-extensions-4.12.2.ebuild
+++ b/dev-python/typing-extensions/typing-extensions-4.12.2.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="PSF-2"
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"
+IUSE="test"
+RESTRICT="!test? ( test )"
distutils_enable_tests unittest
diff --git a/dev-python/typing-extensions/typing-extensions-4.13.1.ebuild b/dev-python/typing-extensions/typing-extensions-4.13.1.ebuild
index 5f37a92f4605..aa49586f5f76 100644
--- a/dev-python/typing-extensions/typing-extensions-4.13.1.ebuild
+++ b/dev-python/typing-extensions/typing-extensions-4.13.1.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="PSF-2"
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"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
>=dev-python/flit-core-3.11[${PYTHON_USEDEP}]
diff --git a/dev-python/typing-extensions/typing-extensions-4.13.2.ebuild b/dev-python/typing-extensions/typing-extensions-4.13.2.ebuild
index 5f37a92f4605..aa49586f5f76 100644
--- a/dev-python/typing-extensions/typing-extensions-4.13.2.ebuild
+++ b/dev-python/typing-extensions/typing-extensions-4.13.2.ebuild
@@ -17,6 +17,8 @@ HOMEPAGE="
LICENSE="PSF-2"
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"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
>=dev-python/flit-core-3.11[${PYTHON_USEDEP}]
diff --git a/dev-python/websocket-client/websocket-client-1.8.0.ebuild b/dev-python/websocket-client/websocket-client-1.8.0.ebuild
index db88911b446c..ca3be924eae9 100644
--- a/dev-python/websocket-client/websocket-client-1.8.0.ebuild
+++ b/dev-python/websocket-client/websocket-client-1.8.0.ebuild
@@ -17,7 +17,8 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="examples"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/zc-lockfile/zc-lockfile-3.0_p1.ebuild b/dev-python/zc-lockfile/zc-lockfile-3.0_p1.ebuild
index 2546c40ec74f..06f47370af70 100644
--- a/dev-python/zc-lockfile/zc-lockfile-3.0_p1.ebuild
+++ b/dev-python/zc-lockfile/zc-lockfile-3.0_p1.ebuild
@@ -19,6 +19,8 @@ HOMEPAGE="
LICENSE="ZPL"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/zconfig/zconfig-4.2.ebuild b/dev-python/zconfig/zconfig-4.2.ebuild
index 0f13c6ba267b..ce94a9222c19 100644
--- a/dev-python/zconfig/zconfig-4.2.ebuild
+++ b/dev-python/zconfig/zconfig-4.2.ebuild
@@ -18,6 +18,8 @@ HOMEPAGE="
LICENSE="ZPL"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/zope-hookable/zope-hookable-7.0.ebuild b/dev-python/zope-hookable/zope-hookable-7.0.ebuild
index 9a0312bef24e..66e5ceabecc7 100644
--- a/dev-python/zope-hookable/zope-hookable-7.0.ebuild
+++ b/dev-python/zope-hookable/zope-hookable-7.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2024 Gentoo Authors
+# Copyright 2022-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,6 +19,8 @@ HOMEPAGE="
LICENSE="ZPL"
SLOT="0"
KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (
diff --git a/dev-python/zope-interface/zope-interface-7.2.ebuild b/dev-python/zope-interface/zope-interface-7.2.ebuild
index f1f8817b56f5..0725662a55f7 100644
--- a/dev-python/zope-interface/zope-interface-7.2.ebuild
+++ b/dev-python/zope-interface/zope-interface-7.2.ebuild
@@ -20,7 +20,8 @@ HOMEPAGE="
LICENSE="ZPL"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="+native-extensions"
+IUSE="+native-extensions test"
+RESTRICT="!test? ( test )"
BDEPEND="
test? (