diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3f012d5..bd2943e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -54,6 +54,24 @@ jobs: - name: Run EF tests run: ./scripts/run_ef_tests.sh ${{ matrix.trie }} + execution-witness-tests: + name: Execution Witness tests + runs-on: ubuntu-latest + timeout-minutes: 30 + env: + RUST_LOG: info + RUST_BACKTRACE: 1 + EF_TEST_TRIE: default + EXECUTION_WITNESS_TESTS_URL: https://github.com/jsign/artifacts/releases/download/execution_witness_v0.0.1/execution_witness_tests_409fae8.tar.gz + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + - uses: Swatinem/rust-cache@v2 + with: + cache-on-failure: true + - name: Run Execution Witness tests + run: cargo run -p ef-test-runner --release -- --skip testing/runner/execution-witness-skip.txt $EXECUTION_WITNESS_TESTS_URL + no-std: name: no_std (RISC-V) runs-on: ubuntu-latest diff --git a/Cargo.lock b/Cargo.lock index 6a0d06d..a676895 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,6 +2,12 @@ # It is not intended for manual editing. version = 4 +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" + [[package]] name = "ahash" version = "0.8.12" @@ -52,7 +58,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "alloy-serde", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "alloy-tx-macros", "arbitrary", "auto_impl", @@ -133,9 +139,9 @@ dependencies = [ [[package]] name = "alloy-eip7928" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3231de68d5d6e75332b7489cfcc7f4dfabeba94d990a10e4b923af0e6623540" +checksum = "f8222b1d88f9a6d03be84b0f5e76bb60cd83991b43ad8ab6477f0e4a7809b98d" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -197,7 +203,7 @@ dependencies = [ "alloy-eips", "alloy-primitives", "alloy-serde", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "borsh", "serde", "serde_with", @@ -218,9 +224,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e414aa37b335ad2acb78a95814c59d137d53139b412f87aed1e10e2d862cd49" +checksum = "e9dbe713da0c737d9e5e387b0ba790eb98b14dd207fe53eef50e19a5a8ec3dac" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -284,9 +290,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b1483f8c2562bf35f0270b697d5b5fe8170464e935bd855a4c5eaf6f89b354" +checksum = "de3b431b4e72cd8bd0ec7a50b4be18e73dab74de0dba180eef171055e5d5926e" dependencies = [ "alloy-rlp", "arbitrary", @@ -295,16 +301,16 @@ dependencies = [ "const-hex", "derive_more", "foldhash 0.2.0", - "getrandom 0.4.1", + "getrandom 0.4.2", "hashbrown 0.16.1", - "indexmap 2.13.0", + "indexmap 2.14.0", "itoa", "k256", "keccak-asm", "paste", "proptest", "proptest-derive", - "rand 0.9.2", + "rand 0.9.3", "rapidhash", "ruint", "rustc-hash", @@ -314,9 +320,9 @@ dependencies = [ [[package]] name = "alloy-rlp" -version = "0.3.13" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e93e50f64a77ad9c5470bf2ad0ca02f228da70c792a8f06634801e202579f35e" +checksum = "dc90b1e703d3c03f4ff7f48e82dd0bc1c8211ab7d079cd836a06fcfeb06651cb" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -325,13 +331,13 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.13" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce8849c74c9ca0f5a03da1c865e3eb6f768df816e67dd3721a398a8a7e398011" +checksum = "f36834a5c0a2fa56e171bf256c34d70fca07d0c0031583edea1c4946b7889c9e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -441,41 +447,41 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c4b64c8146291f750c3f391dff2dd40cf896f7e2b253417a31e342aa7265baa" +checksum = "ab81bab693da9bb79f7a95b64b394718259fdd7e41dceeced4cad57cb71c4f6a" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9df903674682f9bae8d43fdea535ab48df2d6a8cb5104ca29c58ada22ef67b3" +checksum = "489f1620bb7e2483fb5819ed01ab6edc1d2f93939dce35a5695085a1afd1d699" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.13.0", + "indexmap 2.14.0", "proc-macro-error2", "proc-macro2", "quote", "sha3", - "syn 2.0.116", + "syn 2.0.117", "syn-solidity", ] [[package]] name = "alloy-sol-macro-input" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "737b8a959f527a86e07c44656db237024a32ae9b97d449f788262a547e8aa136" +checksum = "56cef806ad22d4392c5fc83cf8f2089f988eb99c7067b4e0c6f1971fc1cca318" dependencies = [ "const-hex", "dunce", @@ -483,25 +489,25 @@ dependencies = [ "macro-string", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b28e6e86c6d2db52654b65a5a76b4f57eae5a32a7f0aa2222d1dbdb74e2cb8e0" +checksum = "a6df77fea9d6a2a75c0ef8d2acbdfd92286cc599983d3175ccdc170d3433d249" dependencies = [ "serde", - "winnow", + "winnow 0.7.15", ] [[package]] name = "alloy-sol-types" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdf7effe4ab0a4f52c865959f790036e61a7983f68b13b75d7fbcedf20b753ce" +checksum = "64612d29379782a5dde6f4b6570d9c756d734d760c0c94c254d361e678a6591f" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -527,14 +533,13 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d7fd448ab0a017de542de1dcca7a58e7019fe0e7a34ed3f9543ebddf6aceffa" +checksum = "3f14b5d9b2c2173980202c6ff470d96e7c5e202c65a9f67884ad565226df7fbb" dependencies = [ "alloy-primitives", "alloy-rlp", "arbitrary", - "arrayvec", "derive_arbitrary", "derive_more", "nybbles 0.4.8", @@ -552,10 +557,10 @@ version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d69722eddcdf1ce096c3ab66cf8116999363f734eb36fe94a148f4f71c85da84" dependencies = [ - "darling 0.23.0", + "darling", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -569,9 +574,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.21" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d5b281e737544384e969a5ccad3f1cdd24b48086a0fc1b2a5262a26b8f4f4a" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -584,15 +589,15 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] @@ -619,9 +624,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.101" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e0fee31ef5ed1ba1316088939cea399010ed7731dba877ed44aeb407a75ea" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "arbitrary" @@ -762,7 +767,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -800,7 +805,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -889,7 +894,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -945,7 +950,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -972,7 +977,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1023,7 +1028,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1108,25 +1113,26 @@ dependencies = [ [[package]] name = "borsh" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +checksum = "cfd1e3f8955a5d7de9fab72fc8373fade9fb8a703968cb200ae3dc6cf08e185a" dependencies = [ "borsh-derive", + "bytes", "cfg_aliases", ] [[package]] name = "borsh-derive" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" +checksum = "bfcfdc083699101d5a7965e49925975f2f55060f94f9a05e7187be95d530ca59" dependencies = [ "once_cell", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1140,9 +1146,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.19.1" +version = "3.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" [[package]] name = "byte-slice-cast" @@ -1170,7 +1176,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1222,9 +1228,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.56" +version = "1.2.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +checksum = "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20" dependencies = [ "find-msvc-tools", "jobserver", @@ -1255,9 +1261,9 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.43" +version = "0.4.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118" +checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" dependencies = [ "iana-time-zone", "js-sys", @@ -1280,9 +1286,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.58" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63be97961acde393029492ce0be7a1af7e323e6bae9511ebfac33751be5e6806" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" dependencies = [ "clap_builder", "clap_derive", @@ -1290,9 +1296,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.58" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f13174bda5dfd69d7e947827e5af4b0f2f94a4a3ee92912fba07a66150f21e2" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -1302,33 +1308,33 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.55" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92793da1a46a5f2a02a6f4c46c6496b28c43638adea8306fcb0caa1634f24e5" +checksum = "1110bd8a634a1ab8cb04345d8d878267d57c3cf1b38d91b71af6686408bbca6a" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "clap_lex" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a822ea5bc7590f9d40f1ba12c0dc3c2760f3482c6984db1573ad11031420831" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "colorchoice" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "const-hex" -version = "1.17.0" +version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bb320cac8a0750d7f25280aa97b09c26edfe161164238ecbbb31092b079e735" +checksum = "531185e432bb31db1ecda541e9e7ab21468d4d844ad7505e0546a49b4945d49b" dependencies = [ "cfg-if", "cpufeatures", @@ -1401,6 +1407,15 @@ version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +[[package]] +name = "crc32fast" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +dependencies = [ + "cfg-if", +] + [[package]] name = "critical-section" version = "1.2.0" @@ -1478,38 +1493,14 @@ dependencies = [ "typenum", ] -[[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]] name = "darling" version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" dependencies = [ - "darling_core 0.23.0", - "darling_macro 0.23.0", -] - -[[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", - "strsim", - "syn 2.0.116", + "darling_core", + "darling_macro", ] [[package]] @@ -1523,18 +1514,7 @@ dependencies = [ "quote", "serde", "strsim", - "syn 2.0.116", -] - -[[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.116", + "syn 2.0.117", ] [[package]] @@ -1543,9 +1523,9 @@ version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" dependencies = [ - "darling_core 0.23.0", + "darling_core", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1582,9 +1562,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.5.6" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc3dc5ad92c2e2d1c193bbbbdf2ea477cb81331de4f3103f267ca18368b988c4" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" dependencies = [ "powerfmt", "serde_core", @@ -1603,13 +1583,13 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" +checksum = "d08b3a0bcc0d079199cd476b2cae8435016ec11d1c0986c6901c5ac223041534" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1620,7 +1600,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1642,7 +1622,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.116", + "syn 2.0.117", "unicode-xid", ] @@ -1675,7 +1655,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1714,7 +1694,19 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", +] + +[[package]] +name = "ef-test-runner" +version = "0.1.0" +dependencies = [ + "clap", + "ef-tests", + "flate2", + "reqwest", + "tar", + "tempfile", ] [[package]] @@ -1798,7 +1790,7 @@ checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -1829,9 +1821,9 @@ dependencies = [ [[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 = "fastrlp" @@ -1865,6 +1857,17 @@ dependencies = [ "subtle", ] +[[package]] +name = "filetime" +version = "0.2.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f98844151eee8917efc50bd9e8318cb963ae8b297431495d3f758616ea5c57db" +dependencies = [ + "cfg-if", + "libc", + "libredox", +] + [[package]] name = "find-msvc-tools" version = "0.1.9" @@ -1901,7 +1904,17 @@ checksum = "6dc7a9cb3326bafb80642c5ce99b39a2c0702d4bfa8ee8a3e773791a6cbe2407" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", +] + +[[package]] +name = "flate2" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" +dependencies = [ + "crc32fast", + "miniz_oxide", ] [[package]] @@ -2002,7 +2015,7 @@ checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2058,8 +2071,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", + "js-sys", "libc", "wasi", + "wasm-bindgen", ] [[package]] @@ -2069,20 +2084,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" dependencies = [ "cfg-if", + "js-sys", "libc", - "r-efi", + "r-efi 5.3.0", "wasip2", + "wasm-bindgen", ] [[package]] name = "getrandom" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139ef39800118c7683f2fd3c98c1b23c09ae076556b435f8e9064ae108aaeeec" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" dependencies = [ "cfg-if", "libc", - "r-efi", + "r-efi 6.0.0", "wasip2", "wasip3", ] @@ -2116,7 +2133,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.13.0", + "indexmap 2.14.0", "slab", "tokio", "tokio-util", @@ -2162,6 +2179,12 @@ dependencies = [ "serde_core", ] +[[package]] +name = "hashbrown" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" + [[package]] name = "heck" version = "0.5.0" @@ -2239,9 +2262,9 @@ checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] name = "hyper" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" +checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" dependencies = [ "atomic-waker", "bytes", @@ -2253,12 +2276,27 @@ dependencies = [ "httparse", "itoa", "pin-project-lite", - "pin-utils", "smallvec", "tokio", "want", ] +[[package]] +name = "hyper-rustls" +version = "0.27.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2b52f86d1d4bc0d6b4e6826d960b1b333217e07d36b882dca570a5e1c48895b" +dependencies = [ + "http", + "hyper", + "hyper-util", + "rustls", + "tokio", + "tokio-rustls", + "tower-service", + "webpki-roots", +] + [[package]] name = "hyper-timeout" version = "0.5.2" @@ -2321,12 +2359,13 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" dependencies = [ "displaydoc", "potential_utf", + "utf8_iter", "yoke", "zerofrom", "zerovec", @@ -2334,9 +2373,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" dependencies = [ "displaydoc", "litemap", @@ -2347,9 +2386,9 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" dependencies = [ "icu_collections", "icu_normalizer_data", @@ -2361,15 +2400,15 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" [[package]] name = "icu_properties" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" dependencies = [ "icu_collections", "icu_locale_core", @@ -2381,15 +2420,15 @@ dependencies = [ [[package]] name = "icu_properties_data" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" [[package]] name = "icu_provider" -version = "2.1.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" dependencies = [ "displaydoc", "icu_locale_core", @@ -2450,7 +2489,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2472,22 +2511,22 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.13.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" dependencies = [ "arbitrary", "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.17.0", "serde", "serde_core", ] [[package]] name = "inotify" -version = "0.11.0" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" +checksum = "bd5b3eaf1a28b758ac0faa5a4254e8ab2705605496f1b1f3fbbc3988ad73d199" dependencies = [ "bitflags 2.11.0", "inotify-sys", @@ -2505,15 +2544,15 @@ 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 = "iri-string" -version = "0.7.10" +version = "0.7.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" +checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20" dependencies = [ "memchr", "serde", @@ -2554,9 +2593,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "jobserver" @@ -2570,10 +2609,12 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.85" +version = "0.3.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3" +checksum = "2964e92d1d9dc3364cae4d718d93f227e3abb088e747d92e0395bfdedf1c12ca" dependencies = [ + "cfg-if", + "futures-util", "once_cell", "wasm-bindgen", ] @@ -2603,9 +2644,9 @@ dependencies = [ [[package]] name = "keccak-asm" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b646a74e746cd25045aa0fd42f4f7f78aa6d119380182c7e63a5593c4ab8df6f" +checksum = "fa468878266ad91431012b3e5ef1bf9b170eab22883503a318d46857afa4579a" dependencies = [ "digest 0.10.7", "sha3-asm", @@ -2645,9 +2686,9 @@ checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" [[package]] name = "libc" -version = "0.2.182" +version = "0.2.185" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" +checksum = "52ff2c0fe9bc6cb6b14a0592c2ff4fa9ceb83eea9db979b0487cd054946a2b8f" [[package]] name = "libloading" @@ -2665,6 +2706,18 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" +[[package]] +name = "libredox" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c" +dependencies = [ + "bitflags 2.11.0", + "libc", + "plain", + "redox_syscall 0.7.4", +] + [[package]] name = "librocksdb-sys" version = "0.17.3+10.4.2" @@ -2682,9 +2735,9 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.26" +version = "1.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786a7c68b5bbe177567d237ec4940d11666206e97b20a983421b251092f24d7d" +checksum = "fc3a226e576f50782b3305c5ccf458698f92798987f551c6a02efe8276721e22" dependencies = [ "cc", "pkg-config", @@ -2693,15 +2746,15 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" [[package]] name = "litemap" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" [[package]] name = "lock_api" @@ -2718,6 +2771,12 @@ version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +[[package]] +name = "lru-slab" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" + [[package]] name = "lz4-sys" version = "1.11.1+lz4-1.10.0" @@ -2730,9 +2789,9 @@ dependencies = [ [[package]] name = "lz4_flex" -version = "0.12.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" +checksum = "98c23545df7ecf1b16c303910a69b079e8e251d60f7dd2cc9b4177f2afaf1746" [[package]] name = "mach2" @@ -2751,7 +2810,7 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2796,7 +2855,7 @@ checksum = "161ab904c2c62e7bda0f7562bf22f96440ca35ff79e66c800cbac298f2f4f5ec" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2805,11 +2864,21 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", + "simd-adler32", +] + [[package]] name = "mio" -version = "1.1.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" +checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" dependencies = [ "libc", "log", @@ -2835,7 +2904,7 @@ checksum = "59b43b4fd69e3437618106f7754f34021b831a514f9e1a98ae863cabcd8d8dad" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2855,7 +2924,7 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -2948,9 +3017,9 @@ dependencies = [ [[package]] name = "num-conv" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf97ec579c3c42f953ef76dbf8d55ac91fb219dde70e49aa4a6b7d74e9919050" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" [[package]] name = "num-integer" @@ -3005,9 +3074,9 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" +checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" dependencies = [ "num_enum_derive", "rustversion", @@ -3015,14 +3084,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.5" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" +checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3053,18 +3122,18 @@ dependencies = [ [[package]] name = "objc2-core-foundation" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ "bitflags 2.11.0", ] [[package]] name = "objc2-io-kit" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71c1c64d6120e51cd86033f67176b1cb66780c2efe34dec55176f77befd93c0a" +checksum = "33fafba39597d6dc1fb709123dfa8289d39406734be322956a69f0931c73bb15" dependencies = [ "libc", "objc2-core-foundation", @@ -3072,9 +3141,9 @@ dependencies = [ [[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" dependencies = [ "critical-section", "portable-atomic", @@ -3115,9 +3184,9 @@ dependencies = [ [[package]] name = "opentelemetry-otlp" -version = "0.31.0" +version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2366db2dca4d2ad033cad11e6ee42844fd727007af5ad04a1730f4cb8163bf" +checksum = "1f69cd6acbb9af919df949cd1ec9e5e7fdc2ef15d234b6b795aaa525cc02f71f" dependencies = [ "http", "opentelemetry", @@ -3162,7 +3231,7 @@ dependencies = [ "futures-util", "opentelemetry", "percent-encoding", - "rand 0.9.2", + "rand 0.9.3", "thiserror", ] @@ -3214,7 +3283,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3235,7 +3304,7 @@ checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.18", "smallvec", "windows-link 0.2.1", ] @@ -3293,7 +3362,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3307,35 +3376,29 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.10" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "f1749c7ed4bcaf4c3d0a3efc28538844fb29bcdd7d2b67b2be7e20ba861ff517" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.10" +version = "1.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "d9b20ed30f105399776b9c883e68e536ef602a16ae6f596d2c473591d6ad64c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "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" @@ -3349,9 +3412,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.32" +version = "0.3.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" + +[[package]] +name = "plain" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" [[package]] name = "plain_hasher" @@ -3370,9 +3439,9 @@ checksum = "c33a9471896f1c69cecef8d20cbe2f7accd12527ce60845ff44c153bb2a21b49" [[package]] name = "potential_utf" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" dependencies = [ "zerovec", ] @@ -3399,7 +3468,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3424,9 +3493,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.4.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" dependencies = [ "toml_edit", ] @@ -3450,7 +3519,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3464,15 +3533,15 @@ dependencies = [ [[package]] name = "proptest" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37566cb3fdacef14c0737f9546df7cfeadbfbc9fef10991038bf5015d0c80532" +checksum = "4b45fcc2344c680f5025fe57779faef368840d0bd1f42f216291f0dc4ace4744" dependencies = [ "bit-set", "bit-vec", "bitflags 2.11.0", "num-traits", - "rand 0.9.2", + "rand 0.9.3", "rand_chacha 0.9.0", "rand_xorshift", "regex-syntax", @@ -3499,7 +3568,7 @@ checksum = "fb6dc647500e84a25a85b100e76c85b8ace114c209432dc174f20aac11d4ed6c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3522,7 +3591,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3542,7 +3611,7 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3566,11 +3635,66 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +[[package]] +name = "quinn" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" +dependencies = [ + "bytes", + "cfg_aliases", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls", + "socket2", + "thiserror", + "tokio", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-proto" +version = "0.11.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "434b42fec591c96ef50e21e886936e66d3cc3f737104fdb9b737c40ffb94c098" +dependencies = [ + "bytes", + "getrandom 0.3.4", + "lru-slab", + "rand 0.9.3", + "ring", + "rustc-hash", + "rustls", + "rustls-pki-types", + "slab", + "thiserror", + "tinyvec", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-udp" +version = "0.5.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.60.2", +] + [[package]] name = "quote" -version = "1.0.44" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] @@ -3581,6 +3705,12 @@ 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 = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + [[package]] name = "radium" version = "0.7.0" @@ -3610,9 +3740,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.2" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" +checksum = "7ec095654a25171c2124e9e3393a930bddbffdc939556c914957a4c3e0a87166" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.5", @@ -3669,9 +3799,9 @@ dependencies = [ [[package]] name = "rapidhash" -version = "4.3.0" +version = "4.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84816e4c99c467e92cf984ee6328caa976dfecd33a673544489d79ca2caaefe5" +checksum = "b5e48930979c155e2f33aa36ab3119b5ee81332beb6482199a8ecd6029b80b59" dependencies = [ "rustversion", ] @@ -3714,6 +3844,15 @@ dependencies = [ "bitflags 2.11.0", ] +[[package]] +name = "redox_syscall" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f450ad9c3b1da563fb6948a8e0fb0fb9269711c9c73d9ea1de5058c79c8d643a" +dependencies = [ + "bitflags 2.11.0", +] + [[package]] name = "ref-cast" version = "1.0.25" @@ -3731,7 +3870,7 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -3759,9 +3898,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.9" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a96887878f22d7bad8a3b6dc5b7440e0ada9a245242924394987b21cf2210a4c" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rend" @@ -3787,16 +3926,21 @@ dependencies = [ "http-body", "http-body-util", "hyper", + "hyper-rustls", "hyper-util", "js-sys", "log", "percent-encoding", "pin-project-lite", + "quinn", + "rustls", + "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper", "tokio", + "tokio-rustls", "tower", "tower-http", "tower-service", @@ -3804,12 +3948,13 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots", ] [[package]] name = "reth-chain-state" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3820,7 +3965,7 @@ dependencies = [ "metrics", "parking_lot", "pin-project", - "rand 0.9.2", + "rand 0.9.3", "reth-chainspec", "reth-errors", "reth-ethereum-primitives", @@ -3838,8 +3983,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-chains", "alloy-consensus", @@ -3847,7 +3992,7 @@ dependencies = [ "alloy-evm", "alloy-genesis", "alloy-primitives", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "auto_impl", "derive_more", "reth-ethereum-forks", @@ -3858,15 +4003,15 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf1df733d93427eb197cf80a7aaa68bff8949e1b59d34cde1ad410351a24136d" +checksum = "a96e584e01478c951911946a7864f18e967c1cd90965e136e2d1b51aa3da9126" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "arbitrary", "bytes", "modular-bitfield", @@ -3879,19 +4024,19 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d14acf8feadf1eed0734d1766b55b6c19a374d4cb140bc862880f96da33e7e5a" +checksum = "c342ae46f5a886b8bf506205b9501b1032b896defd0f4f156edb423007fef880" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "reth-config" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "eyre", "reth-network-types", @@ -3903,8 +4048,8 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -3916,8 +4061,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3929,8 +4074,8 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "derive_more", @@ -3957,8 +4102,8 @@ dependencies = [ [[package]] name = "reth-db-api" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -3983,8 +4128,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -4013,8 +4158,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-eips", "alloy-primitives", @@ -4028,8 +4173,8 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4053,8 +4198,8 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -4064,8 +4209,8 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4080,8 +4225,8 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-eips", "alloy-primitives", @@ -4096,8 +4241,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -4109,8 +4254,8 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4123,8 +4268,8 @@ dependencies = [ [[package]] name = "reth-etl" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "rayon", "reth-db-api", @@ -4133,8 +4278,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4155,8 +4300,8 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4175,8 +4320,8 @@ dependencies = [ [[package]] name = "reth-execution-errors" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-evm", "alloy-primitives", @@ -4188,8 +4333,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4207,8 +4352,8 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "serde", "serde_json", @@ -4217,8 +4362,8 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "bitflags 2.11.0", "byteorder", @@ -4234,8 +4379,8 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "bindgen", "cc", @@ -4243,8 +4388,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "metrics", "metrics-derive", @@ -4252,8 +4397,8 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "ipnet", @@ -4261,8 +4406,8 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -4274,8 +4419,8 @@ dependencies = [ [[package]] name = "reth-network-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-eip2124", "reth-net-banlist", @@ -4285,8 +4430,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "anyhow", "bincode", @@ -4302,8 +4447,8 @@ dependencies = [ [[package]] name = "reth-node-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "reth-chainspec", "reth-db-api", @@ -4314,8 +4459,8 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "pin-project", "reth-payload-primitives", @@ -4326,8 +4471,8 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4350,9 +4495,9 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03650bb740d1bca0d974c007248177ae7a7e38c50c9f46eb02292c5d9bc01252" +checksum = "8ca36e245593498020c31e707154fc13391164eb90444da76d67361f646e7669" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4360,7 +4505,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "arbitrary", "byteorder", "bytes", @@ -4383,8 +4528,8 @@ dependencies = [ [[package]] name = "reth-provider" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4429,8 +4574,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "arbitrary", @@ -4445,8 +4590,8 @@ dependencies = [ [[package]] name = "reth-revm" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -4460,8 +4605,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "arbitrary", @@ -4474,8 +4619,8 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "derive_more", @@ -4488,8 +4633,8 @@ dependencies = [ [[package]] name = "reth-storage-api" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4512,8 +4657,8 @@ dependencies = [ [[package]] name = "reth-storage-errors" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-eips", "alloy-primitives", @@ -4530,8 +4675,8 @@ dependencies = [ [[package]] name = "reth-tasks" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "crossbeam-utils", "dashmap", @@ -4551,8 +4696,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "clap", "eyre", @@ -4563,13 +4708,13 @@ dependencies = [ "tracing-journald", "tracing-logfmt", "tracing-samply", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", ] [[package]] name = "reth-tracing-otlp" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "clap", "eyre", @@ -4579,20 +4724,20 @@ dependencies = [ "opentelemetry_sdk", "tracing", "tracing-opentelemetry", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", "url", ] [[package]] name = "reth-trie" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "auto_impl", "itertools 0.14.0", "metrics", @@ -4611,15 +4756,15 @@ dependencies = [ [[package]] name = "reth-trie-common" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", "alloy-serde", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "arbitrary", "arrayvec", "bytes", @@ -4638,8 +4783,8 @@ dependencies = [ [[package]] name = "reth-trie-db" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "metrics", @@ -4658,12 +4803,12 @@ dependencies = [ [[package]] name = "reth-trie-sparse" -version = "1.11.3" -source = "git+https://github.com/paradigmxyz/reth?rev=adc960162f#adc960162fb960471c98d301fcef4a1bea2abe02" +version = "2.0.0" +source = "git+https://github.com/paradigmxyz/reth?rev=a05960ab07acae0d933a5a2cd69a11044719841a#a05960ab07acae0d933a5a2cd69a11044719841a" dependencies = [ "alloy-primitives", "alloy-rlp", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "auto_impl", "rayon", "reth-execution-errors", @@ -4678,9 +4823,9 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be2e9bda3e45c5d87cfbe811676bfb9cb1f0e6fa82d1dd6a3e8cd996512f236" +checksum = "a621aef55fe4da8935abede9d1d105f227bcb673f212b3575a748a6a2f8f688e" dependencies = [ "zstd", ] @@ -4886,6 +5031,20 @@ dependencies = [ "subtle", ] +[[package]] +name = "ring" +version = "0.17.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.17", + "libc", + "untrusted", + "windows-sys 0.52.0", +] + [[package]] name = "ripemd" version = "0.1.3" @@ -4904,7 +5063,7 @@ dependencies = [ "bytecheck", "bytes", "hashbrown 0.16.1", - "indexmap 2.13.0", + "indexmap 2.14.0", "munge", "ptr_meta", "rancor", @@ -4922,7 +5081,7 @@ checksum = "8100bb34c0a1d0f907143db3149e6b4eea3c33b9ee8b189720168e818303986f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -4985,7 +5144,7 @@ dependencies = [ "primitive-types", "proptest", "rand 0.8.5", - "rand 0.9.2", + "rand 0.9.3", "rlp", "ruint-macro", "serde_core", @@ -5001,9 +5160,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rustc-hash" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" [[package]] name = "rustc-hex" @@ -5026,14 +5185,14 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.27", + "semver 1.0.28", ] [[package]] name = "rustix" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" dependencies = [ "bitflags 2.11.0", "errno", @@ -5042,6 +5201,41 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "rustls" +version = "0.23.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69f9466fb2c14ea04357e91413efb882e2a6d4a406e625449bc0a5d360d53a21" +dependencies = [ + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-pki-types" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" +dependencies = [ + "web-time", + "zeroize", +] + +[[package]] +name = "rustls-webpki" +version = "0.103.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20a6af516fea4b20eccceaf166e8aa666ac996208e8a644ce3ef5aa783bc7cd4" +dependencies = [ + "ring", + "rustls-pki-types", + "untrusted", +] + [[package]] name = "rustversion" version = "1.0.22" @@ -5139,7 +5333,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c3c81b43dc2d8877c216a3fccf76677ee1ebccd429566d3e67447290d0c42b2" dependencies = [ "bitcoin_hashes", - "rand 0.9.2", + "rand 0.9.3", "secp256k1-sys 0.11.0", ] @@ -5172,9 +5366,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "semver-parser" @@ -5212,7 +5406,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5221,7 +5415,7 @@ version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "itoa", "memchr", "serde", @@ -5243,15 +5437,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.16.1" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fa237f2807440d238e0364a218270b98f767a00d3dada77b1c53ae88940e2e7" +checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" dependencies = [ "base64", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.13.0", + "indexmap 2.14.0", "schemars 0.9.0", "schemars 1.2.1", "serde_core", @@ -5262,14 +5456,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.16.1" +version = "3.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52a8e3ca0ca629121f70ab50f95249e5a6f925cc0f6ffe8256c45b728875706c" +checksum = "d3db8978e608f1fe7357e211969fd9abdcae80bac1ba7a3369bb7eb6b404eb65" dependencies = [ - "darling 0.21.3", + "darling", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5305,9 +5499,9 @@ dependencies = [ [[package]] name = "sha3-asm" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b31139435f327c93c6038ed350ae4588e2c70a13d50599509fee6349967ba35a" +checksum = "59cbb88c189d6352cc8ae96a39d19c7ecad8f7330b29461187f2587fdc2988d5" dependencies = [ "cc", "cfg-if", @@ -5338,6 +5532,12 @@ dependencies = [ "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" @@ -5377,12 +5577,12 @@ dependencies = [ [[package]] name = "socket2" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86f4aa3ad99f2088c990dfa82d367e19cb29268ed67c574d10d0a4bfe71f07e0" +checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -5456,7 +5656,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5478,9 +5678,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.116" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df424c70518695237746f84cede799c9c58fcb37450d7b23716568cc8bc69cb" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -5489,14 +5689,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.5.6" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8658017776544996edc21c8c7cc8bb4f13db60955382f4bac25dc6303b38438" +checksum = "53f425ae0b12e2f5ae65542e00898d500d4d318b4baf09f40fd0d410454e9947" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5516,14 +5716,14 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "sysinfo" -version = "0.38.2" +version = "0.38.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efc19935b4b66baa6f654ac7924c192f55b175c00a7ab72410fc24284dacda8" +checksum = "92ab6a2f8bfe508deb3c6406578252e491d299cbbf3bc0529ecc3313aee4a52f" dependencies = [ "libc", "memchr", @@ -5539,14 +5739,25 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" +[[package]] +name = "tar" +version = "0.4.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22692a6476a21fa75fdfc11d452fda482af402c008cdbaf3476414e122040973" +dependencies = [ + "filetime", + "libc", + "xattr", +] + [[package]] name = "tempfile" -version = "3.25.0" +version = "3.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0136791f7c95b1f6dd99f9cc786b91bb81c3800b639b3478e561ddb7be95e5f1" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" dependencies = [ "fastrand", - "getrandom 0.4.1", + "getrandom 0.4.2", "once_cell", "rustix", "windows-sys 0.61.2", @@ -5569,7 +5780,7 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5637,9 +5848,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" dependencies = [ "displaydoc", "zerovec", @@ -5647,9 +5858,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" +checksum = "3e61e67053d25a4e82c844e8424039d9745781b3fc4f32b8d55ed50f5f667ef3" dependencies = [ "tinyvec_macros", ] @@ -5662,9 +5873,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.49.0" +version = "1.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" +checksum = "f66bf9585cda4b724d3e78ab34b73fb2bbaba9011b9bfdf69dc836382ea13b8c" dependencies = [ "bytes", "libc", @@ -5677,13 +5888,23 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" +checksum = "385a6cb71ab9ab790c5fe8d67f1645e6c450a7ce006a33de03daa956cf70a496" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" +dependencies = [ + "rustls", + "tokio", ] [[package]] @@ -5713,39 +5934,39 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.5+spec-1.1.0" +version = "1.1.1+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.23.10+spec-1.0.0" +version = "0.25.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" +checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" dependencies = [ - "indexmap 2.13.0", + "indexmap 2.14.0", "toml_datetime", "toml_parser", - "winnow", + "winnow 1.0.1", ] [[package]] name = "toml_parser" -version = "1.0.8+spec-1.1.0" +version = "1.1.2+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0742ff5ff03ea7e67c8ae6c93cac239e0d9784833362da3f9a9c1da8dfefcbdc" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" dependencies = [ - "winnow", + "winnow 1.0.1", ] [[package]] name = "tonic" -version = "0.14.4" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f32a6f80051a4111560201420c7885d0082ba9efe2ab61875c587bb6b18b9a0" +checksum = "fec7c61a0695dc1887c1b53952990f3ad2e3a31453e1f49f10e75424943a93ec" dependencies = [ "async-trait", "base64", @@ -5769,9 +5990,9 @@ dependencies = [ [[package]] name = "tonic-prost" -version = "0.14.4" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f86539c0089bfd09b1f8c0ab0239d80392af74c21bc9e0f15e1b4aca4c1647f" +checksum = "a55376a0bbaa4975a3f10d009ad763d8f4108f067c7c2e74f3001fb49778d309" dependencies = [ "bytes", "prost", @@ -5786,7 +6007,7 @@ checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", - "indexmap 2.13.0", + "indexmap 2.14.0", "pin-project-lite", "slab", "sync_wrapper", @@ -5847,7 +6068,7 @@ dependencies = [ "crossbeam-channel", "thiserror", "time", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", ] [[package]] @@ -5858,7 +6079,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -5889,7 +6110,7 @@ checksum = "2d3a81ed245bfb62592b1e2bc153e77656d94ee6a0497683a65a12ccaf2438d0" dependencies = [ "libc", "tracing-core", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", ] [[package]] @@ -5912,7 +6133,7 @@ dependencies = [ "time", "tracing", "tracing-core", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", ] [[package]] @@ -5927,7 +6148,7 @@ dependencies = [ "tracing", "tracing-core", "tracing-log", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", "web-time", ] @@ -5944,7 +6165,7 @@ dependencies = [ "memmap2", "smallvec", "tracing-core", - "tracing-subscriber 0.3.22", + "tracing-subscriber 0.3.23", ] [[package]] @@ -5968,9 +6189,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.22" +version = "0.3.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" +checksum = "cb7f578e5945fb242538965c2d0b04418d38ec25c79d160cd279bf0731c8d319" dependencies = [ "matchers", "nu-ansi-term", @@ -6002,7 +6223,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "alloy-rpc-types-debug", - "alloy-trie 0.9.4", + "alloy-trie 0.9.5", "itertools 0.14.0", "reth-trie-common", "reth-trie-sparse", @@ -6056,9 +6277,9 @@ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" [[package]] name = "unicode-xid" @@ -6066,6 +6287,12 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + [[package]] name = "url" version = "2.5.8" @@ -6092,9 +6319,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.21.0" +version = "1.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b672338555252d43fd2240c714dc444b8c6fb0a5c5335e65a07bba7742735ddb" +checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" dependencies = [ "js-sys", "wasm-bindgen", @@ -6126,7 +6353,7 @@ checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -6183,9 +6410,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.108" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566" +checksum = "0bf938a0bacb0469e83c1e148908bd7d5a6010354cf4fb73279b7447422e3a89" dependencies = [ "cfg-if", "once_cell", @@ -6196,23 +6423,19 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.58" +version = "0.4.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a6e77fd0ae8029c9ea0063f87c46fde723e7d887703d74ad2616d792e51e6f" +checksum = "f371d383f2fb139252e0bfac3b81b265689bf45b6874af544ffa4c975ac1ebf8" dependencies = [ - "cfg-if", - "futures-util", "js-sys", - "once_cell", "wasm-bindgen", - "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.108" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608" +checksum = "eeff24f84126c0ec2db7a449f0c2ec963c6a49efe0698c4242929da037ca28ed" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -6220,22 +6443,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.108" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55" +checksum = "9d08065faf983b2b80a79fd87d8254c409281cf7de75fc4b773019824196c904" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.108" +version = "0.2.118" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12" +checksum = "5fd04d9e306f1907bd13c6361b5c6bfc7b3b3c095ed3f8a9246390f8dbdee129" dependencies = [ "unicode-ident", ] @@ -6257,7 +6480,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" dependencies = [ "anyhow", - "indexmap 2.13.0", + "indexmap 2.14.0", "wasm-encoder", "wasmparser", ] @@ -6270,15 +6493,15 @@ checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" dependencies = [ "bitflags 2.11.0", "hashbrown 0.15.5", - "indexmap 2.13.0", - "semver 1.0.27", + "indexmap 2.14.0", + "semver 1.0.28", ] [[package]] name = "web-sys" -version = "0.3.85" +version = "0.3.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598" +checksum = "4f2dfbb17949fa2088e5d39408c48368947b86f7834484e87b73de55bc14d97d" dependencies = [ "js-sys", "wasm-bindgen", @@ -6294,6 +6517,15 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "webpki-roots" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22cfaf3c063993ff62e73cb4311efde4db1efb31ab78a3e5c457939ad5cc0bed" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "winapi" version = "0.3.9" @@ -6424,7 +6656,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -6435,7 +6667,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] @@ -6506,13 +6738,22 @@ dependencies = [ "windows-link 0.2.1", ] +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + [[package]] name = "windows-sys" version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets", + "windows-targets 0.53.5", ] [[package]] @@ -6524,6 +6765,22 @@ dependencies = [ "windows-link 0.2.1", ] +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +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_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.5" @@ -6531,14 +6788,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ "windows-link 0.2.1", - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", ] [[package]] @@ -6559,48 +6816,96 @@ dependencies = [ "windows-link 0.2.1", ] +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + [[package]] name = "windows_aarch64_gnullvm" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + [[package]] name = "windows_aarch64_msvc" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + [[package]] name = "windows_i686_gnu" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" +[[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.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + [[package]] name = "windows_i686_msvc" version = "0.53.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" +[[package]] +name = "windows_x86_64_gnu" +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.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" +[[package]] +name = "windows_x86_64_gnullvm" +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.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + [[package]] name = "windows_x86_64_msvc" version = "0.53.1" @@ -6609,9 +6914,18 @@ checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" [[package]] name = "winnow" -version = "0.7.14" +version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" +checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" dependencies = [ "memchr", ] @@ -6644,9 +6958,9 @@ checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" dependencies = [ "anyhow", "heck", - "indexmap 2.13.0", + "indexmap 2.14.0", "prettyplease", - "syn 2.0.116", + "syn 2.0.117", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -6662,7 +6976,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", "wit-bindgen-core", "wit-bindgen-rust", ] @@ -6675,7 +6989,7 @@ checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" dependencies = [ "anyhow", "bitflags 2.11.0", - "indexmap 2.13.0", + "indexmap 2.14.0", "log", "serde", "serde_derive", @@ -6694,9 +7008,9 @@ checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" dependencies = [ "anyhow", "id-arena", - "indexmap 2.13.0", + "indexmap 2.14.0", "log", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_derive", "serde_json", @@ -6706,9 +7020,9 @@ dependencies = [ [[package]] name = "writeable" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" [[package]] name = "wyz" @@ -6719,11 +7033,21 @@ dependencies = [ "tap", ] +[[package]] +name = "xattr" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" +dependencies = [ + "libc", + "rustix", +] + [[package]] name = "yoke" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" +checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" dependencies = [ "stable_deref_trait", "yoke-derive", @@ -6732,54 +7056,54 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.39" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db6d35d663eadb6c932438e763b262fe1a70987f9ae936e60158176d710cae4a" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.39" +version = "0.8.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4122cd3169e94605190e77839c9a40d40ed048d305bfdc146e7df40ab0f3e517" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "zerofrom" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" +checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" 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.116", + "syn 2.0.117", "synstructure", ] @@ -6800,14 +7124,14 @@ checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] name = "zerotrie" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" dependencies = [ "displaydoc", "yoke", @@ -6816,9 +7140,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.5" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" dependencies = [ "yoke", "zerofrom", @@ -6827,13 +7151,13 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" dependencies = [ "proc-macro2", "quote", - "syn 2.0.116", + "syn 2.0.117", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index ad506a9..5efa794 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,6 +13,7 @@ members = [ "crates/tries", "crates/zeth-mpt", "testing/ef-tests", + "testing/runner", ] resolver = "2" @@ -44,23 +45,23 @@ stateless = { path = "crates/stateless" } tries = { path = "crates/tries" } # reth -reth-chainspec = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-db = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-db-api = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-db-common = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-evm = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } +reth-chainspec = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-db = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-db-api = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-db-common = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-evm = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } reth-primitives-traits = { version = "0.1.0", default-features = false } -reth-provider = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-revm = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-tracing = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-trie = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-trie-common = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } -reth-trie-db = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f" } -reth-trie-sparse = { git = "https://github.com/paradigmxyz/reth", rev = "adc960162f", default-features = false } +reth-provider = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-revm = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-tracing = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-trie = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-trie-common = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } +reth-trie-db = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a" } +reth-trie-sparse = { git = "https://github.com/paradigmxyz/reth", rev = "a05960ab07acae0d933a5a2cd69a11044719841a", default-features = false } # alloy alloy-consensus = { version = "1.8", default-features = false } @@ -94,4 +95,12 @@ serde_with = { version = "3.16", default-features = false, features = [ "alloc", ] } thiserror = { version = "2.0", default-features = false } -walkdir = "2.5" +clap = "4" +flate2 = "1" +reqwest = { version = "0.12", default-features = false, features = [ + "blocking", + "rustls-tls", +] } +tar = "0.4" +tempfile = "3" +walkdir = "2.5" \ No newline at end of file diff --git a/crates/tries/src/default.rs b/crates/tries/src/default.rs index c43332e..fbaa9b2 100644 --- a/crates/tries/src/default.rs +++ b/crates/tries/src/default.rs @@ -304,19 +304,27 @@ fn calculate_state_root( storage_trie.wipe()?; } - // Apply slot‑level changes - for (hashed_slot, value) in - storage.storage.into_iter().sorted_unstable_by_key(|(slot, _)| *slot) - { - let nibbles = Nibbles::unpack(hashed_slot); - if value.is_zero() { - storage_trie.remove_leaf(&nibbles, &storage_provider)?; - } else { - storage_trie.update_leaf( - nibbles, - alloy_rlp::encode_fixed_size(&value).to_vec(), - &storage_provider, - )?; + // Apply slot-level changes in two passes: + // update/insert first, then delete. This matches witness generation ordering. + let sorted_slots = storage.storage.into_iter().sorted_unstable_by_key(|(slot, _)| *slot); + let sorted_slots = sorted_slots.collect::>(); + for is_delete_pass in [false, true] { + for (hashed_slot, value) in &sorted_slots { + let is_delete = value.is_zero(); + if is_delete != is_delete_pass { + continue; + } + + let nibbles = Nibbles::unpack(*hashed_slot); + if is_delete { + storage_trie.remove_leaf(&nibbles, &storage_provider)?; + } else { + storage_trie.update_leaf( + nibbles, + alloy_rlp::encode_fixed_size(value).to_vec(), + &storage_provider, + )?; + } } } diff --git a/testing/ef-tests/src/assert.rs b/testing/ef-tests/src/assert.rs index 9f1f83e..9e2b8d9 100644 --- a/testing/ef-tests/src/assert.rs +++ b/testing/ef-tests/src/assert.rs @@ -1,7 +1,8 @@ //! Various assertion helpers. use crate::Error; -use std::fmt::Debug; +use alloy_primitives::Bytes; +use std::{collections::BTreeSet, fmt::Debug}; /// A helper like `assert_eq!` that instead returns `Err(Error::Assertion)` on failure. pub fn assert_equal(left: T, right: T, msg: &str) -> Result<(), Error> @@ -14,3 +15,41 @@ where Err(Error::Assertion(format!("{msg}\n left `{left:?}`,\n right `{right:?}`"))) } } + +/// Compares two sorted `Vec`, producing a detailed error on mismatch that includes +/// counts and the items present in one side but not the other. +pub fn assert_equal_bytes_vecs( + expected: &[Bytes], + generated: &[Bytes], + label: &str, +) -> Result<(), Error> { + if expected == generated { + return Ok(()); + } + + let expected_set: BTreeSet<&Bytes> = expected.iter().collect(); + let generated_set: BTreeSet<&Bytes> = generated.iter().collect(); + + let in_expected_only: Vec<_> = expected_set.difference(&generated_set).collect(); + let in_generated_only: Vec<_> = generated_set.difference(&expected_set).collect(); + + let mut msg = + format!("{label} mismatch — expected {}, generated {}", expected.len(), generated.len()); + + if !in_expected_only.is_empty() { + msg.push_str(&format!( + "\n in expected but not generated ({}):\n {}", + in_expected_only.len(), + in_expected_only.iter().map(|b| format!("{b}")).collect::>().join("\n ") + )); + } + if !in_generated_only.is_empty() { + msg.push_str(&format!( + "\n in generated but not expected ({}):\n {}", + in_generated_only.len(), + in_generated_only.iter().map(|b| format!("{b}")).collect::>().join("\n ") + )); + } + + Err(Error::Assertion(msg)) +} diff --git a/testing/ef-tests/src/case.rs b/testing/ef-tests/src/case.rs index fdbe550..27dfa50 100644 --- a/testing/ef-tests/src/case.rs +++ b/testing/ef-tests/src/case.rs @@ -21,6 +21,12 @@ pub trait Case: Debug + Send + Sync + Sized + 'static { /// The file can be assumed to be a valid EF test case as described on . fn load(path: &Path) -> Result; + /// Return the names of all individual test cases contained in this case. + fn test_names(&self) -> Vec<&str>; + + /// Keep only the test cases whose name contains the given substring. + fn filter_by_name(&mut self, filter: &str); + /// Run the test. fn run(self) -> Result<(), Error>; } diff --git a/testing/ef-tests/src/cases/blockchain_test.rs b/testing/ef-tests/src/cases/blockchain_test.rs index 583c70f..5495cc6 100644 --- a/testing/ef-tests/src/cases/blockchain_test.rs +++ b/testing/ef-tests/src/cases/blockchain_test.rs @@ -22,7 +22,7 @@ use reth_provider::{ test_utils::create_test_provider_factory_with_chain_spec_and_db_args, }; use reth_revm::{State, database::StateProviderDatabase, witness::ExecutionWitnessRecord}; -use reth_trie::{HashedPostState, KeccakKeyHasher, StateRoot}; +use reth_trie::{ExecutionWitnessMode, HashedPostState, KeccakKeyHasher, StateRoot}; use reth_trie_db::{ DatabaseHashedCursorFactory, DatabaseStateRoot, DatabaseTrieCursorFactory, LegacyKeyAdapter, }; @@ -30,7 +30,7 @@ use stateless::{ ExecutionWitness, UncompressedPublicKey, validation::stateless_validation_with_trie, }; use std::{ - collections::BTreeMap, + collections::{BTreeMap, BTreeSet}, env, fs, path::{Path, PathBuf}, sync::Arc, @@ -68,12 +68,14 @@ impl EfTestTrie { #[derive(Debug)] pub struct BlockchainTests { suite_path: PathBuf, + /// Test paths to skip (relative to `suite_path`) + skip_tests: BTreeSet, } impl BlockchainTests { /// Create a new suite for tests with blockchain tests format. - pub const fn new(suite_path: PathBuf) -> Self { - Self { suite_path } + pub fn new(suite_path: PathBuf, skip_tests: BTreeSet) -> Self { + Self { suite_path, skip_tests } } } @@ -83,6 +85,17 @@ impl Suite for BlockchainTests { fn suite_path(&self) -> &Path { &self.suite_path } + + fn should_skip(&self, path: &Path) -> bool { + if self.skip_tests.is_empty() { + return false; + } + // Match against the path relative to the suite root directory. + path.strip_prefix(&self.suite_path) + .ok() + .and_then(|rel| rel.to_str()) + .is_some_and(|rel| self.skip_tests.contains(rel)) + } } /// An Ethereum blockchain test. @@ -137,9 +150,10 @@ impl BlockchainTestCase { pub fn run_single_case( name: &str, case: &BlockchainTest, + witness_mode: ExecutionWitnessMode, ) -> Result, ExecutionWitness)>, Error> { let expectation = Self::expected_failure(case); - match run_case(case) { + match run_case(case, witness_mode) { // All blocks executed successfully. Ok(program_inputs) => { // Check if the test case specifies that it should have failed @@ -201,6 +215,14 @@ impl Case for BlockchainTestCase { }) } + fn test_names(&self) -> Vec<&str> { + self.tests.keys().map(|s| s.as_str()).collect() + } + + fn filter_by_name(&mut self, filter: &str) { + self.tests.retain(|name, _| name.contains(filter)); + } + /// Runs the test cases for the Ethereum Forks test suite. /// /// # Errors @@ -217,7 +239,14 @@ impl Case for BlockchainTestCase { .filter(|(_, case)| !Self::excluded_fork(case.network)) .par_bridge_buffered() .with_min_len(64) - .try_for_each(|(name, case)| Self::run_single_case(&name, &case).map(|_| ())) + .try_for_each(|(name, case)| { + Self::run_single_case(&name, &case, ExecutionWitnessMode::Canonical) + .map(|_| ()) + .map_err(|err| Error::TestCaseFailed { + name: name.to_owned(), + err: Box::new(err), + }) + }) } } @@ -237,15 +266,17 @@ impl Case for BlockchainTestCase { /// witness if the error is of variant `BlockProcessingFailed`. fn run_case( case: &BlockchainTest, + witness_mode: ExecutionWitnessMode, ) -> Result, ExecutionWitness)>, Error> { match EfTestTrie::from_env()? { - EfTestTrie::Default => run_case_with_trie::(case), - EfTestTrie::Zeth => run_case_with_trie::(case), + EfTestTrie::Default => run_case_with_trie::(case, witness_mode), + EfTestTrie::Zeth => run_case_with_trie::(case, witness_mode), } } fn run_case_with_trie( case: &BlockchainTest, + witness_mode: ExecutionWitnessMode, ) -> Result, ExecutionWitness)>, Error> where T: StatelessTrie, @@ -321,7 +352,7 @@ where let output = executor .execute_with_state_closure_always(&(*block).clone(), |statedb: &State<_>| { - witness_record.record_executed_state(statedb); + witness_record.record_executed_state(statedb, witness_mode); }) .map_err(|err| Error::block_failed(block_number, program_inputs.clone(), err))?; @@ -330,11 +361,23 @@ where .map_err(|err| Error::block_failed(block_number, program_inputs.clone(), err))?; // Generate the stateless witness - let exec_witness = - witness_record.into_execution_witness(&state_provider, &provider, block_number)?; + let exec_witness = witness_record.into_execution_witness( + &state_provider, + &provider, + block_number, + witness_mode, + )?; program_inputs.push((block.clone(), exec_witness)); + // Compare the generated witness against the fixture's expected witness (if present) + if let Some(expected_witness) = &case.blocks[block_index].execution_witness { + let (_, exec_witness) = program_inputs.last().unwrap(); + expected_witness + .assert_matches(exec_witness) + .map_err(|err| Error::block_failed(block_number, program_inputs.clone(), err))?; + } + // Compute and check the post state root let hashed_state = HashedPostState::from_bundle_state::(output.state.state()); diff --git a/testing/ef-tests/src/models.rs b/testing/ef-tests/src/models.rs index 8e45eb6..beda209 100644 --- a/testing/ef-tests/src/models.rs +++ b/testing/ef-tests/src/models.rs @@ -1,6 +1,9 @@ //! Shared models for -use crate::{Error, assert::assert_equal}; +use crate::{ + Error, + assert::{assert_equal, assert_equal_bytes_vecs}, +}; use alloy_consensus::Header as RethHeader; use alloy_eips::eip4895::Withdrawals; use alloy_genesis::GenesisAccount; @@ -9,6 +12,7 @@ use reth_chainspec::{ChainSpec, ChainSpecBuilder, EthereumHardfork, ForkConditio use reth_db_api::{cursor::DbDupCursorRO, tables, transaction::DbTx}; use reth_primitives_traits::SealedHeader; use serde::Deserialize; +use stateless::ExecutionWitness; use std::{ collections::BTreeMap, ops::Deref, @@ -140,6 +144,46 @@ pub struct Block { pub transaction_sequence: Option>, /// Withdrawals pub withdrawals: Option, + /// Execution witness for stateless validation. + pub execution_witness: Option, +} + +/// Execution witness from test fixtures. +/// +/// Uses serde aliases to accept both alloy's field names (`state`/`codes`/`headers`) +/// and the fixture's field names (`nodes`/`bytecodes`/`ancestors`). +#[derive(Debug, PartialEq, Eq, Clone, Deserialize, Default)] +pub struct FixtureExecutionWitness { + /// Trie nodes / state witness. + #[serde(alias = "nodes", default)] + pub state: Vec, + /// Contract bytecodes. + #[serde(alias = "bytecodes", default)] + pub codes: Vec, + /// Ancestor block headers. + #[serde(alias = "ancestors", default)] + pub headers: Vec, +} + +impl FixtureExecutionWitness { + /// Asserts that the generated [`ExecutionWitness`] matches this fixture witness. + /// + /// Compares `state`, `codes`, and `headers` fields individually (sorted). + /// The `keys` field from the generated witness is ignored since fixtures don't include it. + pub fn assert_matches(&self, generated: &ExecutionWitness) -> Result<(), Error> { + assert_equal_bytes_vecs(&self.state, &generated.state, "execution witness state (nodes)")?; + assert_equal_bytes_vecs( + &self.codes, + &generated.codes, + "execution witness codes (bytecodes)", + )?; + assert_equal_bytes_vecs( + &self.headers, + &generated.headers, + "execution witness headers (ancestors)", + )?; + Ok(()) + } } /// Transaction sequence in block @@ -398,10 +442,10 @@ impl ForkSpec { .cancun_activated() .with_fork(EthereumHardfork::Prague, ForkCondition::Timestamp(15_000)), Self::Prague => spec_builder.prague_activated(), - Self::Osaka => spec_builder.osaka_activated(), Self::PragueToOsakaAtTime15k => spec_builder .prague_activated() .with_fork(EthereumHardfork::Osaka, ForkCondition::Timestamp(15_000)), + Self::Osaka => spec_builder.osaka_activated(), Self::OsakaToBpo1AtTime15k => spec_builder .osaka_activated() .with_fork(EthereumHardfork::Bpo1, ForkCondition::Timestamp(15_000)), diff --git a/testing/ef-tests/src/result.rs b/testing/ef-tests/src/result.rs index 4b9c87f..e0e41bc 100644 --- a/testing/ef-tests/src/result.rs +++ b/testing/ef-tests/src/result.rs @@ -66,6 +66,15 @@ pub enum Error { /// A consensus error occurred. #[error("an error occurred during consensus checks: {0}")] ConsensusError(#[from] reth_consensus::ConsensusError), + /// A named test case within a fixture file failed. + #[error("test case `{name}`: {err}")] + TestCaseFailed { + /// The name of the individual test case within the fixture file. + name: String, + /// The underlying error. + #[source] + err: Box, + }, } impl Error { diff --git a/testing/ef-tests/src/suite.rs b/testing/ef-tests/src/suite.rs index 0b3ed44..45cf4a2 100644 --- a/testing/ef-tests/src/suite.rs +++ b/testing/ef-tests/src/suite.rs @@ -15,6 +15,11 @@ pub trait Suite { /// The path to the test suite directory. fn suite_path(&self) -> &Path; + /// Returns `true` if the test at the given absolute path should be skipped. + fn should_skip(&self, _path: &Path) -> bool { + false + } + /// Run all test cases in the suite. fn run(&self) { let suite_path = self.suite_path(); @@ -26,6 +31,31 @@ pub trait Suite { } } + /// Run only test cases whose name contains the given filter substring. + fn run_with_filter(&self, filter: &str) { + let suite_path = self.suite_path(); + + let test_cases = find_all_files_with_extension(suite_path, ".json") + .into_iter() + .filter(|path| !self.should_skip(path)) + .filter_map(|test_case_path| { + let mut case = Self::Case::load(&test_case_path).expect("test case should load"); + case.filter_by_name(filter); + if case.test_names().is_empty() { None } else { Some((test_case_path, case)) } + }) + .collect::>(); + + if test_cases.is_empty() { + eprintln!("No test cases matched filter: {filter}"); + return; + } + + let total: usize = test_cases.iter().map(|(_, c)| c.test_names().len()).sum(); + eprintln!("Running {total} test(s) matching '{filter}'"); + let results = Cases { test_cases }.run(); + assert_tests_pass("filtered", suite_path, &results); + } + /// Load and run each contained test case for the provided sub-folder. /// /// # Note @@ -41,6 +71,7 @@ pub trait Suite { // Find all files with the ".json" extension in the test suite directory let test_cases = find_all_files_with_extension(&suite_path, ".json") .into_iter() + .filter(|path| !self.should_skip(path)) .map(|test_case_path| { let case = Self::Case::load(&test_case_path).expect("test case should load"); (test_case_path, case) diff --git a/testing/ef-tests/tests/tests.rs b/testing/ef-tests/tests/tests.rs index 5a73d31..b9a13da 100644 --- a/testing/ef-tests/tests/tests.rs +++ b/testing/ef-tests/tests/tests.rs @@ -13,7 +13,7 @@ macro_rules! general_state_test { .join("ethereum-tests") .join("BlockchainTests"); - BlockchainTests::new(suite_path) + BlockchainTests::new(suite_path, Default::default()) .run_only(&format!("GeneralStateTests/{}", stringify!($dir))); } }; @@ -93,7 +93,7 @@ macro_rules! blockchain_test { .join("ethereum-tests") .join("BlockchainTests"); - BlockchainTests::new(suite_path).run_only(stringify!($dir)); + BlockchainTests::new(suite_path, Default::default()).run_only(stringify!($dir)); } }; } @@ -112,5 +112,5 @@ fn eest_fixtures() { return; } - BlockchainTests::new(suite_path).run(); + BlockchainTests::new(suite_path, Default::default()).run(); } diff --git a/testing/runner/Cargo.toml b/testing/runner/Cargo.toml new file mode 100644 index 0000000..87b6e05 --- /dev/null +++ b/testing/runner/Cargo.toml @@ -0,0 +1,20 @@ +[package] +name = "ef-test-runner" +version.workspace = true +edition.workspace = true +rust-version.workspace = true +license.workspace = true +homepage.workspace = true +repository.workspace = true +exclude.workspace = true + +[dependencies] +clap = { workspace = true, features = ["derive"] } +ef-tests.path = "../ef-tests" +flate2 = { workspace = true } +reqwest = { workspace = true } +tar = { workspace = true } +tempfile = { workspace = true } + +[lints] +workspace = true diff --git a/testing/runner/execution-witness-skip.txt b/testing/runner/execution-witness-skip.txt new file mode 100644 index 0000000..c704949 --- /dev/null +++ b/testing/runner/execution-witness-skip.txt @@ -0,0 +1,20 @@ +# The following tests are skipped since they all fail with a message: +# > Witness generation mismatch: expected X nodes, generated X+1 +# Note that `X` is a concrete number for each case. +# +# As far as investigated, the reason for this is that the new ProofNodeV2 in Reth +# bundles ExtensionNodes with their BranchNode children in a single virtual node. +# When the witness is generated, this encoded node always include both tnodes. +# +# This is not correct for witness generation, since if a proof of absence terminal node +# is the ExtensionNode, then the proof of absence should finish there and not include the +# BranchNode since isn't required. +# +# This makes any fixture that has a proof of absence ending in an ExtensionNode to fail since +# it is adding this +1 BranchNode when it shouldn't. +cancun/eip4844_blobs/excess_blob_gas_fork_transition/fork_transition_excess_blob_gas_post_blob_genesis.json +frontier/scenarios/scenarios/scenarios.json +frontier/opcodes/blockhash/genesis_hash_available.json +prague/eip7251_consolidations/consolidations/consolidation_requests.json +prague/eip7002_el_triggerable_withdrawals/withdrawal_requests/withdrawal_requests.json +shanghai/eip4895_withdrawals/withdrawals/multiple_withdrawals_same_address.json diff --git a/testing/runner/src/main.rs b/testing/runner/src/main.rs new file mode 100644 index 0000000..2d52c0f --- /dev/null +++ b/testing/runner/src/main.rs @@ -0,0 +1,79 @@ +//! Command-line interface for running tests. +use std::{collections::BTreeSet, fs, path::PathBuf}; + +use clap::Parser; +use ef_tests::{Suite, cases::blockchain_test::BlockchainTests}; +use flate2::read::GzDecoder; +use tar::Archive; +use tempfile::TempDir; + +/// Command-line arguments for the test runner. +#[derive(Debug, Parser)] +pub struct TestRunnerCommand { + /// Path to the test suite (local directory or URL to a .tar.gz archive) + suite_path: String, + + /// Optional filter: only run test cases whose path contains this substring + #[arg(long)] + filter: Option, + + /// Path to a file containing test file names to skip (one per line). + /// Lines starting with '#' and empty lines are ignored. + #[arg(long)] + skip: Option, +} + +/// Resolve the suite path to a local directory. +/// +/// If the input is a URL, download and extract the `.tar.gz` archive to a temporary directory. +/// The returned [`TempDir`] (if any) must be kept alive for the duration of the test run. +fn resolve_suite_path(input: &str) -> (PathBuf, Option) { + if input.starts_with("http://") || input.starts_with("https://") { + eprintln!("Downloading {input}..."); + let response = reqwest::blocking::get(input) + .unwrap_or_else(|e| panic!("failed to download {input}: {e}")); + + if !response.status().is_success() { + panic!("failed to download {input}: HTTP {}", response.status()); + } + + let temp_dir = TempDir::new().expect("failed to create temp directory"); + eprintln!("Extracting to {}...", temp_dir.path().display()); + + let decoder = GzDecoder::new(response); + let mut archive = Archive::new(decoder); + archive.unpack(temp_dir.path()).expect("failed to extract archive"); + + let path = temp_dir.path().to_path_buf(); + (path.join("fixtures"), Some(temp_dir)) + } else { + (PathBuf::from(input), None) + } +} + +fn main() { + let cmd = TestRunnerCommand::parse(); + + let skip_tests = match &cmd.skip { + Some(skip_path) => { + let content = fs::read_to_string(skip_path).unwrap_or_else(|e| { + panic!("failed to read skip file {}: {e}", skip_path.display()) + }); + content + .lines() + .map(str::trim) + .filter(|line| !line.is_empty() && !line.starts_with('#')) + .map(String::from) + .collect() + } + None => BTreeSet::new(), + }; + + let (suite_path, _temp_dir) = resolve_suite_path(&cmd.suite_path); + let tests = BlockchainTests::new(suite_path.join("blockchain_tests"), skip_tests); + if let Some(filter) = cmd.filter { + tests.run_with_filter(&filter); + } else { + tests.run(); + } +}