diff --git a/Cargo.lock b/Cargo.lock index 4fdc26be77..c6f1ef9a88 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -52,18 +52,18 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.24.2" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" dependencies = [ - "gimli 0.31.1", + "gimli 0.32.3", ] [[package]] name = "adler2" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "ahash" @@ -71,8 +71,8 @@ version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ - "cfg-if 1.0.0", - "getrandom 0.3.3", + "cfg-if 1.0.4", + "getrandom 0.3.4", "once_cell", "version_check", "zerocopy", @@ -80,9 +80,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -128,9 +128,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.18" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -143,44 +143,44 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.10" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.6" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.2" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "anstyle-wincon" -version = "3.0.7" +version = "3.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", - "once_cell", - "windows-sys 0.59.0", + "once_cell_polyfill", + "windows-sys 0.61.2", ] [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "aquamarine" @@ -234,27 +234,25 @@ checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] name = "async-compression" -version = "0.4.23" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b37fc50485c4f3f736a4fb14199f6d5f5ba008d7f28fe710306c92780f004c07" +checksum = "e79b3f8a79cccc2898f31920fc69f304859b3bd567490f75ebf51ae1c792a9ac" dependencies = [ - "brotli", - "flate2", - "futures-core", - "memchr", + "compression-codecs", + "compression-core", "pin-project-lite", "tokio", ] [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -286,23 +284,23 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.4.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" [[package]] name = "backtrace" -version = "0.3.74" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" dependencies = [ "addr2line", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", "miniz_oxide", - "object 0.36.7", + "object 0.37.3", "rustc-demangle", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -329,17 +327,11 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" -[[package]] -name = "base64" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" - [[package]] name = "base64ct" -version = "1.7.3" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] name = "bincode" @@ -356,7 +348,7 @@ version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", "cexpr", "clang-sys", "itertools 0.13.0", @@ -366,8 +358,8 @@ dependencies = [ "quote", "regex", "rustc-hash", - "shlex", - "syn 2.0.101", + "shlex 1.3.0", + "syn 2.0.117", ] [[package]] @@ -393,9 +385,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.1" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +checksum = "b4388bee8683e3d04af747c73422af53102d2bd24d9eadb6cbc100baef4b43f8" [[package]] name = "blake2" @@ -437,15 +429,16 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.2" +version = "1.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "0aa83c34e62843d924f905e0f5c866eb1dd6545fc4d719e803d9ba6030371fce" dependencies = [ "arrayref", "arrayvec 0.7.6", "cc", - "cfg-if 1.0.0", - "constant_time_eq 0.3.1", + "cfg-if 1.0.4", + "constant_time_eq 0.4.2", + "cpufeatures 0.3.0", ] [[package]] @@ -470,32 +463,33 @@ dependencies = [ [[package]] name = "borsh" -version = "1.5.7" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad8646f98db542e39fc66e68a20b2144f6a732636df7c2354e74645faaa433ce" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" dependencies = [ "borsh-derive", + "bytes", "cfg_aliases", ] [[package]] name = "borsh-derive" -version = "1.5.7" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdd1d3c0c2f5833f22386f252fe8ed005c7f59fdcddeef025c01b4c3b9fd9ac3" +checksum = "bfcfdc083699101d5a7965e49925975f2f55060f94f9a05e7187be95d530ca59" dependencies = [ "once_cell", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "brotli" -version = "8.0.1" +version = "8.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9991eea70ea4f293524138648e41ee89b0b2b12ddef3b255effa43c8056e0e0d" +checksum = "8119e4516436f5708bbc474a9d395bf12f1b5395e93a92a56e647ac3388c8610" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -504,9 +498,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "5.0.0" +version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" +checksum = "5962523e1b92ce1b5e793d9169b9943eece10d39f62550bc04bb605d75b94924" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -514,9 +508,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" [[package]] name = "burn" @@ -539,12 +533,12 @@ dependencies = [ [[package]] name = "bytecheck" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" +checksum = "0caa33a2c0edca0419d15ac723dff03f1956f7978329b1e3b5fdaaaed9d3ca8b" dependencies = [ - "bytecheck_derive 0.8.1", - "ptr_meta 0.3.0", + "bytecheck_derive 0.8.2", + "ptr_meta 0.3.1", "rancor", "simdutf8", ] @@ -562,20 +556,20 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" +checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "bytemuck" -version = "1.23.0" +version = "1.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9134a6ef01ce4b366b50689c94f82c14bc72bc5d0386829828a2e2752ef7958c" +checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" [[package]] name = "byteorder" @@ -607,11 +601,11 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.9" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -631,7 +625,7 @@ dependencies = [ "cargo_metadata 0.19.2", "casper-contract-sdk", "casper-contract-sdk-sys", - "clap 4.5.38", + "clap 4.6.1", "clap-cargo", "crossterm", "include_dir", @@ -639,7 +633,7 @@ dependencies = [ "once_cell", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", "wabt", ] @@ -677,7 +671,7 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -690,12 +684,12 @@ dependencies = [ "num-derive", "num-traits", "once_cell", - "rand", + "rand 0.8.6", "serde", "serde_json", "serde_test", - "strum 0.27.1", - "strum_macros 0.27.1", + "strum 0.27.2", + "strum_macros 0.27.2", "thiserror 1.0.69", "tokio-util 0.6.10", "tracing", @@ -718,12 +712,12 @@ dependencies = [ "blake2-rfc", "casper-contract-sdk-sys", "casper-executor-wasm-common", - "darling", + "darling 0.20.11", "paste", "proc-macro2", "quote", "static_assertions", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -731,23 +725,23 @@ name = "casper-contract-sdk" version = "0.1.3" dependencies = [ "base16", - "bitflags 2.9.1", + "bitflags 2.13.0", "bnum", "borsh", "bytes", "casper-contract-macros", "casper-contract-sdk-sys", "casper-executor-wasm-common", - "cfg-if 1.0.0", - "clap 4.5.38", + "cfg-if 1.0.4", + "clap 4.6.1", "const-fnv1a-hash", "impl-trait-for-tuples", "linkme", "once_cell", - "rand", + "rand 0.8.6", "serde", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -757,10 +751,10 @@ dependencies = [ "borsh", "casper-contract-sdk", "codegen", - "indexmap 2.9.0", + "indexmap 2.14.0", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.117", "tempfile", "trybuild", ] @@ -785,7 +779,7 @@ dependencies = [ "num-rational", "num-traits", "once_cell", - "rand", + "rand 0.8.6", "serde", "tempfile", "toml 0.5.11", @@ -818,7 +812,7 @@ dependencies = [ "num-rational", "num-traits", "once_cell", - "rand", + "rand 0.8.6", "regex", "serde", "serde_json", @@ -843,7 +837,7 @@ dependencies = [ "casper-wasm", "casper-wasm-utils", "casper-wasmi", - "clap 4.5.38", + "clap 4.6.1", "criterion", "datasize", "either", @@ -861,8 +855,8 @@ dependencies = [ "num_cpus", "once_cell", "proptest", - "rand", - "rand_chacha", + "rand 0.8.6", + "rand_chacha 0.3.1", "schemars", "serde", "serde_bytes", @@ -871,7 +865,7 @@ dependencies = [ "strum 0.24.1", "tempfile", "thiserror 1.0.69", - "toml 0.8.22", + "toml 0.8.23", "tracing", "uint", "walrus", @@ -900,7 +894,7 @@ dependencies = [ "parking_lot", "serde_json", "tempfile", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -908,7 +902,7 @@ dependencies = [ name = "casper-executor-wasm-common" version = "0.1.3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", "blake2 0.10.6", "borsh", "casper-contract-sdk-sys", @@ -917,7 +911,7 @@ dependencies = [ "num-traits", "safe-transmute", "serde", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -935,7 +929,7 @@ dependencies = [ "num-traits", "parking_lot", "safe-transmute", - "thiserror 2.0.12", + "thiserror 2.0.18", "tracing", ] @@ -949,7 +943,7 @@ dependencies = [ "casper-storage", "casper-types", "parking_lot", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -1030,9 +1024,9 @@ dependencies = [ "proptest", "proptest-derive", "quanta", - "rand", - "rand_chacha", - "rand_core", + "rand 0.8.6", + "rand_chacha 0.3.1", + "rand_core 0.6.4", "regex", "reqwest", "rmp", @@ -1044,7 +1038,7 @@ dependencies = [ "serde_bytes", "serde_json", "serde_repr", - "shlex", + "shlex 1.3.0", "signal-hook", "signature 1.6.4", "smallvec", @@ -1060,7 +1054,7 @@ dependencies = [ "tokio-serde", "tokio-stream", "tokio-util 0.6.10", - "toml 0.8.22", + "toml 0.8.23", "tower", "tracing", "tracing-futures", @@ -1094,8 +1088,8 @@ dependencies = [ "parking_lot", "pprof", "proptest", - "rand", - "rand_chacha", + "rand 0.8.6", + "rand_chacha 0.3.1", "serde", "serde_json", "tempfile", @@ -1118,7 +1112,7 @@ dependencies = [ "derive_more 0.99.20", "derp", "ed25519-dalek", - "getrandom 0.2.16", + "getrandom 0.2.17", "hex", "hex_fmt", "humantime", @@ -1136,7 +1130,7 @@ dependencies = [ "proptest", "proptest-attr-macro", "proptest-derive", - "rand", + "rand 0.8.6", "rand_pcg", "schemars", "serde", @@ -1144,7 +1138,7 @@ dependencies = [ "serde_bytes", "serde_json", "serde_test", - "strum 0.27.1", + "strum 0.27.2", "tempfile", "thiserror 1.0.69", "tracing", @@ -1158,7 +1152,7 @@ dependencies = [ name = "casper-updater" version = "0.4.0" dependencies = [ - "clap 4.5.38", + "clap 4.6.1", "once_cell", "regex", "semver", @@ -1237,11 +1231,12 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.23" +version = "1.2.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766" +checksum = "556e016178bb5662a08681bbe0f00f8e17631781a4dfc8c45e466e4b185ec27f" dependencies = [ - "shlex", + "find-msvc-tools", + "shlex 2.0.1", ] [[package]] @@ -1261,9 +1256,9 @@ checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" [[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 = "cfg_aliases" @@ -1312,7 +1307,7 @@ version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" dependencies = [ - "glob 0.3.2", + "glob 0.3.3", "libc", "libloading", ] @@ -1351,12 +1346,12 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.38" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000" +checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51" dependencies = [ "clap_builder", - "clap_derive 4.5.32", + "clap_derive 4.6.1", ] [[package]] @@ -1367,18 +1362,18 @@ checksum = "23b2ea69cefa96b848b73ad516ad1d59a195cdf9263087d977f648a818c8b43e" dependencies = [ "anstyle", "cargo_metadata 0.18.1", - "clap 4.5.38", + "clap 4.6.1", ] [[package]] name = "clap_builder" -version = "4.5.38" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", - "clap_lex 0.7.4", + "clap_lex 1.1.0", "strsim 0.11.1", "terminal_size", ] @@ -1398,14 +1393,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.32" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" +checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -1419,15 +1414,15 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.4" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "cmake" -version = "0.1.54" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" dependencies = [ "cc", ] @@ -1443,9 +1438,27 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.3" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" + +[[package]] +name = "compression-codecs" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce2548391e9c1929c21bf6aa2680af86fe4c1b33e6cea9ac1cfeec0bd11218cf" +dependencies = [ + "brotli", + "compression-core", + "flate2", + "memchr", +] + +[[package]] +name = "compression-core" +version = "0.4.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +checksum = "cc14f565cf027a105f7a44ccf9e5b424348421a1d8952a8fc9d499d313107789" [[package]] name = "const-fnv1a-hash" @@ -1467,9 +1480,9 @@ checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" [[package]] name = "constant_time_eq" -version = "0.3.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" [[package]] name = "contract-context" @@ -1527,9 +1540,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "convert_case" -version = "0.7.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" +checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" dependencies = [ "unicode-segmentation", ] @@ -1544,6 +1557,16 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" version = "0.8.7" @@ -1552,12 +1575,12 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "corosensei" -version = "0.2.1" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad067b451c08956709f8762dba86e049c124ea52858e3ab8d076ba2892caa437" +checksum = "6886a0c0f263965933c438626e7179139a62b978a33aa18281cbf0cd5a975f34" dependencies = [ "autocfg", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", "scopeguard", "windows-sys 0.59.0", @@ -1581,11 +1604,11 @@ dependencies = [ [[package]] name = "cpp_demangle" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96e58d342ad113c2b878f16d5d034c03be492ae460cdbc02b7f0f2284d310c7d" +checksum = "f2bb79cb74d735044c972aae58ed0aaa9a837e85b01106a54c39e42e97f62253" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", ] [[package]] @@ -1597,13 +1620,22 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "crc32fast" -version = "1.4.2" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", ] [[package]] @@ -1669,7 +1701,7 @@ dependencies = [ "anes", "cast", "ciborium", - "clap 4.5.38", + "clap 4.6.1", "criterion-plot", "is-terminal", "itertools 0.10.5", @@ -1736,11 +1768,11 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", "crossterm_winapi", - "derive_more 2.0.1", + "derive_more 2.1.1", "document-features", - "mio 1.0.3", + "mio 1.2.1", "parking_lot", "rustix", "signal-hook", @@ -1759,9 +1791,9 @@ dependencies = [ [[package]] name = "crunchy" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] name = "crypto-bigint" @@ -1770,7 +1802,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -1811,8 +1843,8 @@ version = "4.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ - "cfg-if 1.0.0", - "cpufeatures", + "cfg-if 1.0.4", + "cpufeatures 0.2.17", "curve25519-dalek-derive", "digest 0.10.7", "fiat-crypto", @@ -1829,7 +1861,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -1838,8 +1870,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core 0.21.3", + "darling_macro 0.21.3", ] [[package]] @@ -1853,7 +1895,20 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.101", + "syn 2.0.117", +] + +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "syn 2.0.117", ] [[package]] @@ -1862,18 +1917,29 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "darling_macro" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +dependencies = [ + "darling_core 0.21.3", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "dashmap" -version = "6.1.0" +version = "6.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" +checksum = "e6361d5c062261c78a176addb82d4c821ae42bed6089de0e12603cd25de2059c" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "crossbeam-utils", "hashbrown 0.14.5", "lock_api", @@ -1883,9 +1949,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.9.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" [[package]] name = "datasize" @@ -1917,7 +1983,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" dependencies = [ - "uuid 1.16.0", + "uuid 1.23.3", ] [[package]] @@ -1948,28 +2014,30 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "derive_more" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ "derive_more-impl", ] [[package]] name = "derive_more-impl" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ - "convert_case 0.7.1", + "convert_case 0.10.0", "proc-macro2", "quote", - "syn 2.0.101", + "rustc_version", + "syn 2.0.117", + "unicode-xid", ] [[package]] @@ -2067,13 +2135,13 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +checksum = "1ac70aa55017e108007fbaf5aa0f54b021c98f92ff8af59d42eda9da96e3dd4f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -2110,9 +2178,9 @@ dependencies = [ [[package]] name = "document-features" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" +checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" dependencies = [ "litrs", ] @@ -2125,34 +2193,35 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "dyn-clone" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" [[package]] name = "dynasm" -version = "1.2.3" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "add9a102807b524ec050363f09e06f1504214b0e1c7797f64261c891022dce8b" +checksum = "d36219658beb39702975c707dee7895943ca281ca46eebbc5ea395171b9c182b" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.13.0", "byteorder", "lazy_static", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.117", ] [[package]] name = "dynasmrt" -version = "1.2.3" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64fba5a42bd76a17cad4bfa00de168ee1cbfa06a5e8ce992ae880218c05641a9" +checksum = "2bc32ed2a02b82bc43a7631dd624e8c5731a8377e40a468da28e62fc2e028952" dependencies = [ "byteorder", "dynasm", - "memmap2 0.5.10", + "fnv", + "memmap2 0.9.10", ] [[package]] @@ -2180,9 +2249,9 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" dependencies = [ "curve25519-dalek", "ed25519", @@ -2385,9 +2454,9 @@ version = "0.1.0" [[package]] name = "either" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +checksum = "91622ff5e7162018101f2fea40d6ebf4a78bbe5a49736a2020649edf9693679e" dependencies = [ "serde", ] @@ -2404,7 +2473,7 @@ dependencies = [ "ff", "generic-array", "group", - "rand_core", + "rand_core 0.6.4", "sec1", "subtle", "zeroize", @@ -2424,7 +2493,7 @@ version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", ] [[package]] @@ -2493,28 +2562,28 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "enumset" -version = "1.1.6" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11a6b7c3d347de0a9f7bfd2f853be43fe32fa6fac30c70f6d6d67a1e936b87ee" +checksum = "839c4174b41e75c8f7306110b2c51996a293b8d1d850edd529011841d9fede7d" dependencies = [ "enumset_derive", ] [[package]] name = "enumset_derive" -version = "0.11.0" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6da3ea9e1d1a3b1593e15781f930120e72aa7501610b2f82e5b6739c72e8eac5" +checksum = "4bd536557b58c682b217b8fb199afdff47cd3eff260623f19e77074eb073d63a" dependencies = [ - "darling", + "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -2547,7 +2616,7 @@ checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -2567,12 +2636,12 @@ dependencies = [ [[package]] name = "errno" -version = "0.3.12" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -2603,9 +2672,9 @@ checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" [[package]] name = "fastrand" -version = "2.3.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" [[package]] name = "faucet" @@ -2630,7 +2699,7 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" dependencies = [ - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2651,14 +2720,12 @@ dependencies = [ [[package]] name = "filetime" -version = "0.2.25" +version = "0.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +checksum = "5c287a33c7f0a620c38e641e7f60827713987b3c0f26e8ddc9462cc69cf75759" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", - "libredox", - "windows-sys 0.59.0", ] [[package]] @@ -2669,6 +2736,12 @@ dependencies = [ "casper-types", ] +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + [[package]] name = "findshlibs" version = "0.10.2" @@ -2683,9 +2756,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.1.1" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" dependencies = [ "crc32fast", "miniz_oxide", @@ -2697,6 +2770,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + [[package]] name = "foreign-types" version = "0.3.2" @@ -2714,9 +2793,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" dependencies = [ "percent-encoding", ] @@ -2739,9 +2818,9 @@ checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" [[package]] name = "futures" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "8b147ee9d1f6d097cef9ce628cd2ee62288d963e16fb287bd9286455b241382d" dependencies = [ "futures-channel", "futures-core", @@ -2754,9 +2833,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" dependencies = [ "futures-core", "futures-sink", @@ -2764,15 +2843,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" [[package]] name = "futures-executor" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" dependencies = [ "futures-core", "futures-task", @@ -2781,38 +2860,38 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" [[package]] name = "futures-macro" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "futures-sink" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" +checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" [[package]] name = "futures-task" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" [[package]] name = "futures-util" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" dependencies = [ "futures-channel", "futures-core", @@ -2822,15 +2901,14 @@ dependencies = [ "futures-task", "memchr", "pin-project-lite", - "pin-utils", "slab", ] [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", "version_check", @@ -2928,27 +3006,40 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi 0.11.1+wasi-snapshot-preview1", "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.3.3" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if 1.0.4", + "libc", + "r-efi 5.3.0", + "wasip2", +] + +[[package]] +name = "getrandom" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "r-efi 6.0.0", + "wasip2", + "wasip3", ] [[package]] @@ -3050,15 +3141,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" dependencies = [ "fallible-iterator 0.3.0", - "indexmap 2.9.0", + "indexmap 2.14.0", "stable_deref_trait", ] [[package]] name = "gimli" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" [[package]] name = "glob" @@ -3068,9 +3159,9 @@ checksum = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb" [[package]] name = "glob" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" [[package]] name = "global-state-update-gen" @@ -3085,7 +3176,7 @@ dependencies = [ "clap 2.34.0", "itertools 0.10.5", "lmdb-rkv", - "rand", + "rand 0.8.6", "serde", "toml 0.5.11", ] @@ -3097,7 +3188,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3111,9 +3202,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.26" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +checksum = "0beca50380b1fc32983fc1cb4587bfa4bb9e78fc259aad4a0032d2080309222d" dependencies = [ "bytes", "fnv", @@ -3121,21 +3212,22 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.9.0", + "indexmap 2.14.0", "slab", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.18", "tracing", ] [[package]] name = "half" -version = "2.6.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "crunchy", + "zerocopy", ] [[package]] @@ -3155,15 +3247,18 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "foldhash", +] [[package]] name = "hashbrown" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" [[package]] name = "headers" @@ -3229,15 +3324,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "hermit-abi" -version = "0.5.1" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f154ce46856750ed433c8649605bf7ed2de3bc35fd9d2a9f30cddd873c80cb08" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" [[package]] name = "hex" @@ -3297,7 +3386,7 @@ version = "0.1.0" dependencies = [ "casper-contract", "casper-types", - "rand", + "rand 0.8.6", ] [[package]] @@ -3324,12 +3413,11 @@ dependencies = [ [[package]] name = "http" -version = "1.3.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +checksum = "6970f50e31d6fc17d3fa27329444bfa74e196cf62e95052a3f6fee181dba6425" dependencies = [ "bytes", - "fnv", "itoa", ] @@ -3358,9 +3446,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "humantime" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f" +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hyper" @@ -3379,7 +3467,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.5.10", "tokio", "tower-service", "tracing", @@ -3401,12 +3489,13 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" dependencies = [ "displaydoc", "potential_utf", + "utf8_iter", "yoke", "zerofrom", "zerovec", @@ -3414,9 +3503,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" dependencies = [ "displaydoc", "litemap", @@ -3427,11 +3516,10 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" dependencies = [ - "displaydoc", "icu_collections", "icu_normalizer_data", "icu_properties", @@ -3442,42 +3530,38 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" [[package]] name = "icu_properties" -version = "2.0.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" dependencies = [ - "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", "icu_provider", - "potential_utf", "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.0.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" [[package]] name = "icu_provider" -version = "2.0.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" dependencies = [ "displaydoc", "icu_locale_core", - "stable_deref_trait", - "tinystr", "writeable", "yoke", "zerofrom", @@ -3487,9 +3571,9 @@ dependencies = [ [[package]] name = "id-arena" -version = "2.2.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" +checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954" [[package]] name = "ident_case" @@ -3499,9 +3583,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" dependencies = [ "idna_adapter", "smallvec", @@ -3510,9 +3594,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714" dependencies = [ "icu_normalizer", "icu_properties", @@ -3526,7 +3610,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -3575,12 +3659,14 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.9.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.17.1", + "serde", + "serde_core", ] [[package]] @@ -3590,7 +3676,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "232929e1d75fe899576a3d5c7416ad0d88dbfbb3c3d6aa00873a7408a50ddb88" dependencies = [ "ahash", - "indexmap 2.9.0", + "indexmap 2.14.0", "is-terminal", "itoa", "log", @@ -3603,9 +3689,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.11.0" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" [[package]] name = "ipnetwork" @@ -3618,20 +3704,20 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.16" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" dependencies = [ - "hermit-abi 0.5.1", + "hermit-abi 0.5.2", "libc", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -3671,17 +3757,18 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "f2025f20d7a4fa7785846e7b63d10a76d3f1cee98ee5cb79ea59703f95e42162" dependencies = [ - "once_cell", + "cfg-if 1.0.4", + "futures-util", "wasm-bindgen", ] @@ -3691,7 +3778,7 @@ version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "ecdsa", "elliptic-curve", "sha2", @@ -3721,9 +3808,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "leb128" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" +checksum = "6cc46bac87ef8093eed6f272babb833b6443374399985ac8ed28471ee0918545" [[package]] name = "leb128fmt" @@ -3733,36 +3820,31 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.172" +version = "0.2.186" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "68ab91017fe16c622486840e4c83c9a37afeff978bd239b5293d61ece587de66" [[package]] name = "libloading" -version = "0.8.7" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a793df0d7afeac54f95b471d3af7f0d4fb975699f972341a4b76988d49cdf0c" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ - "cfg-if 1.0.0", - "windows-targets 0.53.0", + "cfg-if 1.0.4", + "windows-link", ] [[package]] name = "libm" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" [[package]] -name = "libredox" -version = "0.1.3" +name = "libunwind" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.9.1", - "libc", - "redox_syscall", -] +checksum = "0c6639b70a7ce854b79c70d7e83f16b5dc0137cc914f3d7d03803b513ecc67ac" [[package]] name = "linked-hash-map" @@ -3787,14 +3869,14 @@ checksum = "b01f197a15988fb5b2ec0a5a9800c97e70771499c456ad757d63b3c5e9b96e75" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "list-authorization-keys" @@ -3814,15 +3896,15 @@ dependencies = [ [[package]] name = "litemap" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" [[package]] name = "litrs" -version = "0.4.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5" +checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" [[package]] name = "lmdb-rkv" @@ -3857,21 +3939,20 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ - "autocfg", "scopeguard", ] [[package]] name = "log" -version = "0.4.27" +version = "0.4.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "953f07c43838f8e6f9758cab68bf5bed85465e7587ebe0b823f1bcd81978ad3a" dependencies = [ - "serde", + "serde_core", "value-bag", ] @@ -3886,13 +3967,24 @@ dependencies = [ [[package]] name = "mach2" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" +checksum = "d640282b302c0bb0a2a8e0233ead9035e3bed871f0b7e81fe4a1ec829765db44" dependencies = [ "libc", ] +[[package]] +name = "macho-unwind-info" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb4bdc8b0ce69932332cf76d24af69c3a155242af95c226b2ab6c2e371ed1149" +dependencies = [ + "thiserror 2.0.18", + "zerocopy", + "zerocopy-derive", +] + [[package]] name = "main-purse" version = "0.1.0" @@ -3934,18 +4026,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "memmap2" -version = "0.5.10" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" -dependencies = [ - "libc", -] +checksum = "6b947ae49db0d222b1dbc6b113ce7248a3fc3a6ca21b696717bfc000ba4484d8" [[package]] name = "memmap2" @@ -3958,9 +4041,9 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.9.5" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" +checksum = "714098028fe011992e1c3962653c96b2d578c4b4bce9036e15ff220319b1e0e3" dependencies = [ "libc", ] @@ -4004,11 +4087,12 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", + "simd-adler32", ] [[package]] @@ -4035,20 +4119,20 @@ checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", "log", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi 0.11.1+wasi-snapshot-preview1", "windows-sys 0.48.0", ] [[package]] name = "mio" -version = "1.0.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" +checksum = "02bd0af71c67b473010cbbc60715ee815645a4dc942899111f494b4b737d6fda" dependencies = [ "libc", "log", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", + "wasi 0.11.1+wasi-snapshot-preview1", + "windows-sys 0.61.2", ] [[package]] @@ -4071,7 +4155,7 @@ dependencies = [ "log", "memchr", "mime", - "spin", + "spin 0.9.8", "version_check", ] @@ -4085,22 +4169,22 @@ dependencies = [ [[package]] name = "munge" -version = "0.4.4" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e22e7961c873e8b305b176d2a4e1d41ce7ba31bc1c52d2a107a89568ec74c55" +checksum = "5e17401f259eba956ca16491461b6e8f72913a0a114e39736ce404410f915a0c" dependencies = [ "munge_macro", ] [[package]] name = "munge_macro" -version = "0.4.4" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ac7d860b767c6398e88fe93db73ce53eb496057aa6895ffa4d60cb02e1d1c6b" +checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -4145,9 +4229,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.14" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +checksum = "465500e14ea162429d264d44189adc38b199b62b1c21eea9f69e4b73cb03bbf2" dependencies = [ "libc", "log", @@ -4182,7 +4266,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ "bitflags 1.3.2", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", ] @@ -4216,7 +4300,7 @@ version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -4260,7 +4344,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -4316,11 +4400,11 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" dependencies = [ - "hermit-abi 0.3.9", + "hermit-abi 0.5.2", "libc", ] @@ -4333,25 +4417,31 @@ dependencies = [ "crc32fast", "flate2", "hashbrown 0.14.5", - "indexmap 2.9.0", + "indexmap 2.14.0", "memchr", "ruzstd", ] [[package]] name = "object" -version = "0.36.7" +version = "0.37.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" dependencies = [ "memchr", ] [[package]] name = "once_cell" -version = "1.21.3" +version = "1.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "once_cell_polyfill" +version = "1.70.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "oorandom" @@ -4367,15 +4457,14 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.72" +version = "0.10.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "a45fa2aa886c42762255da344f0a0d313e254066c46aad76f300c3d3da62d967" dependencies = [ - "bitflags 2.9.1", - "cfg-if 1.0.0", + "bitflags 2.13.0", + "cfg-if 1.0.4", "foreign-types", "libc", - "once_cell", "openssl-macros", "openssl-sys", ] @@ -4388,29 +4477,29 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "openssl-probe" -version = "0.1.6" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" [[package]] name = "openssl-src" -version = "300.5.0+3.5.0" +version = "300.6.0+3.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ce546f549326b0e6052b649198487d91320875da901e7bd11a06d1ee3f9c2f" +checksum = "a8e8cbfd3a4a8c8f089147fd7aaa33cf8c7450c4d09f8f80698a0cf093abeff4" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.108" +version = "0.9.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847" +checksum = "f28a22dc7140cda5f096e5e7724a6962ca81a7f8bfd2979f9b18c11af56318c4" dependencies = [ "cc", "libc", @@ -4452,9 +4541,9 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.12.3" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" dependencies = [ "lock_api", "parking_lot_core", @@ -4462,15 +4551,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.10" +version = "0.9.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "libc", "redox_syscall", "smallvec", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -4500,41 +4589,35 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pin-project" -version = "1.1.10" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "2466b2336ed02bcdca6b294417127b90ec92038d1d5c4fbeac971a922e0e0924" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.10" +version = "1.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "c96395f0a926bc13b1c17622aaddda1ecb55d49c8f1bf9777e4d877800a43f8b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "pin-project-lite" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" - -[[package]] -name = "pin-utils" -version = "0.1.0" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" [[package]] name = "pkcs8" @@ -4548,9 +4631,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.32" +version = "0.3.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" [[package]] name = "plotters" @@ -4640,7 +4723,7 @@ version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8588067671d03c9f4254b2e66fecb4d8b93b5d3e703195b84f311cd137e32130" dependencies = [ - "glob 0.3.2", + "glob 0.3.3", "pnet_base", "pnet_macros", "pnet_macros_support", @@ -4670,22 +4753,22 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.2" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" dependencies = [ "zerovec", ] [[package]] name = "pprof" -version = "0.14.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebbe2f8898beba44815fdc9e5a4ae9c929e21c5dc29b0c774a15555f7f58d6d0" +checksum = "afad4d4df7b31280028245f152d5a575083e2abb822d05736f5e47653e77689f" dependencies = [ "aligned-vec", "backtrace", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "criterion", "findshlibs", "inferno", @@ -4693,8 +4776,8 @@ dependencies = [ "log", "nix", "once_cell", - "parking_lot", "smallvec", + "spin 0.10.0", "symbolic-demangle", "tempfile", "thiserror 1.0.69", @@ -4723,21 +4806,21 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.32" +version = "0.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ - "toml_edit 0.22.26", + "toml_edit 0.25.12+spec-1.1.0", ] [[package]] @@ -4783,14 +4866,14 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "proc-macro2" -version = "1.0.95" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] @@ -4801,7 +4884,7 @@ version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d33c28a30771f7f96db69893f78b857f7450d7e0237e9c8fc6427a81bae7ed1" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "fnv", "lazy_static", "memchr", @@ -4811,17 +4894,16 @@ dependencies = [ [[package]] name = "proptest" -version = "1.6.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.9.1", - "lazy_static", + "bitflags 2.13.0", "num-traits", - "rand", - "rand_chacha", + "rand 0.9.4", + "rand_chacha 0.9.0", "rand_xorshift", "regex-syntax", "rusty-fork", @@ -4848,7 +4930,7 @@ checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -4862,11 +4944,11 @@ dependencies = [ [[package]] name = "ptr_meta" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" +checksum = "0b9a0cf95a1196af61d4f1cbdab967179516d9a4a4312af1f31948f8f6224a79" dependencies = [ - "ptr_meta_derive 0.3.0", + "ptr_meta_derive 0.3.1", ] [[package]] @@ -4882,13 +4964,13 @@ dependencies = [ [[package]] name = "ptr_meta_derive" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" +checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -4897,7 +4979,7 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", "memchr", "unicase", ] @@ -4967,37 +5049,53 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.40" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "r-efi" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "rancor" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" +checksum = "a063ea72381527c2a0561da9c80000ef822bdd7c3241b1cc1b12100e3df081ee" dependencies = [ - "ptr_meta 0.3.0", + "ptr_meta 0.3.1", ] [[package]] name = "rand" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +checksum = "5ca0ecfa931c29007047d1bc58e623ab12e5590e8c7cc53200d5202b69266d8a" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.5", ] [[package]] @@ -5007,7 +5105,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.5", ] [[package]] @@ -5016,7 +5124,16 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", +] + +[[package]] +name = "rand_core" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" +dependencies = [ + "getrandom 0.3.4", ] [[package]] @@ -5025,16 +5142,16 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e" dependencies = [ - "rand_core", + "rand_core 0.6.4", ] [[package]] name = "rand_xorshift" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" dependencies = [ - "rand_core", + "rand_core 0.9.5", ] [[package]] @@ -5064,9 +5181,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.10.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" dependencies = [ "either", "rayon-core", @@ -5074,9 +5191,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -5108,11 +5225,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.12" +version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", ] [[package]] @@ -5125,9 +5242,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.1" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" dependencies = [ "aho-corasick", "memchr", @@ -5137,9 +5254,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.9" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" dependencies = [ "aho-corasick", "memchr", @@ -5148,9 +5265,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "region" @@ -5310,11 +5427,11 @@ dependencies = [ [[package]] name = "rend" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" +checksum = "cadadef317c2f20755a64d7fdc48f9e7178ee6b0e1f7fce33fa60f1d68a276e6" dependencies = [ - "bytecheck 0.8.1", + "bytecheck 0.8.2", ] [[package]] @@ -5349,7 +5466,7 @@ dependencies = [ "system-configuration", "tokio", "tokio-native-tls", - "tokio-util 0.7.15", + "tokio-util 0.7.18", "tower-service", "url", "wasm-bindgen", @@ -5387,9 +5504,9 @@ dependencies = [ [[package]] name = "rgb" -version = "0.8.50" +version = "0.8.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a" +checksum = "47b34b781b31e5d73e9fbc8689c70551fd1ade9a19e3e28cfec8580a79290cc4" dependencies = [ "bytemuck", ] @@ -5401,8 +5518,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", - "cfg-if 1.0.0", - "getrandom 0.2.16", + "cfg-if 1.0.4", + "getrandom 0.2.17", "libc", "untrusted 0.9.0", "windows-sys 0.52.0", @@ -5410,32 +5527,32 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.8.13" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b2e88acca7157d83d789836a3987dafc12bc3d88a050e54b8fe9ea4aaa29d20" +checksum = "73389e0c99e664f919275ab5b5b0471391fe9a8de61e1dff9b1eaf56a90f16e3" dependencies = [ - "bytecheck 0.8.1", + "bytecheck 0.8.2", "bytes", - "hashbrown 0.16.1", - "indexmap 2.9.0", + "hashbrown 0.17.1", + "indexmap 2.14.0", "munge", - "ptr_meta 0.3.0", + "ptr_meta 0.3.1", "rancor", "rend", "rkyv_derive", "tinyvec", - "uuid 1.16.0", + "uuid 1.23.3", ] [[package]] name = "rkyv_derive" -version = "0.8.13" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f6dffea3c91fa91a3c0fc8a061b0e27fef25c6304728038a6d6bcb1c58ba9bd" +checksum = "5d2ed0b54125315fb36bd021e82d314d1c126548f871634b483f46b31d13cac6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -5462,9 +5579,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.24" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" [[package]] name = "rustc-hash" @@ -5483,30 +5600,15 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.7" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.13.0", "errno", "libc", "linux-raw-sys", - "windows-sys 0.59.0", -] - -[[package]] -name = "rustls" -version = "0.23.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321" -dependencies = [ - "log", - "once_cell", - "ring", - "rustls-pki-types", - "rustls-webpki", - "subtle", - "zeroize", + "windows-sys 0.61.2", ] [[package]] @@ -5520,9 +5622,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.12.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" +checksum = "30a7197ae7eb376e574fe940d068c30fe0462554a3ddbe4eca7838e049c937a9" dependencies = [ "zeroize", ] @@ -5540,15 +5642,15 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "rusty-fork" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +checksum = "cc6bf79ff24e648f6da1f8d1f011e9cac26491b619e6b9280f2b47f1774e6ee2" dependencies = [ "fnv", "quick-error", @@ -5569,9 +5671,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "safe-transmute" @@ -5590,11 +5692,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "91c1b7e4904c873ef0710c1f407dde2e6287de2bebc1bbbf7d430bb7cbffd939" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -5619,7 +5721,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -5649,12 +5751,12 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.11.1" +version = "3.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" dependencies = [ - "bitflags 2.9.1", - "core-foundation", + "bitflags 2.13.0", + "core-foundation 0.10.1", "core-foundation-sys", "libc", "security-framework-sys", @@ -5662,9 +5764,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "6ce2691df843ecc5d231c0b14ece2acc3efb62c0a398c7e1d875f3983ce020e3" dependencies = [ "core-foundation-sys", "libc", @@ -5672,25 +5774,27 @@ dependencies = [ [[package]] name = "self_cell" -version = "1.2.0" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749" +checksum = "b12e76d157a900eb52e81bc6e9f3069344290341720e9178cde2407113ac8d89" [[package]] name = "semver" -version = "1.0.26" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" dependencies = [ "serde", + "serde_core", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -5715,9 +5819,9 @@ dependencies = [ [[package]] name = "serde-wasm-bindgen" -version = "0.4.5" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b4c031cd0d9014307d82b8abf653c0290fbdaeb4c02d00c63cf52f728628bf" +checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" dependencies = [ "js-sys", "serde", @@ -5726,22 +5830,32 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.17" +version = "0.11.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96" +checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8" dependencies = [ "serde", + "serde_core", +] + +[[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.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -5752,20 +5866,21 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "serde_json" -version = "1.0.140" +version = "1.0.150" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "e8014e44b4736ed0538adeecded0fce2a272f22dc9578a7eb6b2d9993c74cfb9" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.14.0", "itoa", "memchr", - "ryu", "serde", + "serde_core", + "zmij", ] [[package]] @@ -5776,18 +5891,27 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "serde_spanned" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" dependencies = [ "serde", ] +[[package]] +name = "serde_spanned" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" +dependencies = [ + "serde_core", +] + [[package]] name = "serde_test" version = "1.0.177" @@ -5823,8 +5947,8 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ - "cfg-if 1.0.0", - "cpufeatures", + "cfg-if 1.0.4", + "cpufeatures 0.2.17", "digest 0.10.7", ] @@ -5834,8 +5958,8 @@ version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ - "cfg-if 1.0.0", - "cpufeatures", + "cfg-if 1.0.4", + "cpufeatures 0.2.17", "digest 0.10.7", ] @@ -5864,6 +5988,12 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +[[package]] +name = "shlex" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" + [[package]] name = "signal-hook" version = "0.3.18" @@ -5876,21 +6006,22 @@ dependencies = [ [[package]] name = "signal-hook-mio" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" +checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc" dependencies = [ "libc", - "mio 1.0.3", + "mio 1.2.1", "signal-hook", ] [[package]] name = "signal-hook-registry" -version = "1.4.5" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] @@ -5907,9 +6038,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", + "rand_core 0.6.4", ] +[[package]] +name = "simd-adler32" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" + [[package]] name = "simdutf8" version = "0.1.5" @@ -5918,38 +6055,54 @@ checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" [[package]] name = "slab" -version = "0.4.9" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "smallvec" -version = "1.15.0" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" dependencies = [ "serde", ] [[package]] name = "socket2" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" dependencies = [ "libc", "windows-sys 0.52.0", ] +[[package]] +name = "socket2" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52d1cfed4120b4d927bf7c0f86d2087a4a7d6027c906d9f9d525a80573b9be51" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + [[package]] name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +[[package]] +name = "spin" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591" +dependencies = [ + "lock_api", +] + [[package]] name = "spki" version = "0.7.3" @@ -5962,9 +6115,9 @@ dependencies = [ [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "staking" @@ -6013,9 +6166,9 @@ dependencies = [ [[package]] name = "str_stack" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091b6114800a5f2141aee1d1b9d6ca3592ac062dc5decb3764ec5895a47b4eb" +checksum = "7f446288b699d66d0fd2e30d1cfe7869194312524b3b9252594868ed26ef056a" [[package]] name = "strsim" @@ -6070,11 +6223,11 @@ dependencies = [ [[package]] name = "strum" -version = "0.27.1" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" +checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" dependencies = [ - "strum_macros 0.27.1", + "strum_macros 0.27.2", ] [[package]] @@ -6092,15 +6245,14 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.27.1" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "rustversion", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -6111,21 +6263,21 @@ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "symbolic-common" -version = "12.15.5" +version = "12.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a1150bdda9314f6cfeeea801c23f5593c6e6a6c72e64f67e48d723a12b8efdb" +checksum = "332615d90111d8eeaf86a84dc9bbe9f65d0d8c5cf11b4caccedc37754eb0dcfd" dependencies = [ "debugid", - "memmap2 0.9.5", + "memmap2 0.9.10", "stable_deref_trait", - "uuid 1.16.0", + "uuid 1.23.3", ] [[package]] name = "symbolic-demangle" -version = "12.15.5" +version = "12.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f66537def48fbc704a92e4fdaab7833bc7cb2255faca8182592fb5fa617eb82" +checksum = "912017718eb4d21930546245af9a3475c9dccf15675a5c215664e76621afc471" dependencies = [ "cpp_demangle", "rustc-demangle", @@ -6145,9 +6297,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.101" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -6168,7 +6320,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -6188,7 +6340,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", "system-configuration-sys", ] @@ -6212,9 +6364,9 @@ dependencies = [ [[package]] name = "tar" -version = "0.4.45" +version = "0.4.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" +checksum = "3f6221d9a6003c78398e3b239969f352578258df48c8eb051caadae0015bc840" dependencies = [ "filetime", "libc", @@ -6229,21 +6381,21 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "target-triple" -version = "0.1.4" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790" +checksum = "591ef38edfb78ca4771ee32cf494cb8771944bee237a9b91fc9c1424ac4b777b" [[package]] name = "tempfile" -version = "3.20.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", - "getrandom 0.3.3", + "getrandom 0.4.2", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -6257,12 +6409,12 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.4.2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed" +checksum = "230a1b821ccbd75b185820a1f1ff7b14d21da1e442e22c0863ea5f08771a8874" dependencies = [ "rustix", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -6299,11 +6451,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.18", ] [[package]] @@ -6314,35 +6466,34 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" dependencies = [ - "cfg-if 1.0.0", - "once_cell", + "cfg-if 1.0.4", ] [[package]] name = "tinystr" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" dependencies = [ "displaydoc", "zerovec", @@ -6360,9 +6511,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -6375,29 +6526,28 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.45.0" +version = "1.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165" +checksum = "8fc7f01b389ac15039e4dc9531aa973a135d7a4135281b12d7c1bc79fd57fffe" dependencies = [ - "backtrace", "bytes", "libc", - "mio 1.0.3", + "mio 1.2.1", "pin-project-lite", - "socket2", + "socket2 0.6.4", "tokio-macros", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.5.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -6438,14 +6588,14 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" dependencies = [ "futures-core", "pin-project-lite", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.18", ] [[package]] @@ -6476,9 +6626,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.15" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" dependencies = [ "bytes", "futures-core", @@ -6503,43 +6653,67 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" dependencies = [ "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.9", + "toml_datetime 0.6.11", "toml_edit 0.19.15", ] [[package]] name = "toml" -version = "0.8.22" +version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" +checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.14.0", "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.22.26", + "serde_spanned 0.6.9", + "toml_datetime 0.6.11", + "toml_edit 0.22.27", +] + +[[package]] +name = "toml" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81f3d15e84cbcd896376e6730314d59fb5a87f31e4b038454184435cd57defee" +dependencies = [ + "indexmap 2.14.0", + "serde_core", + "serde_spanned 1.1.1", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 1.0.3", ] [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" dependencies = [ "serde", ] +[[package]] +name = "toml_datetime" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] + [[package]] name = "toml_edit" version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.14.0", "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.9", + "toml_datetime 0.6.11", "winnow 0.5.40", ] @@ -6549,30 +6723,57 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" dependencies = [ - "indexmap 2.9.0", - "toml_datetime", + "indexmap 2.14.0", + "toml_datetime 0.6.11", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.26" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.14.0", "serde", - "serde_spanned", - "toml_datetime", + "serde_spanned 0.6.9", + "toml_datetime 0.6.11", "toml_write", - "winnow 0.7.10", + "winnow 0.7.15", +] + +[[package]] +name = "toml_edit" +version = "0.25.12+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2153edc6955a6c354fad8f5efd38b6a8769bdccf9fe50f8e1329f81b0baa5d7" +dependencies = [ + "indexmap 2.14.0", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "winnow 1.0.3", +] + +[[package]] +name = "toml_parser" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" +dependencies = [ + "winnow 1.0.3", ] [[package]] name = "toml_write" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" +checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" + +[[package]] +name = "toml_writer" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" [[package]] name = "tower" @@ -6583,7 +6784,7 @@ dependencies = [ "futures-core", "pin-project-lite", "tokio", - "tokio-util 0.7.15", + "tokio-util 0.7.18", "tower-layer", "tower-service", "tracing", @@ -6621,7 +6822,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] @@ -6667,9 +6868,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.20" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ "matchers", "nu-ansi-term", @@ -6824,17 +7025,17 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "trybuild" -version = "1.0.105" +version = "1.0.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c9bf9513a2f4aeef5fdac8677d7d349c79fdbcc03b9c86da6e9d254f1e43be2" +checksum = "47c635f0191bd3a2941013e5062667100969f8c4e9cd787c14f977265d73616e" dependencies = [ - "glob 0.3.2", + "glob 0.3.3", "serde", "serde_derive", "serde_json", "target-triple", "termcolor", - "toml 0.8.22", + "toml 1.1.2+spec-1.1.0", ] [[package]] @@ -6846,10 +7047,10 @@ dependencies = [ "byteorder", "bytes", "data-encoding", - "http 1.3.1", + "http 1.4.2", "httparse", "log", - "rand", + "rand 0.8.6", "sha1", "thiserror 1.0.69", "url", @@ -6862,15 +7063,15 @@ version = "1.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "static_assertions", ] [[package]] name = "typenum" -version = "1.18.0" +version = "1.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20" [[package]] name = "uint" @@ -6900,21 +7101,21 @@ dependencies = [ [[package]] name = "unicase" -version = "2.8.1" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" +checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8" [[package]] name = "unicode-width" @@ -6924,9 +7125,15 @@ checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" [[package]] name = "unicode-width" -version = "0.2.0" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" + +[[package]] +name = "unicode-xid" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "untrusted" @@ -6964,31 +7171,16 @@ dependencies = [ "casper-types", ] -[[package]] -name = "ureq" -version = "2.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d1a66277ed75f640d608235660df48c8e3c19f3b4edb6a263315626cc3c01d" -dependencies = [ - "base64 0.22.1", - "flate2", - "log", - "once_cell", - "rustls", - "rustls-pki-types", - "url", - "webpki-roots 0.26.11", -] - [[package]] name = "url" -version = "2.5.4" +version = "2.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" dependencies = [ "form_urlencoded", "idna", "percent-encoding", + "serde", ] [[package]] @@ -7015,15 +7207,19 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "serde", ] [[package]] name = "uuid" -version = "1.16.0" +version = "1.23.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" +checksum = "144d6b123cef80b301b8f72a9e2ca4370ddec21950d0a103dd22c437006d2db7" +dependencies = [ + "js-sys", + "wasm-bindgen", +] [[package]] name = "valuable" @@ -7033,9 +7229,9 @@ checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" [[package]] name = "value-bag" -version = "1.11.1" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943ce29a8a743eb10d6082545d861b24f9d1b160b7d741e0f2cdf726bec909c5" +checksum = "7ba6f5989077681266825251a52748b8c1d8a4ad098cc37e440103d0ea717fc0" [[package]] name = "vcpkg" @@ -7067,7 +7263,7 @@ dependencies = [ "pulldown-cmark", "regex", "semver", - "syn 2.0.101", + "syn 2.0.117", "toml 0.7.8", "url", ] @@ -7112,7 +7308,7 @@ dependencies = [ "casper-executor-wasm-common", "impls", "serde_json", - "thiserror 2.0.12", + "thiserror 2.0.18", ] [[package]] @@ -7263,7 +7459,7 @@ dependencies = [ "serde_urlencoded", "tokio", "tokio-tungstenite", - "tokio-util 0.7.15", + "tokio-util 0.7.18", "tower-service", "tracing", ] @@ -7276,63 +7472,56 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] -name = "wasi" -version = "0.14.2+wasi-0.2.4" +name = "wasip2" +version = "1.0.3+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "20064672db26d7cdc89c7798c48a0fdfac8213434a1186e5ef29fd560ae223d6" dependencies = [ - "wit-bindgen-rt", + "wit-bindgen 0.57.1", ] [[package]] -name = "wasm-bindgen" -version = "0.2.100" +name = "wasip3" +version = "0.4.0+wasi-0.3.0-rc-2026-01-06" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" dependencies = [ - "cfg-if 1.0.0", - "once_cell", - "rustversion", - "wasm-bindgen-macro", + "wit-bindgen 0.51.0", ] [[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" +name = "wasm-bindgen" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "a254a4b10c19a76f09a27640e7ffbf9bc30bf67e16a3bf28aaefa4920fe81563" dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn 2.0.101", + "cfg-if 1.0.4", + "once_cell", + "rustversion", + "wasm-bindgen-macro", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "54568702fabf5d4849ce2b90fadfa64168a097eaf4b351ce9df8b687a0086aaf" dependencies = [ - "cfg-if 1.0.0", "js-sys", - "once_cell", "wasm-bindgen", - "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "24a40fc75b0ec6f3746ceb10d36f53a93dcd68a93b11b6445983945d79eba0dc" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7340,22 +7529,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "908f34bd9b9ce3d4caf07b72dfab63d61504d156856c6bd3cd87fa350cf3985b" dependencies = [ + "bumpalo", "proc-macro2", "quote", - "syn 2.0.101", - "wasm-bindgen-backend", + "syn 2.0.117", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.123" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "7acbf7616c27b194bbb550bf77ed0c2c3e5b7fd1260a93082b95fb7f47959b92" dependencies = [ "unicode-ident", ] @@ -7371,12 +7560,34 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.230.0" +version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4349d0943718e6e434b51b9639e876293093dca4b96384fb136ab5bd5ce6660" +checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319" dependencies = [ "leb128fmt", - "wasmparser 0.230.0", + "wasmparser 0.244.0", +] + +[[package]] +name = "wasm-encoder" +version = "0.251.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a879a421bd17c528b74721b2abf4c62e8f1d1889c2ba8c3c50d02deaf2ce395" +dependencies = [ + "leb128fmt", + "wasmparser 0.251.0", +] + +[[package]] +name = "wasm-metadata" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" +dependencies = [ + "anyhow", + "indexmap 2.14.0", + "wasm-encoder 0.244.0", + "wasmparser 0.244.0", ] [[package]] @@ -7394,17 +7605,19 @@ dependencies = [ [[package]] name = "wasmer" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b104b9437e9100943fb01880cc210ebe250cc4aa2f7e121f068033a76d29cc4" +checksum = "2d85671948f8886a1cc946141c0b688a5617603c103699a5fceeebeb4e75b0b6" dependencies = [ "bindgen", "bytes", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "cmake", - "indexmap 2.9.0", + "derive_more 2.1.1", + "indexmap 2.14.0", "js-sys", "more-asserts", + "paste", "rustc-demangle", "serde", "serde-wasm-bindgen", @@ -7413,29 +7626,30 @@ dependencies = [ "target-lexicon", "thiserror 1.0.69", "tracing", - "ureq", "wasm-bindgen", "wasmer-compiler", "wasmer-compiler-singlepass", "wasmer-derive", "wasmer-types", "wasmer-vm", + "wasmparser 0.224.1", "windows-sys 0.59.0", ] [[package]] name = "wasmer-compiler" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9dd5c640b9e6dcc64bcad987b3133e19f1c9919a8e0c732eb11a33f650bbf54" +checksum = "4946475adc0af265af8f10aadf4d4a3c64845bcd3801c655bdd81ce5e3ee869b" dependencies = [ "backtrace", "bytes", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "enum-iterator 0.7.0", "enumset", "leb128", "libc", + "macho-unwind-info", "memmap2 0.6.2", "more-asserts", "object 0.32.2", @@ -7448,16 +7662,16 @@ dependencies = [ "thiserror 1.0.69", "wasmer-types", "wasmer-vm", - "wasmparser 0.216.1", + "wasmparser 0.224.1", "windows-sys 0.59.0", "xxhash-rust", ] [[package]] name = "wasmer-compiler-singlepass" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b95cad6ba04afeb3a339529e880c3290f8516bc6324c3082155a79f00129f5a1" +checksum = "3ffadcc9bc282f287173024802fd190e0fa120854191e141252ad1d1469c80e3" dependencies = [ "byteorder", "dynasm", @@ -7473,9 +7687,9 @@ dependencies = [ [[package]] name = "wasmer-derive" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b4c4970530327054e6effa876eadfd57079866c7429e31fde2568d6354ec61d" +checksum = "c546f3380840cd63fdcc390f04cd19002f2dfa19b4691b77ecbd27642bd93452" dependencies = [ "proc-macro-error2", "proc-macro2", @@ -7485,9 +7699,9 @@ dependencies = [ [[package]] name = "wasmer-middlewares" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "111eee5478867554d4496f89f472499fe90469f7473dbf90e466c1deb5505293" +checksum = "f4fdc1455c09a2b8e3aae9df8e163430d87353a2b467a3c48ceeb3e3bbeeed69" dependencies = [ "wasmer", "wasmer-types", @@ -7496,16 +7710,16 @@ dependencies = [ [[package]] name = "wasmer-types" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "554f389473d61915754b1873c5ef392a1a75b55c7d616e2a78f67c1af45785ae" +checksum = "94a4027ce165e8dc776dc5e2a3231a96983e6dc7330efd97b793cfc4e973ad0c" dependencies = [ "bytecheck 0.6.12", "enum-iterator 0.7.0", "enumset", - "getrandom 0.2.16", + "getrandom 0.2.17", "hex", - "indexmap 2.9.0", + "indexmap 2.14.0", "more-asserts", "rkyv", "sha2", @@ -7516,24 +7730,26 @@ dependencies = [ [[package]] name = "wasmer-vm" -version = "5.0.6" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20b3f40e1e18d6cd040d6d1ea32affbf2f64ff059eff3b85614bccb8ff95c59b" +checksum = "9c37d5be291eea00a00d077ce3a427bb3074709ee386ec358f18f0b7da33be01" dependencies = [ "backtrace", "cc", - "cfg-if 1.0.0", + "cfg-if 1.0.4", "corosensei", "crossbeam-queue", "dashmap", "enum-iterator 0.7.0", "fnv", - "indexmap 2.9.0", + "indexmap 2.14.0", "libc", + "libunwind", "mach2", "memoffset", "more-asserts", "region", + "rustversion", "scopeguard", "thiserror 1.0.69", "wasmer-types", @@ -7548,35 +7764,43 @@ checksum = "449167e2832691a1bff24cde28d2804e90e09586a448c8e76984792c44334a6b" [[package]] name = "wasmparser" -version = "0.216.1" +version = "0.219.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5220ee4c6ffcc0cb9d7c47398052203bc902c8ef3985b0c8134118440c0b2921" +dependencies = [ + "bitflags 2.13.0", + "indexmap 2.14.0", +] + +[[package]] +name = "wasmparser" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cc7c63191ae61c70befbe6045b9be65ef2082fa89421a386ae172cb1e08e92d" +checksum = "04f17a5917c2ddd3819e84c661fae0d6ba29d7b9c1f0e96c708c65a9c4188e11" dependencies = [ - "ahash", - "bitflags 2.9.1", - "hashbrown 0.14.5", - "indexmap 2.9.0", - "semver", + "bitflags 2.13.0", ] [[package]] name = "wasmparser" -version = "0.219.2" +version = "0.244.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5220ee4c6ffcc0cb9d7c47398052203bc902c8ef3985b0c8134118440c0b2921" +checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ - "bitflags 2.9.1", - "indexmap 2.9.0", + "bitflags 2.13.0", + "hashbrown 0.15.5", + "indexmap 2.14.0", + "semver", ] [[package]] name = "wasmparser" -version = "0.230.0" +version = "0.251.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808198a69b5a0535583370a51d459baa14261dfab04800c4864ee9e1a14346ed" +checksum = "437970b35b1a85cfde9c74b2398352d8d653f3bd8e3a3db0c063ea8f5b4b36ff" dependencies = [ - "bitflags 2.9.1", - "indexmap 2.9.0", + "bitflags 2.13.0", + "indexmap 2.14.0", "semver", ] @@ -7593,54 +7817,36 @@ dependencies = [ [[package]] name = "wast" -version = "230.0.0" +version = "251.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8edac03c5fa691551531533928443faf3dc61a44f814a235c7ec5d17b7b34f1" +checksum = "5cc7467dda0a96142eb2c980329dfb62480b1e1d3622fdeb1a44e2bca6ceed74" dependencies = [ "bumpalo", "leb128fmt", "memchr", - "unicode-width 0.2.0", - "wasm-encoder 0.230.0", + "unicode-width 0.2.2", + "wasm-encoder 0.251.0", ] [[package]] name = "wat" -version = "1.230.0" +version = "1.251.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d77d62229e38db83eac32bacb5f61ebb952366ab0dae90cf2b3c07a65eea894" +checksum = "81b1086c9e85b95bd6a229a928bc6c6d0662e42af0250c88d067b418831ea4d4" dependencies = [ "wast", ] [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "6e0871acf327f283dc6da28a1696cdc64fb355ba9f935d052021fa77f35cce69" dependencies = [ "js-sys", "wasm-bindgen", ] -[[package]] -name = "webpki-roots" -version = "0.26.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" -dependencies = [ - "webpki-roots 1.0.0", -] - -[[package]] -name = "webpki-roots" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2853738d1cc4f2da3a225c18ec6c3721abb31961096e9dbf5ab35fa88b19cfdb" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "wee_alloc" version = "0.4.5" @@ -7677,11 +7883,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -7690,6 +7896,12 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + [[package]] name = "windows-sys" version = "0.48.0" @@ -7717,6 +7929,15 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -7741,29 +7962,13 @@ dependencies = [ "windows_aarch64_gnullvm 0.52.6", "windows_aarch64_msvc 0.52.6", "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", + "windows_i686_gnullvm", "windows_i686_msvc 0.52.6", "windows_x86_64_gnu 0.52.6", "windows_x86_64_gnullvm 0.52.6", "windows_x86_64_msvc 0.52.6", ] -[[package]] -name = "windows-targets" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" -dependencies = [ - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", -] - [[package]] name = "windows_aarch64_gnullvm" version = "0.48.5" @@ -7776,12 +7981,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" - [[package]] name = "windows_aarch64_msvc" version = "0.48.5" @@ -7794,12 +7993,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" - [[package]] name = "windows_i686_gnu" version = "0.48.5" @@ -7812,24 +8005,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - [[package]] name = "windows_i686_msvc" version = "0.48.5" @@ -7842,12 +8023,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_i686_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" - [[package]] name = "windows_x86_64_gnu" version = "0.48.5" @@ -7860,12 +8035,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" - [[package]] name = "windows_x86_64_gnullvm" version = "0.48.5" @@ -7878,12 +8047,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - [[package]] name = "windows_x86_64_msvc" version = "0.48.5" @@ -7897,25 +8060,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] -name = "windows_x86_64_msvc" -version = "0.53.0" +name = "winnow" +version = "0.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] [[package]] name = "winnow" -version = "0.5.40" +version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" dependencies = [ "memchr", ] [[package]] name = "winnow" -version = "0.7.10" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" +checksum = "0592e1c9d151f854e6fd382574c3a0855250e1d9b2f99d9281c6e6391af352f1" dependencies = [ "memchr", ] @@ -7926,17 +8092,102 @@ version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "cfg-if 1.0.0", + "cfg-if 1.0.4", "windows-sys 0.48.0", ] [[package]] -name = "wit-bindgen-rt" -version = "0.39.0" +name = "wit-bindgen" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" dependencies = [ - "bitflags 2.9.1", + "wit-bindgen-rust-macro", +] + +[[package]] +name = "wit-bindgen" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e" + +[[package]] +name = "wit-bindgen-core" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc" +dependencies = [ + "anyhow", + "heck 0.5.0", + "wit-parser", +] + +[[package]] +name = "wit-bindgen-rust" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" +dependencies = [ + "anyhow", + "heck 0.5.0", + "indexmap 2.14.0", + "prettyplease", + "syn 2.0.117", + "wasm-metadata", + "wit-bindgen-core", + "wit-component", +] + +[[package]] +name = "wit-bindgen-rust-macro" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a" +dependencies = [ + "anyhow", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.117", + "wit-bindgen-core", + "wit-bindgen-rust", +] + +[[package]] +name = "wit-component" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" +dependencies = [ + "anyhow", + "bitflags 2.13.0", + "indexmap 2.14.0", + "log", + "serde", + "serde_derive", + "serde_json", + "wasm-encoder 0.244.0", + "wasm-metadata", + "wasmparser 0.244.0", + "wit-parser", +] + +[[package]] +name = "wit-parser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" +dependencies = [ + "anyhow", + "id-arena", + "indexmap 2.14.0", + "log", + "semver", + "serde", + "serde_derive", + "serde_json", + "unicode-xid", + "wasmparser 0.244.0", ] [[package]] @@ -7949,15 +8200,15 @@ dependencies = [ [[package]] name = "writeable" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" [[package]] name = "xattr" -version = "1.5.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d65cbf2f12c15564212d48f4e3dfb87923d25d611f2aed18f4cb23f0413d89e" +checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" dependencies = [ "libc", "rustix", @@ -7971,11 +8222,10 @@ checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" [[package]] name = "yoke" -version = "0.8.0" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" +checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5" dependencies = [ - "serde", "stable_deref_trait", "yoke-derive", "zerofrom", @@ -7983,68 +8233,68 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.25" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" +checksum = "3b065d4f0e55f82fae73202e189638116a87c55ab6b8e6c2721e13dd9d854ad1" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.25" +version = "0.8.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +checksum = "0b631b19d36a892ab55420c92dbc83ccd79274f25be714855d3074aa71cab639" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", "synstructure", ] [[package]] name = "zeroize" -version = "1.8.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" [[package]] name = "zerotrie" -version = "0.2.2" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" dependencies = [ "displaydoc", "yoke", @@ -8053,9 +8303,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.2" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" dependencies = [ "yoke", "zerofrom", @@ -8064,11 +8314,17 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.1" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.117", ] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" diff --git a/Makefile b/Makefile index 79b26f463d..6c86ffe547 100644 --- a/Makefile +++ b/Makefile @@ -18,15 +18,17 @@ ALL_CONTRACTS = $(shell find ./smart_contracts/contracts/[!.]* -mindepth 1 -m CLIENT_CONTRACTS = $(shell find ./smart_contracts/contracts/client -mindepth 1 -maxdepth 1 -type d -exec basename {} \;) CARGO_HOME_REMAP = $(if $(CARGO_HOME),$(CARGO_HOME),$(HOME)/.cargo) RUSTC_FLAGS = "--remap-path-prefix=$(CARGO_HOME_REMAP)=/home/cargo --remap-path-prefix=$$PWD=/dir" +WASM_RUSTC_FLAGS = "--remap-path-prefix=$(CARGO_HOME_REMAP)=/home/cargo --remap-path-prefix=$$PWD=/dir -C target-feature=-bulk-memory,-bulk-memory-opt" CONTRACT_TARGET_DIR = target/wasm32-unknown-unknown/release build-contract-rs/%: - cd smart_contracts/contracts && RUSTFLAGS=$(RUSTC_FLAGS) $(CARGO) build --verbose --release $(filter-out --release, $(CARGO_FLAGS)) --package $* + cd smart_contracts/contracts && RUSTFLAGS=$(WASM_RUSTC_FLAGS) $(CARGO) build --verbose --release -Z build-std=std,core,alloc,panic_abort $(filter-out --release, $(CARGO_FLAGS)) --package $* build-vm2-contract-rs/%: - RUSTFLAGS=$(RUSTC_FLAGS) $(CARGO) run -p cargo-casper --bin cargo-casper -- build-schema --package $* - cd smart_contracts/contracts/vm2 && RUSTFLAGS=$(RUSTC_FLAGS) $(CARGO) build --verbose --release $(filter-out --release, $(CARGO_FLAGS)) --package $* + CMAKE_POLICY_VERSION_MINIMUM=3.5 $(CARGO) build -p cargo-casper --bin cargo-casper + RUSTFLAGS=$(RUSTC_FLAGS) $(CURDIR)/target/debug/cargo-casper build-schema --package $* + cd smart_contracts/contracts/vm2 && RUSTFLAGS=$(WASM_RUSTC_FLAGS) $(CARGO) build --verbose --release -Z build-std=std,core,alloc,panic_abort $(filter-out --release, $(CARGO_FLAGS)) --package $* .PHONY: build-vm2-contracts-rs build-vm2-contracts-rs: $(patsubst %, build-vm2-contract-rs/%, $(VM2_CONTRACTS)) @@ -188,6 +190,7 @@ setup-rs: $(RUSTUP) target add --toolchain $(PINNED_NIGHTLY) wasm32-unknown-unknown $(RUSTUP) component add --toolchain $(PINNED_NIGHTLY) rustfmt clippy-preview $(RUSTUP) component add --toolchain $(PINNED_STABLE) clippy-preview + $(RUSTUP) component add rust-src --toolchain $(PINNED_NIGHTLY) $(CARGO) install cargo-audit .PHONY: setup diff --git a/binary_port/src/error_code.rs b/binary_port/src/error_code.rs index e3ea4b3a0a..6bcb8ee8a1 100644 --- a/binary_port/src/error_code.rs +++ b/binary_port/src/error_code.rs @@ -552,7 +552,7 @@ impl From for ErrorCode { InvalidTransactionV1::UnexpectedEntryPoint { .. } => { ErrorCode::InvalidTransactionUnexpectedEntryPoint } - InvalidTransactionV1::CouldNotSerializeTransaction { .. } => { + InvalidTransactionV1::CouldNotSerializeTransaction => { ErrorCode::TransactionHasMalformedBinaryRepresentation } InvalidTransactionV1::InsufficientAmount { .. } => { diff --git a/execution_engine_testing/tests/src/test/explorer/faucet.rs b/execution_engine_testing/tests/src/test/explorer/faucet.rs index 45502496d9..dae0472f28 100644 --- a/execution_engine_testing/tests/src/test/explorer/faucet.rs +++ b/execution_engine_testing/tests/src/test/explorer/faucet.rs @@ -663,14 +663,14 @@ fn faucet_costs() { // This test will fail if execution costs vary. The expected costs should not be updated // without understanding why the cost has changed. If the costs do change, it should be // reflected in the "Costs by Entry Point" section of the faucet crate's README.md. - const EXPECTED_FAUCET_INSTALL_COST: u64 = 149_181_711_315; + const EXPECTED_FAUCET_INSTALL_COST: u64 = 112_723_697_942; const EXPECTED_FAUCET_INSTALL_COST_ALT: u64 = 149_230_872_143; - const EXPECTED_FAUCET_SET_VARIABLES_COST: u64 = 79_463_750; + const EXPECTED_FAUCET_SET_VARIABLES_COST: u64 = 79_796_780; - const EXPECTED_FAUCET_CALL_BY_INSTALLER_COST: u64 = 2_652_633_308; + const EXPECTED_FAUCET_CALL_BY_INSTALLER_COST: u64 = 2_652_960_368; - const EXPECTED_FAUCET_CALL_BY_USER_COST: u64 = 2_558_333_326; + const EXPECTED_FAUCET_CALL_BY_USER_COST: u64 = 2_558_834_176; let installer_account = AccountHash::new([1u8; 32]); let user_account: AccountHash = AccountHash::new([2u8; 32]); diff --git a/execution_engine_testing/tests/src/test/regression/ee_1152.rs b/execution_engine_testing/tests/src/test/regression/ee_1152.rs index c435de9f77..3ac0b440e9 100644 --- a/execution_engine_testing/tests/src/test/regression/ee_1152.rs +++ b/execution_engine_testing/tests/src/test/regression/ee_1152.rs @@ -134,7 +134,7 @@ fn should_run_ee_1152_regression_test() { let (era_id, _) = era_validators .into_iter() - .last() + .next_back() .expect("should have last element"); assert!(era_id > INITIAL_ERA_ID, "{}", era_id); diff --git a/execution_engine_testing/tests/src/test/regression/regression_20220221.rs b/execution_engine_testing/tests/src/test/regression/regression_20220221.rs index b49012ce78..1fe9f4cc39 100644 --- a/execution_engine_testing/tests/src/test/regression/regression_20220221.rs +++ b/execution_engine_testing/tests/src/test/regression/regression_20220221.rs @@ -108,7 +108,7 @@ fn regression_20220221_should_distribute_to_many_validators() { let (era_id, trusted_era_validators) = era_validators .into_iter() - .last() + .next_back() .expect("should have last element"); assert!(era_id > INITIAL_ERA_ID, "{}", era_id); diff --git a/executor/wasmer_backend/Cargo.toml b/executor/wasmer_backend/Cargo.toml index c9e6d8019b..1e248b5625 100644 --- a/executor/wasmer_backend/Cargo.toml +++ b/executor/wasmer_backend/Cargo.toml @@ -19,12 +19,12 @@ casper-types = { version = "7.0.0", path = "../../types" } regex = "1.11" # Added rustls-webpki dependency to fix audit issue rustls-webpki = "0.103.13" -wasmer = { version = "5.0.4", default-features = false, features = [ +wasmer = { version = "6.1.0", default-features = false, features = [ "singlepass", ] } -wasmer-compiler-singlepass = "5.0.4" -wasmer-middlewares = "5.0.4" -wasmer-types = "5.0.4" +wasmer-compiler-singlepass = "6.1.0" +wasmer-middlewares = "6.1.0" +wasmer-types = "6.1.0" tracing = "0.1.41" [dev-dependencies] diff --git a/executor/wasmer_backend/src/lib.rs b/executor/wasmer_backend/src/lib.rs index 384ecc5399..49f2cf698d 100644 --- a/executor/wasmer_backend/src/lib.rs +++ b/executor/wasmer_backend/src/lib.rs @@ -20,7 +20,7 @@ use middleware::{ }; use regex::Regex; use wasmer::{ - AsStoreMut, AsStoreRef, CompilerConfig, Engine, Function, FunctionEnv, FunctionEnvMut, + sys::CompilerConfig, AsStoreMut, AsStoreRef, Engine, Function, FunctionEnv, FunctionEnvMut, Instance, Memory, MemoryView, Module, RuntimeError, Store, StoreMut, Table, TypedFunction, }; use wasmer_compiler_singlepass::Singlepass; @@ -64,6 +64,9 @@ fn from_wasmer_trap_code(value: wasmer_types::TrapCode) -> TrapCode { wasmer_types::TrapCode::UnalignedAtomic => { todo!("Atomic memory extension is not supported") } + wasmer_types::TrapCode::UncaughtException => { + unreachable!("Wasm exceptions extension is not supported") + } } } diff --git a/executor/wasmer_backend/src/middleware/gas_metering.rs b/executor/wasmer_backend/src/middleware/gas_metering.rs index 414e4b1b76..c025aa909f 100644 --- a/executor/wasmer_backend/src/middleware/gas_metering.rs +++ b/executor/wasmer_backend/src/middleware/gas_metering.rs @@ -1,6 +1,6 @@ use std::sync::Arc; -use wasmer::{wasmparser::Operator, ModuleMiddleware}; +use wasmer::{sys::ModuleMiddleware, wasmparser::Operator}; use wasmer_middlewares::Metering; /// Calculated based on the benchmark results and fitted for approx ~1000 CSPR of computation and @@ -625,7 +625,18 @@ fn cycles(operator: &Operator) -> u64 { | Operator::ArrayAtomicRmwXor { .. } | Operator::ArrayAtomicRmwXchg { .. } | Operator::ArrayAtomicRmwCmpxchg { .. } + | Operator::ContNew { .. } + | Operator::ContBind { .. } + | Operator::Suspend { .. } + | Operator::Resume { .. } + | Operator::ResumeThrow { .. } + | Operator::Switch { .. } + | Operator::I64Add128 + | Operator::I64Sub128 + | Operator::I64MulWideS + | Operator::I64MulWideU | Operator::RefI31Shared => todo!("{operator:?}"), + _ => todo!("{operator:?}") // We need to add a wildcart here since Operator uses #[non_exhaustive] } } diff --git a/executor/wasmer_backend/src/middleware/gatekeeper.rs b/executor/wasmer_backend/src/middleware/gatekeeper.rs index 0021543940..78e70d9a42 100644 --- a/executor/wasmer_backend/src/middleware/gatekeeper.rs +++ b/executor/wasmer_backend/src/middleware/gatekeeper.rs @@ -1,4 +1,7 @@ -use wasmer::{wasmparser::Operator, FunctionMiddleware, MiddlewareError, ModuleMiddleware}; +use wasmer::{ + sys::{FunctionMiddleware, MiddlewareError, MiddlewareReaderState, ModuleMiddleware}, + wasmparser::Operator, +}; const MIDDLEWARE_NAME: &str = "Gatekeeper"; const FLOATING_POINTS_NOT_ALLOWED: &str = "Floating point opcodes are not allowed"; @@ -259,7 +262,7 @@ impl ModuleMiddleware for Gatekeeper { fn generate_function_middleware( &self, _local_function_index: wasmer::LocalFunctionIndex, - ) -> Box { + ) -> Box { Box::new(FunctionGatekeeper::new(self.config)) } } @@ -278,7 +281,7 @@ impl FunctionGatekeeper { fn ensure_floating_point_allowed( &self, operator: &wasmer::wasmparser::Operator<'_>, - ) -> Result<(), wasmer::MiddlewareError> { + ) -> Result<(), MiddlewareError> { if !self.config.allow_floating_points && is_floating_point(operator) { return Err(MiddlewareError::new( MIDDLEWARE_NAME, @@ -291,8 +294,8 @@ impl FunctionGatekeeper { fn validated_push_operator<'b, 'a: 'b>( &self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { // This is a late check as we first check if given extension is allowed and then check if // floating point opcodes are allowed. This is because different Wasm extensions do // contain floating point opcodes and this approach makes all the gatekeeping more robust. @@ -305,8 +308,8 @@ impl FunctionGatekeeper { fn bulk_memory<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.bulk_memory { self.validated_push_operator(operator, state)?; Ok(()) @@ -318,8 +321,8 @@ impl FunctionGatekeeper { fn exceptions<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.exceptions { self.validated_push_operator(operator, state)?; Ok(()) @@ -331,8 +334,8 @@ impl FunctionGatekeeper { fn function_references<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.function_references { self.validated_push_operator(operator, state)?; Ok(()) @@ -344,8 +347,8 @@ impl FunctionGatekeeper { fn gc<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.gc { self.validated_push_operator(operator, state)?; Ok(()) @@ -358,8 +361,8 @@ impl FunctionGatekeeper { fn legacy_exceptions<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.legacy_exceptions { self.validated_push_operator(operator, state)?; Ok(()) @@ -371,8 +374,8 @@ impl FunctionGatekeeper { fn memory_control<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.memory_control { self.validated_push_operator(operator, state)?; Ok(()) @@ -384,8 +387,8 @@ impl FunctionGatekeeper { fn mvp<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.mvp { self.validated_push_operator(operator, state)?; Ok(()) @@ -397,8 +400,8 @@ impl FunctionGatekeeper { fn reference_types<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.reference_types { self.validated_push_operator(operator, state)?; Ok(()) @@ -410,8 +413,8 @@ impl FunctionGatekeeper { fn relaxed_simd<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.relaxed_simd { self.validated_push_operator(operator, state)?; Ok(()) @@ -423,8 +426,8 @@ impl FunctionGatekeeper { fn saturating_float_to_int<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.saturating_float_to_int { self.validated_push_operator(operator, state)?; Ok(()) @@ -437,8 +440,8 @@ impl FunctionGatekeeper { fn shared_everything_threads<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.shared_everything_threads { self.validated_push_operator(operator, state)?; Ok(()) @@ -450,8 +453,8 @@ impl FunctionGatekeeper { fn sign_extension<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.sign_extension { self.validated_push_operator(operator, state)?; Ok(()) @@ -463,8 +466,8 @@ impl FunctionGatekeeper { fn simd<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.simd { self.validated_push_operator(operator, state)?; Ok(()) @@ -477,8 +480,8 @@ impl FunctionGatekeeper { fn stack_switching<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.stack_switching { self.validated_push_operator(operator, state)?; Ok(()) @@ -490,8 +493,8 @@ impl FunctionGatekeeper { fn tail_call<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.tail_call { self.validated_push_operator(operator, state)?; Ok(()) @@ -502,8 +505,8 @@ impl FunctionGatekeeper { fn threads<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.threads { self.validated_push_operator(operator, state)?; Ok(()) @@ -516,8 +519,8 @@ impl FunctionGatekeeper { fn wide_arithmetic<'b, 'a: 'b>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'b>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'b>, + ) -> Result<(), MiddlewareError> { if self.config.wide_arithmetic { self.validated_push_operator(operator, state)?; Ok(()) @@ -531,8 +534,8 @@ impl FunctionMiddleware for FunctionGatekeeper { fn feed<'a>( &mut self, operator: wasmer::wasmparser::Operator<'a>, - state: &mut wasmer::MiddlewareReaderState<'a>, - ) -> Result<(), wasmer::MiddlewareError> { + state: &mut MiddlewareReaderState<'a>, + ) -> Result<(), MiddlewareError> { macro_rules! match_op { ($op:ident { $($payload:tt)* }) => { $op { .. } @@ -543,12 +546,13 @@ impl FunctionMiddleware for FunctionGatekeeper { } macro_rules! gatekeep { - ($( @$proposal:ident $op:ident $({ $($payload:tt)* })? => $visit:ident)*) => {{ + ($( @$proposal:ident $op:ident $({ $($payload:tt)* })? => $visit:ident ($($ann:tt)*))*) => {{ use wasmer::wasmparser::Operator::*; match operator { $( match_op!($op $({ $($payload)* })?) => self.$proposal(operator, state), )* + _ => Ok(state.push_operator(operator)), } }} } @@ -561,7 +565,10 @@ impl FunctionMiddleware for FunctionGatekeeper { mod tests { use super::*; use std::sync::Arc; - use wasmer::{sys::EngineBuilder, CompilerConfig, Module, Singlepass, Store, WasmError}; + use wasmer::{ + sys::{CompilerConfig, EngineBuilder, Singlepass}, + Module, Store, WasmError, + }; #[test] fn mvp_opcodes_allowed() { diff --git a/node/src/components/binary_port/event.rs b/node/src/components/binary_port/event.rs index 429944dd4d..b5420bee71 100644 --- a/node/src/components/binary_port/event.rs +++ b/node/src/components/binary_port/event.rs @@ -8,6 +8,7 @@ use tokio::net::TcpStream; use crate::effect::Responder; +#[allow(clippy::large_enum_variant)] #[derive(Debug)] pub(crate) enum Event { Initialize, diff --git a/node/src/components/block_synchronizer/event.rs b/node/src/components/block_synchronizer/event.rs index a413611fd0..55657cfb54 100644 --- a/node/src/components/block_synchronizer/event.rs +++ b/node/src/components/block_synchronizer/event.rs @@ -74,7 +74,7 @@ pub(crate) enum Event { impl Display for Event { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { match self { - Event::Request(BlockSynchronizerRequest::NeedNext { .. }) => { + Event::Request(BlockSynchronizerRequest::NeedNext) => { write!(f, "block synchronizer need next request") } Event::Request(BlockSynchronizerRequest::SyncGlobalStates(global_states)) => { diff --git a/node/src/components/block_synchronizer/global_state_synchronizer/tests.rs b/node/src/components/block_synchronizer/global_state_synchronizer/tests.rs index a5883271b3..d73912f8c7 100644 --- a/node/src/components/block_synchronizer/global_state_synchronizer/tests.rs +++ b/node/src/components/block_synchronizer/global_state_synchronizer/tests.rs @@ -13,6 +13,7 @@ use crate::{ }; /// Event for the mock reactor. +#[allow(clippy::large_enum_variant)] #[derive(Debug)] enum ReactorEvent { TrieAccumulatorRequest(TrieAccumulatorRequest), diff --git a/node/src/components/block_synchronizer/tests.rs b/node/src/components/block_synchronizer/tests.rs index 71a305eb8b..1241df6f16 100644 --- a/node/src/components/block_synchronizer/tests.rs +++ b/node/src/components/block_synchronizer/tests.rs @@ -40,6 +40,7 @@ const SHOULD_FETCH_EXECUTION_STATE: bool = true; const STRICT_FINALITY_REQUIRED_VERSION: ProtocolVersion = ProtocolVersion::from_parts(1, 5, 0); /// Event for the mock reactor. +#[allow(clippy::large_enum_variant)] #[derive(Debug, From)] enum MockReactorEvent { MarkBlockCompletedRequest(#[allow(dead_code)] MarkBlockCompletedRequest), @@ -169,8 +170,7 @@ impl TestEnv { TestEnv { block: TestBlockBuilder::new().build(rng).into(), validator_keys, - peers: iter::repeat(()) - .take(num_peers) + peers: iter::repeat_n((), num_peers) .map(|_| NodeId::from(rng.gen::())) .collect(), } diff --git a/node/src/components/block_validator/state.rs b/node/src/components/block_validator/state.rs index 207c7538b9..ccd2e94584 100644 --- a/node/src/components/block_validator/state.rs +++ b/node/src/components/block_validator/state.rs @@ -81,6 +81,7 @@ impl ApprovalInfo { /// /// Tracks whether there are transactions still missing and who is interested in the final /// result. +#[allow(clippy::large_enum_variant)] #[derive(DataSize, Debug)] pub(super) enum BlockValidationState { /// The validity is not yet decided. diff --git a/node/src/components/consensus.rs b/node/src/components/consensus.rs index 02b4a7cea6..bb59d943a0 100644 --- a/node/src/components/consensus.rs +++ b/node/src/components/consensus.rs @@ -55,7 +55,6 @@ use crate::{ NodeRng, }; use protocols::{highway::HighwayProtocol, zug::Zug}; -use traits::Context; pub use cl_context::ClContext; pub(crate) use config::{ChainspecConsensusExt, Config}; @@ -97,15 +96,6 @@ mod relaxed { } pub(crate) use relaxed::{ConsensusMessage, ConsensusMessageDiscriminants}; -/// A request to be handled by the consensus protocol instance in a particular era. -#[derive(DataSize, Debug, Clone, Serialize, Deserialize, PartialEq, Eq, Hash, From)] -pub(crate) enum EraRequest -where - C: Context, -{ - Zug(protocols::zug::SyncRequest), -} - /// A protocol request message, to be handled by the instance in the specified era. #[derive(DataSize, Clone, Serialize, Deserialize)] pub(crate) struct ConsensusRequestMessage { @@ -354,7 +344,7 @@ mod specimen_support { use super::{ protocols::{highway, zug}, ClContext, ConsensusMessage, ConsensusMessageDiscriminants, ConsensusRequestMessage, - EraRequest, SerializedMessage, + SerializedMessage, }; impl LargestSpecimen for ConsensusMessage { @@ -406,12 +396,6 @@ mod specimen_support { } } } - - impl LargestSpecimen for EraRequest { - fn largest_specimen(estimator: &E, cache: &mut Cache) -> Self { - EraRequest::Zug(LargestSpecimen::largest_specimen(estimator, cache)) - } - } } impl Component for EraSupervisor diff --git a/node/src/components/consensus/highway_core/finality_detector.rs b/node/src/components/consensus/highway_core/finality_detector.rs index 60b043e05b..5d23577e83 100644 --- a/node/src/components/consensus/highway_core/finality_detector.rs +++ b/node/src/components/consensus/highway_core/finality_detector.rs @@ -215,6 +215,7 @@ mod tests { *, }; + #[allow(clippy::result_large_err)] #[test] fn finality_detector() -> Result<(), AddUnitError> { let mut state = State::new_test(&[Weight(5), Weight(4), Weight(1)], 0); @@ -253,6 +254,7 @@ mod tests { Ok(()) } + #[allow(clippy::result_large_err)] #[test] fn equivocators() -> Result<(), AddUnitError> { let mut state = State::new_test(&[Weight(5), Weight(4), Weight(1)], 0); diff --git a/node/src/components/consensus/highway_core/highway.rs b/node/src/components/consensus/highway_core/highway.rs index 4b657eb02f..a30c278a45 100644 --- a/node/src/components/consensus/highway_core/highway.rs +++ b/node/src/components/consensus/highway_core/highway.rs @@ -301,6 +301,7 @@ impl Highway { } /// Does initial validation. Returns an error if the vertex is invalid. + #[allow(clippy::result_large_err)] pub(crate) fn pre_validate_vertex( &self, vertex: Vertex, @@ -340,6 +341,7 @@ impl Highway { /// Does full validation. Returns an error if the vertex is invalid. /// /// All dependencies must be added to the state before this validation step. + #[allow(clippy::result_large_err)] pub(crate) fn validate_vertex( &self, pvv: PreValidatedVertex, @@ -897,6 +899,7 @@ pub(crate) mod tests { assert!(highway.add_valid_vertex(vv, now).is_empty()); } + #[allow(clippy::result_large_err)] #[test] fn missing_dependency() -> Result<(), AddUnitError> { let mut state = State::new_test(WEIGHTS, 0); diff --git a/node/src/components/consensus/highway_core/highway_testing.rs b/node/src/components/consensus/highway_core/highway_testing.rs index 3bf85ed3bf..9452e87477 100644 --- a/node/src/components/consensus/highway_core/highway_testing.rs +++ b/node/src/components/consensus/highway_core/highway_testing.rs @@ -651,7 +651,7 @@ where /// Returns a `MutableHandle` on the `HighwayTestHarness` object /// that allows for manipulating internal state of the test state. - fn mutable_handle(&mut self) -> MutableHandle { + fn mutable_handle(&mut self) -> MutableHandle<'_, DS> { MutableHandle(self) } } @@ -1154,7 +1154,7 @@ mod test_harness { // validators). Validator produces two units per round. It may // produce just one before lambda message is finalized. Add one in case it's just // one round (one consensus value) – 1 message. 1/2=0 but 3/2=1 b/c of the rounding. - let rounds_participated_in = (units_count as u8 + 1) / 2; + let rounds_participated_in = (units_count as u8).div_ceil(2); assert_eq!( rounds_participated_in, cv_count, diff --git a/node/src/components/consensus/highway_core/state.rs b/node/src/components/consensus/highway_core/state.rs index 8e01f28358..fb10f2f4ac 100644 --- a/node/src/components/consensus/highway_core/state.rs +++ b/node/src/components/consensus/highway_core/state.rs @@ -220,9 +220,7 @@ impl State { can_propose[idx] = false; } let leader_sequence = LeaderSequence::new(params.seed(), &weights, can_propose); - let pings = iter::repeat(params.start_timestamp()) - .take(weights.len()) - .collect(); + let pings = iter::repeat_n(params.start_timestamp(), weights.len()).collect(); State { params, weights, diff --git a/node/src/components/consensus/highway_core/state/tallies.rs b/node/src/components/consensus/highway_core/state/tallies.rs index 9ada27227d..1a0cd365cb 100644 --- a/node/src/components/consensus/highway_core/state/tallies.rs +++ b/node/src/components/consensus/highway_core/state/tallies.rs @@ -211,6 +211,7 @@ mod tests { } } + #[allow(clippy::result_large_err)] #[test] fn tallies() -> Result<(), AddUnitError> { let mut state = State::new_test(WEIGHTS, 0); diff --git a/node/src/components/consensus/highway_core/state/tests.rs b/node/src/components/consensus/highway_core/state/tests.rs index 0566f4ef31..583ed1ddfc 100644 --- a/node/src/components/consensus/highway_core/state/tests.rs +++ b/node/src/components/consensus/highway_core/state/tests.rs @@ -1,5 +1,6 @@ #![allow(unused_qualifications)] // This is to suppress warnings originating in the test macros. #![allow(clippy::arithmetic_side_effects)] // Overflows in tests would panic anyway. +#![allow(clippy::result_large_err)] use std::{ collections::{hash_map::DefaultHasher, BTreeSet}, diff --git a/node/src/components/consensus/highway_core/synchronizer.rs b/node/src/components/consensus/highway_core/synchronizer.rs index fa4a34024f..6cedd6901e 100644 --- a/node/src/components/consensus/highway_core/synchronizer.rs +++ b/node/src/components/consensus/highway_core/synchronizer.rs @@ -204,7 +204,7 @@ impl Synchronizer { vertices_awaiting_deps: BTreeMap::new(), vertices_to_be_added_later: BTreeMap::new(), vertices_no_deps: Default::default(), - oldest_seen_panorama: iter::repeat(None).take(validator_len).collect(), + oldest_seen_panorama: iter::repeat_n(None, validator_len).collect(), instance_id, requests_sent: BTreeMap::new(), current_era: true, diff --git a/node/src/components/consensus/protocols/highway.rs b/node/src/components/consensus/protocols/highway.rs index 84490200bb..eaa3b19e65 100644 --- a/node/src/components/consensus/protocols/highway.rs +++ b/node/src/components/consensus/protocols/highway.rs @@ -551,6 +551,7 @@ impl HighwayProtocol { /// Prevalidates the vertex but checks the cache for previously validated vertices. /// Avoids multiple validation of the same vertex. + #[allow(clippy::result_large_err)] fn pre_validate_vertex( &mut self, v: Vertex, diff --git a/node/src/components/consensus/protocols/highway/round_success_meter.rs b/node/src/components/consensus/protocols/highway/round_success_meter.rs index 84c8ad73e9..0f0c35fefe 100644 --- a/node/src/components/consensus/protocols/highway/round_success_meter.rs +++ b/node/src/components/consensus/protocols/highway/round_success_meter.rs @@ -193,7 +193,7 @@ impl RoundSuccessMeter { && self.current_round_len * 2 <= self.max_round_len { self.current_round_len * 2 - } else if current_round_index % self.config.acceleration_parameter == 0 + } else if current_round_index.is_multiple_of(self.config.acceleration_parameter) && self.current_round_len > self.min_round_len // we will only accelerate if we collected data about enough rounds && self.rounds.len() as u64 == self.config.num_rounds_to_consider diff --git a/node/src/components/consensus/protocols/highway/round_success_meter/tests.rs b/node/src/components/consensus/protocols/highway/round_success_meter/tests.rs index 85babde4d3..5e819cb958 100644 --- a/node/src/components/consensus/protocols/highway/round_success_meter/tests.rs +++ b/node/src/components/consensus/protocols/highway/round_success_meter/tests.rs @@ -73,7 +73,7 @@ fn new_length_speed_up() { round_success_meter.current_round_id, round_success_meter.current_round_len, ); - if current_round_index % ACCELERATION_PARAMETER == 0 { + if current_round_index.is_multiple_of(ACCELERATION_PARAMETER) { break; }; round_success_meter.current_round_id += TimeDiff::from_millis(1); @@ -100,7 +100,7 @@ fn new_length_can_not_speed_up_because_min_round_len() { round_success_meter.current_round_id, round_success_meter.current_round_len, ); - if current_round_index % ACCELERATION_PARAMETER == 0 { + if current_round_index.is_multiple_of(ACCELERATION_PARAMETER) { break; }; round_success_meter.current_round_id += TimeDiff::from_millis(1); diff --git a/node/src/components/consensus/protocols/zug/des_testing.rs b/node/src/components/consensus/protocols/zug/des_testing.rs index f5e2eede73..e638eb1de6 100644 --- a/node/src/components/consensus/protocols/zug/des_testing.rs +++ b/node/src/components/consensus/protocols/zug/des_testing.rs @@ -639,7 +639,7 @@ where /// Returns a `MutableHandle` on the `ZugTestHarness` object /// that allows for manipulating internal state of the test state. - fn mutable_handle(&mut self) -> MutableHandle { + fn mutable_handle(&mut self) -> MutableHandle<'_, DS> { MutableHandle(self) } } diff --git a/node/src/components/contract_runtime/config.rs b/node/src/components/contract_runtime/config.rs index 6381685f24..dd9442147b 100644 --- a/node/src/components/contract_runtime/config.rs +++ b/node/src/components/contract_runtime/config.rs @@ -40,7 +40,7 @@ impl Config { let value = self .max_global_state_size .unwrap_or(DEFAULT_MAX_GLOBAL_STATE_SIZE); - if value % *OS_PAGE_SIZE != 0 { + if !value.is_multiple_of(*OS_PAGE_SIZE) { warn!( "maximum global state database size {} is not multiple of system page size {}", value, *OS_PAGE_SIZE diff --git a/node/src/components/contract_runtime/event.rs b/node/src/components/contract_runtime/event.rs index edef0a937c..a79d6459e2 100644 --- a/node/src/components/contract_runtime/event.rs +++ b/node/src/components/contract_runtime/event.rs @@ -11,6 +11,7 @@ use crate::effect::{ requests::ContractRuntimeRequest, }; +#[allow(clippy::large_enum_variant)] #[derive(Debug, From, Serialize)] pub(crate) enum Event { #[from] diff --git a/node/src/components/diagnostics_port/tasks.rs b/node/src/components/diagnostics_port/tasks.rs index 12b62eabd5..f85c08ba05 100644 --- a/node/src/components/diagnostics_port/tasks.rs +++ b/node/src/components/diagnostics_port/tasks.rs @@ -436,14 +436,13 @@ impl Session { info!("sending json"); let buf = serde_json::to_string_pretty(response).map_err(|err| { warn!(%err, "error outputting JSON string"); - io::Error::new(io::ErrorKind::Other, err) + io::Error::other(err) })?; writer.write_all(buf.as_bytes()).await?; writer.write_all(b"\n").await?; } OutputFormat::Bincode => { - let buf = bincode::serialize(response) - .map_err(|err| io::Error::new(io::ErrorKind::Other, err))?; + let buf = bincode::serialize(response).map_err(io::Error::other)?; writer.write_all(&buf).await?; } } diff --git a/node/src/components/event_stream_server/sse_server.rs b/node/src/components/event_stream_server/sse_server.rs index 051d0fd762..13eeb881ea 100644 --- a/node/src/components/event_stream_server/sse_server.rs +++ b/node/src/components/event_stream_server/sse_server.rs @@ -288,6 +288,7 @@ fn map_server_sent_event( /// /// If `query` is not empty, returns a 422 response if `query` doesn't have exactly one entry, /// "starts_from" mapped to a value representing an event ID. +#[allow(clippy::result_large_err)] fn parse_query(query: &HashMap) -> Result, Response> { if query.is_empty() { return Ok(None); diff --git a/node/src/components/network/message.rs b/node/src/components/network/message.rs index 9c63b4b46d..bcdec60f3a 100644 --- a/node/src/components/network/message.rs +++ b/node/src/components/network/message.rs @@ -440,7 +440,6 @@ pub struct EstimatorWeights { } mod specimen_support { - use std::iter; use serde::Serialize; @@ -461,9 +460,11 @@ mod specimen_support { estimator, |variant| match variant { MessageDiscriminants::Handshake => Message::Handshake { - network_name: iter::repeat(HIGHEST_UNICODE_CODEPOINT) - .take(largest_network_name) - .collect(), + network_name: std::iter::repeat_n( + HIGHEST_UNICODE_CODEPOINT, + largest_network_name, + ) + .collect(), public_addr: LargestSpecimen::largest_specimen(estimator, cache), protocol_version: LargestSpecimen::largest_specimen(estimator, cache), consensus_certificate: LargestSpecimen::largest_specimen(estimator, cache), diff --git a/node/src/components/network/tasks.rs b/node/src/components/network/tasks.rs index 9700ddbbb6..f3203e6334 100644 --- a/node/src/components/network/tasks.rs +++ b/node/src/components/network/tasks.rs @@ -710,10 +710,7 @@ where // never do. If this happens, there is a bug in the code; // we exit with an error and close the connection. .map_err(|_| { - io::Error::new( - io::ErrorKind::Other, - "demand limiter semaphore closed unexpectedly", - ) + io::Error::other("demand limiter semaphore closed unexpectedly") })?; Metrics::record_trie_request_start(&context.net_metrics); diff --git a/node/src/components/network/tests.rs b/node/src/components/network/tests.rs index 73bd10a1ab..679512095c 100644 --- a/node/src/components/network/tests.rs +++ b/node/src/components/network/tests.rs @@ -330,8 +330,8 @@ fn network_is_complete( /// Checks whether or not a given network has at least one other node in it fn network_started(net: &TestingNetwork) -> bool { net.nodes() - .iter() - .map(|(_, runner)| runner.reactor().inner().net.peers()) + .values() + .map(|runner| runner.reactor().inner().net.peers()) .all(|peers| !peers.is_empty()) } diff --git a/node/src/components/rest_server.rs b/node/src/components/rest_server.rs index bc8e786ab3..0648aeaa8d 100644 --- a/node/src/components/rest_server.rs +++ b/node/src/components/rest_server.rs @@ -19,7 +19,6 @@ //! example: curl -X GET 'http://IP:8888/metrics' mod config; -mod docs; mod event; mod filters; mod http_server; @@ -58,8 +57,6 @@ use crate::{ NodeRng, }; pub use config::Config; -pub use docs::DocExample; -pub(crate) use docs::DOCS_EXAMPLE_PROTOCOL_VERSION; pub(crate) use event::Event; pub(crate) use info::{GetChainspecResult, GetValidatorChangesResult}; diff --git a/node/src/components/rest_server/docs.rs b/node/src/components/rest_server/docs.rs deleted file mode 100644 index 1c6ae930da..0000000000 --- a/node/src/components/rest_server/docs.rs +++ /dev/null @@ -1,40 +0,0 @@ -use casper_types::{ProtocolVersion, PublicKey, SecretKey, Timestamp}; -use once_cell::sync::Lazy; - -use crate::types::InternalEraReport; - -pub(crate) const DOCS_EXAMPLE_PROTOCOL_VERSION: ProtocolVersion = - ProtocolVersion::from_parts(1, 5, 3); - -/// A trait used to generate a static hardcoded example of `Self`. -pub trait DocExample { - /// Generates a hardcoded example of `Self`. - fn doc_example() -> &'static Self; -} - -impl DocExample for Timestamp { - fn doc_example() -> &'static Self { - Timestamp::example() - } -} - -static INTERNAL_ERA_REPORT: Lazy = Lazy::new(|| { - let secret_key_1 = SecretKey::ed25519_from_bytes([0; 32]).unwrap(); - let public_key_1 = PublicKey::from(&secret_key_1); - let equivocators = vec![public_key_1]; - - let secret_key_3 = SecretKey::ed25519_from_bytes([2; 32]).unwrap(); - let public_key_3 = PublicKey::from(&secret_key_3); - let inactive_validators = vec![public_key_3]; - - InternalEraReport { - equivocators, - inactive_validators, - } -}); - -impl DocExample for InternalEraReport { - fn doc_example() -> &'static Self { - &INTERNAL_ERA_REPORT - } -} diff --git a/node/src/components/storage.rs b/node/src/components/storage.rs index 4e073b6008..5d5dfcff22 100644 --- a/node/src/components/storage.rs +++ b/node/src/components/storage.rs @@ -155,6 +155,7 @@ pub struct Storage { utilization_tracker: BTreeMap>, } +#[allow(clippy::large_enum_variant)] pub(crate) enum HighestOrphanedBlockResult { MissingHighestSequence, Orphan(BlockHeader), diff --git a/node/src/components/storage/tests.rs b/node/src/components/storage/tests.rs index 1ba5ea286c..3c0b482337 100644 --- a/node/src/components/storage/tests.rs +++ b/node/src/components/storage/tests.rs @@ -1539,13 +1539,6 @@ fn should_provide_transfers_after_emptied() { assert_eq!(Some(vec![transfer]), maybe_transfers); } -/// Example state used in storage. -#[derive(Clone, Debug, Deserialize, Eq, PartialEq, Serialize)] -struct StateData { - a: Vec, - b: i32, -} - /* TODO: we can't write the legacy db anymore so this test needs to be refactored. #[test] fn test_legacy_interface() { diff --git a/node/src/components/sync_leaper/leap_activity.rs b/node/src/components/sync_leaper/leap_activity.rs index 8e54e7c9a1..84d491c215 100644 --- a/node/src/components/sync_leaper/leap_activity.rs +++ b/node/src/components/sync_leaper/leap_activity.rs @@ -187,11 +187,7 @@ mod tests { I: IntoIterator, { let expected_peers: BTreeSet<_> = expected_peers.into_iter().collect(); - let actual_peers: BTreeSet<_> = leap_activity - .peers() - .iter() - .map(|(node_id, _)| *node_id) - .collect(); + let actual_peers: BTreeSet<_> = leap_activity.peers().keys().copied().collect(); assert_eq!(expected_peers, actual_peers); } diff --git a/node/src/components/transaction_acceptor/event.rs b/node/src/components/transaction_acceptor/event.rs index d03c949e3a..d3b443f0cc 100644 --- a/node/src/components/transaction_acceptor/event.rs +++ b/node/src/components/transaction_acceptor/event.rs @@ -39,6 +39,7 @@ impl EventMetadata { } /// `TransactionAcceptor` events. +#[allow(clippy::large_enum_variant)] #[derive(Debug, Serialize)] pub(crate) enum Event { /// The initiating event to accept a new `Transaction`. diff --git a/node/src/components/transaction_acceptor/tests.rs b/node/src/components/transaction_acceptor/tests.rs index ee77a15fd6..fb979e2be7 100644 --- a/node/src/components/transaction_acceptor/tests.rs +++ b/node/src/components/transaction_acceptor/tests.rs @@ -925,8 +925,8 @@ impl TestScenario { | TestScenario::InvalidArgumentsKind | TestScenario::WasmTransactionWithTooBigPayment | TestScenario::WasmDeployWithTooBigPayment - | TestScenario::RedelegateExceedingMaximumDelegation { .. } - | TestScenario::DelegateExceedingMaximumDelegation { .. } + | TestScenario::RedelegateExceedingMaximumDelegation + | TestScenario::DelegateExceedingMaximumDelegation | TestScenario::VmCasperV2ByPackageHash => false, TestScenario::V1ByPackage(hash_or_name, _, _, scenario, ..) => { match hash_or_name { @@ -1562,8 +1562,8 @@ async fn run_transaction_acceptor_without_timeout( | TestScenario::InvalidArgumentsKind | TestScenario::WasmTransactionWithTooBigPayment | TestScenario::WasmDeployWithTooBigPayment - | TestScenario::RedelegateExceedingMaximumDelegation { .. } - | TestScenario::DelegateExceedingMaximumDelegation { .. } + | TestScenario::RedelegateExceedingMaximumDelegation + | TestScenario::DelegateExceedingMaximumDelegation | TestScenario::VmCasperV2ByPackageHash => { matches!( event, diff --git a/node/src/effect/announcements.rs b/node/src/effect/announcements.rs index 629d927b96..06c5d3d3bf 100644 --- a/node/src/effect/announcements.rs +++ b/node/src/effect/announcements.rs @@ -199,6 +199,7 @@ impl QueueDumpFormat { } /// A `TransactionAcceptor` announcement. +#[allow(clippy::large_enum_variant)] #[derive(Debug, Serialize)] pub(crate) enum TransactionAcceptorAnnouncement { /// A transaction which wasn't previously stored on this node has been accepted and stored. diff --git a/node/src/reactor.rs b/node/src/reactor.rs index caf82ad680..636273279f 100644 --- a/node/src/reactor.rs +++ b/node/src/reactor.rs @@ -569,7 +569,10 @@ where let effect_builder = EffectBuilder::new(event_queue); // Update metrics like memory usage and event queue sizes. - if self.current_event_id % self.event_metrics_threshold == 0 { + if self + .current_event_id + .is_multiple_of(self.event_metrics_threshold) + { // We update metrics on the first very event as well to get a good baseline. if self.last_metrics.elapsed() >= self.event_metrics_min_delay { self.reactor.update_metrics(event_queue); diff --git a/node/src/reactor/main_reactor/tests/consensus_rules.rs b/node/src/reactor/main_reactor/tests/consensus_rules.rs index cd80c42ee4..2b6059d67c 100644 --- a/node/src/reactor/main_reactor/tests/consensus_rules.rs +++ b/node/src/reactor/main_reactor/tests/consensus_rules.rs @@ -1,4 +1,4 @@ -use std::{collections::BTreeMap, sync::Arc}; +use std::{collections::BTreeMap, slice::from_ref, sync::Arc}; use either::Either; use tokio::time::{self}; @@ -147,7 +147,7 @@ async fn run_equivocator_network() { assert_eq!( switch_blocks.equivocators(next_era_id), - [alice_public_key.clone()] + from_ref(&alice_public_key) ); let next_era_bids = era_bids.get(&next_era_id).expect("should have offset era"); @@ -200,11 +200,11 @@ async fn run_equivocator_network() { // Bob is inactive. assert_eq!( switch_blocks.inactive_validators(1), - [bob_public_key.clone()] + from_ref(&bob_public_key) ); assert_eq!( switch_blocks.inactive_validators(2), - [bob_public_key.clone()] + from_ref(&bob_public_key) ); for (era, bids) in era_bids { diff --git a/node/src/reactor/main_reactor/tests/transactions.rs b/node/src/reactor/main_reactor/tests/transactions.rs index dbc3cce486..0529709f39 100644 --- a/node/src/reactor/main_reactor/tests/transactions.rs +++ b/node/src/reactor/main_reactor/tests/transactions.rs @@ -47,7 +47,7 @@ pub(crate) static CHARLIE_PUBLIC_KEY: Lazy = // The amount of gas it takes to execute the generated do_nothing.wasm. // Passing this around as a constant is brittle and should be replaced // with a more sustainable solution in the future. -const DO_NOTHING_WASM_EXECUTION_GAS: u64 = 117720_u64; +const DO_NOTHING_WASM_EXECUTION_GAS: u64 = 116445_u64; pub(crate) const MIN_GAS_PRICE: u8 = 1; const CHAIN_NAME: &str = "single-transaction-test-net"; diff --git a/node/src/testing.rs b/node/src/testing.rs index 4079dace44..3e5d7c44b9 100644 --- a/node/src/testing.rs +++ b/node/src/testing.rs @@ -307,13 +307,13 @@ impl ComponentHarness { continue; } match ev.try_into_control().unwrap() { - ControlAnnouncement::ShutdownDueToUserRequest { .. } => { + ControlAnnouncement::ShutdownDueToUserRequest => { panic!("a control announcement requesting a shutdown due to user request was received") } - ControlAnnouncement::ShutdownForUpgrade { .. } => { + ControlAnnouncement::ShutdownForUpgrade => { panic!("a control announcement requesting a shutdown for upgrade was received") } - ControlAnnouncement::ShutdownAfterCatchingUp { .. } => { + ControlAnnouncement::ShutdownAfterCatchingUp => { panic!("a control announcement requesting a shutdown after catching up was received") } fatal @ ControlAnnouncement::FatalError { .. } => { diff --git a/node/src/tls.rs b/node/src/tls.rs index b5bcaf0003..837d203215 100644 --- a/node/src/tls.rs +++ b/node/src/tls.rs @@ -25,7 +25,6 @@ use std::{ convert::TryInto, fmt::{self, Debug, Display, Formatter}, hash::Hash, - marker::PhantomData, path::Path, str, time::{SystemTime, UNIX_EPOCH}, @@ -179,16 +178,6 @@ impl Distribution for Standard { } } -/// Cryptographic signature. -#[derive(Clone, Deserialize, Eq, Hash, PartialEq, Serialize)] -struct Signature(Vec); - -impl Debug for Signature { - fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { - write!(f, "Signature({:10})", HexFmt(&self.0)) - } -} - /// TLS certificate. /// /// Thin wrapper around `X509` enabling things like Serde serialization and fingerprint caching. @@ -290,17 +279,6 @@ pub(crate) fn load_secret_key>(src: P) -> Result, L PKey::private_key_from_pem(&pem).map_err(LoadSecretKeyError::PrivateKeyFromPem) } -/// A signed value. -/// -/// Combines a value `V` with a `Signature` and a signature scheme. The signature scheme involves -/// serializing the value to bytes and signing the result. -#[derive(Clone, Debug, Deserialize, Eq, Hash, PartialEq, Serialize)] -pub struct Signed { - data: Vec, - signature: Signature, - _phantom: PhantomData, -} - /// Generates a self-signed (key, certificate) pair suitable for TLS and signing. /// /// The common name of the certificate will be "casper-node". @@ -803,25 +781,6 @@ impl Display for KeyFingerprint { } } -impl Display for Signature { - fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { - write!(f, "{:10}", HexFmt(&self.0[..])) - } -} - -impl Display for Signed -where - T: Display + for<'de> Deserialize<'de>, -{ - fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { - // Decode the data here, even if it is expensive. - match bincode::deserialize::(self.data.as_slice()) { - Ok(item) => write!(f, "signed[{}]<{} bytes>", self.signature, item), - Err(_err) => write!(f, "signed[{}]", self.signature), - } - } -} - // Since all `Sha512`s are already hashes, we provide a very cheap hashing function that uses // bytes from the fingerprint as input, cutting the number of bytes to be hashed to 1/16th. diff --git a/node/src/types/chunkable.rs b/node/src/types/chunkable.rs index 5211fda128..19e8ac3a2f 100644 --- a/node/src/types/chunkable.rs +++ b/node/src/types/chunkable.rs @@ -20,7 +20,7 @@ pub trait Chunkable { /// would require instantiating a `Vec` locally (see [`casper_types::bytesrepr::ToBytes`]) /// but can't be returned as reference. Alternative encoding would be to consume `Self` and /// return `Vec` but that may do it unnecessarily if `Self` would be to used again. - fn as_bytes(&self) -> Result>, Self::Error>; + fn as_bytes(&self) -> Result>, Self::Error>; /// Serializes the `self` using the [`Chunkable`] implementation for that type /// and returns a [`Digest`] of the serialized bytes. @@ -33,7 +33,7 @@ pub trait Chunkable { impl Chunkable for Vec { type Error = Infallible; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Borrowed(self)) } } @@ -41,7 +41,7 @@ impl Chunkable for Vec { impl Chunkable for Bytes { type Error = Infallible; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Borrowed(self.inner_bytes())) } } @@ -49,7 +49,7 @@ impl Chunkable for Bytes { impl Chunkable for HashingTrieRaw { type Error = Infallible; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Borrowed(self.inner().inner().inner_bytes())) } } @@ -57,7 +57,7 @@ impl Chunkable for HashingTrieRaw { impl Chunkable for &Vec { type Error = bytesrepr::Error; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Owned((*self).to_bytes()?)) } } @@ -65,7 +65,7 @@ impl Chunkable for &Vec { impl Chunkable for Vec { type Error = bytesrepr::Error; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Owned(self.to_bytes()?)) } } @@ -73,7 +73,7 @@ impl Chunkable for Vec { impl Chunkable for Vec<&ExecutionResultV1> { type Error = bytesrepr::Error; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Owned(self.to_bytes()?)) } } @@ -81,7 +81,7 @@ impl Chunkable for Vec<&ExecutionResultV1> { impl Chunkable for Vec<&ExecutionResultV2> { type Error = bytesrepr::Error; - fn as_bytes(&self) -> Result>, Self::Error> { + fn as_bytes(&self) -> Result>, Self::Error> { Ok(Cow::Owned(self.to_bytes()?)) } } diff --git a/node/src/types/node_id.rs b/node/src/types/node_id.rs index c4b9410078..523fd16983 100644 --- a/node/src/types/node_id.rs +++ b/node/src/types/node_id.rs @@ -2,7 +2,6 @@ use std::fmt::{self, Debug, Display, Formatter}; use datasize::DataSize; use hex_fmt::HexFmt; -use once_cell::sync::Lazy; #[cfg(test)] use rand::Rng; use serde::{de::Error as SerdeError, Deserialize, Deserializer, Serialize, Serializer}; @@ -10,7 +9,7 @@ use serde::{de::Error as SerdeError, Deserialize, Deserializer, Serialize, Seria #[cfg(test)] use casper_types::testing::TestRng; -use crate::{components::rest_server::DocExample, tls::KeyFingerprint}; +use crate::tls::KeyFingerprint; /// The network identifier for a node. /// @@ -74,15 +73,6 @@ impl<'de> Deserialize<'de> for NodeId { } } -static NODE_ID: Lazy = - Lazy::new(|| NodeId(KeyFingerprint::from([1u8; KeyFingerprint::LENGTH]))); - -impl DocExample for NodeId { - fn doc_example() -> &'static Self { - &NODE_ID - } -} - impl Debug for NodeId { fn fmt(&self, formatter: &mut Formatter<'_>) -> fmt::Result { write!(formatter, "NodeId({})", base16::encode_lower(&self.0)) diff --git a/node/src/types/status_feed.rs b/node/src/types/status_feed.rs index 6c6f154321..73de2c929d 100644 --- a/node/src/types/status_feed.rs +++ b/node/src/types/status_feed.rs @@ -1,58 +1,15 @@ -use std::{ - collections::BTreeMap, - net::{IpAddr, Ipv4Addr, SocketAddr}, - time::Duration, -}; +use std::{collections::BTreeMap, time::Duration}; -use once_cell::sync::Lazy; use schemars::JsonSchema; use serde::{Deserialize, Serialize}; use casper_binary_port::ConsensusStatus; use casper_types::{ - ActivationPoint, AvailableBlockRange, Block, BlockHash, BlockSynchronizerStatus, Digest, EraId, - NextUpgrade, Peers, ProtocolVersion, PublicKey, TimeDiff, Timestamp, -}; - -use crate::{ - components::rest_server::{DocExample, DOCS_EXAMPLE_PROTOCOL_VERSION}, - reactor::main_reactor::ReactorState, - types::NodeId, + AvailableBlockRange, Block, BlockHash, BlockSynchronizerStatus, Digest, EraId, NextUpgrade, + Peers, ProtocolVersion, PublicKey, TimeDiff, Timestamp, }; -static CHAINSPEC_INFO: Lazy = Lazy::new(|| { - let next_upgrade = NextUpgrade::new( - ActivationPoint::EraId(EraId::from(42)), - ProtocolVersion::from_parts(2, 0, 1), - ); - ChainspecInfo { - name: String::from("casper-example"), - next_upgrade: Some(next_upgrade), - } -}); - -static GET_STATUS_RESULT: Lazy = Lazy::new(|| { - let node_id = NodeId::doc_example(); - let socket_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1)), 54321); - let mut peers = BTreeMap::new(); - peers.insert(*node_id, socket_addr.to_string()); - let status_feed = StatusFeed { - last_added_block: Some(Block::example().clone()), - peers, - chainspec_info: ChainspecInfo::doc_example().clone(), - our_public_signing_key: Some(PublicKey::example().clone()), - round_length: Some(TimeDiff::from_millis(1 << 16)), - version: crate::VERSION_STRING.as_str(), - node_uptime: Duration::from_secs(13), - reactor_state: ReactorState::Initialize, - last_progress: Timestamp::from(0), - available_block_range: AvailableBlockRange::RANGE_0_0, - block_sync: BlockSynchronizerStatus::example().clone(), - starting_state_root_hash: Digest::default(), - latest_switch_block_hash: Some(BlockHash::default()), - }; - GetStatusResult::new(status_feed, DOCS_EXAMPLE_PROTOCOL_VERSION) -}); +use crate::{reactor::main_reactor::ReactorState, types::NodeId}; /// Summary information from the chainspec. #[derive(Debug, Serialize, Deserialize, Clone)] @@ -62,12 +19,6 @@ pub struct ChainspecInfo { next_upgrade: Option, } -impl DocExample for ChainspecInfo { - fn doc_example() -> &'static Self { - &CHAINSPEC_INFO - } -} - impl ChainspecInfo { pub(crate) fn new(chainspec_network_name: String, next_upgrade: Option) -> Self { ChainspecInfo { @@ -242,9 +193,3 @@ impl GetStatusResult { } } } - -impl DocExample for GetStatusResult { - fn doc_example() -> &'static Self { - &GET_STATUS_RESULT - } -} diff --git a/node/src/types/sync_leap.rs b/node/src/types/sync_leap.rs index 2834b641cf..c66d20a327 100644 --- a/node/src/types/sync_leap.rs +++ b/node/src/types/sync_leap.rs @@ -2183,7 +2183,7 @@ mod tests { } } - pub(crate) fn iter(&mut self) -> TestBlockIterator { + pub(crate) fn iter(&mut self) -> TestBlockIterator<'_> { let block_height = self.block.height(); const DEFAULT_VALIDATOR_WEIGHT: u64 = 100; diff --git a/node/src/types/transaction/meta_transaction.rs b/node/src/types/transaction/meta_transaction.rs index 0cc81cbaa6..4c51808145 100644 --- a/node/src/types/transaction/meta_transaction.rs +++ b/node/src/types/transaction/meta_transaction.rs @@ -159,7 +159,7 @@ impl MetaTransaction { } /// The session args. - pub(crate) fn session_args(&self) -> Cow { + pub(crate) fn session_args(&self) -> Cow<'_, TransactionArgs> { match self { MetaTransaction::Deploy(meta_deploy) => Cow::Owned(TransactionArgs::Named( meta_deploy.deploy().session().args().clone(), @@ -283,7 +283,7 @@ impl MetaTransaction { } } - pub(crate) fn to_session_input_data(&self) -> SessionInputData { + pub(crate) fn to_session_input_data(&self) -> SessionInputData<'_> { let initiator_addr = self.initiator_addr(); let is_standard_payment = self.is_standard_payment(); match self { @@ -316,7 +316,7 @@ impl MetaTransaction { } /// Returns the `SessionInputData` for a payment code if present. - pub(crate) fn to_payment_input_data(&self) -> SessionInputData { + pub(crate) fn to_payment_input_data(&self) -> SessionInputData<'_> { match self { MetaTransaction::Deploy(meta_deploy) => { let initiator_addr = meta_deploy.initiator_addr(); diff --git a/node/src/types/transaction/meta_transaction/meta_transaction_v1.rs b/node/src/types/transaction/meta_transaction/meta_transaction_v1.rs index 5f0a0f43b5..c0f92151e8 100644 --- a/node/src/types/transaction/meta_transaction/meta_transaction_v1.rs +++ b/node/src/types/transaction/meta_transaction/meta_transaction_v1.rs @@ -122,14 +122,14 @@ impl MetaTransactionV1 { runtime: stored_runtime, .. } => { - matches!(stored_runtime, TransactionRuntimeParams::VmCasperV1 { .. }) + matches!(stored_runtime, TransactionRuntimeParams::VmCasperV1) && (!self.is_native_mint() && !self.is_native_auction()) } TransactionTarget::Session { runtime: session_runtime, .. } => { - matches!(session_runtime, TransactionRuntimeParams::VmCasperV1 { .. }) + matches!(session_runtime, TransactionRuntimeParams::VmCasperV1) && (!self.is_native_mint() && !self.is_native_auction()) } } diff --git a/node/src/types/validator_matrix.rs b/node/src/types/validator_matrix.rs index d0681fde4d..4b1ff19d1d 100644 --- a/node/src/types/validator_matrix.rs +++ b/node/src/types/validator_matrix.rs @@ -331,7 +331,7 @@ impl ValidatorMatrix { None } - fn read_inner(&self) -> RwLockReadGuard> { + fn read_inner(&self) -> RwLockReadGuard<'_, BTreeMap> { self.inner.read().unwrap() } diff --git a/node/src/utils/block_signatures.rs b/node/src/utils/block_signatures.rs index fdf0e9649b..23943455e0 100644 --- a/node/src/utils/block_signatures.rs +++ b/node/src/utils/block_signatures.rs @@ -30,10 +30,7 @@ where let mut signature_weight: U512 = U512::zero(); let mut minimum_weight: Option = None; - let total_weight: U512 = trusted_validator_weights - .iter() - .map(|(_, weight)| *weight) - .sum(); + let total_weight: U512 = trusted_validator_weights.values().copied().sum(); match maybe_block_signatures { Some(block_signatures) => { diff --git a/node/src/utils/display_error.rs b/node/src/utils/display_error.rs index a99cb712b5..647d637d8a 100644 --- a/node/src/utils/display_error.rs +++ b/node/src/utils/display_error.rs @@ -31,7 +31,7 @@ where T: error::Error, { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { - let mut opt_source: Option<&(dyn error::Error)> = Some(self.0); + let mut opt_source: Option<&dyn error::Error> = Some(self.0); while let Some(source) = opt_source { write!(f, "{}", source)?; diff --git a/node/src/utils/rlimit.rs b/node/src/utils/rlimit.rs index fe76f2ddcb..efc664c1ec 100644 --- a/node/src/utils/rlimit.rs +++ b/node/src/utils/rlimit.rs @@ -107,10 +107,10 @@ where kind: PhantomData, }), // This should never happen, so we notify the user. - _ => Err(io::Error::new( - io::ErrorKind::Other, - format!("expected return value of -1 or 0, but got {}", outcome), - )), + _ => Err(io::Error::other(format!( + "expected return value of -1 or 0, but got {}", + outcome + ))), } } @@ -122,10 +122,10 @@ where -1 => Err(io::Error::last_os_error()), 0 => Ok(()), // This should never happen, so we notify the user. - _ => Err(io::Error::new( - io::ErrorKind::Other, - format!("expected return value of -1 or 0, but got {}", outcome), - )), + _ => Err(io::Error::other(format!( + "expected return value of -1 or 0, but got {}", + outcome + ))), } } } diff --git a/node/src/utils/specimen.rs b/node/src/utils/specimen.rs index f9277a04f5..aff01b82a7 100644 --- a/node/src/utils/specimen.rs +++ b/node/src/utils/specimen.rs @@ -888,18 +888,19 @@ impl LargestSpecimen for BlockPayload { impl LargestSpecimen for RewardedSignatures { fn largest_specimen(estimator: &E, cache: &mut Cache) -> Self { - RewardedSignatures::new( - std::iter::repeat(LargestSpecimen::largest_specimen(estimator, cache)) - .take(estimator.parameter("signature_rewards_max_delay")), - ) + RewardedSignatures::new(std::iter::repeat_n( + LargestSpecimen::largest_specimen(estimator, cache), + estimator.parameter("signature_rewards_max_delay"), + )) } } impl LargestSpecimen for SingleBlockRewardedSignatures { fn largest_specimen(estimator: &E, _cache: &mut Cache) -> Self { - SingleBlockRewardedSignatures::pack( - std::iter::repeat(1).take(estimator.parameter("validator_count")), - ) + SingleBlockRewardedSignatures::pack(std::iter::repeat_n( + 1, + estimator.parameter("validator_count"), + )) } } @@ -1245,9 +1246,7 @@ fn largest_chain_name(estimator: &E) -> String { /// Returns a string with `len`s characters of the largest possible size. fn string_max_characters(max_char: usize) -> String { - std::iter::repeat(HIGHEST_UNICODE_CODEPOINT) - .take(max_char) - .collect() + std::iter::repeat_n(HIGHEST_UNICODE_CODEPOINT, max_char).collect() } /// Returns the max rounds per era with the specimen parameters. diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 00822fdf58..d72668b05a 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "1.85.1" +channel = "1.91.0" diff --git a/smart_contracts/contract/src/no_std_handlers.rs b/smart_contracts/contract/src/no_std_handlers.rs index e1298375b8..1798593b92 100644 --- a/smart_contracts/contract/src/no_std_handlers.rs +++ b/smart_contracts/contract/src/no_std_handlers.rs @@ -2,7 +2,6 @@ /// A panic handler for use in a `no_std` environment which simply aborts the process. #[panic_handler] -#[no_mangle] pub fn panic(_info: &core::panic::PanicInfo) -> ! { #[cfg(feature = "test-support")] crate::contract_api::runtime::print(&alloc::format!("{_info}")); @@ -12,7 +11,6 @@ pub fn panic(_info: &core::panic::PanicInfo) -> ! { /// An out-of-memory allocation error handler for use in a `no_std` environment which simply aborts /// the process. #[alloc_error_handler] -#[no_mangle] pub fn oom(_: core::alloc::Layout) -> ! { core::intrinsics::abort(); } diff --git a/smart_contracts/contracts/.cargo/config.toml b/smart_contracts/contracts/.cargo/config.toml index f4e8c002fc..bc0ba7d01a 100644 --- a/smart_contracts/contracts/.cargo/config.toml +++ b/smart_contracts/contracts/.cargo/config.toml @@ -1,2 +1,3 @@ [build] target = "wasm32-unknown-unknown" +rustflags = ["-C", "target-feature=-bulk-memory,-bulk-memory-opt"] diff --git a/smart_contracts/contracts/explorer/faucet/README.md b/smart_contracts/contracts/explorer/faucet/README.md index 5b663a8e46..a521c6460a 100644 --- a/smart_contracts/contracts/explorer/faucet/README.md +++ b/smart_contracts/contracts/explorer/faucet/README.md @@ -3,22 +3,22 @@ The Faucet is a contract that is designed to allow users to create a new account or to allow existing users to fund their account easily. ## Install Session + The install session is responsible for creating the faucet's stored contract package and setting up a few named keys in the account used to perform the install. The installer performs the following actions. 1. Takes the `id` parameter and uses it to keep track of the faucet being set up. As an example, if the operator installing the faucet passes `1337` as the `id` named argument to the installer session, it will create a named key called `faucet_1337` for the account used to call the install session. 1. Calls the stored faucet's `init` entry point to initialize a new purse that will be used to fund the faucet. This purse is stored under the named keys of the account used to install the faucet. The `init` entrypoint also initializes the faucet's state and writes to its named keys. 1. Funds the faucet's purse with the amount of motes declared in the `amount` runtime argument. - ## Set Variables > NOTE: Before the faucet can be called, the `set_variables` entrypoint must be called. > -This is a list of the required runtime arguments for calling `set_variables` -* `available_amount: U512` - The total amount available for distribution each interval. -* `distributions_per_interval: u64` - The maximum number of distributions to be made each interval. -* `time_interval: u64` - The amount of time in milliseconds that must pass before the available amount is replenished. +> This is a list of the required runtime arguments for calling `set_variables` +- `available_amount: U512` - The total amount available for distribution each interval. +- `distributions_per_interval: u64` - The maximum number of distributions to be made each interval. +- `time_interval: u64` - The amount of time in milliseconds that must pass before the available amount is replenished. You can adjust the faucet's distribution rate by modifying the variables. If the faucet has distributed a total of `available_amount` in one `time_interval`, then no more token will be available to distribute until `last_distribution_at + time_interval < blocktime`. However, the installer of this contract is not rate limited and may continue to distribute funds from the faucet freely. @@ -34,8 +34,8 @@ If you try to invoke the contract before these variables are set, then you'll ge ### Costs by Entry Point | feature | cost | -|--------------------------|-------------------| -| faucet install | `1492_30_872_143` | -| faucet set variables | `79_455_975` | -| faucet call by installer | `265_26_265_33` | -| faucet call by user | `2_558_318_531` | \ No newline at end of file +| ------------------------ | ----------------- | +| faucet install | `112_723_697_942` | +| faucet set variables | `79_796_780` | +| faucet call by installer | `2_652_960_368` | +| faucet call by user | `2_558_834_176` | diff --git a/smart_contracts/rust-toolchain b/smart_contracts/rust-toolchain index dacd12aede..de3df0b191 100644 --- a/smart_contracts/rust-toolchain +++ b/smart_contracts/rust-toolchain @@ -1 +1 @@ -nightly-2025-02-16 \ No newline at end of file +nightly-2025-08-28 \ No newline at end of file diff --git a/smart_contracts/sdk/src/collections/iterable_map.rs b/smart_contracts/sdk/src/collections/iterable_map.rs index c1b06368c0..ee785c2457 100644 --- a/smart_contracts/sdk/src/collections/iterable_map.rs +++ b/smart_contracts/sdk/src/collections/iterable_map.rs @@ -267,7 +267,7 @@ where /// /// Traverses entries in reverse-insertion order. /// Each item is a tuple of the hashed key and the value. - pub fn iter(&self) -> IterableMapIter { + pub fn iter(&self) -> IterableMapIter<'_, K, V> { IterableMapIter { prefix: &self.prefix, current: self.tail_key_hash, diff --git a/storage/src/data_access_layer/balance_hold.rs b/storage/src/data_access_layer/balance_hold.rs index c712e8257e..24b94518f9 100644 --- a/storage/src/data_access_layer/balance_hold.rs +++ b/storage/src/data_access_layer/balance_hold.rs @@ -166,6 +166,7 @@ impl BalanceHoldRequest { /// Possible balance hold errors. #[derive(Error, Debug, Clone)] #[non_exhaustive] +#[allow(clippy::large_enum_variant)] pub enum BalanceHoldError { /// Tracking copy error. TrackingCopy(TrackingCopyError), @@ -219,6 +220,7 @@ impl Display for BalanceHoldError { /// Result enum that represents all possible outcomes of a balance hold request. #[derive(Debug)] +#[allow(clippy::large_enum_variant)] pub enum BalanceHoldResult { /// Returned if a passed state root hash is not found. RootNotFound, diff --git a/storage/src/data_access_layer/genesis.rs b/storage/src/data_access_layer/genesis.rs index c6c94f881a..fe88d9dff0 100644 --- a/storage/src/data_access_layer/genesis.rs +++ b/storage/src/data_access_layer/genesis.rs @@ -101,6 +101,7 @@ impl Distribution for Standard { /// Represents a result of a `genesis` request. #[derive(Debug, Clone)] +#[allow(clippy::large_enum_variant)] pub enum GenesisResult { /// Genesis fatal. Fatal(String), diff --git a/storage/src/global_state/trie/mod.rs b/storage/src/global_state/trie/mod.rs index 20ba5b8ddf..8acefc32f6 100644 --- a/storage/src/global_state/trie/mod.rs +++ b/storage/src/global_state/trie/mod.rs @@ -441,7 +441,7 @@ impl Trie { } /// Returns an iterator over descendants of the trie. - pub fn iter_children(&self) -> DescendantsIterator { + pub fn iter_children(&self) -> DescendantsIterator<'_> { match self { Trie::::Leaf { .. } => DescendantsIterator::ZeroOrOne(None), Trie::Node { pointer_block } => DescendantsIterator::PointerBlock { @@ -503,7 +503,7 @@ pub(crate) enum LazilyDeserializedTrie { } impl LazilyDeserializedTrie { - pub(crate) fn iter_children(&self) -> DescendantsIterator { + pub(crate) fn iter_children(&self) -> DescendantsIterator<'_> { match self { LazilyDeserializedTrie::Leaf(_) => { // Leaf bytes does not have any children diff --git a/storage/src/global_state/trie_store/cache/mod.rs b/storage/src/global_state/trie_store/cache/mod.rs index 312c9b2eda..009769afea 100644 --- a/storage/src/global_state/trie_store/cache/mod.rs +++ b/storage/src/global_state/trie_store/cache/mod.rs @@ -151,7 +151,7 @@ where } } else { let leaf = TrieCacheNode::Leaf { key, value }; - let _ = std::mem::replace(pointer, Some(CachePointer::InMem(leaf))); + let _ = pointer.replace(CachePointer::InMem(leaf)); return Ok(()); } } diff --git a/storage/src/tracking_copy/tests.rs b/storage/src/tracking_copy/tests.rs index 2f79204402..0eac9da17b 100644 --- a/storage/src/tracking_copy/tests.rs +++ b/storage/src/tracking_copy/tests.rs @@ -1,6 +1,7 @@ use std::{ collections::BTreeSet, iter::FromIterator, + slice::from_ref, sync::{Arc, RwLock}, }; @@ -460,7 +461,7 @@ fn should_traverse_all_paths() { } let expected_contract = unpack( - tc.query(account_key, &[contract_alias.clone()]), + tc.query(account_key, from_ref(&contract_alias)), "contract should exist".to_string(), ); assert_eq!( @@ -482,7 +483,7 @@ fn should_traverse_all_paths() { ); let expected_account = unpack( - tc.query(contract_key, &[account_alias.clone()]), + tc.query(contract_key, from_ref(&account_alias)), "account should exist".to_string(), ); assert_eq!(expected_account, stored_account, "unexpected stored value"); @@ -507,7 +508,7 @@ fn should_traverse_all_paths() { assert_eq!(expected_value, misc_stored_value, "unexpected stored value"); let expected_account_misc = unpack( - tc.query(account_key, &[misc_alias.clone()]), + tc.query(account_key, from_ref(&misc_alias)), "misc value should exist via account".to_string(), ); assert_eq!( diff --git a/types/src/block/era_end.rs b/types/src/block/era_end.rs index 1bb853d154..0c7c370aed 100644 --- a/types/src/block/era_end.rs +++ b/types/src/block/era_end.rs @@ -61,7 +61,7 @@ impl EraEnd { } /// Returns the rewards. - pub fn rewards(&self) -> Rewards { + pub fn rewards(&self) -> Rewards<'_> { match self { EraEnd::V1(v1) => Rewards::V1(v1.rewards()), EraEnd::V2(v2) => Rewards::V2(v2.rewards()), diff --git a/types/src/block/rewarded_signatures.rs b/types/src/block/rewarded_signatures.rs index e483f95a38..bbdab5153f 100644 --- a/types/src/block/rewarded_signatures.rs +++ b/types/src/block/rewarded_signatures.rs @@ -326,7 +326,7 @@ fn chunks_8(bits: impl Iterator) -> impl Iterator Self { - let mut bytes = vec![0; (n_validators + 7) / 8]; + let mut bytes = vec![0; n_validators.div_ceil(8)]; rand::RngCore::fill_bytes(rng, bytes.as_mut()); diff --git a/types/src/block/test_block_builder/test_block_v1_builder.rs b/types/src/block/test_block_builder/test_block_v1_builder.rs index 1a6b68a774..9780ad73ad 100644 --- a/types/src/block/test_block_builder/test_block_v1_builder.rs +++ b/types/src/block/test_block_builder/test_block_v1_builder.rs @@ -1,5 +1,3 @@ -use std::iter; - use rand::Rng; use crate::{testing::TestRng, Block, EraEndV1}; @@ -102,8 +100,7 @@ impl TestBlockV1Builder { /// Associates a number of random deploys with the created block. pub fn random_deploys(mut self, count: usize, rng: &mut TestRng) -> Self { - self.deploys = iter::repeat(()) - .take(count) + self.deploys = std::iter::repeat_n((), count) .map(|_| Deploy::random(rng)) .collect(); self diff --git a/types/src/chainspec.rs b/types/src/chainspec.rs index f29bcfcdba..ac063e60ca 100644 --- a/types/src/chainspec.rs +++ b/types/src/chainspec.rs @@ -48,6 +48,7 @@ pub use core_config::{ DEFAULT_MINIMUM_BID_AMOUNT, }; #[cfg(any(feature = "std", test))] +#[allow(unused_imports)] pub use core_config::{ DEFAULT_BASELINE_MOTES_AMOUNT, DEFAULT_FEE_HANDLING, DEFAULT_REFUND_HANDLING, }; diff --git a/types/src/chainspec/accounts_config/genesis.rs b/types/src/chainspec/accounts_config/genesis.rs index 86f789e956..c1bbe02e57 100644 --- a/types/src/chainspec/accounts_config/genesis.rs +++ b/types/src/chainspec/accounts_config/genesis.rs @@ -281,7 +281,7 @@ impl GenesisAccount { /// some amount of delegated stake. pub fn staked_amount(&self) -> Motes { match self { - GenesisAccount::System { .. } + GenesisAccount::System | GenesisAccount::Account { validator: None, .. } => Motes::zero(), @@ -327,7 +327,7 @@ impl GenesisAccount { /// Is this a virtual system account. pub fn is_system_account(&self) -> bool { - matches!(self, GenesisAccount::System { .. }) + matches!(self, GenesisAccount::System) } /// Is this a validator account. @@ -336,7 +336,7 @@ impl GenesisAccount { GenesisAccount::Account { validator: Some(_), .. } => true, - GenesisAccount::System { .. } + GenesisAccount::System | GenesisAccount::Account { validator: None, .. } diff --git a/types/src/cl_type.rs b/types/src/cl_type.rs index 55abaee605..986e17bfe8 100644 --- a/types/src/cl_type.rs +++ b/types/src/cl_type.rs @@ -743,8 +743,7 @@ mod tests { // [18, 18, 18, ..., 9] for i in 1..1000 { - let bytes = iter::repeat(CL_TYPE_TAG_TUPLE1) - .take(i) + let bytes = std::iter::repeat_n(CL_TYPE_TAG_TUPLE1, i) .chain(iter::once(CL_TYPE_TAG_UNIT)) .collect(); match bytesrepr::deserialize(bytes) { @@ -761,9 +760,8 @@ mod tests { // [0, 0, 0, 0, 18, 18, 18, ..., 18, 9] for i in 1..1000 { - let bytes = iter::repeat(0) - .take(4) - .chain(iter::repeat(CL_TYPE_TAG_TUPLE1).take(i)) + let bytes = std::iter::repeat_n(0, 4) + .chain(std::iter::repeat_n(CL_TYPE_TAG_TUPLE1, i)) .chain(iter::once(CL_TYPE_TAG_UNIT)) .collect(); match bytesrepr::deserialize::(bytes) { diff --git a/types/src/contracts.rs b/types/src/contracts.rs index 5eee24582c..41f3074664 100644 --- a/types/src/contracts.rs +++ b/types/src/contracts.rs @@ -619,10 +619,12 @@ impl JsonSchema for ContractPackageHash { #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] #[cfg_attr(feature = "datasize", derive(DataSize))] #[cfg_attr(feature = "json-schema", derive(JsonSchema))] +#[derive(Default)] pub enum ContractPackageStatus { /// The package is locked and cannot be versioned. Locked, /// The package is unlocked and can be versioned. + #[default] Unlocked, } @@ -637,12 +639,6 @@ impl ContractPackageStatus { } } -impl Default for ContractPackageStatus { - fn default() -> Self { - Self::Unlocked - } -} - impl ToBytes for ContractPackageStatus { fn to_bytes(&self) -> Result, bytesrepr::Error> { let mut result = bytesrepr::allocate_buffer(self)?; diff --git a/types/src/digest.rs b/types/src/digest.rs index bbf0002b2f..356ae4f328 100644 --- a/types/src/digest.rs +++ b/types/src/digest.rs @@ -464,7 +464,7 @@ mod tests { #[test] fn from_valid_hex_should_succeed() { for char in "abcdefABCDEF0123456789".chars() { - let input: String = iter::repeat(char).take(64).collect(); + let input: String = std::iter::repeat_n(char, 64).collect(); assert!(Digest::from_hex(input).is_ok()); } } @@ -480,7 +480,9 @@ mod tests { #[test] fn from_hex_invalid_char_should_fail() { for char in "g %-".chars() { - let input: String = iter::repeat('f').take(63).chain(iter::once(char)).collect(); + let input: String = std::iter::repeat_n('f', 63) + .chain(iter::once(char)) + .collect(); assert!(Digest::from_hex(input).is_err()); } } diff --git a/types/src/package.rs b/types/src/package.rs index c6286eeff5..30a2619c46 100644 --- a/types/src/package.rs +++ b/types/src/package.rs @@ -565,10 +565,12 @@ impl From<&PublicKey> for PackageHash { #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] #[cfg_attr(feature = "datasize", derive(DataSize))] #[cfg_attr(feature = "json-schema", derive(JsonSchema))] +#[derive(Default)] pub enum PackageStatus { /// The package is locked and cannot be versioned. Locked, /// The package is unlocked and can be versioned. + #[default] Unlocked, } @@ -583,12 +585,6 @@ impl PackageStatus { } } -impl Default for PackageStatus { - fn default() -> Self { - Self::Unlocked - } -} - impl ToBytes for PackageStatus { fn to_bytes(&self) -> Result, bytesrepr::Error> { let mut result = bytesrepr::allocate_buffer(self)?; diff --git a/types/src/system/auction.rs b/types/src/system/auction.rs index 0bb4c03c6d..e3d859fa92 100644 --- a/types/src/system/auction.rs +++ b/types/src/system/auction.rs @@ -504,8 +504,8 @@ impl BidsExt for Vec { if let BidKind::Unified(unified) = bid_kind { let delegators = unified .delegators() - .iter() - .map(|(_, y)| DelegatorKind::PublicKey(y.delegator_public_key().clone())) + .values() + .map(|y| DelegatorKind::PublicKey(y.delegator_public_key().clone())) .collect(); ret.insert(unified.validator_public_key().clone(), delegators); } diff --git a/types/src/transaction.rs b/types/src/transaction.rs index d01ef03978..1223887a5d 100644 --- a/types/src/transaction.rs +++ b/types/src/transaction.rs @@ -87,6 +87,7 @@ pub use transaction_target::{TransactionRuntimeParams, TransactionTarget}; #[cfg(feature = "json-schema")] pub(crate) use transaction_v1::arg_handling; #[cfg(any(feature = "std", feature = "testing", feature = "gens", test))] +#[allow(unused_imports)] pub(crate) use transaction_v1::fields_container::FieldsContainer; pub use transaction_v1::{ InvalidTransactionV1, TransactionArgs, TransactionV1, TransactionV1DecodeFromJsonError, @@ -501,10 +502,10 @@ impl<'de> Deserialize<'de> for Transaction { #[serde(deny_unknown_fields)] enum TransactionJson { /// A deploy. - Deploy(Deploy), + Deploy(Box), /// A version 1 transaction. #[serde(rename = "Version1")] - V1(TransactionV1Json), + V1(Box), } #[cfg(any(feature = "std", test))] @@ -519,9 +520,9 @@ impl TryFrom for Transaction { type Error = TransactionJsonError; fn try_from(transaction: TransactionJson) -> Result { match transaction { - TransactionJson::Deploy(deploy) => Ok(Transaction::Deploy(deploy)), + TransactionJson::Deploy(deploy) => Ok(Transaction::Deploy(*deploy)), TransactionJson::V1(v1) => { - TransactionV1::try_from(v1) + TransactionV1::try_from(*v1) .map(Transaction::V1) .map_err(|error| { TransactionJsonError::FailedToMap(format!( @@ -539,9 +540,9 @@ impl TryFrom for TransactionJson { type Error = TransactionJsonError; fn try_from(transaction: Transaction) -> Result { match transaction { - Transaction::Deploy(deploy) => Ok(TransactionJson::Deploy(deploy)), + Transaction::Deploy(deploy) => Ok(TransactionJson::Deploy(Box::new(deploy))), Transaction::V1(v1) => TransactionV1Json::try_from(v1) - .map(TransactionJson::V1) + .map(|t| TransactionJson::V1(Box::new(t))) .map_err(|error| { TransactionJsonError::FailedToMap(format!( "Failed to map Transaction::V1 to TransactionJson::V1, err: {}", diff --git a/types/src/transaction/deploy.rs b/types/src/transaction/deploy.rs index 3b10aa5b97..9b683c584d 100644 --- a/types/src/transaction/deploy.rs +++ b/types/src/transaction/deploy.rs @@ -1,3 +1,4 @@ +#[allow(deprecated)] pub mod deploy_category; mod deploy_hash; mod deploy_header; diff --git a/types/src/transaction/deploy/deploy_category.rs b/types/src/transaction/deploy/deploy_category.rs index 9071fc41bd..ef59d40afc 100644 --- a/types/src/transaction/deploy/deploy_category.rs +++ b/types/src/transaction/deploy/deploy_category.rs @@ -8,6 +8,9 @@ use schemars::JsonSchema; use serde::{Deserialize, Serialize}; /// The category of a [`Transaction`]. +#[deprecated( + note = "DeployCategory is scheduled for removal in the next casper-types major version" +)] #[derive( Copy, Clone, Ord, PartialOrd, Eq, PartialEq, Hash, Serialize, Deserialize, Debug, Default, )] @@ -19,6 +22,7 @@ use serde::{Deserialize, Serialize}; )] #[serde(deny_unknown_fields)] #[repr(u8)] +#[allow(dead_code)] pub enum DeployCategory { /// Standard transaction (the default). #[default] @@ -27,6 +31,7 @@ pub enum DeployCategory { Transfer = 1, } +#[allow(deprecated)] impl fmt::Display for DeployCategory { fn fmt(&self, f: &mut Formatter<'_>) -> fmt::Result { match self { @@ -36,6 +41,7 @@ impl fmt::Display for DeployCategory { } } +#[allow(deprecated)] impl From for DeployCategory { fn from(value: Deploy) -> Self { if value.is_transfer() { diff --git a/types/src/transaction/deploy/error.rs b/types/src/transaction/deploy/error.rs index 14ca089463..d81d492f1e 100644 --- a/types/src/transaction/deploy/error.rs +++ b/types/src/transaction/deploy/error.rs @@ -318,7 +318,7 @@ impl StdError for InvalidDeploy { match self { InvalidDeploy::InvalidApproval { error, .. } => Some(error), InvalidDeploy::InvalidChainName { .. } - | InvalidDeploy::DependenciesNoLongerSupported { .. } + | InvalidDeploy::DependenciesNoLongerSupported | InvalidDeploy::ExcessiveSize(_) | InvalidDeploy::ExcessiveTimeToLive { .. } | InvalidDeploy::TimestampInFuture { .. } diff --git a/types/src/transaction/serialization/mod.rs b/types/src/transaction/serialization/mod.rs index e410ac711b..cba5c2e344 100644 --- a/types/src/transaction/serialization/mod.rs +++ b/types/src/transaction/serialization/mod.rs @@ -98,7 +98,7 @@ impl CalltableSerializationEnvelope { size } - pub fn start_consuming(&self) -> Result, Error> { + pub fn start_consuming(&self) -> Result>, Error> { if self.fields.is_empty() { return Ok(None); } @@ -156,12 +156,12 @@ impl CalltableFieldsIterator<'_> { pub fn deserialize_and_maybe_next( &self, - ) -> Result<(T, Option), Error> { + ) -> Result<(T, Option>), Error> { let (t, maybe_window) = self.step()?; Ok((t, maybe_window)) } - fn step(&self) -> Result<(T, Option), Error> { + fn step(&self) -> Result<(T, Option>), Error> { let (t, remainder) = T::from_bytes(self.bytes)?; let parent_fields = &self.parent.fields; let parent_fields_len = parent_fields.len(); diff --git a/utils/validation/src/abi.rs b/utils/validation/src/abi.rs index 70d4770b07..e2f208a37d 100644 --- a/utils/validation/src/abi.rs +++ b/utils/validation/src/abi.rs @@ -12,6 +12,7 @@ use crate::test_case::{Error, TestCase}; /// Representation of supported input value. #[derive(Serialize, Deserialize, Debug, From)] #[serde(tag = "type", content = "value")] +#[allow(clippy::large_enum_variant)] pub enum Input { U8(u8), U16(u16),