public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Patrick McLean" <chutzpah@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/ruff/
Date: Fri, 20 Dec 2024 16:33:48 +0000 (UTC)	[thread overview]
Message-ID: <1734712420.33eb09a86c3243bbf93c25c7310939a87ec4dc0e.chutzpah@gentoo> (raw)

commit:     33eb09a86c3243bbf93c25c7310939a87ec4dc0e
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 20 16:32:42 2024 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Fri Dec 20 16:33:40 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33eb09a8

dev-util/ruff: add 0.8.4

Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 dev-util/ruff/Manifest          |  22 ++
 dev-util/ruff/ruff-0.8.4.ebuild | 533 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 555 insertions(+)

diff --git a/dev-util/ruff/Manifest b/dev-util/ruff/Manifest
index 53fe0edcc39f..411f767eeaaf 100644
--- a/dev-util/ruff/Manifest
+++ b/dev-util/ruff/Manifest
@@ -12,6 +12,7 @@ DIST anstyle-parse-0.2.3.crate 24699 BLAKE2B 17e8638187ccc1ca0174a8cec7f7daeee7e
 DIST anstyle-query-1.0.2.crate 8739 BLAKE2B c06643e8616f1f4469a32f9c0512941ce53ac5db9ebfa7a5b2f19233040cd4438dd2ee69ab89ecbc1c239e92b674dea9df15ed673408c6f3fe21787cc17d76f3 SHA512 f409b624cbeecf58fd87c47f85be28cae1fe48f65d692195fb80854c514e38c40d0e0ffad3a5b388a3929c47bd2060302ebb635aa98dc57329f3a5ed7be3e2dc
 DIST anstyle-wincon-3.0.2.crate 11272 BLAKE2B 73e124773f618a744b17017d4680ec6ccc84ff94fbe2e565073fbcc0facecd3cb65356cf27746d07f453bc917cbeb2ade3a618c6b8578d64cff4828c99569868 SHA512 4cc194faacffa01c6989354c1cadbf1134f0945250f67b7020ab5b475e30db34c799176bd335a6265386cb9c5e8b5bcbdf35894ec0c809b140ffe1c406751931
 DIST anyhow-1.0.93.crate 47490 BLAKE2B 1c64b24d3df3307430deb8189ded345ee2858c1990fc343f2400bd67b6d79ee2cf90876326fb29ea311bd857a941fc8319dccbe6c81f2cca2c085dc0c1fffb27 SHA512 237b36bdefeaf8dd2f7d4c5c92d8f7627a5206ded5fa3dafd5710f2fbd3dd7d7187d4a8ae917ae03d0cf06bc8d101a7663bb7bb022507ac1ec88577a37475efc
+DIST anyhow-1.0.94.crate 51731 BLAKE2B 2b8b7ed7506f31a434ff8af198256816bb196f3434925ad688820237893b54b14f3731d34a3968277f532a3b67c39e3c4aaffef43b42b13bb1c6d3cae50e9ae8 SHA512 61209bb1a81104ea86375bff12e6654047a596fd5282fdaa590301c4bcdafcdd8bc83201811063d565bbfab6be42544e43047ec88d2b0b41f7c5f2712f3a3b90
 DIST append-only-vec-0.1.5.crate 6810 BLAKE2B 28dbbbde3d8642251740eec1a04a28b6bb64eb1af9f47021c6c3bad7beeea11fdbb26f94298fdf424b3ea3cd5db293f6b589b9784792f0b32b67dec96929c8b1 SHA512 e5f965d4f178beac62796dc6453b439e99b18887be41501e7759ed0e7df33677bfcd2605ed77ea477468c6067316a0ede0eb54d5b9c70401458a536a3a24709f
 DIST arc-swap-1.7.1.crate 68512 BLAKE2B 5ddeffd2ae8af4125a5b43d4a0a1afc7948533bf037d8cd3e47603c13b57b156618280d99b840bf318b25b6eb29400ad68499695e182acdc05bc5f621c42ee16 SHA512 070fa8dd17b380b6d7d72f6f45c84e591de9a9770b9662351e7a41af03798bf5e34d185a5fcb948f4d8ac5e210a33acd465c39eff6097662c2442b34ee3dbdff
 DIST argfile-0.2.1.crate 9058 BLAKE2B 19a094f43f1dcc6874c4f10604bb0b29da93ef346127cadb76fa1c9ae90c598e2e91bb98c683c4c31b7dee56d20971cede5d0785df45244a9bef157a1d6a0889 SHA512 ca0d8f5dd7748443b131c63ed0cac31857f090ff8f3616167290b1ac491495ffec26aaafa258c02492e0fe4447e3ae398089afe0e06daa5556520866e527e6e5
@@ -27,6 +28,7 @@ DIST block-buffer-0.10.4.crate 10538 BLAKE2B d819c4f9c4be85868e8b105fb7e479d2e58
 DIST boxcar-0.2.7.crate 10454 BLAKE2B 803910bc77d968764c7e985b97231fcd85c63577a9c3819a62ae8a9e3601e4ebb273111e838f650c0a7fc35fb97d964a29bdf6d52aa0330346d50421a7006cbd SHA512 c84051590f8c7f493bfc0e8a9eb8364a46f853ce9a32e13a1eb5ddcfc5088900bed7b714d34b02341721653d6c313edbcd9fae3747f502f7743d4ec86f660ba2
 DIST bstr-1.10.0.crate 380426 BLAKE2B 19330a5a293430c09908d2174ff814351b16419f60de6463abf9b8a9dff06a4e6845e889d8047a710cef54842f2790d9cd5080b92cdcb113d89742b869979c74 SHA512 823abdbda9b13802facc7d6b1ed9ad809ed3b0b827d26e418348ffb8481b5f5735f129c5a9a8c7b2ab010d7f32ca57cba69a1ee10a64225c54c6ceacd22c05d2
 DIST bstr-1.11.0.crate 380721 BLAKE2B f0fac00b83cab351f8b7e02cfd20a2aaf04de853878b8c1a667159ea444093eb3fdebe4bd893e9b3723070fb4b1d2646b7c560987b640bf3f5a4923fe9accf72 SHA512 e4534db9f27184134264dfb16ffc79b7d2374e79ef50400cee4cf44c1e9d7d0b9f7ab8fa034493b5a1ef835c797214bfb399ae95d4b670b3283180fded414ba9
+DIST bstr-1.11.1.crate 351485 BLAKE2B 639c2e610e088120674a70dc5dac0b9c437f7454fdcb385b7ec9e66184b8d016f7190c864f7c8e25fdbfe5f884a9b4cf8815c1a0bb94efb03028fa966b4207cb SHA512 04c28eab447ee13e8d3af12fd165947c26086e8cb990840226197c16b4716bc018a48c6dbdd055f837a7d64eeb3c594b0b3629103ce7f910af0c3c7d3cc79edb
 DIST bumpalo-3.16.0.crate 85677 BLAKE2B 08da17b757931d2910e0299df53eb62731aa8c4ebd8915859b81d1982b331e7455dfac977c754e500a35ee07ba8eff00a61d2f62be99744e2ddbba06c1268f49 SHA512 a51b75c36f6794db444cab20eeb24f42a319080ecb486a56d254d6f873f3d188b5ccba11db30c068bd0c52c4322d4a3f5f5195c81c94b0bc04387030418835b1
 DIST byteorder-1.5.0.crate 23288 BLAKE2B 7f85a7948406844070a2c8202e0bd52f73b3dfc7c666a97046128044eb9352195afb80e2bf894c0742ad109e4473339de1365d09591de70dfec6c8c02a8e1453 SHA512 96caf981177f6ded9f27f025922cb94eb0cd9de5303bd91680099912d922092e77b7361efa70011e84f1595e443193e4f1b354443b9980c123f6ae573b236f7f
 DIST cachedir-0.3.1.crate 8668 BLAKE2B 94b624651fad1acb2b82d7d886449db2b5558e672ad220396c190d155fd1ba8d46fcb26eed6b15aadae91011c7c44ae32c8257696b3e3f0568c3f0e4c95442d0 SHA512 af060f442ce5e101493e99545befe0f7e4bee8a07fae4cd0eb20d5e1cb10957e4a93cf768c8bd21f60f7bb826d1278f20095ea869d9c006fba1261cc1288829e
@@ -34,28 +36,34 @@ DIST camino-1.1.9.crate 37552 BLAKE2B 28b21517730db408598f83e269ee8aa4dc5388c4b4
 DIST cast-0.3.0.crate 11452 BLAKE2B fe6edddd0589fa436cda32342d7beaabe4003afdbdf1d7c5db7e8748adf23b1b2cdcdd286235837c735d2143f29e692c152a5d56fb0458a54961e4dea303b2cb SHA512 4a3e19bc1e9e5ecc03aaef9bcdce01624ac0e6858c065fa1c41693db0ac172b9735ce872064561347cd9e79f00a274129011f6e4ccf9e61d960c8bb684b6d396
 DIST castaway-0.2.3.crate 11509 BLAKE2B bbecba400bf98ef4158581f3b1673ca77dbec3ad754d3749f0e9342a47d1fa9f638c1388f0762413277b73251854ade26e08dd85b7d7133c73a5750d4dbf7d92 SHA512 2565a4e5709a25118462ac25b9f741e92456c81ddbf7c4e791d8c647f2ca5227b2f59ffac108f9d32c77cedc12219c517218c51a78b1d22a1baef1bf2c16e0a9
 DIST cc-1.0.95.crate 76485 BLAKE2B fb86d2c49e9ee73f1a7f9268274a879260b13adafa49c8bd4bcd4acb77861b7b65c5cdda988877e1ad2d4a4eee52308ddc29b545a07cf90cdcf10268ce639986 SHA512 7e19d1c2271a094311db96edc6faa6576366070dc2e77a666ce43016c367d5a94e832724b95b170650bdb16998699699e45d3ac2cd0eda6655c58c1e141d40d1
+DIST cc-1.2.2.crate 98719 BLAKE2B 7a7722721f98869bfe773ce90c6d756bb5ab76df05b516067528d7285c47cbc80d965aca97c7d7a118515035326c843b1721429e12afd6b15f187f0c59fe18c0 SHA512 5364d3822a566573d45e40a6076d3f9aef20c67f1a5687895f5a76be210a48cc44857ac778e2cce58d3a5dfb07255a3e6e541dd97be8492ae6f66fa18222492c
 DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
 DIST cfg_aliases-0.1.1.crate 6009 BLAKE2B 6acfae9a89d3479f7ce1f0b5dbb13bfe27c006b936a96685606a61a06f69d17ab754a8a0d96c54213f758281c2fb32ac74d03a34e0f836dc7e438387955aac37 SHA512 238828445c5b48ca41ff88825af0a1ad30494e423bb6f89b6d5e4d26042afaa1ceb0e32041f7cddd79c3e15c6c82a1ddb9469c4b63a1ac52d4bcc1174900f880
 DIST cfg_aliases-0.2.1.crate 6355 BLAKE2B a758d9c88527f0e6e7cfd6d4c83eda1bcb4d6e2438189fe08e8ecbcaa78d56afc5a4873f3b82bf7da96afd690b44cdf1e44466b6da0f37c358b340481017103e SHA512 74969d12d5d24002a29e08d52e30fbce014dd481a7c35ee0162e69333c5f2d7755f3b02439b31522e12444cf1ac8e65880ce33fe6778dac03757e362cbf8a72c
 DIST chic-1.2.2.crate 10269 BLAKE2B 2c792e22b71347e34769e4c43d12dccb92c9c2a3e502f144e5078e71bb6192700d3e783c5c3d6046c0c7070d27f1b19c1dffddd59f4fc4a9b755353c9c0b8340 SHA512 f143424b5d0e5366328a1bea169bd99ab214214c51223974ca847b36e3225f4946a57542a673fb2fb43e0b620782de4e4c87ed4ef22e97905aede4419a8c0603
 DIST chrono-0.4.38.crate 220559 BLAKE2B ab828bfeed56eb737a1797d5e1132cafe87a1e14bf7a1fe4a5098f50e6ceead50ca2e7f041cc2ff63d5f4e41e2853322f6c345bb31ff12a5b412e3e5202f5fea SHA512 858e47e3facebd5383e71898f26b27d92fe4a69027e2cc47da2af59975ead7767355e0b699f4228eabe76a3eff8b2519c7cecf8b60dc3fc60fbf9b28e2f3d4d9
+DIST chrono-0.4.39.crate 222248 BLAKE2B eeff1694a98e8775524c261c5c46ebf09bf1ffc6222a945576960e8153af99e4549d8c988bd086507fa430f9cb15a3159be85300247ab3c6f5e77ab515f0988b SHA512 5b258f76bea58ab9baa0fe8fb32c41928b8b655c76bb2fbaae9300ef8380cbb881296cee6b9e9886dce62b0759c73e84f6409e374a86cf0c80e3383512f98571
 DIST ciborium-0.2.2.crate 35611 BLAKE2B 7bb34ed2b16f55af2d762bbc83263bba901a0f05bc7677a370460549297839c4d6e913622e8a6cb3a5c2447b94b0bd17b7d5007228ea8881193d08e5b8deb072 SHA512 8d1af6a09f116e42f0098d7d0e34dd906dc3e718b257ff1a1fde655a235d40619f61f18917c0cf35c55de9160c255a9795d5e7525989037e3512807cc6a900b1
 DIST ciborium-io-0.2.2.crate 6697 BLAKE2B 07636da78f59859515af0075cb36d9ca969113ac327ff727953c73b64b60ddae22e5b1b65d8be5aa401f8b13d34074cbc8b47f23abd7a13d551f0b1c78f23575 SHA512 641b8592f9699d5e6c607815c8e6dfc82b2bd01897015e04ef8853420a7d90c2ec5c1140e39eb7623ce05587bea52ef63659eae76baee5b6592d2ac5298ce106
 DIST ciborium-ll-0.2.2.crate 14695 BLAKE2B 3c9ab0b338070359f9565706a504e4f6c65560072380af6e0a57068ae6716773d40e75dee84ded5e1d32f93445a07a0965759bedace58291b68b94479fb16488 SHA512 2f7ef6ad8bf5a862e8b9daa64bc6d8184c87a22c264b10dbb35c00c9effcd5712f354b4ca6c2eb8e6795d4b99d7cb88fa2acf01f3ad6fb28caf81708a500549a
 DIST clap-4.5.20.crate 56376 BLAKE2B 8efa9c3e171ef38c98a25c526f528629e7e72850c6ec27e7e89a212403ee90d7d005b00750769e4335423ecec1d86abb35c19b0bf7f2c063bc7c6a8bd59d6804 SHA512 e432a118a2ec15b273a404c3cb75bbe579b11034ba55def1823d4670c6553e3d8611074a24f50a0f4adc8bda184213b06106c44c68a19d267342c53e345351d4
 DIST clap-4.5.21.crate 56470 BLAKE2B 63b58b49ad5494712d0d45db92bea7a0247715f655c108cb81a4ae7380bdf572c292bee1edfb601aacec401d7d2fcd76068373200be642ac8179a33bc6b941ef SHA512 ca7b55defd85a4e1001d04653aaf1c38af9b43715dc6fd7b7a8c49a66ce1be0c09e0ac78b3a3febb90ad9a7d8676b4ff1ddc136816019eb394b7d4908af2a51e
+DIST clap-4.5.23.crate 56460 BLAKE2B 5c0ff6ecc072368022b8dc08703d87802160817e40228fccbf9cbdc15d86dfaf0eec141dec4e8f1327e5a6d1622df9b334e94797027372dbe8765a12b918961e SHA512 4a8ef8731c9768844debcd1ba83a79a607fd32d9fbfe7411abefb8939c5c442e8a206738bb54dddd136117d3992f519ffd1640694ad7796c4e0aae3f95502c7c
 DIST clap_builder-4.5.20.crate 163812 BLAKE2B 689110f2e4f46e8c4c779b6c39cb5f5758c3a32ea5bbfa1faaa6642da7d650cac0827a3e5b503c5054a85e0e7dbf04e7c53d65991a45f3be90c75070cc9c200a SHA512 e914c8b6592f9d230b4f4290cf4b4d73d0160c12a1fa3976c74bad21ff16da532d6af792f0a33fa472166f1cd551291b5d1d71fe8b359040040418694ec52000
 DIST clap_builder-4.5.21.crate 164115 BLAKE2B 7df7a2fb8472e32c1885978f99a77b05f91c96131d00947386930e7249ad7a7b055ae5b1ebf145ddafef4d7d5fb276f3135423101bdb5ebc597b9b15267cfab1 SHA512 48abad9de7b0985138a2586674df36bcb925f3280cc19c7dcbec14d58c1a3bb391c836ff284366fb32d7460a5616b066e4e055e3a5fa7651196e62c59ca49c8c
+DIST clap_builder-4.5.23.crate 164180 BLAKE2B 90948ac5e8ea620be3e1ec1334677b0ae9dc227a00354fcd3d78e2cf23a1c101e009e6cc96fc19c0a2395e1b9ac6272fd9615abc1acf1a5d60392e337cfc961b SHA512 0889876990f0a361cc6b6d41f2a8f4b1decd376987a02fe69888455c92f3e583d6ff70880c6f0ea154ba62f4be7d2e7b18cdc4e0e2f243e6b17f250c3e8d1c2a
 DIST clap_complete-4.5.2.crate 37850 BLAKE2B bfaae6107890319a9717d96f5616012016fd5439c7ac7dcfb0082d797a335c7c926459c8c1db0cc0652f700366c83956d8e0447bb3e990c183133b8f26d64301 SHA512 1c9db70159681dd23011df6e804fa193f67f3dee874b2583a5c9da90db1c7283a13b330befecca91de260f70b974168652b450cf8b519a79957ac7a6373992b3
 DIST clap_complete_command-0.6.1.crate 7959 BLAKE2B 61bb266fdebb625ce3327164ab39d65943406fe9c101f10fa3a1f18d4728e0eeca07dcd8eb4e8f6eb63587cd1af86fb05beedf1c5b2bbaf22356f213ea738c7c SHA512 b364cac56e9604c7c06a84f5d687b62398f92e3c0407123b183d5c3846948a4a0975469326312ad57e2ce936574462f3dde61385062827e48efc3ff813185ef6
 DIST clap_complete_nushell-4.5.2.crate 34391 BLAKE2B ce7a44c4a9e3d577e014c71d6f8f6b16e192ae169f499973316f6f3c7febae59c957ba6acc153802bde423fd58301b5b5ef5b606e275bf8f608ad40fb192338b SHA512 1da7b7f01e948f4c055bb912426d950418f353837dda9e6bb8e249bda4169b29de2291173c9d0193f0c746ec1387ad8a893721f32125f14565948f2e90fddf53
 DIST clap_derive-4.5.18.crate 30131 BLAKE2B ff962e52d8d8afcc9639365e27753c6c6943fd809ef89d9e555e8be5b2f13efa650bf1f9ae451f4c127c1529a0af1d892c3b02153b46deb912029b45983e01cb SHA512 035bb918bc7e9badd59341560f23e3a8a2e7cf945b6d8183f74052c4edfcbecf07c9ea6fce0ceef0b84c89a99d62b11760af39398897e4ee7dad0170a96cfefa
 DIST clap_lex-0.7.0.crate 11915 BLAKE2B 03287f02067f6cb33bb3889e8032b0848e9a9cc17446eb0e2767768cf6ea8c579a7455d33c8af735fb8d0c16095b19f991a5e2528dee3a7628d68c16f9307fa4 SHA512 638feb2e4571677dbe15ef0423866d2f0df309723e5ad65ddeaff7fd5e2e83adcb973a32d52a5f3924ea88fcff865e956b7d30dcd569df0412ef47848af14036
+DIST clap_lex-0.7.4.crate 12858 BLAKE2B a5ecd50cc503157dd69746f3b6e9c288e0fe4f6d5d82271499f657134fd401fbe076255e2be6a23ed0b69daf3941c6429dad8b288223b0ad390a2c435575cdd1 SHA512 a2566868f4619679d3b74b70592ffa6a04b13e38e3196c56bb1dae8bea0c711bddbccd778d2aba3cc0ee074c9b1cc0335222818f0d47fb3cc8109cbc35bb992e
 DIST clearscreen-3.0.0.crate 152311 BLAKE2B 9f84217c5174b1b9e4c97b53dd9dddf7557766d9cc80c80973dbf10c4a166435d1433ddf3687889bd490a535c1c5729e668189c0757b5bffd61ae65fa4ea3a95 SHA512 2b5338a7944b44fdb40a79e87aa8cdb8ff3e47b9e4d8ebb757b1b3fb10f8b066183abd79f5ae634e7e9464377a33711694796bb5d52dec0201f863119923af65
 DIST codspeed-2.7.2.crate 4832 BLAKE2B fbacc9f6ea2a8b6d67ebcfb31b980aed15f8d3bcac910c919316cafe7932dcd44a0a2e28063e1cedd1a155ea8bdf3cc2d20892d341f8bf86853829ab70abea41 SHA512 f658b26687561e5a424f5676cf08ff4d5564f338fb5f8c6a7e19a6b6b7ae35b427e0faa44a86e62c59349cfca563418e9a17b6f80e0926d17d870a11f2e24647
 DIST codspeed-criterion-compat-2.7.2.crate 10324 BLAKE2B a30b067803b5678d63c3a3eb13631da2349eff8cdfbcabae89b8705e912458dcf0b9340e976406ff283d31d2222f0b366e80716067959d28e0f59ed73a1b833a SHA512 5ff119eec6c946bbef3a3b90f4be0649487f8d6a8a27fb8f66cc0a4c314fe118bcc140d8b84417b9c918000f844528a16aef0dea8476bcdf4132e34f9f5ee280
 DIST colorchoice-1.0.0.crate 6857 BLAKE2B a0818be1299717461ffc1bcfb6fc53a0b3b645aa8c45fb72e045cf2d876fa207948610e58d6a837aad24838ea9616e80b0558ca3eae03fdf9bc4c03a8e5ba52f SHA512 53363f2889cd8e8a3b3ed10c48356896c0daa72f3c12c9c7804707ab0dbc07c0e34ef52fa4f0fb1647311ce5913168c1bf62c2407ff86a33f765a9e6fccad551
 DIST colored-2.1.0.crate 23348 BLAKE2B e2778d83b28571501adb4e9ec3fa95d684faf5730f093f6e608ec631e58b883d2b9f17ed7e2c1612da285a58251f479a365aa90fa7be24a2adbb69e426e0fc89 SHA512 fa70f18fb29f6870a727d8243808c96e9497f8302f5f2b1748f9d9e396031e9c53a025b8edc9c8c9a0f8cfca12e5da73250a71e382b3074e9415b85bc004769e
+DIST colored-2.2.0.crate 35062 BLAKE2B 60c397914f6a1ed2c8e04a7e1cd96f90fda10e8fe6233dbe31424c0ef46ec41fdee7779d2f5d6968662de23434b7cb7f717c5abdf29022e09ab59b9f8d92ee80 SHA512 4e3266c498a18a464b6640c0b735519f91b30fc1e001236badd4885a7fad80fe230e262fed4a8d07d54b4eb7dd24df4daebce84cfc0a4f29b6582153e11df5ea
 DIST compact_str-0.8.0.crate 70994 BLAKE2B 27ab4163d71915f9cfc160fdfa4ed049c98b06d0060def8c4bdd29e8ca37716a1c53877f70d1eb38260d44003e833c538b20bb4960f0b28a7becca5c9b29984e SHA512 5a236c501222b577fef7d7190882e20e85cc6deacf9d1f6a1d710893654b53a91c7d47373f0d10e9bfe138dbb2f4e99802deb2a92001bae7e130f6558ed9d1fd
 DIST console-0.15.8.crate 36364 BLAKE2B 467de2c2fbfe31688cea20b338558ae9671e50ba1fd07983d21f32d7eacb73e565ebdd6ec5e78b2ae04446f09615c70983c0ee534e25ca5a28fd1b408acfdf34 SHA512 b05e49ed145785e29631d481885788f0cc5574d4d7c4d90280dfedaee7f8c1515072c9c4cfe6bd2e017230cd228157222af7e7d41a9fce697cd1888095df4de9
 DIST console_error_panic_hook-0.1.7.crate 507196 BLAKE2B 90f2855b54c78258f9e4983849a0c0b41f842990d622bef0ea16ae5e3a93914919022d21b1437bb2ce644333d4e0c6e7b55d960452c4fa437e23bcd0da83a4dd SHA512 49f4fb2175c0068981678f291422ace3737dab7033b1a49d78fd821512c92fdd023c3fe28c7daed88c8f338c30a9c7f82f18bb4583c3fe7839ad8dcd0addd6b9
@@ -85,8 +93,10 @@ DIST difflib-0.4.0.crate 7638 BLAKE2B 57c703de0d467c997bcbedc4d6577569b3d72c612d
 DIST digest-0.10.7.crate 19557 BLAKE2B 61e69d78cb8d6850ae26ad7ff2d52dd6dce820d8c621230def11cc0e8aa6d883a6e1b25340fb45748db52a8ccf3c8d36a8aa0c8cdf4d4eeb4e3f870d86abe09a SHA512 0dd8c012468ab9011b89413ea4d3647d95b1f683b020a0e6274c95ed5148638b56fef19cd9044c837ad53715b582b88eed277fe96e917c27c5d7abdbf7c3794c
 DIST dir-test-0.3.0.crate 3164 BLAKE2B efb173e7618ef5d05d9a2f062f62e0340856ad0881455647a6411ae936d580763ea48e70d8d2fe09f5620513a15e428c5625f5a1d51bf7e0ba632452077b879e SHA512 b6692d39ecd6dc5bee35b1ad798cae18f6a52ca96f8d27aaa58455adfca779026acb5bca94a61bb7101877eb30da4a514ccc420c6b3e6d03ff962025f13065f7
 DIST dir-test-0.4.0.crate 3223 BLAKE2B debc89e45f6dfad36f28073eb68636a45cc5f1235d181b6519506ad4a17b679cb66628dc8e3d8c55d41de6b5ed7d2f1f0773ce27403ad20ee8b4fb20a2c1e180 SHA512 336484c30646f3e1d8932b47eefdbb1d1875cf2a45a693ca4e1ba59b51b0d450967e1dc49cd63f985796dc761e30a12a13f4e0fcd72ae429d939a91164108eb2
+DIST dir-test-0.4.1.crate 7119 BLAKE2B f4c984267f9e7eadfb87a225d1fd8248649095c15609984a555089a116b7847412ea5e2acdd9e8077d0457bd3da65bfd731043112a8a128cea4b8b785b4b08da SHA512 be6dc61bf94e66aefa36c9c08ce1c4dcd735d013752fbb133b44f72542719474896040b0e74849ea4eab4402d7bb1ce7b45a5cd0ab1c41ae036d32a9c56969e1
 DIST dir-test-macros-0.3.0.crate 3351 BLAKE2B e8fd88432876f1f3d0ea2bf1061ee1991e08475f48e7be1973d946449efb9c5dae2af7ed98d3157a422650108709641fa732cc073d9d9ed18bb6ebb0472646bb SHA512 92130ddbe7ba74924e2ec2f30745589faa78fad4fb62bb44bdd31611fbaed2a03dfc1f2bcfc023f7a2bd765d5c3702e0ceee32e7944c5d22fba342b19f356c01
 DIST dir-test-macros-0.4.0.crate 3396 BLAKE2B ed0907f90f502ace6b323515f362ea474c6f9da85e7f21a5535032695b07cb5c519c6eb448e22a95993ecb05087b949bd555f3349cae78340582f1573f1a897d SHA512 41471d8fc763b785075dc8d3789bbd2adc7256ccb1d7af0eb556823866619505e6b5e82219fb8e9acdaa3284cf91a575c6c914e6290f73967a94ed8af8094fe0
+DIST dir-test-macros-0.4.1.crate 7349 BLAKE2B 3b416a9b222315c5fcfdac47e6e85ae52969b906c35bcdbbb77d3f226b709536320ed19c1c7856ac75d475646fed7734ad2596dafefba64ce0d2fe50583a87bb SHA512 4330364ed5055477447ae7c8d62fd7f95af5f1aa3b18985085482a9172b8f73029391d8b447de14c41b6f220df16f39e61d94e1ee601fcf1a2fd478540769bb3
 DIST dirs-4.0.0.crate 12503 BLAKE2B 02c0b9b68d09ca713e365410c72d761de5adb87a0fc5176c4f980050198cc05078fa67b43a8af1b16e80e7edf41a428dbe55807463bab59f3fade09b53d7399e SHA512 be582e5045f1916fb6b918c8e8c5907b4b663534025e4227ea4828e2aa9fe7fbcb3c48f1f0d08d163ba684aa4404076ac210e7f14766a09b9ed89a2825121b3b
 DIST dirs-5.0.1.crate 12255 BLAKE2B eadd38e85211ed5aee7fab964e90342273320644c36262aa7b436e493512851a4751a09d22aa8bae0495f4b22df6e7395d13715ca8b8c6196107b1be03af9328 SHA512 cfc329518e85a25c296521b9aeb6e5d5f60b4525aa786ebfa8b9f198446a1ff5892160d1bb4790d7f3fc4a0abdb5921b2e4896e271a3fc3a3225897313b77bd1
 DIST dirs-sys-0.3.7.crate 10597 BLAKE2B bbeadbfe15d9b92e4057cb600f1957e066e295e0208e1645ee49fa76c55c45e273ae5b87337eeb398dd3ef3adf0a5584087b8fc0fb780aa23c6d9392029d6581 SHA512 e630964e4c452950a475c10a490b49b2979dd7dfda48172b905cc789153ae4a0ba2d7d91f690705cbfff23737c4b4a339eb0c49e922efd7d68a92fe6368a929f
@@ -105,6 +115,7 @@ DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53f
 DIST etcetera-0.8.0.crate 13295 BLAKE2B 33069c496eb846bc3e602812cd2ed182c660ae06b8a33ecea294a5ec9e37a1fc15391cadc9fde23f3e885e506031cbfb6b7d036b94cc4f94d42b8dfa8ad0ec7b SHA512 857151a9af143c7149feff2aecee8fceec45a7a2ff64a8c1a482aef89ce2f91de05123afd7d22d67cd664d9ec3800652c7800affdde4ec317437f5d925883b3a
 DIST fastrand-2.1.1.crate 14983 BLAKE2B a4535b1612b103376fe64d71a393f7bfc37668c574d9122ca90a631aeb91cf0895bb030e597b79a80a4a37ea4d514c4c0836332030bb10a60bd971573a6d6ee0 SHA512 9a51185132c1c89fc31af463c664e996f431e607ce96676b8301f28ff11a99661d18025dd460e3332e373af68d20017d96481719746fc3c5de742d08d63aba3e
 DIST fern-0.7.0.crate 303693 BLAKE2B 810a428369b74b029d3159bdd1a50eb3b0ff5b205c8a347f33991959b0997523e4261931fba14d17bf291043496cb88db28bfd2e178c9a54debf0b545736daba SHA512 4042eea0ee028bbff9723fba28fb9ff08b18fd13bdbde373905a0064d16f49e75666d1e1a5c0e04bfcc185f5c3c6e459b1bd51863c0c1ef4cf27083335ce2a52
+DIST fern-0.7.1.crate 304533 BLAKE2B f525e0dbd7c36690d47fd48eb52651588719de72e185b4922e37ac3bb5fd6c59d03761c69bc3ce7c151728a0d930bf919e80295e743f2e79a52b7e6b9a238792 SHA512 550c47b49364b1e517de67655b9422356434b05be9bc52392d6dcb80a94f738ae84d5e3cf8efae9e3b91f2830fbaa2d19f7f4d37d34bfab1971d8b3fd4805691
 DIST filetime-0.2.25.crate 14940 BLAKE2B 1ffcbad3b2023ba5e9b2d71e279fd8c3564458b28290f3e19bf43b87083e1e3c0e18f191f6dc67540baccb83075df453950230089f243e6276e413321cceedc7 SHA512 90b4f3c4df29a3456c393f78f636d70f2615cba748a972dc9b937c2fcbbf4544f5b0d28c6c8fcfed5d5eda026ac670afffec18ab7d7127cee9afa2717146ccf2
 DIST flate2-1.0.28.crate 73690 BLAKE2B c9f141bde0eda6b9c42da0a3ed69322c12c6c29bc522131f51ad56f6e2758646aa5585382407409257a8301f5f07a1825d150838bbb55822f2d49037f6279aa8 SHA512 9db6f3ddc4e1e91960b07c08712beabd911b297d93db8be3ecb97a392a4262e608c75ed8e9e34d87d58c3e67d1b7987734e14ab3d45fd837a2767e8016380284
 DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
@@ -171,6 +182,7 @@ DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8
 DIST libc-0.2.162.crate 769354 BLAKE2B 3bac6124db801cdcd6918ccd86e84c99cced45c44dba11f198ec5852354942db511966fc85347d2ce4c8ff82c89eef2c47016766b2f6ffbea20d99c1deab4ead SHA512 f43e294d587e7cd9c2da9b67be83fc70801ea66c318342cf1e11556566ecc1c8a612925770d85c75af1e887b425f326fac59229b78877d2377092243ea8e6a99
 DIST libc-0.2.164.crate 769055 BLAKE2B cfb757ea04ec8ad6d6a0dff92cbedd626aa4932cd83d67d19ac51cc140f9aeb54b38b488796c4a0e722f7bceaf54c4807a32ec0560bae4840a82fc1c4a5151ab SHA512 614835ee7388c854cacdc179b5700b7de0c696ec0eebca2b997f1039157f737fa79e208832a46f2fa27fcedb6fe7a27faf26079f06ee0e679b6f35d4a5371e3f
 DIST libc-0.2.167.crate 757723 BLAKE2B 38f1657dea6d13cb6cc87c8cbededa9f0ac280e4f141f780719164451c941ef873cf6348fef7ab249ba7eed1cbf6768c6a8dc9a51796007c8ce31cdd2f90ecaa SHA512 f6690776266836371e5f9e20ec3a93bb17bc4296219755750e4e70e745016245dab9e247fe564e0f21d10d0c7c97ae97bf54da5068464a48ebfac244cf699166
+DIST libc-0.2.168.crate 757025 BLAKE2B 2597fdf5a77345754b8c9168d9f07f83ebaa0413262b94ebb19f976f49cc2c47893e788ee2abb3d00a995bc8f99b6ebcf24abbdb320e18037e779e1241599b44 SHA512 499f7273ab5eac0961fd927d5204ff4d5b3b290c20d00ac99054ee596b6d3ec4d6712772c52b09c84554f0514a8f66b41995ceb5b0ec38a7295a4fccf0e94349
 DIST libcst-1.5.0.crate 111472 BLAKE2B 55a5b824be6671f50fe9a5f26c31ebd399f23529701c59c6c81247142bd51a13dc0e6a44256e30c920a1e60c17a048c72c5181f93f8759c3fa52863c7d241418 SHA512 a7cb011b30573f213420c7b014887d47f1f2e42433bd02362abb53d1747cdac9f29b388eb3dbad9c352581439f129bb6467f626ecf79fd68332c682e2791ba67
 DIST libcst-1.5.1.crate 110499 BLAKE2B 8847cfc309d2c3fb7c99fb1ea092c7cb9f7f42e1dba6ddab3349c9609b5d699b24292edfed77ca746ab39e2109b21ceedbb15177e8159253102f6ee762a46937 SHA512 a017251bb6026547b9852a4de80b4b1539aea492118e67a0fd77ba325a5d255c217ad623815d85003351317a6bc563f1e240989c7a39027b71b36c7ba5983738
 DIST libcst_derive-1.4.0.crate 9303 BLAKE2B 4f6f05578fd57328b80913cb594b3cc6944b8ac62bbee747598a0502c044dc77e781836ef7b7e01046d92990514b5168c553f87ccafe2197c328bdd833b3c613 SHA512 6095719fbd5931d1e8e9e60ae7c03b03b9110ecc6054396e1a086e7fc7f1642a6085deff0d90d857ae8f0037aa8bf396a9b5a5660941c0de4cc659664a41034a
@@ -224,6 +236,7 @@ DIST peg-macros-0.8.4.crate 29722 BLAKE2B 484ef7c2516836619706df5b5e7a11f825fe98
 DIST peg-runtime-0.8.3.crate 4159 BLAKE2B 10183478eaec5d3057eb8d6a4e58728dad682d211addcb63e077545753ed2a2651d978e2d0c84f1934e364ab969ebb08f343581d86a3f801fcf2b9e87d9e14f6 SHA512 b7139cbee91469a367db2cbd4cd03d4abcd83f2c96160835e396c46ebfe2e76232920e9b473bd7195809614b503783c95e773958c17ca36f8bee20617504651b
 DIST pep440_rs-0.4.0.crate 24329 BLAKE2B 1e2034cf404009a548d9082ad335b12109068562056a81cd985927c29ede9b43a3fce0bfb58689a9a9a44d7eec93ad73349618acd5838b645b2dc4f56ffa2466 SHA512 4a46a43abdcede7ce9f3d23f40cc98cd73150cab16dbad40caa463edc8357f65a5520e5553e0950b7512d90b635c7480e1bbdccb741708e1914b5016a26c4620
 DIST pep440_rs-0.7.2.crate 44479 BLAKE2B 5a949d7a57cd77fc06d7637180ea171a89feac24a78a70d193e2031400886fce0248b8dadc38ec4f715ad755387ffabd619969fa7e3ee0c370ef42c85cb8114e SHA512 8820ed27804cf008d327180b9984d553f2d2ad9d8e0618e4fbd176a55db54dddaab5babb7a77af8325012d36e82d7e48af3704bc3e7efb98da8bd4f20ea53998
+DIST pep440_rs-0.7.3.crate 44342 BLAKE2B 970c29e8add346be70c87a3915dddb9cc98dff2a450731a7f83714e5bbedfa79ce7527ecd74f1e9508d5986e59828e5e09e353ea6aa51c7ee345f3b5aa64a69f SHA512 5b04ae31443cdd00b992b0b560eee7c85a10b46a1fb4dd6b3037942a49448908d28b67b8f9f13d2effde9bc0494ab812f69672818191e72246ad502d37448500
 DIST pep508_rs-0.3.0.crate 30053 BLAKE2B 264845b05ad3a85643066a256ba9aa40d2638e4445b541b910e94f30b2d5b5df0c449214176e721612327d46bb8c956ba7c34801b8007fc0f50a26498528cae2 SHA512 77dce8f4816c8d582e098031fafe3ad8d39e11cec47954e70fb6a82d0aeb524ef90e240759c75eb7f024763423fb8fdcd2a42c635d184920a262b87bece3003b
 DIST pep508_rs-0.9.1.crate 70869 BLAKE2B 3e28a0e6226e790aff8fec45b598a23dfe2a5d571349f262755a0c62eca6bad682ab7fdb3f6fd732f13cbe61f7ff68eb2a30fe9318d789bcebbeed46a8a1935f SHA512 df85ff3eea3dc4c2ca71992c06139f96ff1bed175eb6deb50f442592858ed61ac2d9ac42a9117d54e9233dcd56f0124713cb274bffe51692f906ccd940e12684
 DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
@@ -272,6 +285,7 @@ DIST ron-0.7.1.crate 53572 BLAKE2B acd1d93fcc8a3567d2ba8ca582955c391b2f33a5674e9
 DIST ruff-0.7.4.gh.tar.gz 5369146 BLAKE2B b62cee5be9b469c85e817b6870e7ba31c0aa5a1abffb3a4470dc4beee80421effe30c4c2c0ed7801cae63fe7a0e78b0685d8aff2fb9c6b228ea6caa58893318a SHA512 5e86c18774a6ef925a2486e8cb4cff17dd8317847e02d761ecd2b45b7a51c50918be9b880d8adc827093283f077ad0c4d685e8cd54f8800526c3b84b3fee3db6
 DIST ruff-0.8.0.gh.tar.gz 5392373 BLAKE2B 063e32d003e13426dd33ee02f1edd021b3fc82b43f37971a45065f8d29b83bc78b489d6165b07e0fc4d3e47aed433ac3699839eaedc556cdb1d2e7bc02257265 SHA512 6973c298633dd5d2cb21ef89dd753874fd1c97ff2a912f994bbf86d2cc0683d045dfdb46a77663d5ba35745f03150f19c254cc0959bc2d831857d425542730f5
 DIST ruff-0.8.2.gh.tar.gz 5496307 BLAKE2B e7a66dff4aacdcf85b9a9299c43453dc7ac8887880c02565ef8bc74a7552179716d187042bb12f260b6a7301aeee59fd7b69598a421d2edbf2b7d1f2ef041240 SHA512 63bdcb38182fc6104d996f8b48c8406e3e1aa79b41ebbd7399a7f1380d1292fd0008ad47aa38238711205b495ea4cfcb85dd47e7859576afffa70820bd99aa79
+DIST ruff-0.8.4.gh.tar.gz 5583531 BLAKE2B efd852c9289fbb720f9704705331970638f73ca10399a9d2941c0aed48bd43a5a51179fdae752b43373c035f34a38743af1b0ed55c295faa7108f2a7ca3139ba SHA512 d651a33798958ac7bdc646fcdfe9eace7f6c08bf7b45e199937beb7c67e210591c0821c3add679229ae8132adffdbe7bee90e92ea0e1933f61db0e5b8c92cacf
 DIST rust-stemmers-1.2.0.crate 2351301 BLAKE2B d633c0d7091fd05e55a521670104831bed89deef7a2fb7c1eed3528246e65b67a97888fed48b134b10c477e7b95c034e8bbad70500c779b1ff7b0c334de0b37b SHA512 b9453a0984d41e5a692e5ea1a8a7bc6142de30f7b345a269489b8d4ebe3b3d442e7fe5f338c72a790521dea7a2ad9605c0ca8218a6b76d8bc5e19ae02cf711d7
 DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
 DIST rustc-hash-2.0.0.crate 12691 BLAKE2B b6a619f681e897c8a9167bb88d6ba78715010ac6c1ef9a7a9e115fe8aab10fcd9d4f5e1893e89a36a59118819dbf67de3d261a190fe37948137f097bc99b3fd2 SHA512 996ad683db2e6839ee28fdc4a31293aecce7baefaf6051220a633a00beddef1be41aef0995d7501e5b92dbc85350ced920bc980d05f5ba235e9a5d1a13464339
@@ -286,6 +300,7 @@ DIST rustls-webpki-0.102.8.crate 204327 BLAKE2B 8db832f181b46bdecc419e1433dd5550
 DIST rustversion-1.0.15.crate 17406 BLAKE2B ef68a3a83e11f6734be94117e5170f92f9e1211d353a81b45ed11d4c738278c7f519ebfc9896681d564698fbcc579da10f97fddd77d56b14dbb96b90e16ea811 SHA512 e0e37511c25b71a64bd6f91cd8b29e43c4073ef56196de808634f3408cc297fc7fda1316a5adc5fffde9192b7d64f1940deb7cf396277a3805e89e15b2a855da
 DIST ryu-1.0.17.crate 47537 BLAKE2B 28408e17a4322f1afb6f21bc8d7328c39d07186de4d464f8e9bd63a69757cb4af61b46e558075e14836f310f020ac824d5ffa616fc0a5ffba59b9df0bb66ffc4 SHA512 6dad725c4fb2d3a33ea30107b63cb702eed56bd2f3c16a72265f648f5aaefcd3d5a7b919b1d037af926cc6311bc68ba58c4e0483da2b2e2135c6a7c2d6601af4
 DIST salsa-254c749b02cde2fd29852a7463a33e800b771758.gh.tar.gz 601630 BLAKE2B 987d867b17f7bcacea2a30944027e7fdb2a5c1cbc797794f3610060817a5174249c689175f923b24e6085dfc050eb16aa6e8f05a1b88b997bb241e1440df9c84 SHA512 d0efdc6c10fcc4e6dca900bf5a1445e1d9a739c4135229591a3dd19a147f40ddd44eedfb2a6a839811cf736fbff681f649bb5f1deaba88888f9032a7927d157c
+DIST salsa-3c7f1694c9efba751dbeeacfbc93b227586e316a.gh.tar.gz 605275 BLAKE2B a04c31a58651d767d451ff55aaf97e0b1aeed44a677525222797b5fd64cbfde2f40d9697b6e6ca95f315247630a3a534f9738ee1fbd1d8ec5d8070372647c34a SHA512 177458c41635c274383bbfdb69a89bc066be4f3fe8236103a15d17a76709e52eeb8d2b100e227a9d62c01bfa1550559cb5699b043b43023a6659fef75cc5a382
 DIST same-file-1.0.6.crate 10183 BLAKE2B a320c8343e0b38078ba81c4f0159d886bf47764c74efe0d7cd2b3218426e8341b51e523c00a9e5fbc2ee1057618296bd70b576c68751bd55d6ddb352defaca15 SHA512 3ba35309742c8db63210d9ea78bff4ecd80471d69e6238eb96c7bf0673814f221e2d838fe6311bfc5a0e71b4a7ccba33e07859c0b9cff2171969ff08a4214a7c
 DIST schemars-0.8.21.crate 58475 BLAKE2B dc3e96140728a9aa2a4ec5a4a46e12f016635d818dbd78865dc0281b6f0fc05174fe7dc0ddf085f0ed5fe26d4a4e6b1bfecd6909236cfcd83c9471b876d2d01a SHA512 23a794ec52d83ce045c8b2d633913b3b29e4cfc9d0a29f76aca8cd5b31a9c707ffc04c94390ab719b3c8109f37c11a00dae73ec1719087dfe7b3c4007beb066d
 DIST schemars_derive-0.8.21.crate 18703 BLAKE2B 62cca4add2d8282e0461d52026a3d7b58cf6a8b34819179336648300b8618056c6a1eba49b6bbac098a101d73ddf577bf9e6e8afab225ba67cf519126c6f9d06 SHA512 2e24af9e86aa1c04921608a7ff8a62ac1c3e7971591db9c8488b6e701f289fe56931ad208bd73f2542fc1d95863fdda2cef9561585b7e760eb99e187661ee102
@@ -294,9 +309,11 @@ DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb9
 DIST seahash-4.1.0.crate 31976 BLAKE2B f553bcff7af9da9b024efd8db4ec8cbe4100dcf4ccd8f627c724fe4a34b678ef0be8da44e92ea55c4622b9f9f37228792a22c8bcdd54e652ca926eb3c7d37655 SHA512 4d9111dd2e491c7f6d49e0b79a3c23628c02d6603ac46e88ed137ca737830003b549ccb38087679de2cf0b02a53065b89f8d79e0ac9ddb66844d970cc6383f8b
 DIST serde-1.0.214.crate 78523 BLAKE2B c701f316a3204625d475668d2722991d75c8d9c573ae32e9175ccf99780fbe0c9c9d1dd0b4bac35f2cc91aca888c7f3dc41af2842dd833ab82776a38c2a2f6c0 SHA512 100eac65a39b9b9c32c1671d36fa9cf8aca84a2673e24c2521fdbdb3ed9f932c71548f3f1a26b1e73dd7c92a34ffa8ed1c76eb173fa20d6e85736cdf8dc9a8ee
 DIST serde-1.0.215.crate 78527 BLAKE2B ca8e1175839ca45a4d78a155f5943396211408a85e0840b065c52948188010653d68fc4fc7b63bf2c39a11a6988abb7f6f3c6d878ca1373596e0a5d62186e109 SHA512 3da13f1a74393f1fcb6d659b5e060a11ecae358f55cdf4a2fd05bfc863fea6f75d3140d3bc74902f8feba8cddf7dae71a3f4e4e78e78e1b08ed46b3e4900281f
+DIST serde-1.0.216.crate 79000 BLAKE2B 98c0f5cee2f9212c6b7620d2068665379471ceb7557d1454cab9b1c2120b526ef597fbb642f65440e70f92a4764cad33613b478bacf99138dd5bd51fdbdbee6b SHA512 baabf4c7aac4a540c9ed18b336662087258b71c9cb0e547c8d83a2734818ab2cbbe62f910d812eb61d3d46e653c41a3eebc99b1d679bfc51f95710c71a8ecc20
 DIST serde-wasm-bindgen-0.6.5.crate 21098 BLAKE2B 34b7a66752422c21031fb21202c8405c43a1e6758eb067b4fafeb24f812280e70bf16c27bbcfa4b4b5723e369bca81e42020677787a79277f32f71eaab6822fd SHA512 c457b1e8c83760d94eaf8eb49169cd620cc1fd8246af8953503c2bea9c4ae916f3de3b9070bfd4102a713f8d843b6ee96404e27b21a48c589b444aae0f9303b1
 DIST serde_derive-1.0.214.crate 56630 BLAKE2B c284561109e5d60e103f1bb421e4da48f35c5046aa52359177e286449cf8fe51a92f6295f5bec3dc4cd737025e8d0bc618436e2f7640873f66bc5b77bb4f450a SHA512 70bc0a31d344cfec8d30f2034beab25097ef76ab8d89947b21753f737759e5d4e60e5596e0c7994a7cc35993bae01148120f6cdf5239be25fb243056effa27f0
 DIST serde_derive-1.0.215.crate 57092 BLAKE2B f28bb66017599afdcd8d45c514b8e07854eb944c1dcf931e052a01ce421e0de6c20c13b3867da5922e2153e25ce88bf9fa27e2e68ddc9d212977f71fa0bd6352 SHA512 cae686bdf10c683149956ffe1c64fcf3e9b9bf0cd6e33b4ce7429d0ca35b9fdb55443693866c1202fa79348c6ea0f49ab3be3d5f857de4ae0818d2b4c8c67d9b
+DIST serde_derive-1.0.216.crate 57674 BLAKE2B 12a9228679c16288c08c8b256707e276aec79f84ac7af0c4cfd1f109500dfea80438df17d798acdd30a9743c753e70093b22bd324217529bac483f257682a3e2 SHA512 80fcb552279ac7562297df878f2f5e9ac09241701f5cf1088fcbf473b638f58cd3092a7930d8937ca0df9a47b9ae1a42d490cd46a275259cd8089fe8f5426469
 DIST serde_derive_internals-0.29.0.crate 26065 BLAKE2B 522b09f139554a52201ac397323f0124b809e9e9ff6329b34afa99f90cdf65fb3cac8370d6ecb712b72dd8b5a1d96f7f7c4ffc9ac6718eaa8a66e1aaaa28d891 SHA512 ee6e53fc58aaefb2ff953bf58ef90af3c74151f5193fe7a75d8afbc6e3dfb83d54c514ee1403b5283bb7d25ff71d24c1d8622bf1bbe940e2ab8821938d4dff21
 DIST serde_json-1.0.132.crate 150549 BLAKE2B a49aef7737fad2e6f6ec79cb6da00c734e7de7ef16be321846d1f6229534b58e15ceb0f6306eeae6f85bf07431d82959c0a56ed1394d21a67b65c8c48e971f3f SHA512 9d157ce7d705fee8245569e7c577310782b69675a6e459f21904544b824a1ca5c9b445d17419fee438dfeb6fcc35343ba14e022043fffade0210b6d2c1b5795e
 DIST serde_json-1.0.133.crate 150739 BLAKE2B 7891eb5b8edcc7fd09ab1e15d3881ffdcb629aa39f2bd758c0505700a5f2dfabd85b1b66c3b094268bc1627b346e204c792f4ca61efa76c54ab9cd5744fb0ee2 SHA512 20e65ec87bff319897a141960d13deb5cadcf821209c1ee8799f1dc7f458ce432bc62c16df5bdada1c8d3cc01ff23b8125e8fa0a03545d4614f32efd687dc69f
@@ -308,6 +325,7 @@ DIST serde_with_macros-3.11.0.crate 32054 BLAKE2B 4d4710b41c2b441d28f8ae95d95c74
 DIST sha2-0.10.8.crate 26357 BLAKE2B 1d01b381223a931dc631ad3a1191f5378b1d2f3f9f20474c5f020e366624c73b08330ce8dc4bdd3e63b15f647276f533de655b545b77f70fbedc1a1846f44f0a SHA512 3be73133a6b7690e14acaead47914dc92395dca4191fb657a2ea186fefd0ccd94d12a1121d63a26027d9a9c62b775c53202473edc461587b9dcd75472af77785
 DIST sharded-slab-0.1.7.crate 58227 BLAKE2B 9b4c4e4849ed324cf48c2b905f21139d1d65aa5ab13e7fb11817cac9a32ad09f8dbb1e50a93d40cafa0aba872792bc92f7bd2e219f62f80695409e949c07978b SHA512 3be7438d4a75debb14463477f34de6db1ac38abe958ada5d5dae7ae8d5993e245da69fcb989d91aaaffda5f2b085d4bcc88d10e07ec567b7f40a21437de6d4cb
 DIST shellexpand-3.1.0.crate 25591 BLAKE2B ba395d9d98fed37979e97609689f909b264ddb44dae56ae4958da9a0e85aa382a00bbca42530cda2701e934233aa1d44509495235ba0512beb33a827cee5c9f0 SHA512 9b20074425db359cf92f29c52be91a3a58a91e6f3116b210913f24dc31b5371ef9d77fe46e7da39e42eac87fa4ccb8ebf9175d7bd5fe6b520d12b9d3b31cc65e
+DIST shlex-1.3.0.crate 18713 BLAKE2B 18800c364d3a628f1a3125097ea82fe6286550c2997235df0bf8483a3906aacabc81308cb239887d46ba2f457cc6f8acd5aca78316707eea5098cd5666aea67d SHA512 5c8cedbe666a14b8a0874defb9208146ce64579cde52ed483e4a794cac5dde6a24bf8d684404edff582f842e1fd4fa3fbeddbe074f191e4ec4aa517aa456fe8a
 DIST similar-2.5.0.crate 51648 BLAKE2B 43515b3014ff75e2a94debb0e40a081d60dfa371bc3bc3b3a7944cfbf2e326a8a56c6aa26ca2b6f9ab6f32929a89da673ec2fd4f037c07f8ff91ca95a77b1fe1 SHA512 7206380b6e4eb496b1dddc4501ac03d716bd6b5228971a35ca71f507940e799410dffad7e50e52c6f8fcd43c570ecef23220962fb057100665343498a5ce118f
 DIST similar-2.6.0.crate 51659 BLAKE2B cfd3fd530a1bb99d63a071f34b7db55210edc3a4568b45a39ad67a0f9c1ba7fe7619a5c78f452732f698cc2f4df8e2e90d174c469e103338a70af016c030499d SHA512 cad3a5fafe3ab0c8eb08d87f982d7d93b9e65a714e3a313db92eb4e3b2c539657bdb7df4bb71597300b690248f45013401ab83f949fa8410606648e2ccb87e0e
 DIST siphasher-0.3.11.crate 10442 BLAKE2B 771221614bbd56f609b9743da4352dc7a2cbd0f6257952fab0cd052e5e5b258a4c95a0461d6d1b579dec90b72d66a0e58e036899b3db8341ae753a421a4cd4d5 SHA512 601121bd41da896142dc6ccc74a6eec3ebee3e976857ab8b5d21e915fdc8bc6e979af66a489c406371fbbbfc7a13338cc4b3744aa981206e43c53998f3e1699b
@@ -334,8 +352,10 @@ DIST test-case-core-3.3.1.crate 14327 BLAKE2B cdca628ed77b8d7bbdf50c775268f733e1
 DIST test-case-macros-3.3.1.crate 4961 BLAKE2B c3cab2832fbcf3deab12b13bfbb32bbe73528df4d98e84de589a39cd9f3540e308e307148eeedfef4822e3f6820e1b1ba93b102851c7792c5abda25f735b9abb SHA512 3383ad7fa23f09b3289e2beefb2a2ea6bb7f7f48d71339b4c1e613c4807e83e4ab816b1c36369524d65aec7929064d2951c758d9c88164e7792a0a46fbf2d933
 DIST thiserror-1.0.67.crate 22006 BLAKE2B 5be4e67c37f64ec8e3d69f0600953d0d0a2e492cc620f46556ab219661c5a3a8bac44bd26a8e3ab5f1552ad235698052a951d6202456f973373ac3b8d8a23088 SHA512 fac1a707f72d68a511012329bde62e3f616000ec8823172124e2fa2d29519fe412c0c62865fe92511a86c82e4dc3cfbfc627f403ad6b2c1dcfb9e043550eb54a
 DIST thiserror-2.0.3.crate 25559 BLAKE2B 4222d28be8ee9b2e74d647587b9a79a1584b158a0eb9fc6bf642a1f008bc2004698d3aefdd0ad8305052bd225eb75e57d7040768ace9b0839ccc135c92ddba1b SHA512 f6a8e8e1bb6d6e10edc07c35f3141b4b3ecb46b943b4879dd8f8bef0306feaa5446d8e47b24cffeb4cd6c57b4715b86b2bc0716b4ef7dfdaeb080ecd29646c9a
+DIST thiserror-2.0.7.crate 28456 BLAKE2B d0b40d33c4700b7c6a8a6330f6c4766eb4553040a62754059d84f86cd8e875c4ccf8ab7197aa6fdb2b6b27d78fcdd256ede79a22e89ad8304730a470aa20b718 SHA512 0ec2374ec19397d4764e01d46e6a8d1a6b8beb2c1e92bc88bef9309348934bff58fe7cb876e67258ca0d2ca488bffb96538efd24767fac13f1d65cc22b4ea7ca
 DIST thiserror-impl-1.0.67.crate 18285 BLAKE2B 3c61ec3911b04eb4db2c22c3f2e6475f80c1d6605f8fd46711c4076b8b265cf38c4003e8b685e93972e84dd89f0edcbf0be01dfb404fa0cc5eed1d3e100fe657 SHA512 e2b0cd6f53680eadded7889a87c8b564c15bf52c1f9c6ba9d9aa84b82625ccd1d86b25409e408e7c4d45f2d41ff26b86e8f5c0dd2ace964c0168a6c684885164
 DIST thiserror-impl-2.0.3.crate 20283 BLAKE2B 3b9b162b46a0fc6e816b3dd6c09b6ba38224c4dba9fb41e4048cc4543c6c2735ee34a94ba205be0b193debd7cc42210be5f78d9150711c9058416e41e56ba2ee SHA512 50bb722db6bff4f18975312be61fbf201b8edb29a2c6420d8a2a1f2817403aa09c6de1269e7f952c4d4583f0dd2ab1eec45b26e5391b6bd69c6450c8e42019c1
+DIST thiserror-impl-2.0.7.crate 20954 BLAKE2B f6e81f9c969fd278f9f2a6052c6a3b35066728580cef96370a4be17fddc17384653c1e07158945b1eb2bbe71d24dbabd1b98547f58924a594b1a3cb8f0a79f4d SHA512 ec15231e3e8eb3dadbdb9e972d7e46ab8fb32c21a8292bf438914b2078b96d0dbaf611f63592d5e44e62d6e228f3dc28ede0d1dd18a34748b499fe39a22fecf4
 DIST thread_local-1.1.8.crate 13962 BLAKE2B fce2feddaaebde42bdb83d814929868f06387a4fa25d5becc73ff0b983395aabe076268569c6a89e2d90ce6e68d2ebca7c3e0ba1c9159c61b32631ce39289a9f SHA512 6d7e3941f43c43ac091db5d1cf2a8a3892b54b0634d9200426eadeb82015566532f04b6040085dbdcb10580ac724b6ded8416931d764d795a5f923aced66c492
 DIST tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7.crate 897133 BLAKE2B de23ef41550ab10a30da4ea1037a5f027c23dedc71e0aa491f11cfa104d0fc6144baa0efe65991b85793719b185aa24290f26f1072a479caf8807f8a7e46287a SHA512 411c6b21fc259f3345fb6890f71de1a178f392e75351c6e38c8c9b70dfe9c607d2efd7f083152c913c395e5a041429eae731d5a34df924481c35c0691978dcf3
 DIST tikv-jemallocator-0.6.0.crate 13700 BLAKE2B 86a14c00a953991da2abb96c379ddaa03cdd403810fa0468ee60a0234db03b3651ad87533221f4812389b8ad03730d8dfa16c75f0d6dee640a4594bbe81fe700 SHA512 411e172ef702a3dc3022c8d672806b8a0f4d0c9c2db95f8c5fbe4949d3235504ef748793225186f6311c17e170d88bcf03e49be37657336520d06b75bf97f07c
@@ -354,6 +374,7 @@ DIST tracing-core-0.1.32.crate 61221 BLAKE2B a7815c46af9852ce62498083103c6d35935
 DIST tracing-core-0.1.33.crate 63434 BLAKE2B bc36332ffe5f4c95ae2d12df43944bcf589746cdb923a39098e5f4007fd1f19d7c3bb115011ddc40c13e3ae0e5cfc9a59c49861824e99fed7430fd29479abacf SHA512 1c6f0cf3b7bd6c8f6316ed9ea0b315a619308de6cbf7e50e665a193cf8c3399b5227d4f145d83b10c7e01a2f9fbc83d16e108cf09b7fd6cef413aa5c1acf89ef
 DIST tracing-flame-0.2.0.crate 9062 BLAKE2B d03b4d545875508ce4b69344e80409d40983cd2f572351c9ef3090b8b120754dfa774d6559d65a1cbe49758ebac6274e3b1954edd225a02a2469f585dc926be1 SHA512 af41931e2559e2188f4d6b4258a42440b894a58ce2875a632f2488151c857059fc17541bdd312c5b444163c4c5ac6498a69e06394c18c307446a30dfc1e3219b
 DIST tracing-indicatif-0.3.6.crate 26505 BLAKE2B 784809e0ce11f0a8828f8df748dc13519913589ea4c74c9c6588e4b7a4c3bf5ba9b2d43d699203ae289d566b4d8982cb822741ed4ebf7ae44c7cb32d51684bc0 SHA512 467aef821ac04ae81f217991fbf10fab3bb80b0eb60c48270377c258522137c7e496c37cb481376e4ec1916a01ba2792231a60fcbc5789536164d759b4f14522
+DIST tracing-indicatif-0.3.8.crate 27972 BLAKE2B 2d8e90aa00007b715881d1f7409317de36bb83f39852fb246838b08e4dc998ddf18436644b0b0efa13078a8d0d1344e1c929546c4575bf0b626bf56c397a3dd2 SHA512 b9495a9c1375465a767ec07f0b0a558a34f7981392da142df6cd13805c5998869eac3208402275bd541af1643d9c09ea3519a9128d520ba5f4945e0c3469bb20
 DIST tracing-log-0.2.0.crate 17561 BLAKE2B 701bdadd40f1343f3c4901bd8dd188f1dbc0afcdf50807bd0f6df7539635e239b5095696872103125a4d4cfec24af6336fce6f3931363dd5be4f53a09fa584f2 SHA512 0c1f060e8ffb9ff24cee7b85cc2d7d42c69b2f7623a7faecd7422b23b11ae8d5c7691e4635bae76861d444c369d9701ccb147904668023642b223e442e3c8285
 DIST tracing-subscriber-0.3.18.crate 196312 BLAKE2B bc2f04da63b0313d26073eb4a39b549ae37701e4dbf1fe06a2483279a03d9dde981f0efea6ceb5cd441ab313bfe7eaf812971c3ca60dfd4b5d9cf0d2eb7bacd4 SHA512 72f91855637aa476f03077d5f523cbc94989d40b12d7328167f88b081869ed096e6370450831f6cd5f0686cae5628f14eed4696c06a2ec75f56808b64445e0c1
 DIST tracing-subscriber-0.3.19.crate 198345 BLAKE2B c7083168e62619c856b872570b85b44475edd687fb6d5c3334246622900fcbf4e4a8484c23362fbfb358d6d9f8088f7dbad2e2ed30954aebf76d1b57324b712b SHA512 840e35103f1152e94ef9138d0f03f157b296def538bab6c7464fa7d363aef7734feed196091782dd3aa9bf06c7dc181a2c37149a23f5be036f00c00b5200686c
@@ -377,6 +398,7 @@ DIST unscanny-0.1.0.crate 10338 BLAKE2B fd725928107d4d2ed2686709335ef01136bcd54d
 DIST untrusted-0.9.0.crate 14447 BLAKE2B 8e9c3ae09435af0885bc4a6e3c8943805b48cfc00bdae228c7c43093254e1be15d7005d1026561ff369ec37865d8458203f421a9c89ae3db077f655449621aed SHA512 5929e4079c1c2ff933ae8d8f59a2ecc7a424e71a20d1b8821f75925af68bdf82604b024c008e5464b02e25ff093e561a352b685e755b3d0b27e4c30254689416
 DIST ureq-2.10.1.crate 113163 BLAKE2B aece4293775ee9bed49dfd7c1761fdee20c92322dedf70431b6214e8a40fd9f63e43d2846c1929135005c5260ffba4a388d779a2cb2808eb892b6b869f65fa08 SHA512 9944f0790b9c342a3584bb9217d0546dc4272b011bdaa47d22b42684dd7f655aad22750d395875c63e7c92d8d44ddf1ef610061b485f9600dfd79b4db5743656
 DIST ureq-2.11.0.crate 115223 BLAKE2B d02d0c0f56995766f06d1488caa9a987ac62e39946f946f443fac6dec0ce64df203733ca0b1ed7de3ef3cb402e162c9bb6b6d56e771699bc3a467376f3b07894 SHA512 3f6b77f6c5267bf4139c03b7494e207a0da983394baf85d4bd8a615bfc79fd83ebb3ab4da9af47328b8668e58a47fddbfe3dc901e0bf54096b07bb10cc4c76f0
+DIST ureq-2.12.1.crate 115366 BLAKE2B 8e349c5dbd4c1c6180fa018523db67dd694c0f7ef0ae4323592c1051fef473bfd6a8bf80d91fa4047547fa5e908ec5f362cf0697168385e2968ce67f8474c59b SHA512 30fb75e097b9cfb34ebd056c0936d1b5ce16f4a613e963c5179046eb48a0165da6cb2e4a5d612b03d6b0daf736f5353159a92ab69e68b643b923fd551f0c3e7c
 DIST url-2.5.3.crate 81624 BLAKE2B 431a2594ba962fd36f7cea3567d689f15cb09548a8a2b26a7dfeb95ad5cff3ca21d22145436b23a35cefd676002b097ce271588be1c1bce24aae22c372cfa9a7 SHA512 f9dcdaa395d2ecc9f4968a440cdbf59b49d91787bbeb622846f915c92ac51a402751804928ed7bd52e6980cb406ffa64d11d939065c6d261c4979ce199ab5359
 DIST url-2.5.4.crate 81097 BLAKE2B 74943c63809ca41a526a146bedae66f91f390fbd2ccbd90f9397d8074ee7ec26535f0f67170eb1d7232e139d8d795fde99be37f53f1bc32c6a6a4d46aad1369f SHA512 8f1d62bfdd45f52fa12ad657a521a3478d0ab54d187346a29dd59cc66a0f140ca96d850948e09f6316f08b44b3fc68526c58bd620fed5d065b7e8528df3cd46d
 DIST urlencoding-2.1.3.crate 6538 BLAKE2B 65777b0990aa6b3d27a47f36114da8622026ac8946b5ffb6e04172b666ec7244a55c250a7fb626472bb2b636eb32ee945599cee5ce7351c3cef2322366db15ff SHA512 035848d9243ed6a4528377b56edd7f8bcb5f824381b420dc8f5c4bfc3f1246655c54eaa7de0e4aaa7138e0b08fd796b9ace140ab919aed2d94f6952b577386ac

diff --git a/dev-util/ruff/ruff-0.8.4.ebuild b/dev-util/ruff/ruff-0.8.4.ebuild
new file mode 100644
index 000000000000..60bdb1ee4b47
--- /dev/null
+++ b/dev-util/ruff/ruff-0.8.4.ebuild
@@ -0,0 +1,533 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Autogenerated by pycargoebuild 0.13.4
+
+EAPI=8
+
+CRATES="
+	adler@1.0.2
+	ahash@0.8.11
+	aho-corasick@1.1.3
+	android-tzdata@0.1.1
+	android_system_properties@0.1.5
+	anes@0.1.6
+	annotate-snippets@0.6.1
+	annotate-snippets@0.9.2
+	anstream@0.6.13
+	anstyle-parse@0.2.3
+	anstyle-query@1.0.2
+	anstyle-wincon@3.0.2
+	anstyle@1.0.8
+	anyhow@1.0.94
+	append-only-vec@0.1.5
+	arc-swap@1.7.1
+	argfile@0.2.1
+	arrayvec@0.7.4
+	assert_fs@1.1.2
+	autocfg@1.2.0
+	base64@0.13.1
+	base64@0.22.0
+	bincode@1.3.3
+	bitflags@1.3.2
+	bitflags@2.6.0
+	block-buffer@0.10.4
+	boxcar@0.2.7
+	bstr@1.11.1
+	bumpalo@3.16.0
+	byteorder@1.5.0
+	cachedir@0.3.1
+	camino@1.1.9
+	cast@0.3.0
+	castaway@0.2.3
+	cc@1.2.2
+	cfg-if@1.0.0
+	cfg_aliases@0.1.1
+	cfg_aliases@0.2.1
+	chic@1.2.2
+	chrono@0.4.39
+	ciborium-io@0.2.2
+	ciborium-ll@0.2.2
+	ciborium@0.2.2
+	clap@4.5.23
+	clap_builder@4.5.23
+	clap_complete@4.5.2
+	clap_complete_command@0.6.1
+	clap_complete_nushell@4.5.2
+	clap_derive@4.5.18
+	clap_lex@0.7.4
+	clearscreen@3.0.0
+	codspeed-criterion-compat@2.7.2
+	codspeed@2.7.2
+	colorchoice@1.0.0
+	colored@2.2.0
+	compact_str@0.8.0
+	console@0.15.8
+	console_error_panic_hook@0.1.7
+	console_log@1.0.0
+	core-foundation-sys@0.8.6
+	countme@3.0.1
+	cpufeatures@0.2.13
+	crc32fast@1.4.0
+	criterion-plot@0.5.0
+	criterion@0.5.1
+	crossbeam-channel@0.5.12
+	crossbeam-deque@0.8.5
+	crossbeam-epoch@0.9.18
+	crossbeam-queue@0.3.11
+	crossbeam-utils@0.8.19
+	crossbeam@0.8.4
+	crunchy@0.2.2
+	crypto-common@0.1.6
+	ctrlc@3.4.5
+	darling@0.20.8
+	darling_core@0.20.8
+	darling_macro@0.20.8
+	dashmap@5.5.3
+	dashmap@6.1.0
+	diff@0.1.13
+	difflib@0.4.0
+	digest@0.10.7
+	dir-test-macros@0.4.1
+	dir-test@0.4.1
+	dirs-sys@0.3.7
+	dirs-sys@0.4.1
+	dirs@4.0.0
+	dirs@5.0.1
+	displaydoc@0.2.5
+	doc-comment@0.3.3
+	drop_bomb@0.1.5
+	dunce@1.0.5
+	dyn-clone@1.0.17
+	either@1.11.0
+	encode_unicode@0.3.6
+	env_filter@0.1.0
+	env_logger@0.11.5
+	equivalent@1.0.1
+	errno@0.3.8
+	etcetera@0.8.0
+	fastrand@2.1.1
+	fern@0.7.1
+	filetime@0.2.25
+	flate2@1.0.28
+	fnv@1.0.7
+	form_urlencoded@1.2.1
+	fs-err@2.11.0
+	fsevent-sys@4.1.0
+	generic-array@0.14.7
+	getopts@0.2.21
+	getrandom@0.2.14
+	glob@0.3.1
+	globset@0.4.15
+	globwalk@0.9.1
+	half@2.4.1
+	hashbrown@0.14.5
+	hashbrown@0.15.2
+	hashlink@0.9.1
+	heck@0.5.0
+	hermit-abi@0.3.9
+	home@0.5.9
+	humantime@2.1.0
+	iana-time-zone-haiku@0.1.2
+	iana-time-zone@0.1.60
+	icu_collections@1.5.0
+	icu_locid@1.5.0
+	icu_locid_transform@1.5.0
+	icu_locid_transform_data@1.5.0
+	icu_normalizer@1.5.0
+	icu_normalizer_data@1.5.0
+	icu_properties@1.5.1
+	icu_properties_data@1.5.0
+	icu_provider@1.5.0
+	icu_provider_macros@1.5.0
+	ident_case@1.0.1
+	idna@1.0.3
+	idna_adapter@1.2.0
+	ignore@0.4.23
+	imara-diff@0.1.7
+	imperative@1.0.6
+	indexmap@2.7.0
+	indicatif@0.17.9
+	indoc@2.0.5
+	inotify-sys@0.1.5
+	inotify@0.10.2
+	insta-cmd@0.6.0
+	insta@1.41.1
+	instant@0.1.12
+	is-docker@0.2.0
+	is-macro@0.3.7
+	is-terminal@0.4.12
+	is-wsl@0.4.0
+	itertools@0.10.5
+	itertools@0.13.0
+	itoa@1.0.11
+	jobserver@0.1.32
+	jod-thread@0.1.2
+	js-sys@0.3.74
+	kqueue-sys@1.0.4
+	kqueue@1.0.8
+	lazy_static@1.4.0
+	libc@0.2.168
+	libcst@1.5.1
+	libcst_derive@1.4.0
+	libmimalloc-sys@0.1.39
+	libredox@0.1.3
+	linked-hash-map@0.5.6
+	linux-raw-sys@0.4.14
+	litemap@0.7.3
+	lock_api@0.4.11
+	log@0.4.22
+	lsp-server@0.7.7
+	matchers@0.1.0
+	matches@0.1.10
+	matchit@0.8.5
+	memchr@2.7.4
+	mimalloc@0.1.43
+	minicov@0.3.5
+	minimal-lexical@0.2.1
+	miniz_oxide@0.7.2
+	mio@1.0.2
+	natord@1.0.9
+	newtype-uuid@1.1.3
+	nix@0.28.0
+	nix@0.29.0
+	nom@7.1.3
+	notify-types@1.0.0
+	notify@7.0.0
+	nu-ansi-term@0.46.0
+	nu-ansi-term@0.50.1
+	num-traits@0.2.18
+	number_prefix@0.4.0
+	once_cell@1.20.2
+	oorandom@11.1.3
+	option-ext@0.2.0
+	ordermap@0.5.4
+	os_str_bytes@7.0.0
+	overload@0.1.1
+	parking_lot@0.12.3
+	parking_lot_core@0.9.9
+	paste@1.0.15
+	path-absolutize@3.1.1
+	path-dedot@3.1.1
+	path-slash@0.2.1
+	pathdiff@0.2.3
+	peg-macros@0.8.4
+	peg-runtime@0.8.3
+	peg@0.8.4
+	pep440_rs@0.7.3
+	pep508_rs@0.9.1
+	percent-encoding@2.3.1
+	pest@2.7.11
+	pest_derive@2.7.11
+	pest_generator@2.7.11
+	pest_meta@2.7.11
+	phf@0.11.2
+	phf_codegen@0.11.2
+	phf_generator@0.11.2
+	phf_shared@0.11.2
+	pin-project-lite@0.2.14
+	pkg-config@0.3.30
+	portable-atomic@1.6.0
+	ppv-lite86@0.2.17
+	predicates-core@1.0.8
+	predicates-tree@1.0.11
+	predicates@3.1.2
+	pretty_assertions@1.4.1
+	proc-macro2@1.0.92
+	pyproject-toml@0.13.4
+	quick-junit@0.5.1
+	quick-xml@0.37.1
+	quickcheck@1.0.3
+	quickcheck_macros@1.0.0
+	quote@1.0.37
+	rand@0.8.5
+	rand_chacha@0.3.1
+	rand_core@0.6.4
+	rayon-core@1.12.1
+	rayon@1.10.0
+	redox_syscall@0.4.1
+	redox_syscall@0.5.3
+	redox_users@0.4.5
+	regex-automata@0.1.10
+	regex-automata@0.4.8
+	regex-syntax@0.6.29
+	regex-syntax@0.8.5
+	regex@1.11.1
+	ring@0.17.8
+	ron@0.7.1
+	rust-stemmers@1.2.0
+	rustc-hash@1.1.0
+	rustc-hash@2.1.0
+	rustix@0.38.40
+	rustls-pki-types@1.10.0
+	rustls-webpki@0.102.8
+	rustls@0.23.19
+	rustversion@1.0.15
+	ryu@1.0.17
+	same-file@1.0.6
+	schemars@0.8.21
+	schemars_derive@0.8.21
+	scoped-tls@1.0.1
+	scopeguard@1.2.0
+	seahash@4.1.0
+	serde-wasm-bindgen@0.6.5
+	serde@1.0.216
+	serde_derive@1.0.216
+	serde_derive_internals@0.29.0
+	serde_json@1.0.133
+	serde_repr@0.1.19
+	serde_spanned@0.6.7
+	serde_test@1.0.177
+	serde_with@3.11.0
+	serde_with_macros@3.11.0
+	sha2@0.10.8
+	sharded-slab@0.1.7
+	shellexpand@3.1.0
+	shlex@1.3.0
+	similar@2.6.0
+	siphasher@0.3.11
+	smallvec@1.13.2
+	spin@0.9.8
+	stable_deref_trait@1.2.0
+	static_assertions@1.1.0
+	strip-ansi-escapes@0.2.0
+	strsim@0.10.0
+	strsim@0.11.1
+	strum@0.26.3
+	strum_macros@0.26.4
+	subtle@2.5.0
+	syn@1.0.109
+	syn@2.0.90
+	synstructure@0.13.1
+	tempfile@3.14.0
+	terminal_size@0.4.0
+	terminfo@0.8.0
+	termtree@0.4.1
+	test-case-core@3.3.1
+	test-case-macros@3.3.1
+	test-case@3.3.1
+	thiserror-impl@1.0.67
+	thiserror-impl@2.0.7
+	thiserror@1.0.67
+	thiserror@2.0.7
+	thread_local@1.1.8
+	tikv-jemalloc-sys@0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7
+	tikv-jemallocator@0.6.0
+	tinystr@0.7.6
+	tinytemplate@1.2.1
+	tinyvec@1.6.0
+	tinyvec_macros@0.1.1
+	toml@0.8.19
+	toml_datetime@0.6.8
+	toml_edit@0.22.20
+	tracing-attributes@0.1.28
+	tracing-core@0.1.33
+	tracing-flame@0.2.0
+	tracing-indicatif@0.3.8
+	tracing-log@0.2.0
+	tracing-subscriber@0.3.19
+	tracing-tree@0.4.0
+	tracing@0.1.41
+	typed-arena@2.0.2
+	typenum@1.17.0
+	ucd-trie@0.1.6
+	unic-char-property@0.9.0
+	unic-char-range@0.9.0
+	unic-common@0.9.0
+	unic-ucd-category@0.9.0
+	unic-ucd-version@0.9.0
+	unicode-ident@1.0.14
+	unicode-normalization@0.1.24
+	unicode-width@0.1.13
+	unicode-width@0.2.0
+	unicode_names2@1.3.0
+	unicode_names2_generator@1.3.0
+	unscanny@0.1.0
+	untrusted@0.9.0
+	ureq@2.12.1
+	url@2.5.4
+	urlencoding@2.1.3
+	utf16_iter@1.0.5
+	utf8_iter@1.0.4
+	utf8parse@0.2.1
+	uuid-macro-internal@1.11.0
+	uuid@1.11.0
+	valuable@0.1.0
+	version-ranges@0.1.1
+	version_check@0.9.4
+	vt100@0.15.2
+	vte@0.11.1
+	vte_generate_state_changes@0.1.1
+	walkdir@2.5.0
+	wasi@0.11.0+wasi-snapshot-preview1
+	wasm-bindgen-backend@0.2.97
+	wasm-bindgen-futures@0.4.47
+	wasm-bindgen-macro-support@0.2.97
+	wasm-bindgen-macro@0.2.97
+	wasm-bindgen-shared@0.2.97
+	wasm-bindgen-test-macro@0.3.47
+	wasm-bindgen-test@0.3.47
+	wasm-bindgen@0.2.97
+	web-sys@0.3.74
+	web-time@1.1.0
+	webpki-roots@0.26.1
+	which@6.0.1
+	wild@2.2.1
+	winapi-i686-pc-windows-gnu@0.4.0
+	winapi-util@0.1.8
+	winapi-x86_64-pc-windows-gnu@0.4.0
+	winapi@0.3.9
+	windows-core@0.52.0
+	windows-sys@0.48.0
+	windows-sys@0.52.0
+	windows-sys@0.59.0
+	windows-targets@0.48.5
+	windows-targets@0.52.6
+	windows_aarch64_gnullvm@0.48.5
+	windows_aarch64_gnullvm@0.52.6
+	windows_aarch64_msvc@0.48.5
+	windows_aarch64_msvc@0.52.6
+	windows_i686_gnu@0.48.5
+	windows_i686_gnu@0.52.6
+	windows_i686_gnullvm@0.52.6
+	windows_i686_msvc@0.48.5
+	windows_i686_msvc@0.52.6
+	windows_x86_64_gnu@0.48.5
+	windows_x86_64_gnu@0.52.6
+	windows_x86_64_gnullvm@0.48.5
+	windows_x86_64_gnullvm@0.52.6
+	windows_x86_64_msvc@0.48.5
+	windows_x86_64_msvc@0.52.6
+	winnow@0.6.18
+	winsafe@0.0.19
+	write16@1.0.0
+	writeable@0.5.5
+	yansi-term@0.1.2
+	yansi@1.0.1
+	yoke-derive@0.7.4
+	yoke@0.7.4
+	zerocopy-derive@0.7.32
+	zerocopy@0.7.32
+	zerofrom-derive@0.1.4
+	zerofrom@0.1.4
+	zeroize@1.7.0
+	zerovec-derive@0.10.3
+	zerovec@0.10.4
+	zip@0.6.6
+	zstd-safe@5.0.2+zstd.1.5.2
+	zstd-sys@2.0.11+zstd.1.5.6
+	zstd@0.11.2+zstd.1.5.2
+"
+
+declare -A GIT_CRATES=(
+	[lsp-types]='https://github.com/astral-sh/lsp-types;3512a9f33eadc5402cfab1b8f7340824c8ca1439;lsp-types-%commit%'
+	[salsa-macro-rules]='https://github.com/salsa-rs/salsa;3c7f1694c9efba751dbeeacfbc93b227586e316a;salsa-%commit%/components/salsa-macro-rules'
+	[salsa-macros]='https://github.com/salsa-rs/salsa;3c7f1694c9efba751dbeeacfbc93b227586e316a;salsa-%commit%/components/salsa-macros'
+	[salsa]='https://github.com/salsa-rs/salsa;3c7f1694c9efba751dbeeacfbc93b227586e316a;salsa-%commit%'
+)
+
+RUST_MIN_VER="1.80.0"
+
+inherit shell-completion cargo
+
+DESCRIPTION="An extremely fast Python linter, written in Rust"
+HOMEPAGE="
+	https://docs.astral.sh/ruff/
+	https://github.com/astral-sh/ruff
+"
+SRC_URI="
+	${CARGO_CRATE_URIS}
+	https://github.com/astral-sh/ruff/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+	Apache-2.0 BSD CC0-1.0 ISC MIT MPL-2.0 PSF-2 Unicode-3.0
+	Unicode-DFS-2016 WTFPL-2
+"
+# libcst_derive
+LICENSE+="
+	MIT PSF-2 Apache-2.0
+"
+# ring
+LICENSE+="
+	ISC SSLeay openssl MIT
+"
+
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+
+RDEPEND="
+	!elibc_musl? ( !elibc_Darwin? ( !elibc_bionic? ( dev-libs/jemalloc:= ) ) )
+	app-arch/zstd
+"
+DEPEND="
+	${RDEPEND}
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+DOCS=(
+	BREAKING_CHANGES.md
+	CODE_OF_CONDUCT.md
+	CONTRIBUTING.md
+	README.md
+	assets
+	docs
+)
+
+src_prepare() {
+	default
+
+	# Experimental cruft cleaner. These crates are not used by the ruff binary,
+	# and when they are removed in the git repo, the lockfile is regenerated
+	# and gets quite a bit smaller. Hence pycargoebuild also produces much
+	# smaller CRATES= variables. Less for the user to download, fewer distfiles
+	# to mirror.
+	pushd crates >/dev/null || die
+	rm -r ruff_{benchmark,dev} red_knot{,_server,_workspace} *_wasm || die
+	popd > /dev/null || die
+}
+
+src_configure() {
+	export RUSTFLAGS="${RUSTFLAGS}"
+	cargo_src_configure
+}
+
+src_compile() {
+	local -x ZSTD_SYS_USE_PKG_CONFIG=1
+	# Gentoo bug #927338
+	if use !elibc_musl && use !elibc_Darwin && use !elibc_bionic; then
+		local -x CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS=1
+		local -x JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)"/libjemalloc.so
+	fi
+	cargo_src_compile --bin ruff
+
+	local releasedir
+	releasedir=$(cargo_target_dir)
+
+	${releasedir}/ruff generate-shell-completion bash > ruff-completion.bash || die
+	${releasedir}/ruff generate-shell-completion zsh > ruff-completion.zsh || die
+}
+
+src_test() {
+	local -x ZSTD_SYS_USE_PKG_CONFIG=1
+	# Gentoo bug #927338
+	if use !elibc_musl && use !elibc_Darwin && use !elibc_bionic; then
+		local -x CARGO_FEATURE_UNPREFIXED_MALLOC_ON_SUPPORTED_PLATFORMS=1
+		local -x JEMALLOC_OVERRIDE="${ESYSROOT}/usr/$(get_libdir)"/libjemalloc.so
+	fi
+	cargo_src_test --target-dir "${PWD}"/tested-target/
+}
+
+src_install() {
+	local releasedir=$(cargo_target_dir)
+
+	dobin ${releasedir}/ruff
+
+	newbashcomp ruff-completion.bash ruff
+	newzshcomp ruff-completion.zsh _ruff
+
+	dodoc -r "${DOCS[@]}"
+}


             reply	other threads:[~2024-12-20 16:33 UTC|newest]

Thread overview: 177+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-20 16:33 Patrick McLean [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-11-07 17:30 [gentoo-commits] repo/gentoo:master commit in: dev-util/ruff/ Patrick McLean
2025-10-31 17:30 Patrick McLean
2025-10-31 17:30 Patrick McLean
2025-10-24  9:14 Arthur Zamarin
2025-10-24  6:16 Eli Schwartz
2025-10-07 23:21 Patrick McLean
2025-10-03 18:43 Patrick McLean
2025-09-25 17:39 Patrick McLean
2025-09-25 17:39 Patrick McLean
2025-09-19 21:06 Patrick McLean
2025-09-10 22:10 Patrick McLean
2025-09-04 22:14 Patrick McLean
2025-09-04 22:14 Patrick McLean
2025-09-04  5:32 Eli Schwartz
2025-08-28 22:36 Patrick McLean
2025-08-27  6:12 Sam James
2025-08-22 17:33 Patrick McLean
2025-08-15  7:05 Eli Schwartz
2025-08-14  5:09 Eli Schwartz
2025-08-11  5:38 Eli Schwartz
2025-08-11  2:38 Sam James
2025-08-05 20:01 Eli Schwartz
2025-08-05 16:33 Patrick McLean
2025-08-05 16:33 Patrick McLean
2025-07-25 23:42 Sam James
2025-07-22 19:37 Eli Schwartz
2025-07-11 23:06 Patrick McLean
2025-07-11 23:06 Patrick McLean
2025-07-08  0:00 Patrick McLean
2025-06-24 20:02 Patrick McLean
2025-06-06 20:23 Patrick McLean
2025-05-23  0:41 Patrick McLean
2025-05-15 18:39 Patrick McLean
2025-04-25 21:22 Patrick McLean
2025-04-17 21:43 Patrick McLean
2025-04-17 21:17 Patrick McLean
2025-04-16 21:35 Patrick McLean
2025-04-02 22:14 Eli Schwartz
2025-04-02 22:14 Eli Schwartz
2025-04-01 18:39 Arthur Zamarin
2025-03-20 17:07 Patrick McLean
2025-03-14 15:41 Patrick McLean
2025-03-14 15:41 Patrick McLean
2025-03-07 20:51 Patrick McLean
2025-02-28 21:21 Patrick McLean
2025-02-28 21:20 Patrick McLean
2025-02-20 18:21 Patrick McLean
2025-02-10 18:31 Patrick McLean
2025-02-10 18:31 Patrick McLean
2025-01-10 21:13 Patrick McLean
2025-01-09 17:54 Patrick McLean
2025-01-07 21:58 Patrick McLean
2024-12-05 17:29 Patrick McLean
2024-12-05 17:29 Patrick McLean
2024-11-15 23:00 Patrick McLean
2024-11-15 23:00 Patrick McLean
2024-11-11 19:17 Patrick McLean
2024-11-11 19:17 Patrick McLean
2024-11-03 19:11 Eli Schwartz
2024-10-30 17:21 Arthur Zamarin
2024-10-24 16:38 Patrick McLean
2024-10-24 16:38 Patrick McLean
2024-10-24  0:12 Jakov Smolić
2024-10-17 20:57 Patrick McLean
2024-10-17 20:57 Patrick McLean
2024-10-09 17:31 Eli Schwartz
2024-09-26 16:13 Patrick McLean
2024-09-26 16:13 Patrick McLean
2024-09-25  4:30 Eli Schwartz
2024-09-20 18:12 Eli Schwartz
2024-09-13 23:11 Patrick McLean
2024-09-13 23:11 Patrick McLean
2024-09-05 18:17 Patrick McLean
2024-09-05 18:17 Patrick McLean
2024-08-29 19:01 Patrick McLean
2024-08-29 19:00 Patrick McLean
2024-08-22 17:56 Patrick McLean
2024-08-22 17:56 Patrick McLean
2024-08-17  0:10 Patrick McLean
2024-08-16 23:35 Patrick McLean
2024-08-15 17:36 Patrick McLean
2024-08-15 17:36 Patrick McLean
2024-08-09 17:46 Patrick McLean
2024-07-29  1:19 Eli Schwartz
2024-07-22  4:50 Eli Schwartz
2024-07-16  4:11 Eli Schwartz
2024-06-28 16:58 Patrick McLean
2024-06-28 16:57 Patrick McLean
2024-06-17  9:39 James Le Cuirot
2024-06-06  0:44 Patrick McLean
2024-06-04  6:56 Sam James
2024-05-30  2:21 Sam James
2024-05-23 21:52 Sam James
2024-05-23 16:43 Patrick McLean
2024-05-10  1:58 Sam James
2024-05-10  1:58 Sam James
2024-05-07 15:13 Patrick McLean
2024-04-25 21:07 Patrick McLean
2024-04-19 18:41 Patrick McLean
2024-04-18 21:49 Patrick McLean
2024-04-18 21:49 Patrick McLean
2024-04-01 20:11 Patrick McLean
2024-04-01 19:50 Patrick McLean
2024-03-22  5:33 Sam James
2024-03-18 16:29 Patrick McLean
2024-03-14  6:40 Sam James
2024-03-14  6:40 Sam James
2024-03-14  6:40 Sam James
2024-03-14  6:40 Sam James
2024-03-14  6:40 Sam James
2024-02-29 17:15 Patrick McLean
2024-02-21 22:15 Patrick McLean
2024-02-06 18:56 Patrick McLean
2024-02-04 17:10 WANG Xuerui
2024-01-15 14:01 Sam James
2024-01-15  9:17 Ulrich Müller
2024-01-12 20:39 Patrick McLean
2024-01-12 19:49 Patrick McLean
2023-12-13 20:55 Patrick McLean
2023-12-05  1:00 Patrick McLean
2023-11-17 21:43 Patrick McLean
2023-11-09  1:54 Patrick McLean
2023-10-26 21:18 Patrick McLean
2023-10-24 18:48 Patrick McLean
2023-10-19 22:07 Patrick McLean
2023-10-16 23:25 Patrick McLean
2023-10-16 23:13 Patrick McLean
2023-10-02 20:04 Patrick McLean
2023-09-22 21:57 Patrick McLean
2023-09-16  0:32 Patrick McLean
2023-09-12 17:43 Patrick McLean
2023-09-11 18:50 Patrick McLean
2023-09-11 18:50 Patrick McLean
2023-09-11 18:50 Patrick McLean
2023-09-08 19:36 Patrick McLean
2023-09-08 19:29 Patrick McLean
2023-08-26  0:14 Patrick McLean
2023-08-10 21:55 Patrick McLean
2023-08-08 20:48 Patrick McLean
2023-08-07 23:38 Patrick McLean
2023-07-31 22:58 Patrick McLean
2023-07-24 22:15 Patrick McLean
2023-07-22  1:22 Patrick McLean
2023-07-13  0:03 Patrick McLean
2023-07-05 16:17 Patrick McLean
2023-06-22 18:07 Patrick McLean
2023-06-21 19:04 Patrick McLean
2023-06-21  4:52 Patrick McLean
2023-06-21  4:42 Patrick McLean
2023-06-21  4:42 Patrick McLean
2023-06-21  4:42 Patrick McLean
2023-06-20 21:27 Patrick McLean
2023-06-08 20:55 Patrick McLean
2023-06-08 20:38 Patrick McLean
2023-06-01 20:34 Patrick McLean
2023-05-05 17:58 Patrick McLean
2023-05-02 18:02 Patrick McLean
2023-04-25 19:20 Patrick McLean
2023-04-25 19:00 Patrick McLean
2023-04-25 18:08 Patrick McLean
2023-04-21  1:07 Patrick McLean
2023-04-21  1:07 Patrick McLean
2023-04-10 19:21 Patrick McLean
2023-03-24 19:29 Patrick McLean
2023-03-23  1:31 Patrick McLean
2023-03-23  1:27 Patrick McLean
2023-02-28 18:43 Patrick McLean
2023-02-28 18:43 Patrick McLean
2023-02-23 19:55 Patrick McLean
2023-02-22 20:24 Patrick McLean
2023-02-15 23:19 Patrick McLean
2023-02-15 21:36 Patrick McLean
2023-02-15 21:15 Patrick McLean
2023-02-09 20:04 Patrick McLean
2023-02-08 23:13 Patrick McLean
2023-02-08 20:34 Patrick McLean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1734712420.33eb09a86c3243bbf93c25c7310939a87ec4dc0e.chutzpah@gentoo \
    --to=chutzpah@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox