summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-08-22 17:22:09 -0500
committerroot <root@alpha.trunkmasters.com>2026-08-22 17:22:09 -0500
commit1ee53b162169cfc71a80dfcba1f939a4e53d82c0 (patch)
treea685cc20013c00eab25d6c13cc976c46cfefb28f /dev-python
parentce93cedd7048accb306b7c8ec7450111c49757fc (diff)
downloadbaldeagleos-repo-1ee53b162169cfc71a80dfcba1f939a4e53d82c0.tar.gz
baldeagleos-repo-1ee53b162169cfc71a80dfcba1f939a4e53d82c0.tar.xz
baldeagleos-repo-1ee53b162169cfc71a80dfcba1f939a4e53d82c0.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/aiohttp/aiohttp-3.14.3.ebuild2
-rw-r--r--dev-python/confuse/confuse-2.2.1.ebuild2
-rw-r--r--dev-python/cramjam/Manifest9
-rw-r--r--dev-python/cramjam/cramjam-2.12.0.ebuild236
-rw-r--r--dev-python/cython/Manifest1
-rw-r--r--dev-python/cython/cython-3.2.9.ebuild2
-rw-r--r--dev-python/cython/cython-3.3.0.ebuild128
-rw-r--r--dev-python/dulwich/dulwich-1.2.12.ebuild2
-rw-r--r--dev-python/faker/faker-40.36.0.ebuild2
-rw-r--r--dev-python/feedparser-sgmllib/feedparser-sgmllib-2.1.0.ebuild2
-rw-r--r--dev-python/feedparser/feedparser-6.0.14.ebuild2
-rw-r--r--dev-python/fido2/fido2-2.2.1.ebuild2
-rw-r--r--dev-python/gmpy2/gmpy2-2.3.1.ebuild2
-rw-r--r--dev-python/grpcio/grpcio-1.83.0.ebuild2
-rw-r--r--dev-python/hcloud/hcloud-2.23.0.ebuild2
-rw-r--r--dev-python/hypothesis/hypothesis-6.157.2.ebuild2
-rw-r--r--dev-python/icalendar/icalendar-7.2.2.ebuild2
-rw-r--r--dev-python/joserfc/joserfc-1.7.4.ebuild2
-rw-r--r--dev-python/jsonpickle/jsonpickle-4.1.2.ebuild2
-rw-r--r--dev-python/nanobind/Manifest1
-rw-r--r--dev-python/nanobind/nanobind-3.0.0.ebuild63
-rw-r--r--dev-python/numexpr/numexpr-2.14.2.ebuild2
-rw-r--r--dev-python/patatt/patatt-0.8.0.ebuild2
-rw-r--r--dev-python/proto-plus/proto-plus-1.28.2.ebuild2
-rw-r--r--dev-python/pyproject-api/pyproject-api-1.11.0.ebuild2
-rw-r--r--dev-python/pytest-tap/pytest-tap-3.5.ebuild2
-rw-r--r--dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild2
-rw-r--r--dev-python/python-openstackclient/python-openstackclient-10.2.1.ebuild2
-rw-r--r--dev-python/python-utils/python-utils-4.0.0.ebuild2
-rw-r--r--dev-python/rarfile/rarfile-4.4.ebuild2
-rw-r--r--dev-python/regex/regex-2026.7.19.ebuild2
-rw-r--r--dev-python/sphinxcontrib-mermaid/sphinxcontrib-mermaid-2.1.0.ebuild2
-rw-r--r--dev-python/syrupy/syrupy-5.5.3.ebuild2
-rw-r--r--dev-python/tibs/tibs-1.1.0.ebuild2
-rw-r--r--dev-python/treq/treq-26.7.0.ebuild2
-rw-r--r--dev-python/yarl/yarl-1.24.5.ebuild2
36 files changed, 468 insertions, 30 deletions
diff --git a/dev-python/aiohttp/aiohttp-3.14.3.ebuild b/dev-python/aiohttp/aiohttp-3.14.3.ebuild
index 12582c9fe96c..a5eb91ac7a03 100644
--- a/dev-python/aiohttp/aiohttp-3.14.3.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.14.3.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="+native-extensions test-rust"
DEPEND="
diff --git a/dev-python/confuse/confuse-2.2.1.ebuild b/dev-python/confuse/confuse-2.2.1.ebuild
index 1ac2e1198b1c..53d6ba337138 100644
--- a/dev-python/confuse/confuse-2.2.1.ebuild
+++ b/dev-python/confuse/confuse-2.2.1.ebuild
@@ -17,7 +17,7 @@ SRC_URI="https://github.com/beetbox/confuse/archive/refs/tags/v${PV}.tar.gz -> $
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
RDEPEND="
dev-python/pyyaml[${PYTHON_USEDEP}]
diff --git a/dev-python/cramjam/Manifest b/dev-python/cramjam/Manifest
index c1e9b6f8fec2..7209cb120edc 100644
--- a/dev-python/cramjam/Manifest
+++ b/dev-python/cramjam/Manifest
@@ -26,6 +26,8 @@ DIST colorchoice-1.0.3.crate 7923 BLAKE2B 7055fe61677143f0d4445ed5f6be2cbc284c15
DIST copy_dir-0.1.3.crate 5831 BLAKE2B de7e655e9716500db72cdb16394cf76a50f7b9861b9df6e0bd0a450b9475112f7e3ba3bc53ffde2c74ce540f4a48e2703f8e5ce83ad8cbfae06e51c16b2cdc63 SHA512 cd83244960be0bae32ab0480d1057c8a99e4bfd1c4622eb0b85692f2255ccac38678e608c663cf76ccf11d8c0d2415b15ebfd8328efdfbb37bca448245338fa2
DIST cramjam-2.11.0.tar.gz 99100 BLAKE2B 69a68b6e83adec4434f61608082f992bfc00d2b52bed91f18a4bd55f2f5310986a5d325c0e81194d41c266e5d4d6c03735e41f9bc7f8b13f8f15d9df03002961 SHA512 d92446c0c0ef885f3544783caa1f179fd50b6a6290ada011495b7385411527f75a2544c0c8cdc36910c83c879dbac7dd130f4fe8f3dc3b885a84a45286cb3695
DIST cramjam-2.11.0.tar.gz.provenance 9247 BLAKE2B 1c4a5e31c1278dc2a0e14fd0626cb2002c94a31fa55f57ff3da53443ec9509c52e7607d9b05715bb9d05ef99f87ac8d99ce9454ae6b3cd415baf0a63811b5b65 SHA512 991127d9c8f0c805c9d5c4ed0555ed174a623080454a90dffa61e9eee370802cfada5e3a7da249c60c45a25bf9598895dbd6ee6a5859347d1e528f649ca85e9f
+DIST cramjam-2.12.0.tar.gz 89945 BLAKE2B 6eb3146c6fed33c74b85babe34965ebd924529e33d1910513fbcea8eaaffd3de74c75227cc0eaabfa02e5e1afc03a4ce69ae6dd679528d63b697acd0f5af2653 SHA512 1dab0f2c6910f4e8613617bfb8e6763785efefaffb7455630ca2b18d71cae0fa8e30b2cf50340ebe1ab022d9790531fce56feca4f1aea92f8858e547c2abc4dc
+DIST cramjam-2.12.0.tar.gz.provenance 9902 BLAKE2B 132b44a32f9372c33b7acdd69759014649b3d51a948786676370663b1313728e944b48079864a7aa6f95956d08cca3e8996d8ed3f19774cc60c6e79958725b3a SHA512 29330e4a1b6bb607e0d047ee71d4f2e64f1a33e20da86bb39f36c8946d3f662704e0b192b7585cb77174d7501812d75c9abb75a0279682c4791ad3ea5e8a456e
DIST cramjam-2.12.0rc1.tar.gz 90043 BLAKE2B 4153cf41cf57abddc59bee04dd3e5160f527b17878a6b6eb8bf76213d9ef8c579e428d246ff1a65371e23692a5f2862453a3489ad3ff5253e0cedb931c291ea6 SHA512 d0361dd85b62945b065fdbc9915dcf1252c9b2be125397a1312f245e72f84512a8c9808a5a61ba99086624cb86b81f71d229b718164ea2e94a2e11c3619bdc30
DIST cramjam-2.12.0rc1.tar.gz.provenance 9458 BLAKE2B 694d6f6fdb82d746aebb4b0c68b64774e19667e7cf1b9329b499e23dedf3e361d85c5af52a83b90c5343d618336a9f8a67c3361f9fe625071a0c8e43fe11ac7e SHA512 07dc077581878453381f372ea7213e23ae2c9516465d89ef927188ea149b0e22a56fde47629909dd74b30963a8ebb7007cc80a90a9bbcfca943c0c57fe7c8d47
DIST crc32fast-1.4.2.crate 38491 BLAKE2B aaa3acca66e5814a45f12a90ae09f6ff5fc14ca94c8539184dab6ed928abc68cd1d37e539c268c1effd50ab3af20de6038593fb9c6bd6a664785dac52f6939fd SHA512 c7608d33022062e217d3576f536ffbd51479855a5e5874529c71db2bf6a937ce04d814c39cf777309c38445393bf43cb9996161947e28738abd432f11beb7266
@@ -58,16 +60,22 @@ DIST memchr-2.7.4.crate 96670 BLAKE2B da38114beca670467c3e1fbf4e415af6f22d52e322
DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
DIST miniz_oxide-0.8.5.crate 62237 BLAKE2B 6afb3df5938ce0427fa8f61b0962b04ebb8baf76f304dc9c1b6d89b685be89c4bcc241a3cc54fbaff73a4607e58803bb6eb1689c817ac1302476db7a01d12abe SHA512 a82e36fdec6d77876c00bc4d03f2d8d90be898091a7c2f474e1b0c21142df2f362d5bcde407ec6bb48be982b22e2bc7fb23572c8aacb2b063ac20149b4564251
DIST once_cell-1.20.3.crate 33456 BLAKE2B b16081751a1b6649d0235fe9cef3fd0a9023d4f6980521933e4a411282458050ca27c1a8aa01d5237d424fa279219b5713da21d8900eccc3100d19c37d24b7a2 SHA512 3ede903f232d6ced73aa74c6b2e2ec306012517eac684db253913df4656515d087d1aff9f437a58fdeecb77cedf8a5960d6772d72bf1f1f19f1ce3fe54bc72dd
+DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155
DIST parking_lot-0.12.3.crate 41860 BLAKE2B d1899a1132035aaea3a784290cf4951ea3b36b2018d407e27d333b2a2ce3820e040d635009c44cb6e58ad07cec6565c0347af6f6fb02954eac2d4c348bb036f0 SHA512 368c17203fb5b9e4ecfd4857e3b1ab96b86da3770b8f21be392818c845952f72dde1072a10265760a62aa8a1dd65332bfd585667444e5fbb9dbe3280b5862703
DIST parking_lot_core-0.9.10.crate 32406 BLAKE2B 25339d028579eb45a957ae5fdbac00288b1472d784c0aa7fa2953fcf9279c750d243ce69744993ee8cbe6899633e71e0a54ffc11e39247755685107f2f8dea54 SHA512 4f30fb60ded274d3154ffb00f6f50ac284b6fb97daebc1a2ac897ce97fa8e2ec6ff30cbdadf3b7419617a410fa7525f30ef5e580334e07d4420f4c0200a57389
DIST pkg-config-0.3.31.crate 20880 BLAKE2B ab7676e810751f89639b60ae70bdebe1d57edc76319f83077c3680049a701a26e72e8cc485fe77cdc4346fe3571d32c59e7384c8c86fef17e00d7d81df5daf43 SHA512 ac3e8062ee8831a4e4fc717b5247dc7f113da7bf6d64ec95cbca7875959a2afa1497bf81d9dfc27206b5fb10027a2509d51dd9ca1c10139d7b4c78128864fdf4
DIST portable-atomic-1.11.0.crate 181258 BLAKE2B 627bd7c306f6c4d7991abd9f995b7e0ce110a7ace738690c287a43ce3b979691214e525876f8ace0c2f0d10d781fba95c7d3bf29aea28e09b05b06f4764db03f SHA512 71774f8308963c5399095c6b755befdf9ff3d28f9529b4bae1fe0f2aba733339a267aa6f0ff854e59fa5044a9b0c2c86bad3bc4fcaa951724c839b0d6a22041e
DIST proc-macro2-1.0.93.crate 52388 BLAKE2B dae4493215b88f68cc485bc0ae80f0a48ebad68e0260839b1c367832d1ab778197bf040647b3fe36cfe9d5f7a496e05cd71b5914f531eb129c2d458d5f0be896 SHA512 1ae650e390e4f1b18d05f42d2ffcd025cabf72568a326cd85496c722600108b0aa0ab0161b39fcc931b8b302427f678650e703f4db57aa1a60f1751db881dc6c
DIST pyo3-0.25.0.crate 1120850 BLAKE2B 6f373129d032e6980d058ec5dbfea58a7ce0cb8ed2b32aa852a14746cfd3a541b02286676c934a5d7f7bc1bea03e986e93e44de42114f7620b487977c0092d85 SHA512 83336d284eefdef5bc26dec4880e21c608a001b4676b3628eb59b7c0011fb672ca81fca035666b714eeb158809064f9b5b0720802045d5ff8fc9f6af02813c30
+DIST pyo3-0.29.2.crate 1255741 BLAKE2B 5187b7dc0f0b2b1441b451850f442a9cf7b8e65baab3c94996be80e39543350ce8739baccb2df0caae1049a4cf744274e4ca9a9d752887d09df5c03e380d42b0 SHA512 85326462a932fd49441f320a879192306a7a6f3a66468ca468fefdb3dff9a530b7895010f156c8c3b125279b94dd304b72825fd4bbdcaeba8e3a58bd8cdcc929
DIST pyo3-build-config-0.25.0.crate 34122 BLAKE2B ba098ff1c963c43d0cd1fdfaec43573ee0d9afff7cc010b7b371504ab66e1fec9233bab04c8c7656c382366d622589d0d5e865a8a271c68a9831ca657b49fcb9 SHA512 f6580bcc12bf8235bd8bdc09908f861645adfcdee31cf88d6443e628601bf3107c1d823c09dacb8e1bdaa171ae49f15e19811b9752600b799a4e86cdea081d40
+DIST pyo3-build-config-0.29.2.crate 41104 BLAKE2B b4a78b704ae7c6cd8393abd436fc5d4e9f984ad6f4c95f1fd069888865a516f1a65eaebeecc7bb61e6a0d62d637ff4312a8d6a31f2dabb262d0f3c5177abdf39 SHA512 ecae961c373a87eb13ed3881ac4954112bbf54b3e02eb287d818e44e5ab46cd4700220da5072dd1fb22d68435d012a413a3680b54505c700ee059f1472833b6a
DIST pyo3-ffi-0.25.0.crate 77991 BLAKE2B 0474051570bf71070eab2578e0f9278327ccc48510419d292a81887fffad753ba434db6b795536512a688426eff42ea9805f99b1a3237ec927f6c731033850b2 SHA512 e03cb71493c898408a0692ba7fb4cd704e48c307f5115159f3375fae879e46f5cd7536325d70e7dbd3aeca8ea282a0fb5b5ac609bc807e8b9cb6abbd3a9a2ca5
+DIST pyo3-ffi-0.29.2.crate 90029 BLAKE2B f20803f6866a99767ce814984cc624783c2207ab54909deaba0a674c3c8f3e98c56bac80e1ea0e13b295634b0c6a713bd961b6c58aacbbc3be5fa9e224ff86e3 SHA512 a5b1db7e856af10f32ba3ce6a4dddc48a11f48431b82cbc1e40be88370836902afc9ab2918eb953d7fbed1ad7daaebefdf70489c7c798e591782e7dd6e2d0ddd
DIST pyo3-macros-0.25.0.crate 8876 BLAKE2B 09c37cc5bdaec6859461a7bb4d1c28d0ddd77a448fb5097275fe7be373897900e2dcdb1c43eb4cc915e1089ac1204f4a7155c4b69478b0778e179aded1449ff0 SHA512 ee1218b6981d94a228bf55f31f0131c094728b12c19b312a77386cace2c4768ad8fc8a1a1999bf27c6a30012e20a1eb7a574d918ccacc421930c12cb1a6386ef
+DIST pyo3-macros-0.29.2.crate 9044 BLAKE2B f7caebd70dc9f54914d1d87e4c800f7bddc5d1e09835b0afd96e1f98320127660aa38f58b634ca196d823c926e279bf87c17506161a61bbae0908c51fc3b7eef SHA512 32281797e849ccb23c0ba03f8bea13ffcd86acfc3d5df65543c13befc03c142e88bfaf45f0cf5489cfe9e6acf9170ca6c24ced5d3f3f72be37bc7d2ce2bdb935
DIST pyo3-macros-backend-0.25.0.crate 75089 BLAKE2B ea4d87e16616782c60f46f97d87a002ea2873a2ab6f7335da68bab32d636988fa30834c946943d4c56c6e5992c78ba6dc2cf8b613c2a402218599ef3e7a6c5be SHA512 dc2e567a09e746893d7cea57aa456124df31b1e3cb25f5b1fabdc97cd2ae73eea1d57aa642268bdbef3dc1ba0e383893d1b5dfd9cf1f3e818f77b9fc0ef2c486
+DIST pyo3-macros-backend-0.29.2.crate 93749 BLAKE2B dce6aeef93fc8483dfffd5b514d21530ff499f241ac157e2ea304c8cd050e9fc1343d356a5a85dacb8a73d4d4405b89b4eab128f85fac54aa00f53298ab409a5 SHA512 944b8482e2a6fd0dce82eabe50f915d82b066cf11944e413ab81c01fc917dfe1877748cb8eb92f23d8acee43a9d1fb35f8690203ec440e7db7c66b03c7f27358
DIST python3-dll-a-0.2.13.crate 85018 BLAKE2B 4531172b7e985041fe3cf7d164c67dc74e5974fbdbc80f1b7fb5e351d8115cda0a7a8f64c037ff7fcf4c20918fa2a53a29c8784035c571e0c46be39cdc7faff4 SHA512 01438c7af7a936ae6b95e1b81f4596627043a4b02eea85241a18ed137c23dff644f3e8d8eeb45b8e64ef1fd2693ab47fde47b6341dfc56f6c4eca032da46647c
DIST quote-1.0.38.crate 31252 BLAKE2B a3836efbe5c21dec70c684002b47b8fc7cef643c82ee903b537a48bc0707a28106c4b33d98e60ff81e04c7520f7404b1dc4d49446e8d91dded517e476c36e1c2 SHA512 530c47c5e6372b508bf5b2b88a138408a7afa5ef52c47280ed20eccf39f8e97dfc1e0a18c1bd5472efcdc49a7a1e69566333a0a1b4c0b4f0e11e6a7a85bfe8af
DIST redox_syscall-0.5.9.crate 30080 BLAKE2B e7a6d1f9e96bda9f5544bddee96ff51225339c96effa4b8f41daa414208a2052ec76a88400a504b7fe7ed7aee6917aaddf031a385955e7d9bebc6064e5e3000d SHA512 5689ab9cb30fd1972fb275aa22afa876ce013cd91c2b0d6afea17d0b3d45d981809e128b0f483b9419597f3974081c115956fcc1fd14172bc94cf0078f5cdc52
@@ -86,6 +94,7 @@ DIST snap-1.1.1.crate 33763 BLAKE2B 97e8dfffd23684539e4788740a5cbe35ed8808886087
DIST strsim-0.11.1.crate 14266 BLAKE2B 252a9ede4241b165525486aa8855dece37af77f5b28e0e1858c4a5d2047db9fa958328db10989234aad69463ab51b2303785ec056c63ea8c95bf95e111ddabf2 SHA512 0cebe0155a92640e56db9a599ae62078cbb32e1d2da8bfa67ed0e8f410a7558dfcf7b3c2720ff5913282e291ecf076aed9fe9bf84c8d44e814a642b1bed3335c
DIST syn-2.0.98.crate 297807 BLAKE2B b17e2bb4f151fba26debb722bda8e8677dcc4f57f0e88bec214f8b06e9b15c48731ca3f63d1453a44f34845c9895b3519008ce6cfb69746486324d7a8e0e0c20 SHA512 792dc70249d55face151b5481b0ebabbd3d290de78cff8b5dad8bee08e5a932ee22e54ca5fc5980e0b218197d19822c3672e02eb92ca74c8ac1328081d4d2cbf
DIST target-lexicon-0.13.2.crate 27923 BLAKE2B 0761f0ffdc23b9c9df86b384d59611c7b8b5e29ff068f03367ad2fe84cfb6d11e1af149b9338236978e9566fedc51387db9f239d2a602db41045ac3db907faec SHA512 d25e3cc3d679cb6b6f24c03e0c24db9d6ca31b8ed42ac9531bd7637557fbba225a6c8ac4f68a8eaf3569195814d599e668a968afbc73b940a77cbc27552cc90a
+DIST target-lexicon-0.13.5.crate 26928 BLAKE2B f8c62cb91f68a635e6ce3fc254df9ce378b5e8f62c1147404c967484b9ed97fb33d7993b4671611db76566063e999d658d201f856f70196ec678d72cc758cf6d SHA512 956df27c01e1186c5356117ffd07810fc0b62fb919d5bfd215955ba85be00ef675212a3c0dc36679986be7b825442fec5c93c7643b7e1e19c04572e6463546fc
DIST tempfile-3.17.1.crate 39240 BLAKE2B 92e3094e47a04054805a2e4dfa19048632be6954ecea640c952876dcac5a68339cdf3136997fb1e7cdc0f12e0a44e3129dd95a305596804b5ebe8c9421ecdc07 SHA512 52eb23b3c4daebd6731338b0fb21ab625a5b910c75310a58c1b339500c32bb77fc9a31c2f5d88ade11e60cc49df478cf86b7b8a81416401a5bbaa284c3293efd
DIST toml-0.8.20.crate 51095 BLAKE2B 8e46bf5b667fa650883fba759efd1cc524fa758eaf1b9124f73121127cc72c0ebefaf64edaba6d249d7a9d0d81f75295d335f68e4e88d20949aba538a2aa71a5 SHA512 c842705270baea3e62e3b0535485f15af87e9a1b26dafb7945e1918e9fd59654b83316ace4ff837d84739d2dd1fddfafabc7d7b0c3ea1dcb9a07433a8cce72f1
DIST toml_datetime-0.6.8.crate 12028 BLAKE2B 62113366771f22b437b2ed0d3bb2489ae9078cb589cfad2ad2e92c81ddbda48f689e5a573366eea4f54c2b3cbc6b37eaa8b442b6d935b631a992de4917268757 SHA512 d38b98db3b2d4eebd3001d88e2135b6fdbae63b200f7e900c6bb9c121dd3f170e557332bd26f237312c1cbef61666716b0cf550c2d730f86fa7cd9eb5f64a16f
diff --git a/dev-python/cramjam/cramjam-2.12.0.ebuild b/dev-python/cramjam/cramjam-2.12.0.ebuild
new file mode 100644
index 000000000000..6bfaae68d05f
--- /dev/null
+++ b/dev-python/cramjam/cramjam-2.12.0.ebuild
@@ -0,0 +1,236 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYPI_VERIFY_REPO=https://github.com/milesgranger/cramjam
+PYTHON_COMPAT=( python3_{13..14} )
+
+RUST_MIN_VER="1.83.0"
+# 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
+ bumpalo@3.17.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
+ 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
+ libcramjam@0.8.0
+ libdeflate-sys@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
+ miniz_oxide@0.8.5
+ once_cell@1.21.4
+ 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.29.2
+ pyo3-ffi@0.29.2
+ pyo3-macros-backend@0.29.2
+ pyo3-macros@0.29.2
+ pyo3@0.29.2
+ quote@1.0.38
+ redox_syscall@0.5.9
+ rustix@0.38.44
+ rustversion@1.0.21
+ 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.5
+ tempfile@3.17.1
+ toml@0.8.20
+ toml_datetime@0.6.8
+ toml_edit@0.22.24
+ unicode-ident@1.0.17
+ utf8parse@0.2.2
+ walkdir@2.5.0
+ wasi@0.13.3+wasi-0.2.2
+ wasm-bindgen-backend@0.2.100
+ wasm-bindgen-macro-support@0.2.100
+ wasm-bindgen-macro@0.2.100
+ wasm-bindgen-shared@0.2.100
+ wasm-bindgen@0.2.100
+ 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
+"
+
+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/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=( hypothesis )
+# horrible workaround for https://github.com/milesgranger/cramjam/issues/201
+EPYTEST_RERUNS=5
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/cramjam/cramjam.*.so"
+
+src_unpack() {
+ pypi_src_unpack
+ cargo_src_unpack
+}
+
+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
+ )
+ local features_s=${features[*]}
+
+ DISTUTILS_ARGS=(
+ --no-default-features
+ --features="${features_s// /,}"
+ )
+}
diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest
index e64cb456a636..73bab7ab3cea 100644
--- a/dev-python/cython/Manifest
+++ b/dev-python/cython/Manifest
@@ -1,2 +1,3 @@
DIST cython-3.2.8.tar.gz 3290300 BLAKE2B a24c99d93414dcddc3912119253d454b0e60ab98d5e547aa53bedd0910f6b685fa6580e46c8e5dba6ef6882ad07e4a34a4bfc7b713c886308fd82a104b70dd00 SHA512 19807bc7a956325c642206debdd32c8c234aaeb79bb9b9b79adfdea51a65150203e32b3ac2a952371e57600ba06656c2734b2f401f2c986813bc73227069a853
DIST cython-3.2.9.tar.gz 3293493 BLAKE2B 5798cac7a60c3642856ab5595f0a7547080bcc071ed457df25b4f4f15656406108cdc7a8b24a4e70ab546ad7295ade9563dab359a213b0b4988bb762f3e99d6d SHA512 5592d4eca3c522628082a695c514627e12b933cb761be77c97da9dda0dafdc44b16ea6ceb18a773ac32173c96e6150d06fa1d61b99d8f85d0fdc367e105b6bb1
+DIST cython-3.3.0.tar.gz 3727515 BLAKE2B 7eb8e7b04b51c1de078389a8cc14015b6c34c558885f80d66b7eb8264c159f454d4e170ef86c31d4b288d455449af590b08704414a2aef572c3bead407b687b7 SHA512 733892dcdb8a12f5914e46e8d7c83e2429573f292c1ff9817bce83fb18c9183d34956e5b061dbe790d822ca62c85f3e2bfe7b1e7ee38ab9302fcd09351a161be
diff --git a/dev-python/cython/cython-3.2.9.ebuild b/dev-python/cython/cython-3.2.9.ebuild
index f6543dcd036f..5b76d5f3e29d 100644
--- a/dev-python/cython/cython-3.2.9.ebuild
+++ b/dev-python/cython/cython-3.2.9.ebuild
@@ -21,7 +21,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 ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="test test-full"
RESTRICT="!test? ( test )"
diff --git a/dev-python/cython/cython-3.3.0.ebuild b/dev-python/cython/cython-3.3.0.ebuild
new file mode 100644
index 000000000000..f6543dcd036f
--- /dev/null
+++ b/dev-python/cython/cython-3.3.0.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_FULLY_TESTED=( python3_{12..14} )
+PYTHON_TESTED=( python3_{13..14} )
+PYTHON_COMPAT=( python3_{13..14} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 flag-o-matic multiprocessing pypi toolchain-funcs
+
+DESCRIPTION="A Python to C compiler"
+HOMEPAGE="
+ https://cython.org/
+ https://github.com/cython/cython/
+ https://pypi.org/project/Cython/
+"
+
+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 ~x64-solaris"
+IUSE="test test-full"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ test-full? (
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ' "${PYTHON_FULLY_TESTED[@]}")
+ )
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch"
+)
+
+# disabled to workaround pkgcheck performance issue
+# https://github.com/pkgcore/pkgcheck/issues/782
+#distutils_enable_sphinx docs \
+# dev-python/jinja2 \
+# dev-python/sphinx-issues \
+# dev-python/sphinx-tabs
+
+python_configure_all() {
+ # https://gcc.gnu.org/PR125730 (bug #976797)
+ tc-is-gcc && [[ $(gcc-major-version) -ge 16 ]] && append-cflags -fno-ivopts
+}
+
+python_compile() {
+ # Python gets confused when it is in sys.path before build.
+ local -x PYTHONPATH=
+
+ if use elibc_musl ; then
+ # Workaround for bug #925318
+ local -x LDFLAGS="${LDFLAGS} -Wl,-z,stack-size=2097152"
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ # PYTHON_TESTED controls whether we expect the testsuite to
+ # pass at all, while PYTHON_FULLY_TESTED allows skipping before
+ # numpy is ported (and possibly other deps in future).
+ if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ # Needed to avoid confusing cache tests
+ unset CYTHON_FORCE_REGEN
+
+ # uses $(nproc) to additionally parallelize many OpenMP-based jobs,
+ # leading to overcommitting
+ local -x OMP_NUM_THREADS=1
+
+ tc-export CC
+
+ local testargs=(
+ -vv
+ -j "$(makeopts_jobs)"
+ --work-dir "${BUILD_DIR}"/tests
+
+ --no-examples
+ --no-code-style
+
+ # Fails to find embedded.c
+ --exclude 'embedded'
+ # coverage_installed_pkg needs dev-python/pip and doesn't like
+ # 'externally-managed' (bug #927995), but we don't really
+ # want automagic test dependencies at all, so just skip
+ # unimportant-for-us coverage tests entirely.
+ --exclude 'run.coverage*'
+ --exclude 'Cython.Coverage'
+ # Automagic on dev-python/python-tests, could add this in future
+ --exclude 'run.test_exceptions'
+ # TODO: Unpackaged dev-python/interpreters-pep-734 (interpreters_backport)
+ # This only shows up as a failure with >=3.13.
+ --exclude 'subinterpreters_threading_stress_test'
+
+ # The fix for https://github.com/cython/cython/issues/6938
+ # changes these tests s.t. they break with our build layout.
+ --exclude 'build.depfile*'
+ )
+
+ # Keep test-full for numpy as it's large and doesn't pass tests itself
+ # on niche arches.
+ if ! use test-full || ! has "${EPYTHON/./_}" "${PYTHON_FULLY_TESTED[@]}"; then
+ testargs+=(
+ --exclude 'run.numpy*'
+ --exclude 'run.ufunc'
+ --exclude 'numpy*'
+ )
+ fi
+
+ "${PYTHON}" runtests.py "${testargs[@]}" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/dulwich/dulwich-1.2.12.ebuild b/dev-python/dulwich/dulwich-1.2.12.ebuild
index 1152ac733506..50bfa4a10cf8 100644
--- a/dev-python/dulwich/dulwich-1.2.12.ebuild
+++ b/dev-python/dulwich/dulwich-1.2.12.ebuild
@@ -55,7 +55,7 @@ LICENSE+="
LICENSE+=" )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 x86 ~arm64-macos ~x64-macos ~x64-solaris"
IUSE="doc examples +native-extensions test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/faker/faker-40.36.0.ebuild b/dev-python/faker/faker-40.36.0.ebuild
index 125fe3904e57..a2455830ee3f 100644
--- a/dev-python/faker/faker-40.36.0.ebuild
+++ b/dev-python/faker/faker-40.36.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
!dev-ruby/faker
diff --git a/dev-python/feedparser-sgmllib/feedparser-sgmllib-2.1.0.ebuild b/dev-python/feedparser-sgmllib/feedparser-sgmllib-2.1.0.ebuild
index 0548d13d261d..4cf4dcb52205 100644
--- a/dev-python/feedparser-sgmllib/feedparser-sgmllib-2.1.0.ebuild
+++ b/dev-python/feedparser-sgmllib/feedparser-sgmllib-2.1.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="PSF-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/feedparser/feedparser-6.0.14.ebuild b/dev-python/feedparser/feedparser-6.0.14.ebuild
index cf9757b3acc9..ea2f9cc68242 100644
--- a/dev-python/feedparser/feedparser-6.0.14.ebuild
+++ b/dev-python/feedparser/feedparser-6.0.14.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
RDEPEND="
=dev-python/feedparser-sgmllib-2*[${PYTHON_USEDEP}]
diff --git a/dev-python/fido2/fido2-2.2.1.ebuild b/dev-python/fido2/fido2-2.2.1.ebuild
index 5889c25cc146..796dadb9bef9 100644
--- a/dev-python/fido2/fido2-2.2.1.ebuild
+++ b/dev-python/fido2/fido2-2.2.1.ebuild
@@ -19,7 +19,7 @@ SRC_URI="
LICENSE="Apache-2.0 BSD-2 MIT MPL-2.0"
SLOT="0/1.0" # Bumped every time a backwards-incompatible version is released
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="examples"
RDEPEND="
diff --git a/dev-python/gmpy2/gmpy2-2.3.1.ebuild b/dev-python/gmpy2/gmpy2-2.3.1.ebuild
index 364c221f1e00..3d63e0df9397 100644
--- a/dev-python/gmpy2/gmpy2-2.3.1.ebuild
+++ b/dev-python/gmpy2/gmpy2-2.3.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="LGPL-3+"
SLOT="2"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
DEPEND="
>=dev-libs/mpc-1.0.2:=
diff --git a/dev-python/grpcio/grpcio-1.83.0.ebuild b/dev-python/grpcio/grpcio-1.83.0.ebuild
index 6e9fb2ecc763..1d5c66ae26d5 100644
--- a/dev-python/grpcio/grpcio-1.83.0.ebuild
+++ b/dev-python/grpcio/grpcio-1.83.0.ebuild
@@ -44,7 +44,7 @@ BDEPEND="
>=dev-python/cython-3.1.1[${PYTHON_USEDEP}]
test? (
dev-python/coverage[${PYTHON_USEDEP}]
- >=dev-python/protobuf-6.33.5[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-7.35.1[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/hcloud/hcloud-2.23.0.ebuild b/dev-python/hcloud/hcloud-2.23.0.ebuild
index 9b729306ac26..08e3c96a695f 100644
--- a/dev-python/hcloud/hcloud-2.23.0.ebuild
+++ b/dev-python/hcloud/hcloud-2.23.0.ebuild
@@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="examples"
RDEPEND="
diff --git a/dev-python/hypothesis/hypothesis-6.157.2.ebuild b/dev-python/hypothesis/hypothesis-6.157.2.ebuild
index 8903f56543dd..1d4aadcacfa9 100644
--- a/dev-python/hypothesis/hypothesis-6.157.2.ebuild
+++ b/dev-python/hypothesis/hypothesis-6.157.2.ebuild
@@ -58,7 +58,7 @@ LICENSE="MPL-2.0"
# Dependent crate licenses
LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86"
IUSE="cli"
RDEPEND="
diff --git a/dev-python/icalendar/icalendar-7.2.2.ebuild b/dev-python/icalendar/icalendar-7.2.2.ebuild
index 45ee133c1418..5073a72c44e6 100644
--- a/dev-python/icalendar/icalendar-7.2.2.ebuild
+++ b/dev-python/icalendar/icalendar-7.2.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
dev-python/python-dateutil[${PYTHON_USEDEP}]
diff --git a/dev-python/joserfc/joserfc-1.7.4.ebuild b/dev-python/joserfc/joserfc-1.7.4.ebuild
index ba9e54ba3793..95a1aec9d7a4 100644
--- a/dev-python/joserfc/joserfc-1.7.4.ebuild
+++ b/dev-python/joserfc/joserfc-1.7.4.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~riscv ~x86"
RDEPEND="
>=dev-python/cryptography-45.0.1[${PYTHON_USEDEP}]
diff --git a/dev-python/jsonpickle/jsonpickle-4.1.2.ebuild b/dev-python/jsonpickle/jsonpickle-4.1.2.ebuild
index 71eb39aba248..74187a5090c9 100644
--- a/dev-python/jsonpickle/jsonpickle-4.1.2.ebuild
+++ b/dev-python/jsonpickle/jsonpickle-4.1.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~riscv x86"
IUSE="test-full"
BDEPEND="
diff --git a/dev-python/nanobind/Manifest b/dev-python/nanobind/Manifest
index c3d5b9452aa4..14b1c066b44d 100644
--- a/dev-python/nanobind/Manifest
+++ b/dev-python/nanobind/Manifest
@@ -2,3 +2,4 @@ DIST nanobind-2.12.0.gh.tar.gz 940575 BLAKE2B 8eee3f682ed9139704946946c3d58fd8c0
DIST nanobind-2.13.0.gh.tar.gz 989569 BLAKE2B a392ea44b8d60f4244374f6e2ade5b6abdd7dd787b0108395149a68890f2eaa25c3e5fe4e0e6fe9ebaf3d0cfa54d86f978ac0a599604cd7d078de3e0912e1038 SHA512 8ab384572d8142b29fdccab2e3693e576cee4cbd6c8d8ac54b3426e45dba6618beb4ccb3e413d41fc405d09935da1fd65f75ef46cf6f78156c2273052fe3e22a
DIST nanobind-2.14.0.gh.tar.gz 992786 BLAKE2B fd9e67a11b7888ba8db61f3b68891997feda2391d6e6f8e982fa89d040c2c59e1c2b02b27ae0b4dbe7e4c0adf4ff5e20607a60266a2c7358f94e3d74dcb7564a SHA512 da52c51dc7b12623131abb4169fc91b4e8524e1c947348091ea4c6ec57a89d9eeb106db0900a78a7b206001c5eea736618c5416f61f4caf15c8e9d862d27d822
DIST nanobind-2.15.0.gh.tar.gz 999019 BLAKE2B 20ff4e038e277d04d6287b5a3dd103fe5b58481bfd29180d209426f4d7c7b8ff5ddd7af4fa82c57f3fdb83500b410e78a6e979b7f5cbfa0d632c339da126749c SHA512 376c4e86cec0e97fe9d6d844fe4e79c1cbfdd2d6355d68ee5b8acff4329983044ea0f22d0948f731ee82009afa7bba837f4f849967c831bad9ea322ffb52fc00
+DIST nanobind-3.0.0.gh.tar.gz 1079064 BLAKE2B 60f70d9b1f5036d1012a700ce3ce380c3ccd7ef79005761b1ff860a1765d68640129045f35be32d6332bf86bc9c654eb9542a83efe1d8ff569ff1a527c04f0a8 SHA512 fd07f611e34a40c39c0ef8b860d7001551c8f2caf6b938d9e52d7439fd41f18cdd5ebaa7f8c2499a9238edc51ea8113583bbb4ac0a463b608f07b745ac5d33f8
diff --git a/dev-python/nanobind/nanobind-3.0.0.ebuild b/dev-python/nanobind/nanobind-3.0.0.ebuild
new file mode 100644
index 000000000000..62b8073c6b06
--- /dev/null
+++ b/dev-python/nanobind/nanobind-3.0.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=scikit-build-core
+PYTHON_COMPAT=( python3_{13..14} )
+
+inherit cmake distutils-r1
+
+DESCRIPTION="Tiny and efficient C++/Python bindings"
+HOMEPAGE="
+ https://github.com/wjakob/nanobind/
+ https://pypi.org/project/nanobind/
+"
+SRC_URI="
+ https://github.com/wjakob/nanobind/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86"
+
+DEPEND="
+ >=dev-cpp/robin-map-1.3.0
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ cmake_src_prepare
+ distutils-r1_src_prepare
+}
+
+src_configure() {
+ # XXX: nanobind installs a CMake config file which by default passes -Os
+ # We currently patch around it in dev-python/pyopencl. In future, we
+ # may want to add some override with Gentoo specific environment vars.
+ DISTUTILS_ARGS=(
+ -DNB_CREATE_INSTALL_RULES=ON
+ -DNB_USE_SUBMODULE_DEPS=OFF
+ -DNB_TEST=OFF
+ )
+}
+
+python_test() {
+ local mycmakeargs=(
+ -DNB_CREATE_INSTALL_RULES=OFF
+ -DNB_USE_SUBMODULE_DEPS=OFF
+ -DNB_TEST=ON
+ )
+ cmake_src_configure
+ cmake_src_compile
+
+ cd "${BUILD_DIR}/tests" || die
+ epytest
+}
diff --git a/dev-python/numexpr/numexpr-2.14.2.ebuild b/dev-python/numexpr/numexpr-2.14.2.ebuild
index 4748dc131253..49d1df3ddb1d 100644
--- a/dev-python/numexpr/numexpr-2.14.2.ebuild
+++ b/dev-python/numexpr/numexpr-2.14.2.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
DEPEND="
>=dev-python/numpy-2.0.0:=[${PYTHON_USEDEP}]
diff --git a/dev-python/patatt/patatt-0.8.0.ebuild b/dev-python/patatt/patatt-0.8.0.ebuild
index 3b0d574e5950..87144e992f95 100644
--- a/dev-python/patatt/patatt-0.8.0.ebuild
+++ b/dev-python/patatt/patatt-0.8.0.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://git.kernel.org/pub/scm/utils/patatt/patatt.git/snapshot/${P}.ta
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 ~x86"
RDEPEND="dev-python/pynacl[${PYTHON_USEDEP}]"
diff --git a/dev-python/proto-plus/proto-plus-1.28.2.ebuild b/dev-python/proto-plus/proto-plus-1.28.2.ebuild
index 65f147944d45..b8d693d701e8 100644
--- a/dev-python/proto-plus/proto-plus-1.28.2.ebuild
+++ b/dev-python/proto-plus/proto-plus-1.28.2.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
RDEPEND="
<dev-python/protobuf-8[${PYTHON_USEDEP}]
diff --git a/dev-python/pyproject-api/pyproject-api-1.11.0.ebuild b/dev-python/pyproject-api/pyproject-api-1.11.0.ebuild
index 81e717ad883d..3c1ce09fd2b8 100644
--- a/dev-python/pyproject-api/pyproject-api-1.11.0.ebuild
+++ b/dev-python/pyproject-api/pyproject-api-1.11.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
>=dev-python/packaging-25[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-tap/pytest-tap-3.5.ebuild b/dev-python/pytest-tap/pytest-tap-3.5.ebuild
index b38f7edf3de2..2c56b8c6d652 100644
--- a/dev-python/pytest-tap/pytest-tap-3.5.ebuild
+++ b/dev-python/pytest-tap/pytest-tap-3.5.ebuild
@@ -18,7 +18,7 @@ SRC_URI="https://github.com/python-tap/pytest-tap/archive/refs/tags/v${PV}.tar.g
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~x86"
RDEPEND="
dev-python/pytest[${PYTHON_USEDEP}]
diff --git a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
index f3ef4a12b227..2c6cf4256b9c 100644
--- a/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
+++ b/dev-python/python-manilaclient/python-manilaclient-6.2.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
RDEPEND="
>=dev-python/pbr-3.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/python-openstackclient/python-openstackclient-10.2.1.ebuild b/dev-python/python-openstackclient/python-openstackclient-10.2.1.ebuild
index fc9663fe92ae..ffdbc1ffb1ff 100644
--- a/dev-python/python-openstackclient/python-openstackclient-10.2.1.ebuild
+++ b/dev-python/python-openstackclient/python-openstackclient-10.2.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm64 x86"
RDEPEND="
>=dev-python/cliff-4.13.0[${PYTHON_USEDEP}]
diff --git a/dev-python/python-utils/python-utils-4.0.0.ebuild b/dev-python/python-utils/python-utils-4.0.0.ebuild
index 05d102d2521e..50dede90d526 100644
--- a/dev-python/python-utils/python-utils-4.0.0.ebuild
+++ b/dev-python/python-utils/python-utils-4.0.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 ~x86"
RDEPEND="
dev-python/typing-extensions[${PYTHON_USEDEP}]
diff --git a/dev-python/rarfile/rarfile-4.4.ebuild b/dev-python/rarfile/rarfile-4.4.ebuild
index ff480dea0783..e907e1de0cc8 100644
--- a/dev-python/rarfile/rarfile-4.4.ebuild
+++ b/dev-python/rarfile/rarfile-4.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="ISC"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 x86"
IUSE="+compressed test"
REQUIRED_USE="test? ( compressed )"
diff --git a/dev-python/regex/regex-2026.7.19.ebuild b/dev-python/regex/regex-2026.7.19.ebuild
index ea8c0b0baa5b..7d70d3fc0270 100644
--- a/dev-python/regex/regex-2026.7.19.ebuild
+++ b/dev-python/regex/regex-2026.7.19.ebuild
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos"
IUSE="doc"
distutils_enable_tests unittest
diff --git a/dev-python/sphinxcontrib-mermaid/sphinxcontrib-mermaid-2.1.0.ebuild b/dev-python/sphinxcontrib-mermaid/sphinxcontrib-mermaid-2.1.0.ebuild
index 395135d9d7c7..c847c0166fdc 100644
--- a/dev-python/sphinxcontrib-mermaid/sphinxcontrib-mermaid-2.1.0.ebuild
+++ b/dev-python/sphinxcontrib-mermaid/sphinxcontrib-mermaid-2.1.0.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="BSD-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~ppc64 ~riscv x86"
RDEPEND="
dev-python/jinja2[${PYTHON_USEDEP}]
diff --git a/dev-python/syrupy/syrupy-5.5.3.ebuild b/dev-python/syrupy/syrupy-5.5.3.ebuild
index 8835100d3b09..09be33be6780 100644
--- a/dev-python/syrupy/syrupy-5.5.3.ebuild
+++ b/dev-python/syrupy/syrupy-5.5.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 ~x86"
RDEPEND="
>=dev-python/pytest-8.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/tibs/tibs-1.1.0.ebuild b/dev-python/tibs/tibs-1.1.0.ebuild
index 49cc4885a365..9fd7fc05619f 100644
--- a/dev-python/tibs/tibs-1.1.0.ebuild
+++ b/dev-python/tibs/tibs-1.1.0.ebuild
@@ -109,7 +109,7 @@ LICENSE="MIT"
# Dependent crate licenses
LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0 ZLIB"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 x86"
DEPEND="
app-arch/zstd:=
diff --git a/dev-python/treq/treq-26.7.0.ebuild b/dev-python/treq/treq-26.7.0.ebuild
index aa68a7de80c2..5f765a667244 100644
--- a/dev-python/treq/treq-26.7.0.ebuild
+++ b/dev-python/treq/treq-26.7.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv ~x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/yarl/yarl-1.24.5.ebuild b/dev-python/yarl/yarl-1.24.5.ebuild
index d23c5e5f94fa..63269f22199f 100644
--- a/dev-python/yarl/yarl-1.24.5.ebuild
+++ b/dev-python/yarl/yarl-1.24.5.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="+native-extensions"
RDEPEND="