From 404156f3e6a565b4c036397b45296078d135299a Mon Sep 17 00:00:00 2001 From: intellild Date: Thu, 14 May 2026 09:40:52 +0000 Subject: [PATCH 1/4] chore: update rust dependencies --- Cargo.lock | 432 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 285 insertions(+), 147 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a746cca..7e2a08c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,12 +1,12 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "ahash" -version = "0.7.6" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ "getrandom", "once_cell", @@ -15,9 +15,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.7.20" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -33,48 +33,71 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.1.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c70beb79cbb5ce9c4f8e20849978f34225931f665bb49efa6982875a4d5facb3" +checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] [[package]] name = "bumpalo" -version = "3.9.1" +version = "3.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" [[package]] name = "bytecheck" -version = "0.6.8" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a31f923c2db9513e4298b72df143e6e655a759b3d6a0966df18f81223fff54f" +checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" dependencies = [ "bytecheck_derive", "ptr_meta", + "simdutf8", ] [[package]] name = "bytecheck_derive" -version = "0.6.8" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb17c862a905d912174daa27ae002326fff56dc8b8ada50a0a5f0976cb174f0" +checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] +[[package]] +name = "bytes" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" + [[package]] name = "cc" -version = "1.0.73" +version = "1.2.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11" +checksum = "a1dce859f0832a7d088c4f1119888ab94ef4b5d6795d1ce05afb7fe159d79f98" +dependencies = [ + "find-msvc-tools", + "shlex", +] [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "convert_case" @@ -87,12 +110,12 @@ dependencies = [ [[package]] name = "ctor" -version = "0.1.22" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f877be4f7c9f246b183111634f75baa039715e3f46ce860677d3b19a69fb229c" +checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ "quote", - "syn", + "syn 2.0.117", ] [[package]] @@ -104,17 +127,53 @@ dependencies = [ "matches", ] +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + [[package]] name = "fs_extra" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures-core" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" + +[[package]] +name = "futures-task" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" + +[[package]] +name = "futures-util" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" +dependencies = [ + "futures-core", + "futures-task", + "pin-project-lite", + "slab", +] [[package]] name = "getrandom" -version = "0.2.6" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", "libc", @@ -123,18 +182,18 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.12.1" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db0d4cf898abf0081f964436dc980e96670a0f36863e4b83aaacdb65c9d7ccc3" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" dependencies = [ "ahash", ] [[package]] name = "itoa" -version = "1.0.2" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "jemalloc-sys" @@ -159,61 +218,49 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.57" +version = "0.3.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397" +checksum = "67df7112613f8bfd9150013a0314e196f4800d3201ae742489d999db2f979f08" dependencies = [ + "cfg-if", + "futures-util", + "once_cell", "wasm-bindgen", ] -[[package]] -name = "lazy_static" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" - [[package]] name = "libc" -version = "0.2.126" +version = "0.2.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836" +checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" [[package]] name = "libloading" -version = "0.7.4" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "log" -version = "0.4.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", + "windows-link", ] [[package]] name = "matches" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] name = "memchr" -version = "2.5.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" [[package]] name = "napi" -version = "2.12.2" +version = "2.16.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fadcfd21e9bc06b4d4c307f5072c4ac341bd059f950f060c59eb32ec3613283" +checksum = "55740c4ae1d8696773c78fdafd5d0e5fe9bc9f1b071c7ba493ba5c413a9184f3" dependencies = [ "bitflags", "ctor", @@ -226,28 +273,29 @@ dependencies = [ [[package]] name = "napi-build" -version = "2.0.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "882a73d9ef23e8dc2ebbffb6a6ae2ef467c0f18ac10711e4cc59c5485d41df0e" +checksum = "c9c366d2c8c60b86fa632df75f745509b52f9128f91a6bad4c796e44abb505e1" [[package]] name = "napi-derive" -version = "2.12.2" +version = "2.16.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6bd0beb0ac7e8576bc92d293361a461b42eaf41740bbdec7e0cbf64d8dc89f7" +checksum = "7cbe2585d8ac223f7d34f13701434b9d5f4eb9c332cccce8dee57ea18ab8ab0c" dependencies = [ + "cfg-if", "convert_case", "napi-derive-backend", "proc-macro2", "quote", - "syn", + "syn 2.0.117", ] [[package]] name = "napi-derive-backend" -version = "1.0.48" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c713ff9ff5baa6d6ad9aedc46fad73c91e2f16ebe5ece0f41983d4e70e020c7c" +checksum = "1639aaa9eeb76e91c6ae66da8ce3e89e921cd3885e99ec85f4abacae72fc91bf" dependencies = [ "convert_case", "once_cell", @@ -255,23 +303,23 @@ dependencies = [ "quote", "regex", "semver", - "syn", + "syn 2.0.117", ] [[package]] name = "napi-sys" -version = "2.2.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "166b5ef52a3ab5575047a9fe8d4a030cdd0f63c96f071cd6907674453b07bae3" +checksum = "427802e8ec3a734331fec1035594a210ce1ff4dc5bc1950530920ab717964ea3" dependencies = [ "libloading", ] [[package]] name = "once_cell" -version = "1.17.1" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] name = "outref" @@ -316,11 +364,17 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "pin-project-lite" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" + [[package]] name = "proc-macro2" -version = "1.0.39" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] @@ -342,23 +396,41 @@ checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] name = "quote" -version = "1.0.18" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "regex" -version = "1.7.1" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" dependencies = [ "aho-corasick", "memchr", @@ -367,49 +439,53 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.6.28" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rend" -version = "0.3.6" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79af64b4b6362ffba04eef3a4e10829718a4896dac19daa741851c86781edf95" +checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" dependencies = [ "bytecheck", ] [[package]] name = "rkyv" -version = "0.7.38" +version = "0.7.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "517a3034eb2b1499714e9d1e49b2367ad567e07639b69776d35e259d9c27cca6" +checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" dependencies = [ + "bitvec", "bytecheck", + "bytes", "hashbrown", "ptr_meta", "rend", "rkyv_derive", "seahash", + "tinyvec", + "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.38" +version = "0.7.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505c209ee04111a006431abf39696e640838364d67a107c559ababaf6fd8c9dd" +checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] -name = "ryu" -version = "1.0.10" +name = "rustversion" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "seahash" @@ -419,78 +495,150 @@ checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" [[package]] name = "semver" -version = "1.0.17" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "serde" -version = "1.0.137" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.137" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 2.0.117", ] [[package]] name = "serde_json" -version = "1.0.82" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82c2c1fdcd807d1098552c5b9a36e425e42e9fbd7c6a37a8425f390f781f7fa7" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ "itoa", - "ryu", + "memchr", "serde", + "serde_core", + "zmij", ] +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + [[package]] name = "simd-abstraction" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49d3f0728c33eb35102d2489a6a13dbbb510b07864b854e961b9e4b9cd011c61" +checksum = "9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987" dependencies = [ "outref", ] +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + [[package]] name = "syn" -version = "1.0.95" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbaf6116ab8924f39d52792136fb74fd60a80194cf1b1c6ffa6453eef1c3f942" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tinyvec" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + [[package]] name = "unicode-ident" -version = "1.0.0" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-segmentation" -version = "1.10.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" + +[[package]] +name = "uuid" +version = "1.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd74a9687298c6858e9b88ec8935ec45d22e8fd5e6394fa1bd4e99a87789c76" +dependencies = [ + "js-sys", + "wasm-bindgen", +] [[package]] name = "version_check" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "vlq" @@ -500,42 +648,30 @@ checksum = "65dd7eed29412da847b0f78bcec0ac98588165988a8cfe41d4ea1d429f8ccfff" [[package]] name = "wasi" -version = "0.10.2+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasm-bindgen" -version = "0.2.80" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad" +checksum = "49ace1d07c165b0864824eee619580c4689389afa9dc9ed3a4c75040d82e6790" dependencies = [ "cfg-if", + "once_cell", + "rustversion", "serde", "serde_json", "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.80" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4" -dependencies = [ - "bumpalo", - "lazy_static", - "log", - "proc-macro2", - "quote", - "syn", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.80" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5" +checksum = "8e68e6f4afd367a562002c05637acb8578ff2dea1943df76afb9e83d177c8578" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -543,41 +679,43 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.80" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b" +checksum = "d95a9ec35c64b2a7cb35d3fead40c4238d0940c86d107136999567a4703259f2" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn", - "wasm-bindgen-backend", + "syn 2.0.117", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.80" +version = "0.2.121" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744" +checksum = "c4e0100b01e9f0d03189a92b96772a1fb998639d981193d7dbab487302513441" +dependencies = [ + "unicode-ident", +] [[package]] -name = "winapi" -version = "0.3.9" +name = "windows-link" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" +name = "wyz" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] [[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" +name = "zmij" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" From 761c8f75ffbfe96c4b9f7ddad14d2848210f06ef Mon Sep 17 00:00:00 2001 From: intellild Date: Mon, 18 May 2026 08:38:16 +0000 Subject: [PATCH 2/4] Upgrade rkyv to 0.8.16 --- Cargo.lock | 178 +++++++++--------------- parcel_sourcemap/Cargo.toml | 2 +- parcel_sourcemap/src/lib.rs | 22 ++- parcel_sourcemap/src/sourcemap_error.rs | 7 +- parcel_sourcemap_node/Cargo.toml | 2 +- parcel_sourcemap_node/src/lib.rs | 2 +- parcel_sourcemap_wasm/Cargo.toml | 2 +- parcel_sourcemap_wasm/src/lib.rs | 2 +- 8 files changed, 81 insertions(+), 136 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e2a08c..6cc89fb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,17 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom", - "once_cell", - "version_check", -] - [[package]] name = "aho-corasick" version = "1.1.4" @@ -37,18 +26,6 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4512299f36f043ab09a583e57bceb5a5aab7a73db1805848e8fef3c9e8c78b3" -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - [[package]] name = "bumpalo" version = "3.20.2" @@ -57,24 +34,25 @@ checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" [[package]] name = "bytecheck" -version = "0.6.12" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" +checksum = "0caa33a2c0edca0419d15ac723dff03f1956f7978329b1e3b5fdaaaed9d3ca8b" dependencies = [ "bytecheck_derive", "ptr_meta", + "rancor", "simdutf8", ] [[package]] name = "bytecheck_derive" -version = "0.6.12" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" +checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn", ] [[package]] @@ -115,7 +93,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -127,6 +105,12 @@ dependencies = [ "matches", ] +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + [[package]] name = "find-msvc-tools" version = "0.1.9" @@ -139,12 +123,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - [[package]] name = "futures-core" version = "0.3.32" @@ -170,23 +148,19 @@ dependencies = [ ] [[package]] -name = "getrandom" -version = "0.2.17" +name = "hashbrown" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] -name = "hashbrown" -version = "0.12.3" +name = "indexmap" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ - "ahash", + "equivalent", + "hashbrown", ] [[package]] @@ -256,6 +230,26 @@ version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" +[[package]] +name = "munge" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e17401f259eba956ca16491461b6e8f72913a0a114e39736ce404410f915a0c" +dependencies = [ + "munge_macro", +] + +[[package]] +name = "munge_macro" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "napi" version = "2.16.17" @@ -288,7 +282,7 @@ dependencies = [ "napi-derive-backend", "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -303,7 +297,7 @@ dependencies = [ "quote", "regex", "semver", - "syn 2.0.117", + "syn", ] [[package]] @@ -381,22 +375,22 @@ dependencies = [ [[package]] name = "ptr_meta" -version = "0.1.4" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" +checksum = "0b9a0cf95a1196af61d4f1cbdab967179516d9a4a4312af1f31948f8f6224a79" dependencies = [ "ptr_meta_derive", ] [[package]] name = "ptr_meta_derive" -version = "0.1.4" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" +checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn", ] [[package]] @@ -409,10 +403,13 @@ dependencies = [ ] [[package]] -name = "radium" -version = "0.7.0" +name = "rancor" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" +checksum = "a063ea72381527c2a0561da9c80000ef822bdd7c3241b1cc1b12100e3df081ee" +dependencies = [ + "ptr_meta", +] [[package]] name = "regex" @@ -445,40 +442,41 @@ checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rend" -version = "0.4.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +checksum = "cadadef317c2f20755a64d7fdc48f9e7178ee6b0e1f7fce33fa60f1d68a276e6" dependencies = [ "bytecheck", ] [[package]] name = "rkyv" -version = "0.7.46" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" +checksum = "73389e0c99e664f919275ab5b5b0471391fe9a8de61e1dff9b1eaf56a90f16e3" dependencies = [ - "bitvec", "bytecheck", "bytes", "hashbrown", + "indexmap", + "munge", "ptr_meta", + "rancor", "rend", "rkyv_derive", - "seahash", "tinyvec", "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.46" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" +checksum = "5d2ed0b54125315fb36bd021e82d314d1c126548f871634b483f46b31d13cac6" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn", ] [[package]] @@ -487,12 +485,6 @@ version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - [[package]] name = "semver" version = "1.0.28" @@ -526,7 +518,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.117", + "syn", ] [[package]] @@ -569,17 +561,6 @@ version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - [[package]] name = "syn" version = "2.0.117" @@ -591,12 +572,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - [[package]] name = "tinyvec" version = "1.11.0" @@ -634,24 +609,12 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - [[package]] name = "vlq" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65dd7eed29412da847b0f78bcec0ac98588165988a8cfe41d4ea1d429f8ccfff" -[[package]] -name = "wasi" -version = "0.11.1+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" - [[package]] name = "wasm-bindgen" version = "0.2.121" @@ -686,7 +649,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.117", + "syn", "wasm-bindgen-shared", ] @@ -705,15 +668,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - [[package]] name = "zmij" version = "1.0.21" diff --git a/parcel_sourcemap/Cargo.toml b/parcel_sourcemap/Cargo.toml index b7edaf1..4d8a770 100644 --- a/parcel_sourcemap/Cargo.toml +++ b/parcel_sourcemap/Cargo.toml @@ -10,7 +10,7 @@ repository = "https://github.com/parcel-bundler/source-map" [dependencies] "vlq" = "0.5.1" -rkyv = "0.7.38" +rkyv = "0.8.16" serde = {version = "1", features = ["derive"], optional = true} serde_json = { version = "1", optional = true } base64-simd = { version = "0.7", optional = true } diff --git a/parcel_sourcemap/src/lib.rs b/parcel_sourcemap/src/lib.rs index 6dc4f7a..ad3a6f9 100644 --- a/parcel_sourcemap/src/lib.rs +++ b/parcel_sourcemap/src/lib.rs @@ -17,12 +17,11 @@ use std::borrow::Cow; use std::io; use rkyv::{ - archived_root, - ser::{ - serializers::{AlignedSerializer, AllocScratch, CompositeSerializer}, - Serializer, - }, - AlignedVec, Archive, Deserialize, Infallible, Serialize, + from_bytes_unchecked, + rancor::Error as RkyvError, + to_bytes, + util::AlignedVec, + Archive, Deserialize, Serialize, }; use vlq_utils::{is_mapping_separator, read_relative_vlq}; @@ -342,20 +341,15 @@ impl SourceMap { // Write the sourcemap instance to a buffer pub fn to_buffer(&self, output: &mut AlignedVec) -> Result<(), SourceMapError> { output.clear(); - let mut serializer = CompositeSerializer::new( - AlignedSerializer::new(output), - AllocScratch::default(), - Infallible, - ); - serializer.serialize_value(&self.inner)?; + let bytes = to_bytes::(&self.inner)?; + output.extend_from_slice(&bytes); Ok(()) } // Create a sourcemap instance from a buffer pub fn from_buffer(project_root: &str, buf: &[u8]) -> Result { - let archived = unsafe { archived_root::(buf) }; // TODO: see if we can use the archived data directly rather than deserializing at all... - let inner = archived.deserialize(&mut Infallible)?; + let inner = unsafe { from_bytes_unchecked::(buf)? }; Ok(SourceMap { project_root: String::from(project_root), inner, diff --git a/parcel_sourcemap/src/sourcemap_error.rs b/parcel_sourcemap/src/sourcemap_error.rs index b1ef653..52ca995 100644 --- a/parcel_sourcemap/src/sourcemap_error.rs +++ b/parcel_sourcemap/src/sourcemap_error.rs @@ -1,4 +1,3 @@ -use rkyv::ser::serializers::{AllocScratchError, CompositeSerializerError}; use std::{convert::Infallible, io}; // Errors that can occur during processing/modifying source map @@ -161,11 +160,9 @@ impl From for SourceMapError { } } -impl From> for SourceMapError { +impl From for SourceMapError { #[inline] - fn from( - _err: CompositeSerializerError, - ) -> SourceMapError { + fn from(_err: rkyv::rancor::Error) -> SourceMapError { SourceMapError::new(SourceMapErrorType::BufferError) } } diff --git a/parcel_sourcemap_node/Cargo.toml b/parcel_sourcemap_node/Cargo.toml index 411d602..eacb8d9 100644 --- a/parcel_sourcemap_node/Cargo.toml +++ b/parcel_sourcemap_node/Cargo.toml @@ -13,7 +13,7 @@ napi-derive = "2.12.2" parcel_sourcemap = {path = "../parcel_sourcemap"} serde = "1" serde_json = "1" -rkyv = "0.7.38" +rkyv = "0.8.16" [target.'cfg(target_os = "macos")'.dependencies] jemallocator = {version = "0.3.2", features = ["disable_initial_exec_tls"]} diff --git a/parcel_sourcemap_node/src/lib.rs b/parcel_sourcemap_node/src/lib.rs index 1b22cd2..4f11fbb 100644 --- a/parcel_sourcemap_node/src/lib.rs +++ b/parcel_sourcemap_node/src/lib.rs @@ -4,7 +4,7 @@ use napi::{ }; use napi_derive::napi; use parcel_sourcemap::{Mapping, OriginalLocation, SourceMap, SourceMapError}; -use rkyv::AlignedVec; +use rkyv::util::AlignedVec; #[cfg(target_os = "macos")] #[global_allocator] diff --git a/parcel_sourcemap_wasm/Cargo.toml b/parcel_sourcemap_wasm/Cargo.toml index 5be74eb..aff916e 100644 --- a/parcel_sourcemap_wasm/Cargo.toml +++ b/parcel_sourcemap_wasm/Cargo.toml @@ -12,4 +12,4 @@ parcel_sourcemap = { path = "../parcel_sourcemap" } serde = { version = "1.0", features = ["derive"] } wasm-bindgen = { version = "0.2", features = ["serde-serialize"] } js-sys = "0.3" -rkyv = "0.7.38" +rkyv = "0.8.16" diff --git a/parcel_sourcemap_wasm/src/lib.rs b/parcel_sourcemap_wasm/src/lib.rs index bc5818f..9127242 100644 --- a/parcel_sourcemap_wasm/src/lib.rs +++ b/parcel_sourcemap_wasm/src/lib.rs @@ -3,7 +3,7 @@ use js_sys::Uint8Array; use parcel_sourcemap::{Mapping, OriginalLocation, SourceMap as NativeSourceMap, SourceMapError}; -use rkyv::AlignedVec; +use rkyv::util::AlignedVec; use serde::Serialize; use std::convert::TryFrom; use wasm_bindgen::prelude::*; From 445ff171e59d47e0d276ee262556cee6209e771a Mon Sep 17 00:00:00 2001 From: intellild Date: Mon, 18 May 2026 09:15:47 +0000 Subject: [PATCH 3/4] Fix clippy warnings --- Cargo.lock | 12 +++++++ Cargo.toml | 1 + parcel_sourcemap/src/lib.rs | 49 ++++++++++++---------------- parcel_sourcemap/src/mapping_line.rs | 19 +++-------- parcel_sourcemap/src/utils.rs | 11 +++---- parcel_sourcemap_wasm/Cargo.toml | 1 + parcel_sourcemap_wasm/src/lib.rs | 19 ++++++----- 7 files changed, 55 insertions(+), 57 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6cc89fb..c58ce04 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -355,6 +355,7 @@ dependencies = [ "parcel_sourcemap", "rkyv", "serde", + "serde-wasm-bindgen", "wasm-bindgen", ] @@ -501,6 +502,17 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-wasm-bindgen" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + [[package]] name = "serde_core" version = "1.0.228" diff --git a/Cargo.toml b/Cargo.toml index 11bfb3e..c9f8064 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,6 @@ [workspace] members = [ "parcel_sourcemap", "parcel_sourcemap_node", "parcel_sourcemap_wasm" ] +resolver = "2" [profile.release] lto = true diff --git a/parcel_sourcemap/src/lib.rs b/parcel_sourcemap/src/lib.rs index ad3a6f9..8129f2f 100644 --- a/parcel_sourcemap/src/lib.rs +++ b/parcel_sourcemap/src/lib.rs @@ -17,11 +17,8 @@ use std::borrow::Cow; use std::io; use rkyv::{ - from_bytes_unchecked, - rancor::Error as RkyvError, - to_bytes, - util::AlignedVec, - Archive, Deserialize, Serialize, + from_bytes_unchecked, rancor::Error as RkyvError, to_bytes, util::AlignedVec, Archive, + Deserialize, Serialize, }; use vlq_utils::{is_mapping_separator, read_relative_vlq}; @@ -264,18 +261,18 @@ impl SourceMap { } pub fn add_name(&mut self, name: &str) -> u32 { - return match self.inner.names.iter().position(|s| name.eq(s)) { + match self.inner.names.iter().position(|s| name.eq(s)) { Some(i) => i as u32, None => { self.inner.names.push(String::from(name)); (self.inner.names.len() - 1) as u32 } - }; + } } pub fn add_names>(&mut self, names: Vec) -> Vec { self.inner.names.reserve(names.len()); - return names.iter().map(|n| self.add_name(n.as_ref())).collect(); + names.iter().map(|n| self.add_name(n.as_ref())).collect() } pub fn get_name_index(&self, name: &str) -> Option { @@ -391,11 +388,9 @@ impl SourceMap { if generated_line >= 0 { let mut line = mapping_line; for mapping in line.mappings.iter_mut() { - match &mut mapping.original { - Some(original_mapping_location) => { - original_mapping_location.source = match source_indexes - .get(original_mapping_location.source as usize) - { + if let Some(original_mapping_location) = &mut mapping.original { + original_mapping_location.source = + match source_indexes.get(original_mapping_location.source as usize) { Some(new_source_index) => *new_source_index, None => { return Err(SourceMapError::new( @@ -404,19 +399,17 @@ impl SourceMap { } }; - original_mapping_location.name = match original_mapping_location.name { - Some(name_index) => match names_indexes.get(name_index as usize) { - Some(new_name_index) => Some(*new_name_index), - None => { - return Err(SourceMapError::new( - SourceMapErrorType::NameOutOfRange, - )); - } - }, - None => None, - }; - } - None => {} + original_mapping_location.name = match original_mapping_location.name { + Some(name_index) => match names_indexes.get(name_index as usize) { + Some(new_name_index) => Some(*new_name_index), + None => { + return Err(SourceMapError::new( + SourceMapErrorType::NameOutOfRange, + )); + } + }, + None => None, + }; } } @@ -551,7 +544,7 @@ impl SourceMap { // Read source, original line, and original column if the // mapping has them. - let original = if input.peek().cloned().map_or(true, is_mapping_separator) { + let original = if input.peek().cloned().is_none_or(is_mapping_separator) { None } else { read_relative_vlq(&mut source, &mut input)?; @@ -568,7 +561,7 @@ impl SourceMap { )); } }, - if input.peek().cloned().map_or(true, is_mapping_separator) { + if input.peek().cloned().is_none_or(is_mapping_separator) { None } else { read_relative_vlq(&mut name, &mut input)?; diff --git a/parcel_sourcemap/src/mapping_line.rs b/parcel_sourcemap/src/mapping_line.rs index 35ea25c..a8be797 100644 --- a/parcel_sourcemap/src/mapping_line.rs +++ b/parcel_sourcemap/src/mapping_line.rs @@ -39,8 +39,7 @@ impl MappingLine { pub fn ensure_sorted(&mut self) { if !self.is_sorted { - self.mappings - .sort_by(|a, b| a.generated_column.cmp(&b.generated_column)); + self.mappings.sort_by_key(|a| a.generated_column); self.is_sorted = true } } @@ -86,23 +85,15 @@ impl MappingLine { } self.ensure_sorted(); - let mut index = match self + let mut index = self .mappings - .binary_search_by(|m| m.generated_column.cmp(&generated_column)) - { - Ok(index) => index, - Err(index) => index, - }; + .binary_search_by(|m| m.generated_column.cmp(&generated_column)).unwrap_or_else(|index| index); if generated_column_offset < 0 { let u_start_column = start_column as u32; - let start_index = match self + let start_index = self .mappings - .binary_search_by(|m| m.generated_column.cmp(&u_start_column)) - { - Ok(index) => index, - Err(index) => index, - }; + .binary_search_by(|m| m.generated_column.cmp(&u_start_column)).unwrap_or_else(|index| index); self.mappings.drain(start_index..index); index = start_index; diff --git a/parcel_sourcemap/src/utils.rs b/parcel_sourcemap/src/utils.rs index 5f59a59..c95c2b7 100644 --- a/parcel_sourcemap/src/utils.rs +++ b/parcel_sourcemap/src/utils.rs @@ -1,6 +1,5 @@ // Based on https://github.com/getsentry/rust-sourcemap/blob/master/src/utils.rs use std::borrow::Cow; -use std::iter::repeat; pub fn is_abs_path(s: &str) -> bool { if s.starts_with('/') || s.starts_with('\\') { @@ -47,10 +46,9 @@ fn get_common_prefix_len<'a>(items: &'a [Cow<'a, [&'a str]>]) -> usize { } fn chunk_path(p: &str) -> Vec<&str> { - return p - .split(&['/', '\\'][..]) + p.split(&['/', '\\'][..]) .filter(|x| !x.is_empty() && *x != ".") - .collect(); + .collect() } // Helper function to calculate the path from a base file to a target file. @@ -67,7 +65,7 @@ pub fn make_relative_path(base: &str, target: &str) -> String { if target_str.contains(':') { String::from(target_str) } else { - return chunk_path(target_str).join("/"); + chunk_path(target_str).join("/") } } else { let target_path: Vec<&str> = chunk_path(target_str); @@ -77,7 +75,8 @@ pub fn make_relative_path(base: &str, target: &str) -> String { Cow::Borrowed(target_path.as_slice()), ]; let prefix_len = get_common_prefix_len(&items); - let mut rel_list: Vec<&str> = repeat("..").take(base_dir.len() - prefix_len).collect(); + let mut rel_list: Vec<&str> = + std::iter::repeat_n("..", base_dir.len() - prefix_len).collect(); rel_list.extend_from_slice(&target_path[prefix_len..]); rel_list.join("/") } diff --git a/parcel_sourcemap_wasm/Cargo.toml b/parcel_sourcemap_wasm/Cargo.toml index aff916e..1d4c925 100644 --- a/parcel_sourcemap_wasm/Cargo.toml +++ b/parcel_sourcemap_wasm/Cargo.toml @@ -13,3 +13,4 @@ serde = { version = "1.0", features = ["derive"] } wasm-bindgen = { version = "0.2", features = ["serde-serialize"] } js-sys = "0.3" rkyv = "0.8.16" +serde-wasm-bindgen = "0.6.5" diff --git a/parcel_sourcemap_wasm/src/lib.rs b/parcel_sourcemap_wasm/src/lib.rs index 9127242..1d03e27 100644 --- a/parcel_sourcemap_wasm/src/lib.rs +++ b/parcel_sourcemap_wasm/src/lib.rs @@ -5,6 +5,7 @@ use js_sys::Uint8Array; use parcel_sourcemap::{Mapping, OriginalLocation, SourceMap as NativeSourceMap, SourceMapError}; use rkyv::util::AlignedVec; use serde::Serialize; +use serde_wasm_bindgen::{from_value, to_value}; use std::convert::TryFrom; use wasm_bindgen::prelude::*; @@ -90,9 +91,9 @@ impl SourceMap { line_offset: i32, column_offset: i32, ) -> Result { - let sources_string: Vec = sources.into_serde().unwrap(); - let sources_content_string: Vec = sources_content.into_serde().unwrap(); - let names_string: Vec = names.into_serde().unwrap(); + let sources_string: Vec = from_value(sources).unwrap(); + let sources_content_string: Vec = from_value(sources_content).unwrap(); + let names_string: Vec = from_value(names).unwrap(); self.map .add_vlq_map( vlq_mappings.as_bytes(), @@ -117,7 +118,7 @@ impl SourceMap { sourcesContent: self.map.get_sources_content().clone(), names: self.map.get_names().clone(), }; - Ok(JsValue::from_serde(&result).unwrap()) + Ok(to_value(&result).unwrap()) } pub fn getMappings(&self) -> Result { @@ -136,19 +137,19 @@ impl SourceMap { source: mapping.original.map(|p| p.source), }); } - Ok(JsValue::from_serde(&mappings).unwrap()) + Ok(to_value(&mappings).unwrap()) } pub fn getSources(&self) -> Result { - Ok(JsValue::from_serde(&self.map.get_sources()).unwrap()) + Ok(to_value(&self.map.get_sources()).unwrap()) } pub fn getSourcesContent(&self) -> Result { - Ok(JsValue::from_serde(&self.map.get_sources_content()).unwrap()) + Ok(to_value(&self.map.get_sources_content()).unwrap()) } pub fn getNames(&self) -> Result { - Ok(JsValue::from_serde(&self.map.get_names()).unwrap()) + Ok(to_value(&self.map.get_names()).unwrap()) } pub fn addName(&mut self, name: &str) -> u32 { @@ -299,7 +300,7 @@ impl SourceMap { .map .find_closest_mapping(generated_line, generated_column) { - Some(mapping) => JsValue::from_serde(&MappingResult::from(&mapping)).unwrap(), + Some(mapping) => to_value(&MappingResult::from(&mapping)).unwrap(), None => JsValue::NULL, } } From a5865301b1ccbd6ae1baa8204f750d1cc6ac3860 Mon Sep 17 00:00:00 2001 From: intellild Date: Mon, 18 May 2026 09:24:37 +0000 Subject: [PATCH 4/4] Update source map JSON dependencies --- Cargo.lock | 39 +++++++++++++------------------------ parcel_sourcemap/Cargo.toml | 4 ++-- parcel_sourcemap/src/lib.rs | 2 +- 3 files changed, 17 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c58ce04..4931d63 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -13,11 +13,12 @@ dependencies = [ [[package]] name = "base64-simd" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "781dd20c3aff0bd194fe7d2a977dd92f21c173891f3a03b677359e5fa457e5d5" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" dependencies = [ - "simd-abstraction", + "outref", + "vsimd", ] [[package]] @@ -98,12 +99,9 @@ dependencies = [ [[package]] name = "data-url" -version = "0.1.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a30bfce702bcfa94e906ef82421f2c0e61c076ad76030c16ee5d2e9a32fe193" -dependencies = [ - "matches", -] +checksum = "be1e0bca6c3637f992fc1cc7cbc52a78c1ef6db076dbf1059c4323d6a2048376" [[package]] name = "equivalent" @@ -218,12 +216,6 @@ dependencies = [ "windows-link", ] -[[package]] -name = "matches" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" - [[package]] name = "memchr" version = "2.8.0" @@ -317,9 +309,9 @@ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" [[package]] name = "outref" -version = "0.1.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4" +checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" [[package]] name = "parcel_sourcemap" @@ -552,15 +544,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" -[[package]] -name = "simd-abstraction" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987" -dependencies = [ - "outref", -] - [[package]] name = "simdutf8" version = "0.1.5" @@ -627,6 +610,12 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "65dd7eed29412da847b0f78bcec0ac98588165988a8cfe41d4ea1d429f8ccfff" +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + [[package]] name = "wasm-bindgen" version = "0.2.121" diff --git a/parcel_sourcemap/Cargo.toml b/parcel_sourcemap/Cargo.toml index 4d8a770..de72b09 100644 --- a/parcel_sourcemap/Cargo.toml +++ b/parcel_sourcemap/Cargo.toml @@ -13,8 +13,8 @@ repository = "https://github.com/parcel-bundler/source-map" rkyv = "0.8.16" serde = {version = "1", features = ["derive"], optional = true} serde_json = { version = "1", optional = true } -base64-simd = { version = "0.7", optional = true } -data-url = { version = "0.1.1", optional = true } +base64-simd = { version = "0.8", optional = true } +data-url = { version = "0.3.2", optional = true } [features] json = ["serde", "serde_json", "base64-simd", "data-url"] diff --git a/parcel_sourcemap/src/lib.rs b/parcel_sourcemap/src/lib.rs index 8129f2f..2a02ce1 100644 --- a/parcel_sourcemap/src/lib.rs +++ b/parcel_sourcemap/src/lib.rs @@ -744,7 +744,7 @@ impl SourceMap { #[cfg(feature = "json")] pub fn to_data_url(&mut self, source_root: Option<&str>) -> Result { let buf = self.to_json(source_root)?; - let b64 = base64_simd::Base64::STANDARD.encode_to_boxed_str(buf.as_bytes()); + let b64 = base64_simd::STANDARD.encode_to_string(buf.as_bytes()); Ok(format!( "data:application/json;charset=utf-8;base64,{}", b64