From 1a201a51c94df12e35b5afca4d12034b57d626f1 Mon Sep 17 00:00:00 2001 From: Dan Cline <6798349+Rjected@users.noreply.github.com> Date: Tue, 25 Feb 2025 20:53:32 -0500 Subject: [PATCH] chore: bump reth to 1.2.0 --- Cargo.lock | 3088 +++++++++++++++------------- Cargo.toml | 135 +- bin/odyssey/src/main.rs | 20 +- bin/relay/Cargo.toml | 1 + bin/relay/src/main.rs | 5 +- crates/node/Cargo.toml | 9 +- crates/node/src/chainspec.rs | 33 +- crates/node/src/delayed_resolve.rs | 3 +- crates/node/src/evm.rs | 366 ---- crates/node/src/lib.rs | 9 +- crates/node/src/node.rs | 161 +- crates/wallet/Cargo.toml | 2 +- crates/wallet/src/lib.rs | 72 +- crates/walltime/Cargo.toml | 1 + crates/walltime/src/lib.rs | 3 +- 15 files changed, 1931 insertions(+), 1977 deletions(-) delete mode 100644 crates/node/src/evm.rs diff --git a/Cargo.lock b/Cargo.lock index 6e254b4..338121b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -59,10 +59,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom", + "getrandom 0.2.15", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -97,9 +97,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7e1758e5d759c0114140152ae72032eafcfdd7b599e995ebbc8eeafa2b4c977" +checksum = "6d2cc5aeb8dfa1e451a49fac87bc4b86c5de40ebea153ed88e83eb92b8151e74" dependencies = [ "alloy-consensus", "alloy-contract", @@ -115,42 +115,40 @@ dependencies = [ [[package]] name = "alloy-chains" -version = "0.1.48" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0161082e0edd9013d23083465cc04b20e44b7a15646d36ba7b0cdb7cd6fe18f" +checksum = "996564c1782285d4e0299c29b318bc74f24b1d7f456cef3e040810b061ee3256" dependencies = [ "alloy-primitives", "alloy-rlp", "num_enum", "serde", - "strum", + "strum 0.27.1", ] [[package]] name = "alloy-consensus" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a205d0cbb7bfdf9f4fd4b0ec842bc4c5f926e8c14ec3072d3fd75dd363baf1e0" +checksum = "69e32ef5c74bbeb1733c37f4ac7f866f8c8af208b7b4265e21af609dcac5bd5e" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-trie", - "arbitrary", "auto_impl", "c-kzg", - "derive_more", - "rand", + "derive_more 1.0.0", "serde", "serde_with", ] [[package]] name = "alloy-consensus-any" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "993c34090a3f281cb746fd1604520cf21f8407ffbeb006aaa34c0556bffa718e" +checksum = "0fa13b7b1e1e3fedc42f0728103bfa3b4d566d3d42b606db449504d88dbdbdcf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -162,9 +160,9 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aec7945dff98ba68489aa6da455bf66f6c0fee8157df06747fbae7cb03c368e2" +checksum = "ee6180fb232becdea70fad57c63b6967f01f74ab9595671b870f504116dd29de" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -177,14 +175,14 @@ dependencies = [ "alloy-transport", "futures", "futures-util", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "alloy-core" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c618bd382f0bc2ac26a7e4bfae01c9b015ca8f21b37ca40059ae35a7e62b3dc6" +checksum = "482f377cebceed4bb1fb5e7970f0805e2ab123d06701be9351b67ed6341e74aa" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -194,22 +192,35 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41056bde53ae10ffbbf11618efbe1e0290859e5eab0fe9ef82ebdb62f12a866f" +checksum = "555896f0b8578adb522b1453b6e6cc6704c3027bd0af20058befdde992cee8e9" dependencies = [ "alloy-json-abi", "alloy-primitives", "alloy-sol-type-parser", "alloy-sol-types", "const-hex", - "derive_more", + "derive_more 1.0.0", "itoa", "serde", "serde_json", "winnow", ] +[[package]] +name = "alloy-eip2124" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "675264c957689f0fd75f5993a73123c2cc3b5c235a38f5b9037fe6c826bfb2c0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "crc", + "serde", + "thiserror 2.0.11", +] + [[package]] name = "alloy-eip2930" version = "0.1.0" @@ -218,41 +229,38 @@ checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" dependencies = [ "alloy-primitives", "alloy-rlp", - "arbitrary", - "rand", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" +checksum = "cabf647eb4650c91a9d38cb6f972bb320009e7e9d61765fb688a86f1563b33e8" dependencies = [ "alloy-primitives", "alloy-rlp", - "arbitrary", - "derive_more", + "derive_more 1.0.0", "k256", - "rand", "serde", "serde_with", ] [[package]] name = "alloy-eips" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1d9907c29ce622946759bf4fd3418166bfeae76c1c544b8081c7be3acd9b4be" +checksum = "5591581ca2ab0b3e7226a4047f9a1bfcf431da1d0cce3752fda609fea3c27e37" dependencies = [ + "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", "alloy-primitives", "alloy-rlp", "alloy-serde", - "arbitrary", + "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "ethereum_ssz", "ethereum_ssz_derive", "once_cell", @@ -260,12 +268,24 @@ dependencies = [ "sha2 0.10.8", ] +[[package]] +name = "alloy-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=beb6832#beb68324d7e05ae2eafad9f726a94cb0b63d15a5" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "revm", + "revm-optimism", +] + [[package]] name = "alloy-genesis" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f13f7405a8eb8021258994ed1beab490c3e509ebbe2c18e1c24ae10749d56b" +checksum = "0cded3a2d4bd7173f696458c5d4c98c18a628dfcc9f194385e80a486e412e2e0" dependencies = [ + "alloy-eips", "alloy-primitives", "alloy-serde", "alloy-trie", @@ -274,9 +294,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c357da577dfb56998d01f574d81ad7a1958d248740a7981b205d69d65a7da404" +checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -286,23 +306,23 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39a786ce6bc7539dc30cabac6b7875644247c9e7d780e71a9f254d42ebdc013c" +checksum = "762414662d793d7aaa36ee3af6928b6be23227df1681ce9c039f6f11daadef64" dependencies = [ "alloy-primitives", "alloy-sol-types", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "alloy-network" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99051f82f77159d5bee06108f33cffee02849e2861fc500bf74213aa2ae8a26e" +checksum = "8be03f2ebc00cf88bd06d3c6caf387dceaa9c7e6b268216779fa68a9bf8ab4e6" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -320,14 +340,14 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "alloy-network-primitives" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2aff127863f8279921397be8af0ac3f05a8757d5c4c972b491c278518fa07c7" +checksum = "3a00ce618ae2f78369918be0c20f620336381502c83b6ed62c2f7b2db27698b0" dependencies = [ "alloy-consensus", "alloy-eips", @@ -336,33 +356,40 @@ dependencies = [ "serde", ] +[[package]] +name = "alloy-op-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=beb6832#beb68324d7e05ae2eafad9f726a94cb0b63d15a5" +dependencies = [ + "alloy-evm", + "alloy-primitives", + "revm", + "revm-optimism", +] + [[package]] name = "alloy-primitives" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6259a506ab13e1d658796c31e6e39d2e2ee89243bcc505ddc613b35732e0a430" +checksum = "478bedf4d24e71ea48428d1bc278553bd7c6ae07c30ca063beb0b09fe58a9e74" dependencies = [ "alloy-rlp", - "arbitrary", "bytes", "cfg-if", "const-hex", - "derive_arbitrary", - "derive_more", + "derive_more 1.0.0", "foldhash", - "getrandom", + "getrandom 0.2.15", "hashbrown 0.15.2", - "hex-literal", - "indexmap 2.7.0", + "indexmap 2.7.1", "itoa", "k256", "keccak-asm", "paste", "proptest", - "proptest-derive", - "rand", + "rand 0.8.5", "ruint", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "serde", "sha3", "tiny-keccak", @@ -370,9 +397,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0280a4f68e0cefde9449ee989a248230efbe3f95255299d2a7a92009e154629d" +checksum = "cbe0a2acff0c4bd1669c71251ce10fc455cbffa1b4d0a817d5ea4ba7e5bb3db7" dependencies = [ "alloy-chains", "alloy-consensus", @@ -384,8 +411,10 @@ dependencies = [ "alloy-pubsub", "alloy-rpc-client", "alloy-rpc-types-eth", + "alloy-sol-types", "alloy-transport", "alloy-transport-http", + "alloy-transport-ipc", "alloy-transport-ws", "async-stream", "async-trait", @@ -393,14 +422,13 @@ dependencies = [ "dashmap 6.1.0", "futures", "futures-utils-wasm", - "lru", + "lru 0.13.0", "parking_lot", "pin-project", "reqwest", - "schnellru", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", "url", @@ -409,9 +437,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9475dc1a835bd8bb77275b6bccf8e177e7e669ba81277ce6bea0016ce994fafe" +checksum = "de3a68996f193f542f9e29c88dfa8ed1369d6ee04fa764c1bf23dc11b2f9e4a2" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -428,9 +456,9 @@ dependencies = [ [[package]] name = "alloy-rlp" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f542548a609dca89fcd72b3b9f355928cf844d4363c5eed9c5273a3dd225e097" +checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -439,26 +467,27 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a833d97bf8a5f0f878daf2c8451fff7de7f9de38baa5a45d936ec718d81255a" +checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "alloy-rpc-client" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6fc8b0f68619cfab3a2e15dca7b80ab266f78430bb4353dec546528e04b7449" +checksum = "b37cc3c7883dc41be1b01460127ad7930466d0a4bb6ba15a02ee34d2745e2d7c" dependencies = [ "alloy-json-rpc", "alloy-primitives", "alloy-pubsub", "alloy-transport", "alloy-transport-http", + "alloy-transport-ipc", "alloy-transport-ws", "futures", "pin-project", @@ -475,9 +504,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "986f23fe42ac95832901a24b93c20f7ed2b9644394c02b86222801230da60041" +checksum = "6f18e68a3882f372e045ddc89eb455469347767d17878ca492cfbac81e71a111" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -488,9 +517,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c739a734da7f41054aeff8abddbf66ae44f2e624ce7a7ccd9bd84c76f7c24902" +checksum = "b4e30339fff15d53a3a258a7add476c7d24b61d6f4a71476cc39c8b567666772" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -500,9 +529,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ac5e71dd1a25029ec565ea34aaf95515f4168192c2843efe198fa490d58dd7" +checksum = "10d06300df4a87d960add35909240fc72da355dd2ac926fa6999f9efafbdc5a7" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -512,9 +541,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57e3aa433d3657b42e98e257ee6fa201f5c853245648a33da8fbb7497a5008bf" +checksum = "318ae46dd12456df42527c3b94c1ae9001e1ceb707f7afe2c7807ac4e49ebad9" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -523,9 +552,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4612f586da13ac81c75bbbd04f6371bb34d47f0650920fca68636a0b9177bc4" +checksum = "799103aa44270c7bea076ec5d3d7b6c6d29557ab5485c91a74d3068327adb485" dependencies = [ "alloy-eips", "alloy-primitives", @@ -534,14 +563,14 @@ dependencies = [ "ethereum_ssz_derive", "serde", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "alloy-rpc-types-debug" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cda556c1c69af9222dec46dd3496b622e9a249ef19a7bd0e80e5995a4c81b3" +checksum = "2834b7012054cb2f90ee9893b7cc97702edca340ec1ef386c30c42e55e6cd691" dependencies = [ "alloy-primitives", "serde", @@ -549,30 +578,30 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30814f8b9ac10219fb77fe42c277a0ffa1c369fbc3961f14d159f51fb221966e" +checksum = "e83dde9fcf1ccb9b815cc0c89bba26bbbbaae5150a53ae624ed0fc63cb3676c1" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "ethereum_ssz", "ethereum_ssz_derive", "jsonrpsee-types", "jsonwebtoken", - "rand", + "rand 0.8.5", "serde", - "strum", + "strum 0.26.3", ] [[package]] name = "alloy-rpc-types-eth" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0643cc497a71941f526454fe4fecb47e9307d3a7b6c05f70718a0341643bcc79" +checksum = "8b4dbee4d82f8a22dde18c28257bed759afeae7ba73da4a1479a039fd1445d04" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -582,18 +611,18 @@ dependencies = [ "alloy-rlp", "alloy-serde", "alloy-sol-types", - "derive_more", - "itertools 0.13.0", + "itertools 0.14.0", "jsonrpsee-types", "serde", "serde_json", + "thiserror 2.0.11", ] [[package]] name = "alloy-rpc-types-mev" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "268058db229a3b3beb8185dac46cd2149efe54afa9d788d5e995008099811cc2" +checksum = "418eb6584edd695dfe496dda85a19102c1ae4838f142efce11e2463ed2288d71" dependencies = [ "alloy-eips", "alloy-primitives", @@ -605,23 +634,23 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc57a00e8de2f8e45f988fdfd1e9d08784f563553d7717924170f324a1ab7459" +checksum = "7bd951155515fa452a2ca4b5434d4b3ab742bcd3d1d1b9a91704bcef5b8d2604" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "alloy-rpc-types-txpool" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6c604b8ce6393e75726c15eb2306fe004bca4da07383548158626fe7636ae8" +checksum = "21d8dd5bd94993eda3d56a8c4c0d693548183a35462523ffc4385c0b020d3b0c" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -631,35 +660,35 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea61b049d7ecc66a29f107970dae493d0908e366048f7484a1ca9b02c85f9b2b" +checksum = "8732058f5ca28c1d53d241e8504620b997ef670315d7c8afab856b3e3b80d945" dependencies = [ "alloy-primitives", - "arbitrary", "serde", "serde_json", ] [[package]] name = "alloy-signer" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93461b0e79c2ddd791fec5f369ab5c2686a33bbb03530144972edf5248f8a2c7" +checksum = "f96b3526fdd779a4bd0f37319cfb4172db52a7ac24cdbb8804b72091c18e1701" dependencies = [ "alloy-primitives", "async-trait", "auto_impl", + "either", "elliptic-curve", "k256", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "alloy-signer-local" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f08ec1bfa433f9e9f7c5af05af07e5cf86d27d93170de76b760e63b925f1c9c" +checksum = "fe8f78cd6b7501c7e813a1eb4a087b72d23af51f5bb66d4e948dc840bdd207d8" dependencies = [ "alloy-consensus", "alloy-network", @@ -669,48 +698,48 @@ dependencies = [ "coins-bip32", "coins-bip39", "k256", - "rand", - "thiserror 2.0.8", + "rand 0.8.5", + "thiserror 2.0.11", ] [[package]] name = "alloy-sol-macro" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9d64f851d95619233f74b310f12bcf16e0cbc27ee3762b6115c14a84809280a" +checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bf7ed1574b699f48bf17caab4e6e54c6d12bc3c006ab33d58b1e227c1c3559f" +checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.7.0", + "indexmap 2.7.1", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c02997ccef5f34f9c099277d4145f183b422938ed5322dc57a089fe9b9ad9ee" +checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" dependencies = [ "alloy-json-abi", "const-hex", @@ -719,15 +748,15 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.90", + "syn 2.0.98", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce13ff37285b0870d0a0746992a4ae48efaf34b766ae4c2640fa15e5305f8e73" +checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" dependencies = [ "serde", "winnow", @@ -735,9 +764,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1174cafd6c6d810711b4e00383037bdb458efc4fe3dbafafa16567e0320c54d8" +checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -748,17 +777,16 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf656f983e14812df65b5aee37e7b37535f68a848295e6ed736b2054a405cb7" +checksum = "5a8d762eadce3e9b65eac09879430c6f4fce3736cac3cac123f9b1bf435ddd13" dependencies = [ "alloy-json-rpc", "base64 0.22.1", - "futures-util", "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tower 0.5.2", "tracing", @@ -768,9 +796,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec938d51a47b7953b1c0fd8ddeb89a29eb113cd4908dfc4e01c7893b252d669f" +checksum = "20819c4cb978fb39ce6ac31991ba90f386d595f922f42ef888b4a18be190713e" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -781,11 +809,31 @@ dependencies = [ "url", ] +[[package]] +name = "alloy-transport-ipc" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e88304aa8b796204e5e2500dfe235933ed692745e3effd94c3733643db6d218" +dependencies = [ + "alloy-json-rpc", + "alloy-pubsub", + "alloy-transport", + "bytes", + "futures", + "interprocess", + "pin-project", + "serde", + "serde_json", + "tokio", + "tokio-util", + "tracing", +] + [[package]] name = "alloy-transport-ws" -version = "0.8.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fabdf2d18c0c87b6cfcf6a067f1d5a7db378f103faeb16130d6d174c73d006b" +checksum = "b9653ea9aa06d0e02fcbe2f04f1c47f35a85c378ccefa98e54ae85210bc8bbfa" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -801,14 +849,14 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.7.6" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a5fd8fea044cc9a8c8a50bb6f28e31f0385d820f116c5b98f6f4e55d6e5590b" +checksum = "d95a94854e420f07e962f7807485856cde359ab99ab6413883e15235ad996e8b" dependencies = [ "alloy-primitives", "alloy-rlp", "arrayvec", - "derive_more", + "derive_more 1.0.0", "nybbles", "serde", "smallvec", @@ -871,19 +919,20 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "3.0.6" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" +checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" dependencies = [ "anstyle", + "once_cell", "windows-sys 0.59.0", ] [[package]] name = "anyhow" -version = "1.0.94" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1fd03a028ef38ba2276dce7e33fcd6369c158a1bca17946c4b1b701891c1ff7" +checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" [[package]] name = "aquamarine" @@ -896,16 +945,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.90", -] - -[[package]] -name = "arbitrary" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -dependencies = [ - "derive_arbitrary", + "syn 2.0.98", ] [[package]] @@ -1019,7 +1059,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -1029,7 +1069,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -1077,7 +1117,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -1099,18 +1139,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "async-trait" -version = "0.1.83" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -1132,9 +1172,9 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "aurora-engine-modexp" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" +checksum = "518bc5745a6264b5fd7b09dffb9667e400ee9e2bbe18555fac75e1fe9afa0df9" dependencies = [ "hex", "num", @@ -1142,13 +1182,13 @@ dependencies = [ [[package]] name = "auto_impl" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -1159,9 +1199,9 @@ checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] name = "backon" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5289ec98f68f28dd809fd601059e6aa908bb8f6108620930828283d4ee23d7" +checksum = "49fef586913a57ff189f25c9b3d034356a5bf6b3fa9a7f067588fe1698ba1f5d" dependencies = [ "fastrand", "tokio", @@ -1245,7 +1285,7 @@ version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "cexpr", "clang-sys", "itertools 0.13.0", @@ -1254,23 +1294,39 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitcoin-io" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf" + +[[package]] +name = "bitcoin_hashes" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +dependencies = [ + "bitcoin-io", + "hex-conservative", +] [[package]] name = "bitflags" @@ -1280,9 +1336,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.6.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" dependencies = [ "serde", ] @@ -1300,6 +1356,20 @@ dependencies = [ "wyz", ] +[[package]] +name = "blake3" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1230237285e3e10cde447185e8975408ae24deaa67205ce684805c25bc0c7937" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", + "memmap2", +] + [[package]] name = "block-buffer" version = "0.9.0" @@ -1329,9 +1399,9 @@ dependencies = [ [[package]] name = "blst" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" +checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" dependencies = [ "cc", "glob", @@ -1341,26 +1411,27 @@ dependencies = [ [[package]] name = "boa_ast" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a69ee3a749ea36d4e56d92941e7b25076b493d4917c3d155b6cf369e23547d9" +checksum = "2c340fe0f0b267787095cbe35240c6786ff19da63ec7b69367ba338eace8169b" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "boa_interner", "boa_macros", - "indexmap 2.7.0", + "boa_string", + "indexmap 2.7.1", "num-bigint", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", ] [[package]] name = "boa_engine" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06e4559b35b80ceb2e6328481c0eca9a24506663ea33ee1e279be6b5b618b25c" +checksum = "f620c3f06f51e65c0504ddf04978be1b814ac6586f0b45f6019801ab5efd37f9" dependencies = [ "arrayvec", - "bitflags 2.6.0", + "bitflags 2.8.0", "boa_ast", "boa_gc", "boa_interner", @@ -1370,11 +1441,11 @@ dependencies = [ "boa_string", "bytemuck", "cfg-if", - "dashmap 5.5.3", - "fast-float", - "hashbrown 0.14.5", + "dashmap 6.1.0", + "fast-float2", + "hashbrown 0.15.2", "icu_normalizer", - "indexmap 2.7.0", + "indexmap 2.7.1", "intrusive-collections", "itertools 0.13.0", "num-bigint", @@ -1384,9 +1455,9 @@ dependencies = [ "once_cell", "pollster", "portable-atomic", - "rand", + "rand 0.8.5", "regress", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "ryu-js", "serde", "serde_json", @@ -1394,85 +1465,85 @@ dependencies = [ "static_assertions", "tap", "thin-vec", - "thiserror 1.0.69", + "thiserror 2.0.11", "time", ] [[package]] name = "boa_gc" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "716406f57d67bc3ac7fd227d5513b42df401dff14a3be22cbd8ee29817225363" +checksum = "2425c0b7720d42d73eaa6a883fbb77a5c920da8694964a3d79a67597ac55cce2" dependencies = [ "boa_macros", "boa_profiler", "boa_string", - "hashbrown 0.14.5", + "hashbrown 0.15.2", "thin-vec", ] [[package]] name = "boa_interner" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e18df2272616e1ba0322a69333d37dbb78797f1aa0595aad9dc41e8ecd06ad9" +checksum = "42407a3b724cfaecde8f7d4af566df4b56af32a2f11f0956f5570bb974e7f749" dependencies = [ "boa_gc", "boa_macros", - "hashbrown 0.14.5", - "indexmap 2.7.0", + "hashbrown 0.15.2", + "indexmap 2.7.1", "once_cell", "phf", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "static_assertions", ] [[package]] name = "boa_macros" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240f4126219a83519bad05c9a40bfc0303921eeb571fc2d7e44c17ffac99d3f1" +checksum = "9fd3f870829131332587f607a7ff909f1af5fc523fd1b192db55fbbdf52e8d3c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "synstructure", ] [[package]] name = "boa_parser" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b59dc05bf1dc019b11478a92986f590cff43fced4d20e866eefb913493e91c" +checksum = "9cc142dac798cdc6e2dbccfddeb50f36d2523bb977a976e19bdb3ae19b740804" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "boa_ast", "boa_interner", "boa_macros", "boa_profiler", - "fast-float", + "fast-float2", "icu_properties", "num-bigint", "num-traits", "regress", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", ] [[package]] name = "boa_profiler" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00ee0645509b3b91abd724f25072649d9e8e65653a78ff0b6e592788a58dd838" +checksum = "4064908e7cdf9b6317179e9b04dcb27f1510c1c144aeab4d0394014f37a0f922" [[package]] name = "boa_string" -version = "0.19.1" +version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae85205289bab1f2c7c8a30ddf0541cf89ba2ff7dbd144feef50bbfa664288d4" +checksum = "7debc13fbf7997bf38bf8e9b20f1ad5e2a7d27a900e1f6039fe244ce30f589b5" dependencies = [ - "fast-float", + "fast-float2", "paste", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "sptr", "static_assertions", ] @@ -1499,9 +1570,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "4.0.1" +version = "4.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" +checksum = "74fa05ad7d803d413eb8380983b092cbbaf9a85f151b871360e7b00cd7060b37" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1519,9 +1590,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-slice-cast" @@ -1529,24 +1600,30 @@ version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" +[[package]] +name = "bytecount" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce" + [[package]] name = "bytemuck" -version = "1.20.0" +version = "1.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b37c88a63ffd85d15b406896cc343916d7cf57838a847b3a6f2ca5d39a5695a" +checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" dependencies = [ "bytemuck_derive", ] [[package]] name = "bytemuck_derive" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" +checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -1557,9 +1634,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "f61dac84819c6588b558454b194026eb1f09c293b9036ae9b159e74e73ab6cf9" dependencies = [ "serde", ] @@ -1597,6 +1674,19 @@ dependencies = [ "serde", ] +[[package]] +name = "cargo_metadata" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" +dependencies = [ + "camino", + "cargo-platform", + "semver 1.0.25", + "serde", + "serde_json", +] + [[package]] name = "cargo_metadata" version = "0.18.1" @@ -1605,7 +1695,7 @@ checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform", - "semver 1.0.24", + "semver 1.0.25", "serde", "serde_json", "thiserror 1.0.69", @@ -1628,9 +1718,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.5" +version = "1.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31a0499c1dc64f458ad13872de75c0eb7e3fdb0e67964610c914b034fc5956e" +checksum = "c736e259eea577f443d5c86c304f9f4ae0295c43f3ba05c21f1d66b5f06001af" dependencies = [ "jobserver", "libc", @@ -1711,9 +1801,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.23" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" +checksum = "027bb0d98429ae334a8698531da7077bdf906419543a35a55c2cb1b66437d767" dependencies = [ "clap_builder", "clap_derive", @@ -1721,9 +1811,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.23" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" +checksum = "5589e0cba072e0f3d23791efac0fd8627b49c829c196a492e88168e6a669d863" dependencies = [ "anstream", "anstyle", @@ -1733,14 +1823,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.18" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +checksum = "bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -1776,7 +1866,7 @@ dependencies = [ "hmac 0.12.1", "once_cell", "pbkdf2", - "rand", + "rand 0.8.5", "sha2 0.10.8", "thiserror 1.0.69", ] @@ -1818,21 +1908,20 @@ dependencies = [ [[package]] name = "comfy-table" -version = "7.1.3" +version = "7.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24f165e7b643266ea80cb858aed492ad9280e3e05ce24d4a99d7d7b889b6a4d9" +checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a" dependencies = [ "crossterm", - "strum", - "strum_macros", + "unicode-segmentation", "unicode-width 0.2.0", ] [[package]] name = "compact_str" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6050c3a16ddab2e412160b31f2c871015704239bca62f72f6e5f0be631d3f644" +checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32" dependencies = [ "castaway", "cfg-if", @@ -1877,7 +1966,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" dependencies = [ "const_format_proc_macros", - "konst", ] [[package]] @@ -1891,11 +1979,17 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "constant_time_eq" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" + [[package]] name = "convert_case" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" dependencies = [ "unicode-segmentation", ] @@ -1937,9 +2031,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", ] @@ -2014,9 +2108,9 @@ version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "crossterm_winapi", - "mio 1.0.3", + "mio", "parking_lot", "rustix", "signal-hook", @@ -2035,9 +2129,9 @@ dependencies = [ [[package]] name = "crunchy" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" +checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" [[package]] name = "crypto-bigint" @@ -2046,7 +2140,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -2058,7 +2152,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ "generic-array", - "rand_core", + "rand_core 0.6.4", "typenum", ] @@ -2105,7 +2199,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2129,7 +2223,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2140,7 +2234,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2172,15 +2266,15 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.6.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010" [[package]] name = "data-encoding-macro" -version = "0.1.15" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1559b6cba622276d6d63706db152618eeb15b89b3e4041446b05876e352e639" +checksum = "9f9724adfcf41f45bf652b3995837669d73c4d49a1b5ac1ff82905ac7d9b5558" dependencies = [ "data-encoding", "data-encoding-macro-internal", @@ -2188,12 +2282,12 @@ dependencies = [ [[package]] name = "data-encoding-macro-internal" -version = "0.1.13" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "332d754c0af53bc87c108fed664d121ecf59207ec4196041f04d6ab9002ad33f" +checksum = "18e4fdb82bd54a12e42fb58a800dcae6b9e13982238ce2296dc3570b92148e1f" dependencies = [ "data-encoding", - "syn 1.0.109", + "syn 2.0.98", ] [[package]] @@ -2245,14 +2339,14 @@ dependencies = [ ] [[package]] -name = "derive_arbitrary" -version = "1.4.1" +name = "derive-where" +version = "1.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2261,7 +2355,16 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -2269,11 +2372,23 @@ name = "derive_more-impl" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.98", + "unicode-xid", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "unicode-xid", ] @@ -2348,9 +2463,9 @@ dependencies = [ [[package]] name = "discv5" -version = "0.8.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e6b70634e26c909d1edbb3142b3eaf3b89da0e52f284f00ca7c80d9901ad9e" +checksum = "c4b4e7798d2ff74e29cee344dc490af947ae657d6ab5273dde35d58ce06a4d71" dependencies = [ "aes", "aes-gcm", @@ -2366,11 +2481,11 @@ dependencies = [ "hkdf", "lazy_static", "libp2p-identity", - "lru", + "lru 0.12.5", "more-asserts", "multiaddr", "parking_lot", - "rand", + "rand 0.8.5", "smallvec", "socket2", "tokio", @@ -2387,7 +2502,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2404,9 +2519,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" [[package]] name = "ecdsa" @@ -2441,7 +2556,7 @@ checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ "curve25519-dalek", "ed25519", - "rand_core", + "rand_core 0.6.4", "serde", "sha2 0.10.8", "subtle", @@ -2450,9 +2565,9 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "b7914353092ddf589ad78f25c5c1c21b7f80b0ff8621e7c814c3485b5306da9d" [[package]] name = "elliptic-curve" @@ -2467,7 +2582,7 @@ dependencies = [ "generic-array", "group", "pkcs8", - "rand_core", + "rand_core 0.6.4", "sec1", "serdect", "subtle", @@ -2476,19 +2591,19 @@ dependencies = [ [[package]] name = "enr" -version = "0.12.1" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "972070166c68827e64bd1ebc8159dd8e32d9bc2da7ebe8f20b61308f7974ad30" +checksum = "851bd664a3d3a3c175cff92b2f0df02df3c541b4895d0ae307611827aae46152" dependencies = [ "alloy-rlp", - "base64 0.21.7", + "base64 0.22.1", "bytes", "ed25519-dalek", "hex", "k256", "log", - "rand", - "secp256k1", + "rand 0.8.5", + "secp256k1 0.30.0", "serde", "sha3", "zeroize", @@ -2503,7 +2618,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2514,7 +2629,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2529,9 +2644,9 @@ dependencies = [ [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -2543,6 +2658,15 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "error-chain" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d2f06b9cac1506ece98fe3231e3cc9c4410ec3d5b1f24ae1c8946f0742cdefc" +dependencies = [ + "version_check", +] + [[package]] name = "ethereum_serde_utils" version = "0.7.0" @@ -2558,9 +2682,9 @@ dependencies = [ [[package]] name = "ethereum_ssz" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "036c84bd29bff35e29bbee3c8fc0e2fb95db12b6f2f3cae82a827fbc97256f3a" +checksum = "86da3096d1304f5f28476ce383005385459afeaf0eea08592b65ddbc9b258d16" dependencies = [ "alloy-primitives", "ethereum_serde_utils", @@ -2573,14 +2697,14 @@ dependencies = [ [[package]] name = "ethereum_ssz_derive" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dc8e67e1f770f5aa4c2c2069aaaf9daee7ac21bed357a71b911b37a58966cfb" +checksum = "d832a5c38eba0e7ad92592f7a22d693954637fbb332b4f669590d66a5c3183e5" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2594,10 +2718,10 @@ dependencies = [ ] [[package]] -name = "fast-float" -version = "0.2.0" +name = "fast-float2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95765f67b4b18863968b4a1bd5bb576f732b29a4a28c7cd84c09fa3e2875f33c" +checksum = "f8eb564c5c7423d25c886fb561d1e4ee69f72354d16918afa32c08811f6b6a55" [[package]] name = "fastrand" @@ -2643,7 +2767,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2672,16 +2796,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand", + "rand 0.8.5", "rustc-hex", "static_assertions", ] [[package]] name = "flate2" -version = "1.0.35" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" +checksum = "11faaf5a5236997af9848be0bef4db95824b1d534ebc64d0f0c6cf3e67bd38dc" dependencies = [ "crc32fast", "miniz_oxide", @@ -2695,9 +2819,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foldhash" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" [[package]] name = "form_urlencoded" @@ -2719,9 +2843,9 @@ dependencies = [ [[package]] name = "fsio" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dad0ce30be0cc441b325c5d705c8b613a0ca0d92b6a8953d41bd236dc09a36d0" +checksum = "f4944f16eb6a05b4b2b79986b4786867bb275f52882adea798f17cc2588f25b2" dependencies = [ "dunce", ] @@ -2788,7 +2912,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -2838,8 +2962,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" [[package]] -name = "generic-array" -version = "0.14.7" +name = "generator" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc6bd114ceda131d3b1d665eba35788690ad37f5916457286b32ab6fd3c438dd" +dependencies = [ + "cfg-if", + "libc", + "log", + "rustversion", + "windows 0.58.0", +] + +[[package]] +name = "generic-array" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ @@ -2858,10 +2995,22 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "windows-targets 0.52.6", +] + [[package]] name = "ghash" version = "0.5.1" @@ -2880,9 +3029,9 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" [[package]] name = "glob" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" [[package]] name = "gloo-net" @@ -2937,15 +3086,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core", + "rand_core 0.6.4", "subtle", ] [[package]] name = "h2" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2" dependencies = [ "atomic-waker", "bytes", @@ -2953,7 +3102,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.7.0", + "indexmap 2.7.1", "slab", "tokio", "tokio-util", @@ -2979,7 +3128,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ "ahash", - "allocator-api2", ] [[package]] @@ -3035,16 +3183,19 @@ dependencies = [ ] [[package]] -name = "hex-literal" -version = "0.4.1" +name = "hex-conservative" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] [[package]] name = "hickory-proto" -version = "0.25.0-alpha.4" +version = "0.25.0-alpha.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d063c0692ee669aa6d261988aa19ca5510f1cc40e4f211024f50c888499a35d7" +checksum = "1d00147af6310f4392a31680db52a3ed45a2e0f68eb18e8c3fe5537ecc96d9e2" dependencies = [ "async-recursion", "async-trait", @@ -3057,9 +3208,9 @@ dependencies = [ "idna", "ipnet", "once_cell", - "rand", + "rand 0.9.0", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tinyvec", "tokio", "tracing", @@ -3068,9 +3219,9 @@ dependencies = [ [[package]] name = "hickory-resolver" -version = "0.25.0-alpha.4" +version = "0.25.0-alpha.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42bc352e4412fb657e795f79b4efcf2bd60b59ee5ca0187f3554194cd1107a27" +checksum = "5762f69ebdbd4ddb2e975cd24690bf21fe6b2604039189c26acddbc427f12887" dependencies = [ "cfg-if", "futures-util", @@ -3079,11 +3230,11 @@ dependencies = [ "moka", "once_cell", "parking_lot", - "rand", + "rand 0.9.0", "resolv-conf", "serde", "smallvec", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] @@ -3180,9 +3331,9 @@ checksum = "9171a2ea8a68358193d15dd5d70c1c10a2afc3e7e4c5bc92bc9f025cebd7359c" [[package]] name = "httparse" -version = "1.9.5" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" +checksum = "f2d708df4e7140240a16cd6ab0ab65c972d7433ab77819ea693fde9c43811e2a" [[package]] name = "httpdate" @@ -3214,9 +3365,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ "bytes", "futures-channel", @@ -3235,9 +3386,9 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.4" +version = "0.27.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6884a48c6826ec44f524c7456b163cebe9e55a18d7b5e307cb4f100371cc767" +checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ "futures-util", "http", @@ -3410,7 +3561,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -3467,7 +3618,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -3508,11 +3659,10 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.7.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" +checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" dependencies = [ - "arbitrary", "equivalent", "hashbrown 0.15.2", "serde", @@ -3526,11 +3676,11 @@ checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" [[package]] name = "inotify" -version = "0.9.6" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.8.0", "inotify-sys", "libc", ] @@ -3546,9 +3696,9 @@ dependencies = [ [[package]] name = "inout" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" dependencies = [ "block-padding", "generic-array", @@ -3556,16 +3706,15 @@ dependencies = [ [[package]] name = "instability" -version = "0.3.3" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b829f37dead9dc39df40c2d3376c179fdfd2ac771f53f55d3c30dc096a3c0c6e" +checksum = "0bf9fed6d91cfb734e7476a06bde8300a1b94e217e1b523b6f0cd1a01998c71d" dependencies = [ "darling", "indoc", - "pretty_assertions", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -3606,9 +3755,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.10.1" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" @@ -3644,6 +3793,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.14" @@ -3681,9 +3839,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ "once_cell", "wasm-bindgen", @@ -3691,9 +3849,9 @@ dependencies = [ [[package]] name = "jsonrpsee" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" +checksum = "834af00800e962dee8f7bfc0f60601de215e73e78e5497d733a2919da837d3c8" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -3709,9 +3867,9 @@ dependencies = [ [[package]] name = "jsonrpsee-client-transport" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548125b159ba1314104f5bb5f38519e03a41862786aa3925cf349aae9cdd546e" +checksum = "def0fd41e2f53118bd1620478d12305b2c75feef57ea1f93ef70568c98081b7e" dependencies = [ "base64 0.22.1", "futures-channel", @@ -3734,9 +3892,9 @@ dependencies = [ [[package]] name = "jsonrpsee-core" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280" +checksum = "76637f6294b04e747d68e69336ef839a3493ca62b35bf488ead525f7da75c5bb" dependencies = [ "async-trait", "bytes", @@ -3748,8 +3906,8 @@ dependencies = [ "jsonrpsee-types", "parking_lot", "pin-project", - "rand", - "rustc-hash 2.1.0", + "rand 0.8.5", + "rustc-hash 2.1.1", "serde", "serde_json", "thiserror 1.0.69", @@ -3761,9 +3919,9 @@ dependencies = [ [[package]] name = "jsonrpsee-http-client" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3638bc4617f96675973253b3a45006933bde93c2fd8a6170b33c777cc389e5b" +checksum = "87c24e981ad17798bbca852b0738bfb7b94816ed687bd0d5da60bfa35fa0fdc3" dependencies = [ "async-trait", "base64 0.22.1", @@ -3786,22 +3944,22 @@ dependencies = [ [[package]] name = "jsonrpsee-proc-macros" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d" +checksum = "6fcae0c6c159e11541080f1f829873d8f374f81eda0abc67695a13fc8dc1a580" dependencies = [ "heck", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "jsonrpsee-server" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c" +checksum = "66b7a3df90a1a60c3ed68e7ca63916b53e9afa928e33531e87f61a9c8e9ae87b" dependencies = [ "futures-util", "http", @@ -3826,9 +3984,9 @@ dependencies = [ [[package]] name = "jsonrpsee-types" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1" +checksum = "ddb81adb1a5ae9182df379e374a79e24e992334e7346af4d065ae5b2acb8d4c6" dependencies = [ "http", "serde", @@ -3838,9 +3996,9 @@ dependencies = [ [[package]] name = "jsonrpsee-wasm-client" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a01cd500915d24ab28ca17527e23901ef1be6d659a2322451e1045532516c25" +checksum = "42e41af42ca39657313748174d02766e5287d3a57356f16756dbd8065b933977" dependencies = [ "jsonrpsee-client-transport", "jsonrpsee-core", @@ -3849,9 +4007,9 @@ dependencies = [ [[package]] name = "jsonrpsee-ws-client" -version = "0.24.7" +version = "0.24.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fe322e0896d0955a3ebdd5bf813571c53fea29edd713bc315b76620b327e86d" +checksum = "6f4f3642a292f5b76d8a16af5c88c16a0860f2ccc778104e5c848b28183d9538" dependencies = [ "http", "jsonrpsee-client-transport", @@ -3862,11 +4020,11 @@ dependencies = [ [[package]] name = "jsonwebtoken" -version = "9.3.0" +version = "9.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +checksum = "5a87cc7a48537badeae96744432de36f4be2b4a34a05a5ef32e9dd8a1c169dde" dependencies = [ - "base64 0.21.7", + "base64 0.22.1", "js-sys", "pem", "ring", @@ -3909,21 +4067,6 @@ dependencies = [ "sha3-asm", ] -[[package]] -name = "konst" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330f0e13e6483b8c34885f7e6c9f19b1a7bd449c673fbb948a51c99d66ef74f4" -dependencies = [ - "konst_macro_rules", -] - -[[package]] -name = "konst_macro_rules" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" - [[package]] name = "kqueue" version = "1.0.8" @@ -3955,9 +4098,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.170" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" [[package]] name = "libloading" @@ -4011,7 +4154,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "libc", "redox_syscall", ] @@ -4029,7 +4172,7 @@ dependencies = [ "libsecp256k1-core", "libsecp256k1-gen-ecmult", "libsecp256k1-gen-genmult", - "rand", + "rand 0.8.5", "serde", "sha2 0.9.9", "typenum", @@ -4072,9 +4215,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" [[package]] name = "linked_hash_set" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588" +checksum = "bae85b5be22d9843c80e5fc80e9b64c8a3b1f98f867c709956eca3efff4e92e2" dependencies = [ "linked-hash-map", "serde", @@ -4082,9 +4225,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.4.14" +version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" @@ -4105,9 +4248,22 @@ dependencies = [ [[package]] name = "log" -version = "0.4.22" +version = "0.4.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" + +[[package]] +name = "loom" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" +dependencies = [ + "cfg-if", + "generator", + "scoped-tls", + "tracing", + "tracing-subscriber", +] [[package]] name = "lru" @@ -4118,6 +4274,15 @@ dependencies = [ "hashbrown 0.15.2", ] +[[package]] +name = "lru" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +dependencies = [ + "hashbrown 0.15.2", +] + [[package]] name = "lz4_flex" version = "0.11.3" @@ -4201,17 +4366,17 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "metrics-exporter-prometheus" -version = "0.16.0" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b6f8152da6d7892ff1b7a1c0fa3f435e92b5918ad67035c3bb432111d9a29b" +checksum = "dd7399781913e5393588a8d8c6a2867bf85fb38eaf2502fdce465aad2dc6f034" dependencies = [ "base64 0.22.1", - "indexmap 2.7.0", + "indexmap 2.7.1", "metrics 0.24.1", "metrics-util", "quanta", @@ -4229,22 +4394,24 @@ dependencies = [ "mach2", "metrics 0.24.1", "once_cell", - "procfs 0.17.0", + "procfs", "rlimit", "windows 0.58.0", ] [[package]] name = "metrics-util" -version = "0.18.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b482df36c13dd1869d73d14d28cd4855fbd6cfc32294bee109908a9f4a4ed7" +checksum = "dbd4884b1dd24f7d6628274a2f5ae22465c337c5ba065ec9b6edccddf8acc673" dependencies = [ "crossbeam-epoch", "crossbeam-utils", "hashbrown 0.15.2", "metrics 0.24.1", "quanta", + "rand 0.8.5", + "rand_xoshiro", "sketches-ddsketch", ] @@ -4264,6 +4431,21 @@ dependencies = [ "unicase", ] +[[package]] +name = "mini-moka" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c325dfab65f261f386debee8b0969da215b3fa0037e74c8a1234db7ba986d803" +dependencies = [ + "crossbeam-channel", + "crossbeam-utils", + "dashmap 5.5.3", + "skeptic", + "smallvec", + "tagptr", + "triomphe", +] + [[package]] name = "minimal-lexical" version = "0.2.1" @@ -4272,25 +4454,13 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.2" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394" +checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5" dependencies = [ "adler2", ] -[[package]] -name = "mio" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" -dependencies = [ - "libc", - "log", - "wasi", - "windows-sys 0.48.0", -] - [[package]] name = "mio" version = "1.0.3" @@ -4299,7 +4469,7 @@ checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ "libc", "log", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] @@ -4326,21 +4496,20 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.8" +version = "0.12.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cf62eb4dd975d2dde76432fb1075c49e3ee2331cf36f1f8fd4b66550d32b6f" +checksum = "a9321642ca94a4282428e6ea4af8cc2ca4eac48ac7a6a4ea8f33f76d0ce70926" dependencies = [ "crossbeam-channel", "crossbeam-epoch", "crossbeam-utils", - "once_cell", + "loom", "parking_lot", - "quanta", + "portable-atomic", "rustc_version 0.4.1", "smallvec", "tagptr", "thiserror 1.0.69", - "triomphe", "uuid", ] @@ -4402,22 +4571,29 @@ dependencies = [ [[package]] name = "notify" -version = "6.1.1" +version = "8.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" +checksum = "2fee8403b3d66ac7b26aee6e40a897d85dc5ce26f44da36b8b73e987cc52e943" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "filetime", "fsevent-sys", "inotify", "kqueue", "libc", "log", - "mio 0.8.11", + "mio", + "notify-types", "walkdir", - "windows-sys 0.48.0", + "windows-sys 0.59.0", ] +[[package]] +name = "notify-types" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" + [[package]] name = "ntapi" version = "0.4.1" @@ -4546,7 +4722,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -4560,9 +4736,9 @@ dependencies = [ [[package]] name = "nybbles" -version = "0.2.1" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" +checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" dependencies = [ "alloy-rlp", "const-hex", @@ -4573,9 +4749,9 @@ dependencies = [ [[package]] name = "object" -version = "0.36.5" +version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ "memchr", ] @@ -4629,7 +4805,6 @@ dependencies = [ name = "odyssey-node" version = "0.0.0" dependencies = [ - "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types", @@ -4644,7 +4819,6 @@ dependencies = [ "reth-chainspec", "reth-cli", "reth-errors", - "reth-evm", "reth-network", "reth-network-types", "reth-node-api", @@ -4652,18 +4826,14 @@ dependencies = [ "reth-optimism-chainspec", "reth-optimism-forks", "reth-optimism-node", + "reth-optimism-payload-builder", "reth-optimism-primitives", - "reth-payload-builder", - "reth-primitives", "reth-primitives-traits", - "reth-revm", "reth-rpc-eth-api", "reth-rpc-eth-types", "reth-transaction-pool", "reth-trie-common", "reth-trie-db", - "revm-precompile", - "revm-primitives", "serde", "serde_json", "tokio", @@ -4677,6 +4847,7 @@ dependencies = [ "alloy-primitives", "alloy-provider", "alloy-rpc-client", + "alloy-rpc-types", "alloy-signer-local", "clap", "eyre", @@ -4695,11 +4866,11 @@ dependencies = [ name = "odyssey-wallet" version = "0.0.0" dependencies = [ + "alloy-json-rpc", "alloy-network", "alloy-primitives", "alloy-provider", "alloy-rpc-types", - "alloy-transport", "eyre", "jsonrpsee", "metrics 0.23.0", @@ -4709,7 +4880,7 @@ dependencies = [ "reth-storage-api", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] @@ -4721,15 +4892,16 @@ dependencies = [ "futures", "jsonrpsee", "reth-chain-state", + "reth-optimism-primitives", "serde", "tokio", ] [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" dependencies = [ "critical-section", "portable-atomic", @@ -4737,42 +4909,32 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.8.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534e21b77059390e2b93e04c7f912865623c6a8eb7c4aef48c469bf6920926ef" +checksum = "621e69964165285ce750bf7ba961707e26c31df9f0b25652d6219dcee1f7f5b5" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "arbitrary", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] -name = "op-alloy-genesis" -version = "0.8.4" +name = "op-alloy-flz" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae4912c15ce3971338fa03be316850364a2c1354c21e96b19c535ed70316ed0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_repr", - "thiserror 2.0.8", -] +checksum = "bbee9e684edfb73081bc22337be374b1b454d5eea87790b61ca95a6564953807" [[package]] name = "op-alloy-network" -version = "0.8.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91c1dac374e46105703d47ef78d25dc9389444168d4252ef7433f3e364376b6d" +checksum = "c45f90eaee907df6f1c75d9295c303cfc018fdb3ef91b13b9f46e9922bfb1625" dependencies = [ "alloy-consensus", "alloy-network", @@ -4783,48 +4945,21 @@ dependencies = [ "op-alloy-rpc-types", ] -[[package]] -name = "op-alloy-protocol" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b9e5978b53b864204efd2a802b9bd93a4ab24df083bcfecfa73d6a140f23f2e" -dependencies = [ - "alloc-no-stdlib", - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "async-trait", - "brotli", - "cfg-if", - "miniz_oxide", - "op-alloy-consensus", - "op-alloy-genesis", - "serde", - "thiserror 2.0.8", - "tracing", - "unsigned-varint", -] - [[package]] name = "op-alloy-rpc-jsonrpsee" -version = "0.8.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "075f6c16c5e60b03cca15e678ddeb472950b37587f297de5638706567a5e6e28" +checksum = "409274d1940cdd6806c431157eb2b68b93ec2d019785f625b665d1c72c51d04e" dependencies = [ - "alloy-eips", "alloy-primitives", "jsonrpsee", - "op-alloy-rpc-types", - "op-alloy-rpc-types-engine", ] [[package]] name = "op-alloy-rpc-types" -version = "0.8.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "708072e60066bc2fc39d81c6068b59f40a2bc28d70d0bea0c38b8d2017df0dca" +checksum = "7a206be9e4aab37bfa352352d63d8dfa9d48d9df1f30478e4a9477865fd88ad6" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4832,7 +4967,7 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "op-alloy-consensus", "serde", "serde_json", @@ -4840,22 +4975,21 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" -version = "0.8.4" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abf8bccdb49c5e1c4bded85e395065adfeb10b776119bfbb7ae395fb4f377689" +checksum = "158a8f5cec81cd301a2bdf97474b9918dda6318447619fbdfcf3f5bbc394d6be" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "ethereum_ssz", "op-alloy-consensus", - "op-alloy-genesis", - "op-alloy-protocol", "serde", "snap", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] @@ -4866,9 +5000,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl-probe" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "option-ext" @@ -4906,29 +5040,31 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", "bytes", + "const_format", "impl-trait-for-tuples", "parity-scale-codec-derive", + "rustversion", "serde", ] [[package]] name = "parity-scale-codec-derive" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.98", ] [[package]] @@ -4972,9 +5108,9 @@ dependencies = [ [[package]] name = "pem" -version = "3.0.4" +version = "3.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +checksum = "38af38e8470ac9dee3ce1bae1af9c1671fffc44ddfd8bd1d0a3445bf349a8ef3" dependencies = [ "base64 0.22.1", "serde", @@ -4993,7 +5129,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.8", + "thiserror 2.0.11", "ucd-trie", ] @@ -5009,9 +5145,9 @@ dependencies = [ [[package]] name = "phf" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" dependencies = [ "phf_macros", "phf_shared", @@ -5019,61 +5155,61 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" dependencies = [ "phf_shared", - "rand", + "rand 0.8.5", ] [[package]] name = "phf_macros" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" dependencies = [ "phf_generator", "phf_shared", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "phf_shared" -version = "0.11.2" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" dependencies = [ "siphasher", ] [[package]] name = "pin-project" -version = "1.1.7" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" +checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.7" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" +checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "pin-project-lite" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" [[package]] name = "pin-utils" @@ -5099,9 +5235,9 @@ checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] name = "pollster" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2" +checksum = "2f3a9f18d041e6d0e102a0a46750538147e5e8992d3b4873aaafee2520b00ce3" [[package]] name = "polyval" @@ -5117,9 +5253,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" [[package]] name = "powerfmt" @@ -5133,7 +5269,7 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -5194,54 +5330,30 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" dependencies = [ "unicode-ident", ] -[[package]] -name = "procfs" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" -dependencies = [ - "bitflags 2.6.0", - "chrono", - "flate2", - "hex", - "lazy_static", - "procfs-core 0.16.0", - "rustix", -] - [[package]] name = "procfs" version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc5b72d8145275d844d4b5f6d4e1eef00c8cd889edb6035c21675d1bb1f45c9f" dependencies = [ - "bitflags 2.6.0", - "hex", - "procfs-core 0.17.0", - "rustix", -] - -[[package]] -name = "procfs-core" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" -dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "chrono", + "flate2", "hex", + "procfs-core", + "rustix", ] [[package]] @@ -5250,23 +5362,24 @@ version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "239df02d8349b06fc07398a3a1697b06418223b1c7725085e801e7c0fc6a12ec" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", + "chrono", "hex", ] [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.6.0", + "bitflags 2.8.0", "lazy_static", "num-traits", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_xorshift", "regex-syntax 0.8.5", "rusty-fork", @@ -5275,27 +5388,27 @@ dependencies = [ ] [[package]] -name = "proptest-derive" -version = "0.5.1" +name = "pulldown-cmark" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49" +checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.90", + "bitflags 2.8.0", + "memchr", + "unicase", ] [[package]] name = "quanta" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773ce68d0bb9bc7ef20be3536ffe94e223e1f365bd374108b2659fac0c65cfe6" +checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" dependencies = [ "crossbeam-utils", "libc", "once_cell", "raw-cpuid", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "web-sys", "winapi", ] @@ -5325,10 +5438,10 @@ dependencies = [ "pin-project-lite", "quinn-proto", "quinn-udp", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "rustls", "socket2", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] @@ -5340,14 +5453,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ "bytes", - "getrandom", - "rand", + "getrandom 0.2.15", + "rand 0.8.5", "ring", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "rustls", "rustls-pki-types", "slab", - "thiserror 2.0.8", + "thiserror 2.0.11", "tinyvec", "tracing", "web-time", @@ -5355,9 +5468,9 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" +checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" dependencies = [ "cfg_aliases", "libc", @@ -5369,9 +5482,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.37" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ "proc-macro2", ] @@ -5389,11 +5502,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", "serde", ] +[[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.2", + "zerocopy 0.8.20", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -5401,7 +5525,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.2", ] [[package]] @@ -5410,7 +5544,17 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", +] + +[[package]] +name = "rand_core" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a509b1a2ffbe92afab0e55c8fd99dea1c280e8171bd2d88682bb20bc41cbc2c" +dependencies = [ + "getrandom 0.3.1", + "zerocopy 0.8.20", ] [[package]] @@ -5419,37 +5563,46 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_xoshiro" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +dependencies = [ + "rand_core 0.6.4", ] [[package]] name = "ratatui" -version = "0.28.1" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdef7f9be5c0122f890d58bdf4d964349ba6a6161f705907526d891efabba57d" +checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "cassowary", "compact_str", "crossterm", + "indoc", "instability", "itertools 0.13.0", - "lru", + "lru 0.12.5", "paste", - "strum", - "strum_macros", + "strum 0.26.3", "unicode-segmentation", "unicode-truncate", - "unicode-width 0.1.14", + "unicode-width 0.2.0", ] [[package]] name = "raw-cpuid" -version = "11.2.0" +version = "11.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0" +checksum = "529468c1335c1c03919960dfefdb1b3648858c20d7ec2d0663e728e4a717efbc" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", ] [[package]] @@ -5480,11 +5633,11 @@ checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" [[package]] name = "redox_syscall" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" +checksum = "82b568323e98e49e2a0899dcee453dd679fae22d69adf9b11dd508d1549b7e2f" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", ] [[package]] @@ -5493,7 +5646,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom", + "getrandom 0.2.15", "libredox", "thiserror 1.0.69", ] @@ -5544,22 +5697,23 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "regress" -version = "0.10.1" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1541daf4e4ed43a0922b7969bdc2170178bcacc5dabf7e39bc508a9fa3953a7a" +checksum = "78ef7fa9ed0256d64a688a3747d0fef7a88851c18a5e1d57f115f38ec2e09366" dependencies = [ - "hashbrown 0.14.5", + "hashbrown 0.15.2", "memchr", ] [[package]] name = "reqwest" -version = "0.12.9" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" +checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" dependencies = [ "base64 0.22.1", "bytes", + "futures-channel", "futures-core", "futures-util", "http", @@ -5586,6 +5740,7 @@ dependencies = [ "sync_wrapper", "tokio", "tokio-rustls", + "tower 0.5.2", "tower-service", "url", "wasm-bindgen", @@ -5607,8 +5762,8 @@ dependencies = [ [[package]] name = "reth-basic-payload-builder" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5616,122 +5771,28 @@ dependencies = [ "futures-core", "futures-util", "metrics 0.24.1", - "reth-chainspec", - "reth-evm", "reth-metrics", "reth-payload-builder", "reth-payload-builder-primitives", "reth-payload-primitives", "reth-primitives", - "reth-provider", - "reth-revm", - "reth-tasks", - "reth-transaction-pool", - "revm", - "tokio", - "tracing", -] - -[[package]] -name = "reth-beacon-consensus" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "futures", - "itertools 0.13.0", - "metrics 0.24.1", - "reth-blockchain-tree-api", - "reth-chainspec", - "reth-codecs", - "reth-db-api", - "reth-engine-primitives", - "reth-errors", - "reth-ethereum-consensus", - "reth-metrics", - "reth-network-p2p", - "reth-node-types", - "reth-payload-builder", - "reth-payload-builder-primitives", - "reth-payload-primitives", - "reth-payload-validator", - "reth-primitives", "reth-primitives-traits", "reth-provider", - "reth-prune", - "reth-stages-api", - "reth-static-file", - "reth-tasks", - "reth-tokio-util", - "schnellru", - "thiserror 2.0.8", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-blockchain-tree" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "aquamarine", - "linked_hash_set", - "metrics 0.24.1", - "parking_lot", - "reth-blockchain-tree-api", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-evm", - "reth-execution-errors", - "reth-execution-types", - "reth-metrics", - "reth-network", - "reth-node-types", - "reth-primitives", - "reth-provider", "reth-revm", - "reth-stages-api", - "reth-storage-errors", - "reth-trie", - "reth-trie-db", - "reth-trie-parallel", + "reth-tasks", "tokio", "tracing", ] -[[package]] -name = "reth-blockchain-tree-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-consensus", - "reth-execution-errors", - "reth-primitives", - "reth-primitives-traits", - "reth-storage-errors", - "thiserror 2.0.8", -] - [[package]] name = "reth-chain-state" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "metrics 0.24.1", "parking_lot", "pin-project", @@ -5743,7 +5804,7 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-trie", - "revm", + "revm-database", "tokio", "tokio-stream", "tracing", @@ -5751,28 +5812,27 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", + "alloy-trie", "auto_impl", - "derive_more", - "once_cell", + "derive_more 2.0.1", "reth-ethereum-forks", "reth-network-peers", "reth-primitives-traits", - "reth-trie-common", "serde_json", ] [[package]] name = "reth-cli" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-genesis", "clap", @@ -5785,8 +5845,8 @@ dependencies = [ [[package]] name = "reth-cli-commands" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "ahash", "alloy-consensus", @@ -5801,9 +5861,8 @@ dependencies = [ "fdlimit", "futures", "human_bytes", - "itertools 0.13.0", + "itertools 0.14.0", "ratatui", - "reth-beacon-consensus", "reth-chainspec", "reth-cli", "reth-cli-runner", @@ -5830,6 +5889,7 @@ dependencies = [ "reth-node-events", "reth-node-metrics", "reth-primitives", + "reth-primitives-traits", "reth-provider", "reth-prune", "reth-stages", @@ -5837,7 +5897,7 @@ dependencies = [ "reth-static-file-types", "reth-trie", "reth-trie-db", - "secp256k1", + "secp256k1 0.30.0", "serde", "serde_json", "tokio", @@ -5847,8 +5907,8 @@ dependencies = [ [[package]] name = "reth-cli-runner" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "reth-tasks", "tokio", @@ -5857,26 +5917,26 @@ dependencies = [ [[package]] name = "reth-cli-util" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", "cfg-if", "eyre", "libc", - "rand", + "rand 0.8.5", "reth-fs-util", - "secp256k1", + "secp256k1 0.30.0", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tikv-jemallocator", ] [[package]] name = "reth-codecs" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5892,19 +5952,19 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "reth-config" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "eyre", "humantime-serde", @@ -5917,37 +5977,34 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", - "alloy-eips", "alloy-primitives", "auto_impl", - "derive_more", - "reth-primitives", + "reth-execution-types", "reth-primitives-traits", + "thiserror 2.0.11", ] [[package]] name = "reth-consensus-common" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "reth-chainspec", "reth-consensus", - "reth-primitives", "reth-primitives-traits", - "revm-primitives", ] [[package]] name = "reth-consensus-debug-client" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5970,13 +6027,11 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "alloy-consensus", "alloy-primitives", - "bytes", - "derive_more", + "derive_more 2.0.1", "eyre", "metrics 0.24.1", "page_size", @@ -5986,34 +6041,30 @@ dependencies = [ "reth-metrics", "reth-nippy-jar", "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", "reth-storage-errors", "reth-tracing", - "reth-trie-common", - "rustc-hash 2.1.0", - "serde", - "strum", + "rustc-hash 2.1.1", + "strum 0.27.1", "sysinfo", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-db-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-genesis", "alloy-primitives", "bytes", - "derive_more", + "derive_more 2.0.1", "metrics 0.24.1", "modular-bitfield", "parity-scale-codec", "reth-codecs", "reth-db-models", + "reth-optimism-primitives", "reth-primitives", "reth-primitives-traits", "reth-prune-types", @@ -6026,8 +6077,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6037,7 +6088,6 @@ dependencies = [ "reth-chainspec", "reth-codecs", "reth-config", - "reth-db", "reth-db-api", "reth-etl", "reth-fs-util", @@ -6049,14 +6099,14 @@ dependencies = [ "reth-trie-db", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-db-models" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6069,25 +6119,25 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", "discv5", "enr", "generic-array", - "itertools 0.13.0", + "itertools 0.14.0", "parking_lot", - "rand", + "rand 0.8.5", "reth-ethereum-forks", "reth-net-banlist", "reth-net-nat", "reth-network-peers", "schnellru", - "secp256k1", + "secp256k1 0.30.0", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tracing", @@ -6095,32 +6145,32 @@ dependencies = [ [[package]] name = "reth-discv5" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", + "derive_more 2.0.1", "discv5", "enr", "futures", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", - "rand", + "rand 0.8.5", "reth-chainspec", "reth-ethereum-forks", "reth-metrics", "reth-network-peers", - "secp256k1", - "thiserror 2.0.8", + "secp256k1 0.30.0", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-dns-discovery" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "data-encoding", @@ -6132,10 +6182,10 @@ dependencies = [ "reth-network-peers", "reth-tokio-util", "schnellru", - "secp256k1", + "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tracing", @@ -6143,8 +6193,8 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6152,14 +6202,12 @@ dependencies = [ "alloy-rlp", "futures", "futures-util", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", "pin-project", "rayon", "reth-config", "reth-consensus", - "reth-db", - "reth-db-api", "reth-metrics", "reth-network-p2p", "reth-network-peers", @@ -6167,7 +6215,7 @@ dependencies = [ "reth-primitives-traits", "reth-storage-api", "reth-tasks", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tokio-util", @@ -6176,8 +6224,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "aes", "alloy-primitives", @@ -6192,12 +6240,12 @@ dependencies = [ "generic-array", "hmac 0.12.1", "pin-project", - "rand", + "rand 0.8.5", "reth-network-peers", - "secp256k1", + "secp256k1 0.30.0", "sha2 0.10.8", "sha3", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tokio-util", @@ -6207,8 +6255,8 @@ dependencies = [ [[package]] name = "reth-engine-local" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6216,7 +6264,6 @@ dependencies = [ "eyre", "futures-util", "op-alloy-rpc-types-engine", - "reth-beacon-consensus", "reth-chainspec", "reth-consensus", "reth-engine-primitives", @@ -6225,12 +6272,11 @@ dependencies = [ "reth-ethereum-engine-primitives", "reth-evm", "reth-node-types", + "reth-optimism-chainspec", "reth-payload-builder", - "reth-payload-builder-primitives", "reth-payload-primitives", "reth-provider", "reth-prune", - "reth-rpc-types-compat", "reth-stages-api", "reth-transaction-pool", "tokio", @@ -6240,13 +6286,16 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", + "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", + "auto_impl", "futures", + "reth-chain-state", "reth-errors", "reth-execution-types", "reth-payload-builder-primitives", @@ -6254,19 +6303,19 @@ dependencies = [ "reth-primitives", "reth-primitives-traits", "reth-trie", + "reth-trie-common", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", ] [[package]] name = "reth-engine-service" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "futures", "pin-project", - "reth-beacon-consensus", "reth-chainspec", "reth-consensus", "reth-engine-primitives", @@ -6280,37 +6329,35 @@ dependencies = [ "reth-prune", "reth-stages-api", "reth-tasks", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-engine-tree" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-engine", - "derive_more", + "derive_more 2.0.1", "futures", "metrics 0.24.1", + "mini-moka", "rayon", - "reth-beacon-consensus", - "reth-blockchain-tree", - "reth-blockchain-tree-api", "reth-chain-state", "reth-consensus", + "reth-db", "reth-engine-primitives", "reth-errors", + "reth-ethereum-primitives", "reth-evm", "reth-metrics", "reth-network-p2p", "reth-payload-builder", - "reth-payload-builder-primitives", "reth-payload-primitives", - "reth-primitives", "reth-primitives-traits", "reth-provider", "reth-prune", @@ -6322,15 +6369,16 @@ dependencies = [ "reth-trie-parallel", "reth-trie-sparse", "revm-primitives", - "thiserror 2.0.8", + "schnellru", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-engine-util" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6338,20 +6386,24 @@ dependencies = [ "alloy-rpc-types-engine", "eyre", "futures", - "itertools 0.13.0", + "itertools 0.14.0", "pin-project", + "reth-chainspec", "reth-consensus-common", "reth-engine-primitives", "reth-errors", "reth-ethereum-forks", + "reth-ethereum-primitives", "reth-evm", "reth-fs-util", + "reth-payload-primitives", "reth-payload-validator", "reth-primitives", + "reth-primitives-traits", "reth-provider", "reth-revm", - "reth-rpc-types-compat", "reth-trie", + "revm-database", "revm-primitives", "serde", "serde_json", @@ -6362,27 +6414,26 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "reth-blockchain-tree-api", "reth-consensus", "reth-execution-errors", "reth-fs-util", "reth-storage-errors", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-eth-wire" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", "alloy-primitives", "alloy-rlp", "bytes", - "derive_more", + "derive_more 2.0.1", "futures", "pin-project", "reth-codecs", @@ -6394,7 +6445,7 @@ dependencies = [ "reth-primitives-traits", "serde", "snap", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tokio-util", @@ -6403,8 +6454,8 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6412,83 +6463,85 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "bytes", - "derive_more", + "derive_more 2.0.1", "reth-chainspec", "reth-codecs-derive", "reth-ethereum-forks", - "reth-primitives", + "reth-ethereum-primitives", "reth-primitives-traits", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-ethereum-cli" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "eyre", "reth-chainspec", "reth-cli", ] -[[package]] -name = "reth-ethereum-consensus" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-primitives", - "reth-primitives-traits", - "tracing", -] - [[package]] name = "reth-ethereum-engine-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-engine", - "reth-chain-state", "reth-chainspec", "reth-engine-primitives", "reth-payload-primitives", "reth-payload-validator", "reth-primitives", - "reth-rpc-types-compat", "serde", "sha2 0.10.8", ] [[package]] name = "reth-ethereum-forks" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", + "alloy-eip2124", "alloy-primitives", - "alloy-rlp", "auto_impl", - "crc", "dyn-clone", "once_cell", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", + "serde", +] + +[[package]] +name = "reth-ethereum-primitives" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-evm", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "alloy-serde", + "derive_more 2.0.1", + "modular-bitfield", + "reth-codecs", + "reth-primitives-traits", + "reth-zstd-compressors", + "revm-context", + "secp256k1 0.30.0", "serde", - "thiserror 2.0.8", ] [[package]] name = "reth-etl" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "rayon", "reth-db-api", @@ -6497,75 +6550,75 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "auto_impl", + "derive_more 2.0.1", "futures-util", "metrics 0.24.1", "reth-chainspec", - "reth-consensus", "reth-consensus-common", "reth-execution-errors", "reth-execution-types", "reth-metrics", "reth-primitives", "reth-primitives-traits", - "reth-prune-types", - "reth-revm", "reth-storage-errors", "revm", - "revm-primitives", + "revm-database", + "revm-optimism", ] [[package]] name = "reth-execution-errors" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "nybbles", - "reth-consensus", - "reth-prune-types", "reth-storage-errors", - "revm-primitives", - "thiserror 2.0.8", + "revm-database-interface", + "thiserror 2.0.11", ] [[package]] name = "reth-execution-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", + "derive_more 2.0.1", + "reth-ethereum-primitives", "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-trie", "reth-trie-common", "revm", + "revm-database", "serde", "serde_with", ] [[package]] name = "reth-exex" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "eyre", "futures", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", "parking_lot", "reth-chain-state", @@ -6577,6 +6630,7 @@ dependencies = [ "reth-metrics", "reth-node-api", "reth-node-core", + "reth-payload-builder", "reth-primitives", "reth-primitives-traits", "reth-provider", @@ -6586,6 +6640,7 @@ dependencies = [ "reth-tasks", "reth-tracing", "rmp-serde", + "thiserror 2.0.11", "tokio", "tokio-util", "tracing", @@ -6593,8 +6648,8 @@ dependencies = [ [[package]] name = "reth-exex-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6608,18 +6663,18 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-invalid-block-hooks" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6645,8 +6700,8 @@ dependencies = [ [[package]] name = "reth-ipc" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "async-trait", "bytes", @@ -6656,7 +6711,7 @@ dependencies = [ "jsonrpsee", "pin-project", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tokio-util", @@ -6666,25 +6721,25 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "byteorder", "dashmap 6.1.0", - "derive_more", - "indexmap 2.7.0", + "derive_more 2.0.1", + "indexmap 2.7.1", "parking_lot", "reth-mdbx-sys", "smallvec", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-mdbx-sys" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "bindgen", "cc", @@ -6692,8 +6747,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "futures", "metrics 0.24.1", @@ -6704,30 +6759,30 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", ] [[package]] name = "reth-net-nat" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "futures-util", "if-addrs", "reqwest", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-network" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6735,15 +6790,15 @@ dependencies = [ "alloy-rlp", "aquamarine", "auto_impl", - "derive_more", + "derive_more 2.0.1", "discv5", "enr", "futures", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", "parking_lot", "pin-project", - "rand", + "rand 0.8.5", "reth-chainspec", "reth-consensus", "reth-discv4", @@ -6766,12 +6821,12 @@ dependencies = [ "reth-tasks", "reth-tokio-util", "reth-transaction-pool", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "schnellru", - "secp256k1", + "secp256k1 0.30.0", "serde", "smallvec", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tokio-util", @@ -6780,13 +6835,13 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rpc-types-admin", "auto_impl", - "derive_more", + "derive_more 2.0.1", "enr", "futures", "reth-eth-wire-types", @@ -6796,27 +6851,27 @@ dependencies = [ "reth-network-types", "reth-tokio-util", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", ] [[package]] name = "reth-network-p2p" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "auto_impl", - "derive_more", + "derive_more 2.0.1", "futures", "reth-consensus", "reth-eth-wire-types", + "reth-ethereum-primitives", "reth-network-peers", "reth-network-types", - "reth-primitives", "reth-primitives-traits", "reth-storage-errors", "tokio", @@ -6825,26 +6880,26 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", "enr", - "secp256k1", + "secp256k1 0.30.0", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "url", ] [[package]] name = "reth-network-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ + "alloy-eip2124", "humantime-serde", - "reth-ethereum-forks", "reth-net-banlist", "reth-network-peers", "serde", @@ -6854,29 +6909,29 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "anyhow", "bincode", - "derive_more", + "derive_more 2.0.1", "lz4_flex", "memmap2", "reth-fs-util", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", "zstd", ] [[package]] name = "reth-node-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-rpc-types-engine", "eyre", - "reth-beacon-consensus", + "reth-basic-payload-builder", "reth-consensus", "reth-db-api", "reth-engine-primitives", @@ -6884,18 +6939,21 @@ dependencies = [ "reth-network-api", "reth-node-core", "reth-node-types", + "reth-payload-builder", "reth-payload-builder-primitives", "reth-payload-primitives", "reth-provider", "reth-tasks", + "reth-tokio-util", "reth-transaction-pool", ] [[package]] name = "reth-node-builder" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types", @@ -6905,8 +6963,7 @@ dependencies = [ "futures", "jsonrpsee", "rayon", - "reth-beacon-consensus", - "reth-blockchain-tree", + "reth-basic-payload-builder", "reth-chain-state", "reth-chainspec", "reth-cli-util", @@ -6932,7 +6989,6 @@ dependencies = [ "reth-node-events", "reth-node-metrics", "reth-payload-builder", - "reth-payload-validator", "reth-primitives", "reth-provider", "reth-prune", @@ -6948,7 +7004,7 @@ dependencies = [ "reth-tokio-util", "reth-tracing", "reth-transaction-pool", - "secp256k1", + "secp256k1 0.30.0", "tokio", "tokio-stream", "tracing", @@ -6956,21 +7012,20 @@ dependencies = [ [[package]] name = "reth-node-core" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", "clap", - "const_format", - "derive_more", + "derive_more 2.0.1", "dirs-next", "eyre", "futures", "humantime", - "rand", + "rand 0.8.5", "reth-chainspec", "reth-cli-util", "reth-config", @@ -6994,11 +7049,11 @@ dependencies = [ "reth-storage-errors", "reth-tracing", "reth-transaction-pool", - "secp256k1", + "secp256k1 0.30.0", "serde", "shellexpand", - "strum", - "thiserror 2.0.8", + "strum 0.27.1", + "thiserror 2.0.11", "toml", "tracing", "vergen", @@ -7006,17 +7061,17 @@ dependencies = [ [[package]] name = "reth-node-events" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", + "derive_more 2.0.1", "futures", "humantime", "pin-project", - "reth-beacon-consensus", "reth-engine-primitives", "reth-network-api", "reth-primitives-traits", @@ -7030,8 +7085,8 @@ dependencies = [ [[package]] name = "reth-node-metrics" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "eyre", "http", @@ -7040,38 +7095,38 @@ dependencies = [ "metrics-exporter-prometheus", "metrics-process", "metrics-util", - "procfs 0.16.0", + "procfs", "reth-metrics", "reth-tasks", "tokio", "tower 0.4.13", "tracing", - "vergen", ] [[package]] name = "reth-node-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "reth-chainspec", "reth-db-api", "reth-engine-primitives", + "reth-payload-primitives", "reth-primitives-traits", "reth-trie-db", ] [[package]] name = "reth-optimism-chainspec" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "once_cell", "op-alloy-consensus", "op-alloy-rpc-types", @@ -7079,22 +7134,23 @@ dependencies = [ "reth-ethereum-forks", "reth-network-peers", "reth-optimism-forks", + "reth-optimism-primitives", "reth-primitives-traits", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-optimism-cli" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "clap", - "derive_more", + "derive_more 2.0.1", "eyre", "futures-util", "op-alloy-consensus", @@ -7102,21 +7158,19 @@ dependencies = [ "reth-cli", "reth-cli-commands", "reth-cli-runner", - "reth-config", "reth-consensus", "reth-db", "reth-db-api", "reth-db-common", "reth-downloaders", - "reth-errors", "reth-execution-types", "reth-fs-util", - "reth-network-p2p", "reth-node-builder", "reth-node-core", "reth-node-events", "reth-node-metrics", "reth-optimism-chainspec", + "reth-optimism-consensus", "reth-optimism-evm", "reth-optimism-node", "reth-optimism-primitives", @@ -7124,7 +7178,6 @@ dependencies = [ "reth-provider", "reth-prune", "reth-stages", - "reth-stages-types", "reth-static-file", "reth-static-file-types", "reth-tracing", @@ -7136,33 +7189,42 @@ dependencies = [ [[package]] name = "reth-optimism-consensus" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-trie", + "op-alloy-consensus", "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-optimism-chainspec", "reth-optimism-forks", "reth-optimism-primitives", - "reth-primitives", + "reth-optimism-storage", + "reth-primitives-traits", + "reth-storage-api", + "reth-storage-errors", "reth-trie-common", + "revm", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-optimism-evm" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", + "alloy-op-evm", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "op-alloy-consensus", "reth-chainspec", "reth-consensus", @@ -7175,23 +7237,23 @@ dependencies = [ "reth-optimism-consensus", "reth-optimism-forks", "reth-optimism-primitives", - "reth-primitives", "reth-primitives-traits", - "reth-prune-types", - "reth-revm", "revm", + "revm-database", + "revm-optimism", "revm-primitives", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-optimism-forks" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-chains", "alloy-primitives", + "auto_impl", "once_cell", "reth-ethereum-forks", "serde", @@ -7199,8 +7261,8 @@ dependencies = [ [[package]] name = "reth-optimism-node" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7208,10 +7270,8 @@ dependencies = [ "alloy-rpc-types-engine", "clap", "eyre", + "op-alloy-consensus", "op-alloy-rpc-types-engine", - "parking_lot", - "reth-basic-payload-builder", - "reth-beacon-consensus", "reth-chainspec", "reth-consensus", "reth-db", @@ -7227,6 +7287,7 @@ dependencies = [ "reth-optimism-payload-builder", "reth-optimism-primitives", "reth-optimism-rpc", + "reth-optimism-txpool", "reth-payload-builder", "reth-payload-util", "reth-payload-validator", @@ -7234,19 +7295,23 @@ dependencies = [ "reth-primitives-traits", "reth-provider", "reth-revm", + "reth-rpc-eth-api", + "reth-rpc-eth-types", "reth-rpc-server-types", "reth-tracing", "reth-transaction-pool", + "reth-trie-common", "reth-trie-db", "revm", + "revm-optimism", "serde", "serde_json", ] [[package]] name = "reth-optimism-payload-builder" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7254,6 +7319,7 @@ dependencies = [ "alloy-rlp", "alloy-rpc-types-debug", "alloy-rpc-types-engine", + "derive_more 2.0.1", "op-alloy-consensus", "op-alloy-rpc-types-engine", "reth-basic-payload-builder", @@ -7261,57 +7327,68 @@ dependencies = [ "reth-chainspec", "reth-evm", "reth-execution-types", - "reth-optimism-chainspec", "reth-optimism-consensus", "reth-optimism-evm", "reth-optimism-forks", + "reth-optimism-primitives", + "reth-optimism-storage", "reth-payload-builder", "reth-payload-builder-primitives", "reth-payload-primitives", "reth-payload-util", + "reth-payload-validator", "reth-primitives", + "reth-primitives-traits", "reth-provider", "reth-revm", - "reth-rpc-types-compat", "reth-transaction-pool", "revm", "sha2 0.10.8", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-optimism-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", + "alloy-rpc-types-eth", + "alloy-serde", "bytes", - "derive_more", + "derive_more 2.0.1", + "modular-bitfield", "op-alloy-consensus", - "rand", + "proptest", + "rand 0.8.5", "reth-codecs", - "reth-primitives", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "revm-optimism", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-optimism-rpc" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-debug", + "alloy-rpc-types-engine", "alloy-rpc-types-eth", + "async-trait", + "derive_more 2.0.1", + "jsonrpsee", "jsonrpsee-core", "jsonrpsee-types", "op-alloy-consensus", @@ -7332,29 +7409,73 @@ dependencies = [ "reth-optimism-forks", "reth-optimism-payload-builder", "reth-optimism-primitives", + "reth-optimism-txpool", "reth-primitives", + "reth-primitives-traits", "reth-provider", "reth-rpc", "reth-rpc-api", + "reth-rpc-engine-api", "reth-rpc-eth-api", "reth-rpc-eth-types", "reth-rpc-server-types", "reth-tasks", "reth-transaction-pool", "revm", + "revm-optimism", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] +[[package]] +name = "reth-optimism-storage" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" +dependencies = [ + "alloy-primitives", + "reth-primitives", + "reth-storage-api", + "reth-trie-common", + "revm", +] + +[[package]] +name = "reth-optimism-txpool" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-eth", + "c-kzg", + "derive_more 2.0.1", + "futures-util", + "metrics 0.24.1", + "op-alloy-consensus", + "op-alloy-flz", + "parking_lot", + "reth-chain-state", + "reth-chainspec", + "reth-metrics", + "reth-optimism-evm", + "reth-optimism-forks", + "reth-optimism-primitives", + "reth-primitives-traits", + "reth-storage-api", + "reth-transaction-pool", + "revm-optimism", +] + [[package]] name = "reth-payload-builder" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ + "alloy-consensus", "alloy-rpc-types", - "async-trait", "futures-util", "metrics 0.24.1", "reth-chain-state", @@ -7362,6 +7483,7 @@ dependencies = [ "reth-metrics", "reth-payload-builder-primitives", "reth-payload-primitives", + "reth-primitives-traits", "tokio", "tokio-stream", "tracing", @@ -7369,11 +7491,9 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "alloy-rpc-types-engine", - "async-trait", "pin-project", "reth-payload-primitives", "tokio", @@ -7383,81 +7503,63 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", + "auto_impl", "op-alloy-rpc-types-engine", "reth-chain-state", "reth-chainspec", "reth-errors", "reth-primitives", - "revm-primitives", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", ] [[package]] name = "reth-payload-util" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-primitives", - "reth-primitives", + "reth-transaction-pool", ] [[package]] name = "reth-payload-validator" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "alloy-rpc-types", + "alloy-consensus", + "alloy-rpc-types-engine", "reth-chainspec", "reth-primitives", "reth-primitives-traits", - "reth-rpc-types-compat", ] [[package]] name = "reth-primitives" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", - "alloy-eips", - "alloy-network", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types", - "alloy-serde", - "alloy-trie", - "bytes", "c-kzg", - "derive_more", - "modular-bitfield", "once_cell", - "op-alloy-consensus", - "op-alloy-rpc-types", - "rayon", - "reth-codecs", "reth-ethereum-forks", + "reth-ethereum-primitives", "reth-primitives-traits", "reth-static-file-types", - "reth-zstd-compressors", - "revm-primitives", - "secp256k1", - "serde", - "serde_with", ] [[package]] name = "reth-primitives-traits" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7468,22 +7570,26 @@ dependencies = [ "auto_impl", "byteorder", "bytes", - "derive_more", + "derive_more 2.0.1", "k256", "modular-bitfield", + "once_cell", "op-alloy-consensus", + "rayon", "reth-codecs", + "revm-bytecode", "revm-primitives", - "secp256k1", + "revm-state", + "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-provider" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7491,12 +7597,12 @@ dependencies = [ "alloy-rpc-types-engine", "auto_impl", "dashmap 6.1.0", - "itertools 0.13.0", + "eyre", + "itertools 0.14.0", "metrics 0.24.1", "notify", "parking_lot", "rayon", - "reth-blockchain-tree-api", "reth-chain-state", "reth-chainspec", "reth-codecs", @@ -7510,7 +7616,6 @@ dependencies = [ "reth-network-p2p", "reth-nippy-jar", "reth-node-types", - "reth-optimism-primitives", "reth-primitives", "reth-primitives-traits", "reth-prune-types", @@ -7519,26 +7624,25 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm", - "strum", + "revm-database", + "strum 0.27.1", "tokio", "tracing", ] [[package]] name = "reth-prune" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", "rayon", "reth-chainspec", "reth-config", - "reth-db", "reth-db-api", "reth-errors", "reth-exex-types", @@ -7548,46 +7652,44 @@ dependencies = [ "reth-prune-types", "reth-static-file-types", "reth-tokio-util", - "rustc-hash 2.1.0", - "thiserror 2.0.8", + "rustc-hash 2.1.1", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-prune-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "modular-bitfield", "reth-codecs", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-revm" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ - "alloy-eips", "alloy-primitives", - "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-prune-types", "reth-storage-api", "reth-storage-errors", "reth-trie", "revm", + "revm-database", + "revm-inspector", ] [[package]] name = "reth-rpc" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -7609,7 +7711,7 @@ dependencies = [ "alloy-signer", "alloy-signer-local", "async-trait", - "derive_more", + "derive_more 2.0.1", "futures", "http", "http-body", @@ -7618,16 +7720,18 @@ dependencies = [ "jsonwebtoken", "parking_lot", "pin-project", - "rand", + "rand 0.8.5", "reth-chainspec", "reth-consensus", "reth-consensus-common", "reth-engine-primitives", "reth-errors", "reth-evm", + "reth-metrics", "reth-network-api", "reth-network-peers", "reth-network-types", + "reth-node-api", "reth-primitives", "reth-primitives-traits", "reth-provider", @@ -7645,7 +7749,7 @@ dependencies = [ "revm-primitives", "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tower 0.4.13", @@ -7655,10 +7759,11 @@ dependencies = [ [[package]] name = "reth-rpc-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", + "alloy-genesis", "alloy-json-rpc", "alloy-primitives", "alloy-rpc-types", @@ -7680,16 +7785,17 @@ dependencies = [ [[package]] name = "reth-rpc-builder" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ + "alloy-network", + "alloy-provider", "http", "jsonrpsee", "metrics 0.24.1", "pin-project", "reth-chainspec", "reth-consensus", - "reth-engine-primitives", "reth-evm", "reth-ipc", "reth-metrics", @@ -7706,7 +7812,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-util", "tower 0.4.13", @@ -7716,8 +7822,8 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7727,30 +7833,27 @@ dependencies = [ "jsonrpsee-types", "metrics 0.24.1", "parking_lot", - "reth-beacon-consensus", "reth-chainspec", "reth-engine-primitives", - "reth-evm", "reth-metrics", "reth-payload-builder", "reth-payload-builder-primitives", "reth-payload-primitives", - "reth-primitives", + "reth-primitives-traits", "reth-rpc-api", - "reth-rpc-types-compat", "reth-storage-api", "reth-tasks", "reth-transaction-pool", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-rpc-eth-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -7774,6 +7877,7 @@ dependencies = [ "reth-evm", "reth-network-api", "reth-node-api", + "reth-payload-builder", "reth-primitives", "reth-primitives-traits", "reth-provider", @@ -7793,24 +7897,25 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-eth", "alloy-sol-types", - "derive_more", + "derive_more 2.0.1", "futures", - "itertools 0.13.0", + "itertools 0.14.0", "jsonrpsee-core", "jsonrpsee-types", "metrics 0.24.1", - "rand", + "rand 0.8.5", "reth-chain-state", "reth-chainspec", "reth-errors", + "reth-evm", "reth-execution-types", "reth-metrics", "reth-primitives", @@ -7823,11 +7928,12 @@ dependencies = [ "reth-transaction-pool", "reth-trie", "revm", + "revm-database", "revm-inspectors", "revm-primitives", "schnellru", "serde", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tracing", @@ -7835,8 +7941,8 @@ dependencies = [ [[package]] name = "reth-rpc-layer" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-rpc-types-engine", "http", @@ -7849,8 +7955,8 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7860,19 +7966,16 @@ dependencies = [ "reth-errors", "reth-network-api", "serde", - "strum", + "strum 0.27.1", ] [[package]] name = "reth-rpc-types-compat" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-engine", + "alloy-primitives", "alloy-rpc-types-eth", "jsonrpsee-types", "reth-primitives", @@ -7882,17 +7985,19 @@ dependencies = [ [[package]] name = "reth-stages" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "bincode", + "blake3", "futures-util", - "itertools 0.13.0", + "itertools 0.14.0", "num-traits", "rayon", + "reqwest", "reth-codecs", "reth-config", "reth-consensus", @@ -7902,6 +8007,7 @@ dependencies = [ "reth-evm", "reth-execution-types", "reth-exex", + "reth-fs-util", "reth-network-p2p", "reth-primitives", "reth-primitives-traits", @@ -7913,15 +8019,16 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "thiserror 2.0.8", + "serde", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-stages-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7940,15 +8047,15 @@ dependencies = [ "reth-static-file", "reth-static-file-types", "reth-tokio-util", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", ] [[package]] name = "reth-stages-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "bytes", @@ -7960,8 +8067,8 @@ dependencies = [ [[package]] name = "reth-static-file" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "parking_lot", @@ -7981,20 +8088,20 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "clap", - "derive_more", + "derive_more 2.0.1", "serde", - "strum", + "strum 0.27.1", ] [[package]] name = "reth-storage-api" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8002,39 +8109,39 @@ dependencies = [ "alloy-rpc-types-engine", "auto_impl", "reth-chainspec", - "reth-db", "reth-db-api", "reth-db-models", + "reth-ethereum-primitives", "reth-execution-types", - "reth-primitives", "reth-primitives-traits", "reth-prune-types", "reth-stages-types", "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm", + "revm-database", ] [[package]] name = "reth-storage-errors" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", - "derive_more", - "reth-fs-util", + "derive_more 2.0.1", "reth-primitives-traits", + "reth-prune-types", "reth-static-file-types", - "thiserror 2.0.8", + "revm-database-interface", + "thiserror 2.0.11", ] [[package]] name = "reth-tasks" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "auto_impl", "dyn-clone", @@ -8043,7 +8150,7 @@ dependencies = [ "pin-project", "rayon", "reth-metrics", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tracing", "tracing-futures", @@ -8051,8 +8158,8 @@ dependencies = [ [[package]] name = "reth-tokio-util" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "tokio", "tokio-stream", @@ -8061,8 +8168,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "clap", "eyre", @@ -8076,8 +8183,8 @@ dependencies = [ [[package]] name = "reth-transaction-pool" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8085,29 +8192,28 @@ dependencies = [ "alloy-rlp", "aquamarine", "auto_impl", - "bitflags 2.6.0", + "bitflags 2.8.0", "futures-util", "metrics 0.24.1", "parking_lot", - "rand", + "rand 0.8.5", "reth-chain-state", "reth-chainspec", "reth-eth-wire-types", "reth-execution-types", "reth-fs-util", "reth-metrics", - "reth-payload-util", "reth-primitives", "reth-primitives-traits", "reth-storage-api", "reth-tasks", "revm-interpreter", - "revm-primitives", - "rustc-hash 2.1.0", + "revm-specification", + "rustc-hash 2.1.1", "schnellru", "serde", "smallvec", - "thiserror 2.0.8", + "thiserror 2.0.11", "tokio", "tokio-stream", "tracing", @@ -8115,8 +8221,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8124,24 +8230,23 @@ dependencies = [ "alloy-rlp", "alloy-trie", "auto_impl", - "itertools 0.13.0", + "itertools 0.14.0", "metrics 0.24.1", - "rayon", "reth-execution-errors", "reth-metrics", - "reth-primitives", + "reth-primitives-traits", "reth-stages-types", "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm", + "revm-database", "tracing", ] [[package]] name = "reth-trie-common" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8150,30 +8255,30 @@ dependencies = [ "alloy-serde", "alloy-trie", "bytes", - "derive_more", - "itertools 0.13.0", + "derive_more 2.0.1", + "itertools 0.14.0", "nybbles", + "rayon", "reth-codecs", "reth-primitives-traits", + "revm-database", "serde", "serde_with", ] [[package]] name = "reth-trie-db" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", + "derive_more 2.0.1", "metrics 0.24.1", - "reth-db", "reth-db-api", "reth-execution-errors", "reth-metrics", - "reth-primitives", - "reth-storage-errors", + "reth-primitives-traits", "reth-trie", "revm", "tracing", @@ -8181,31 +8286,31 @@ dependencies = [ [[package]] name = "reth-trie-parallel" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", - "itertools 0.13.0", + "derive_more 2.0.1", + "itertools 0.14.0", "metrics 0.24.1", "rayon", - "reth-db", "reth-execution-errors", "reth-metrics", "reth-primitives", "reth-provider", + "reth-storage-errors", "reth-trie", "reth-trie-common", "reth-trie-db", - "thiserror 2.0.8", + "thiserror 2.0.11", "tracing", ] [[package]] name = "reth-trie-sparse" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8214,37 +8319,145 @@ dependencies = [ "reth-tracing", "reth-trie-common", "smallvec", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "reth-zstd-compressors" -version = "1.1.4" -source = "git+https://github.com/paradigmxyz/reth.git?rev=320a0b9#320a0b9af96b3ef71d40f5f794bbb7a15622e064" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth.git#77aa17fb57f8cc7207a13e8725cdac170a4656cf" dependencies = [ "zstd", ] [[package]] name = "revm" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15689a3c6a8d14b647b4666f2e236ef47b5a5133cdfd423f545947986fff7013" +version = "20.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", +] + +[[package]] +name = "revm-bytecode" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitvec", + "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-context" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "alloy-eip2930", + "alloy-eip7702", "auto_impl", "cfg-if", - "dyn-clone", + "derive-where", + "revm-bytecode", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "revm-database-interface", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-database" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", + "serde", +] + +[[package]] +name = "revm-database-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-primitives", + "revm-state", + "serde", +] + +[[package]] +name = "revm-handler" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-inspector" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-context", + "revm-database-interface", + "revm-handler", "revm-interpreter", "revm-precompile", + "revm-primitives", + "revm-state", "serde", "serde_json", ] [[package]] name = "revm-inspectors" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d056aaa21f36038ab35fe8ce940ee332903a0b4b992b8ca805fb60c85eb2086" +version = "0.15.0" +source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=8900c2b#8900c2bf8430e41f1a1cc92dbc1cf0615f00a26b" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -8255,57 +8468,85 @@ dependencies = [ "boa_gc", "colorchoice", "revm", + "serde", "serde_json", - "thiserror 2.0.8", + "thiserror 2.0.11", ] [[package]] name = "revm-interpreter" -version = "14.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74e3f11d0fed049a4a10f79820c59113a79b38aed4ebec786a79d5c667bfeb51" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "revm-bytecode", + "revm-context-interface", "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-optimism" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "once_cell", + "revm", + "revm-inspector", + "revm-precompile", "serde", ] [[package]] name = "revm-precompile" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e381060af24b750069a2b2d2c54bba273d84e8f5f9e8026fc9262298e26cc336" +version = "17.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ "aurora-engine-modexp", "blst", "c-kzg", "cfg-if", "k256", + "libsecp256k1", "once_cell", "p256", + "revm-context-interface", "revm-primitives", + "revm-specification", "ripemd", - "secp256k1", + "secp256k1 0.29.1", "sha2 0.10.8", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "14.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3702f132bb484f4f0d0ca4f6fbde3c82cfd745041abbedd6eda67730e1868ef0" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ - "alloy-eip2930", - "alloy-eip7702", "alloy-primitives", - "auto_impl", - "bitflags 2.6.0", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", +] + +[[package]] +name = "revm-specification" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ "enumn", - "hex", + "revm-primitives", + "serde", +] + +[[package]] +name = "revm-state" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitflags 2.8.0", + "revm-bytecode", + "revm-primitives", + "revm-specification", "serde", ] @@ -8321,15 +8562,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "da5349ae27d3887ca812fb375b45a4fbb36d8d12d2df394968cd86e35683fe73" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.15", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] @@ -8392,9 +8632,9 @@ dependencies = [ [[package]] name = "roaring" -version = "0.10.9" +version = "0.10.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41589aba99537475bf697f2118357cad1c31590c5a1b9f6d9fc4ad6d07503661" +checksum = "a652edd001c53df0b3f96a36a8dc93fce6866988efc16808235653c6bcac8bf2" dependencies = [ "bytemuck", "byteorder", @@ -8417,12 +8657,11 @@ checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746" [[package]] name = "ruint" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" +checksum = "825df406ec217a8116bd7b06897c6cc8f65ffefc15d030ae2c9540acc9ed50b6" dependencies = [ "alloy-rlp", - "arbitrary", "ark-ff 0.3.0", "ark-ff 0.4.2", "bytes", @@ -8434,7 +8673,7 @@ dependencies = [ "parity-scale-codec", "primitive-types", "proptest", - "rand", + "rand 0.8.5", "rlp", "ruint-macro", "serde", @@ -8462,11 +8701,11 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" dependencies = [ - "rand", + "rand 0.8.5", ] [[package]] @@ -8490,16 +8729,16 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.24", + "semver 1.0.25", ] [[package]] name = "rustix" -version = "0.38.42" +version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85" +checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "errno", "libc", "linux-raw-sys", @@ -8508,9 +8747,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.20" +version = "0.23.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b" +checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" dependencies = [ "log", "once_cell", @@ -8543,7 +8782,7 @@ dependencies = [ "openssl-probe", "rustls-pki-types", "schannel", - "security-framework 3.1.0", + "security-framework 3.2.0", ] [[package]] @@ -8557,9 +8796,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.10.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" +checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" dependencies = [ "web-time", ] @@ -8604,9 +8843,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "rusty-fork" @@ -8622,15 +8861,15 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" [[package]] name = "ryu-js" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5" +checksum = "dd29631678d6fb0903b69223673e122c32e9ae559d0960a38d574695ebc0ea15" [[package]] name = "same-file" @@ -8652,15 +8891,21 @@ dependencies = [ [[package]] name = "schnellru" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" +checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649" dependencies = [ "ahash", "cfg-if", "hashbrown 0.13.2", ] +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + [[package]] name = "scopeguard" version = "1.2.0" @@ -8688,7 +8933,18 @@ version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ - "rand", + "rand 0.8.5", + "secp256k1-sys", +] + +[[package]] +name = "secp256k1" +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" +dependencies = [ + "bitcoin_hashes", + "rand 0.8.5", "secp256k1-sys", "serde", ] @@ -8708,7 +8964,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -8718,11 +8974,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81d3f8c9bfcc3cbb6b0179eb57042d75b1582bdc65c3cb95f3fa999509c03cbc" +checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" dependencies = [ - "bitflags 2.6.0", + "bitflags 2.8.0", "core-foundation 0.10.0", "core-foundation-sys", "libc", @@ -8731,9 +8987,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.13.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1863fd3768cd83c56a7f60faa4dc0d403f1b6df0a38c3c25f44b7894e45370d5" +checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" dependencies = [ "core-foundation-sys", "libc", @@ -8750,9 +9006,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb6eb87a131f756572d7fb904f6e7b68633f09cca868c5df1c4b8d1a694bbba" +checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" dependencies = [ "serde", ] @@ -8780,48 +9036,37 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.216" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.216" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "serde_json" -version = "1.0.133" +version = "1.0.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377" +checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "itoa", "memchr", "ryu", "serde", ] -[[package]] -name = "serde_repr" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.90", -] - [[package]] name = "serde_spanned" version = "0.6.8" @@ -8845,15 +9090,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.11.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817" +checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.7.0", + "indexmap 2.7.1", "serde", "serde_derive", "serde_json", @@ -8863,14 +9108,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.11.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" +checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -8979,7 +9224,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" dependencies = [ "libc", - "mio 1.0.3", + "mio", "signal-hook", ] @@ -8999,26 +9244,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", + "rand_core 0.6.4", ] [[package]] name = "simple_asn1" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" +checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" dependencies = [ "num-bigint", "num-traits", - "thiserror 1.0.69", + "thiserror 2.0.11", "time", ] [[package]] name = "siphasher" -version = "0.3.11" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" + +[[package]] +name = "skeptic" +version = "0.13.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16d23b015676c90a0f01c197bfdc786c20342c73a0afdda9025adb0bc42940a8" +dependencies = [ + "bytecount", + "cargo_metadata 0.14.2", + "error-chain", + "glob", + "pulldown-cmark", + "tempfile", + "walkdir", +] [[package]] name = "sketches-ddsketch" @@ -9037,9 +9297,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" dependencies = [ "serde", ] @@ -9072,7 +9332,7 @@ dependencies = [ "http", "httparse", "log", - "rand", + "rand 0.8.5", "sha1", ] @@ -9122,7 +9382,16 @@ version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ - "strum_macros", + "strum_macros 0.26.4", +] + +[[package]] +name = "strum" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" +dependencies = [ + "strum_macros 0.27.1", ] [[package]] @@ -9135,7 +9404,20 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.90", + "syn 2.0.98", +] + +[[package]] +name = "strum_macros" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.98", ] [[package]] @@ -9147,7 +9429,7 @@ dependencies = [ "byteorder", "crunchy", "lazy_static", - "rand", + "rand 0.8.5", "rustc-hex", ] @@ -9170,9 +9452,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.90" +version = "2.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31" +checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" dependencies = [ "proc-macro2", "quote", @@ -9181,14 +9463,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.15" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "219389c1ebe89f8333df8bdfb871f6631c552ff399c23cac02480b6088aad8f0" +checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -9208,14 +9490,14 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "sysinfo" -version = "0.32.1" +version = "0.33.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c33cd241af0f2e9e3b5c32163b873b29956890b5342e6745b917ce9d490f4af" +checksum = "4fc858248ea01b66f19d8e8a6d55f41deaf91e9d495246fd01368d99935c6c01" dependencies = [ "core-foundation-sys", "libc", @@ -9238,12 +9520,13 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.14.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", + "getrandom 0.3.1", "once_cell", "rustix", "windows-sys 0.59.0", @@ -9266,11 +9549,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.8" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f5383f3e0071702bf93ab5ee99b52d26936be9dedd9413067cbdcddcb6141a" +checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" dependencies = [ - "thiserror-impl 2.0.8", + "thiserror-impl 2.0.11", ] [[package]] @@ -9281,18 +9564,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "thiserror-impl" -version = "2.0.8" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f357fcec90b3caef6623a099691be676d033b40a058ac95d2a6ade6fa0c943" +checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -9389,9 +9672,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" dependencies = [ "tinyvec_macros", ] @@ -9404,14 +9687,14 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.42.0" +version = "1.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" +checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" dependencies = [ "backtrace", "bytes", "libc", - "mio 1.0.3", + "mio", "parking_lot", "pin-project-lite", "signal-hook-registry", @@ -9422,13 +9705,13 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -9455,9 +9738,9 @@ dependencies = [ [[package]] name = "tokio-tungstenite" -version = "0.24.0" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" +checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" dependencies = [ "futures-util", "log", @@ -9486,9 +9769,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148" dependencies = [ "serde", "serde_spanned", @@ -9507,11 +9790,11 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.22.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" dependencies = [ - "indexmap 2.7.0", + "indexmap 2.7.1", "serde", "serde_spanned", "toml_datetime", @@ -9530,7 +9813,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -9549,6 +9832,7 @@ dependencies = [ "futures-util", "pin-project-lite", "sync_wrapper", + "tokio", "tower-layer", "tower-service", ] @@ -9561,7 +9845,7 @@ checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697" dependencies = [ "async-compression", "base64 0.22.1", - "bitflags 2.6.0", + "bitflags 2.8.0", "bytes", "futures-core", "futures-util", @@ -9628,7 +9912,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -9662,6 +9946,17 @@ dependencies = [ "tracing-subscriber", ] +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + [[package]] name = "tracing-logfmt" version = "0.3.5" @@ -9697,17 +9992,19 @@ dependencies = [ "serde", "serde_json", "sharded-slab", + "smallvec", "thread_local", "tracing", "tracing-core", + "tracing-log", "tracing-serde", ] [[package]] name = "triomphe" -version = "0.1.11" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859eb650cfee7434994602c3a68b25d77ad9e68c8a6cd491616ef86661382eb3" +checksum = "ef8f7726da4807b58ea5c96fdc122f80702030edc33b35aff9190a51148ccc85" [[package]] name = "try-lock" @@ -9717,29 +10014,28 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "tungstenite" -version = "0.24.0" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" +checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" dependencies = [ - "byteorder", "bytes", "data-encoding", "http", "httparse", "log", - "rand", + "rand 0.9.0", "rustls", "rustls-pki-types", "sha1", - "thiserror 1.0.69", + "thiserror 2.0.11", "utf-8", ] [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -9779,15 +10075,15 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicase" -version = "2.8.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" +checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" [[package]] name = "unicode-ident" -version = "1.0.14" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" +checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe" [[package]] name = "unicode-segmentation" @@ -9884,18 +10180,18 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.11.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +checksum = "93d59ca99a559661b96bf898d8fce28ed87935fd2bea9f05983c1464dd6c71b1" dependencies = [ - "getrandom", + "getrandom 0.3.1", ] [[package]] name = "valuable" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" [[package]] name = "vergen" @@ -9904,7 +10200,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" dependencies = [ "anyhow", - "cargo_metadata", + "cargo_metadata 0.18.1", "cfg-if", "regex", "rustversion", @@ -9919,9 +10215,9 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] @@ -9951,36 +10247,46 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.13.3+wasi-0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ "cfg-if", "once_cell", + "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.49" +version = "0.4.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38176d9b44ea84e9184eff0bc34cc167ed044f816accfe5922e54d84cf48eca2" +checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" dependencies = [ "cfg-if", "js-sys", @@ -9991,9 +10297,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -10001,22 +10307,25 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.99" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +dependencies = [ + "unicode-ident", +] [[package]] name = "wasmtimer" @@ -10034,9 +10343,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.76" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04dd7223427d52553d3702c004d3b2fe07c148165faa56313cb00211e31c12bc" +checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" dependencies = [ "js-sys", "wasm-bindgen", @@ -10054,9 +10363,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.7" +version = "0.26.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" +checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" dependencies = [ "rustls-pki-types", ] @@ -10160,7 +10469,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -10171,7 +10480,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -10182,7 +10491,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -10193,7 +10502,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -10385,9 +10694,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.20" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -10402,6 +10711,15 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" +dependencies = [ + "bitflags 2.8.0", +] + [[package]] name = "write16" version = "1.0.0" @@ -10468,7 +10786,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "synstructure", ] @@ -10479,7 +10797,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde3bb8c68a8f3f1ed4ac9221aad6b10cece3e60a8e2ea54a6a2dec806d0084c" +dependencies = [ + "zerocopy-derive 0.8.20", ] [[package]] @@ -10490,7 +10817,18 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eea57037071898bf96a6da35fd626f4f27e9cee3ead2a6c703cf09d472b2e700" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.98", ] [[package]] @@ -10510,7 +10848,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", "synstructure", ] @@ -10531,7 +10869,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] @@ -10553,32 +10891,32 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.90", + "syn 2.0.98", ] [[package]] name = "zstd" -version = "0.13.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "7.2.1" +version = "7.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +checksum = "f3051792fbdc2e1e143244dc28c60f73d8470e93f3f9cbd0ead44da5ed802722" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" +version = "2.0.14+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index c08f80b..9baa66e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -141,78 +141,80 @@ odyssey-node = { path = "crates/node" } odyssey-wallet = { path = "crates/wallet" } odyssey-walltime = { path = "crates/walltime" } -alloy = { version = "0.8", features = [ +alloy = { version = "0.11.1", features = [ "contract", "providers", "provider-http", "signers", "reqwest-rustls-tls", ], default-features = false } -alloy-consensus = { version = "0.8", default-features = false } -alloy-eips = { version = "0.8", default-features = false } -alloy-network = { version = "0.8", default-features = false } -alloy-primitives = { version = "0.8", default-features = false } -alloy-provider = { version = "0.8", default-features = false } -alloy-rpc-client = { version = "0.8", default-features = false } -alloy-rpc-types = { version = "0.8", default-features = false } -alloy-rpc-types-eth = { version = "0.8", default-features = false } -alloy-signer-local = { version = "0.8", features = ["mnemonic"] } -alloy-transport = { version = "0.8", default-features = false } -alloy-transport-http = { version = "0.8", default-features = false, features = [ +alloy-consensus = { version = "0.11.1", default-features = false } +alloy-eips = { version = "0.11.1", default-features = false } +alloy-network = { version = "0.11.1", default-features = false } +alloy-provider = { version = "0.11.1", default-features = false } +alloy-rpc-client = { version = "0.11.1", default-features = false } +alloy-rpc-types = { version = "0.11.1", default-features = false } +alloy-json-rpc = { version = "0.11.1", default-features = false } +alloy-rpc-types-eth = { version = "0.11.1", default-features = false } +alloy-signer-local = { version = "0.11.1", features = ["mnemonic"] } +alloy-transport = { version = "0.11.1", default-features = false } +alloy-transport-http = { version = "0.11.1", default-features = false, features = [ "reqwest", "reqwest-rustls-tls", ] } + +# alloy-core +alloy-primitives = { version = "0.8", default-features = false } + reqwest = { version = "0.12.9", default-features = false, features = [ "rustls-tls", ] } -op-alloy-consensus = { version = "0.8", default-features = false } - # tokio tokio = { version = "1.21", default-features = false } -reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-cli = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-errors = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-evm = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-provider = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9", features = [ - "optimism", -] } -reth-revm = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-rpc-types-compat = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-network = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } -reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", rev = "320a0b9" } +reth = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-cli = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-evm = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-errors = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-provider = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-revm = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-network = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } +reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", version = "1.2.0" } + +# alloy-evm +alloy-evm = { version = "0.1", default-features = false } +alloy-op-evm = { version = "0.1", default-features = false } + +# revm-optimism +revm-optimism = { version = "1.0.0-alpha.1", default-features = false } + +# op-alloy-consensus +op-alloy-consensus = { version = "0.10.5", default-features = false } + revm-primitives = { version = "14.0.0" } revm-precompile = { version = "15.0.0", features = ["secp256r1"] } @@ -239,3 +241,24 @@ parking_lot = "0.12" # misc-testing rstest = "0.18.2" + +# TODO(dan): remove this when reth removes +[patch.crates-io] +alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "beb6832" } +alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "beb6832" } + +revm = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-bytecode = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-state = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-precompile = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-primitives = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-interpreter = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-inspector = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-specification = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-optimism = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } + +revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "8900c2b" } diff --git a/bin/odyssey/src/main.rs b/bin/odyssey/src/main.rs index b59e97a..0df49e9 100644 --- a/bin/odyssey/src/main.rs +++ b/bin/odyssey/src/main.rs @@ -37,10 +37,10 @@ use odyssey_node::{ }; use odyssey_wallet::{OdysseyWallet, OdysseyWalletApiServer, RethUpstream}; use odyssey_walltime::{OdysseyWallTime, OdysseyWallTimeRpcApiServer}; -use reth_node_builder::{engine_tree_config::TreeConfig, EngineNodeLauncher, NodeComponents}; +use reth_node_builder::NodeComponents; use reth_optimism_cli::Cli; use reth_optimism_node::{args::RollupArgs, node::OpAddOnsBuilder}; -use reth_provider::{providers::BlockchainProvider2, CanonStateSubscriptions}; +use reth_provider::{providers::BlockchainProvider, CanonStateSubscriptions}; use std::time::Duration; use tracing::{info, warn}; @@ -64,8 +64,8 @@ fn main() { .map(>::default_signer_address); let handle = builder - .with_types_and_provider::>() - .with_components(OdysseyNode::components(&rollup_args)) + .with_types_and_provider::>() + .with_components(OdysseyNode::new(rollup_args.clone()).components()) .with_add_ons( OpAddOnsBuilder::default().with_sequencer(rollup_args.sequencer_http).build(), ) @@ -126,17 +126,7 @@ fn main() { Ok(()) }) - .launch_with_fn(|builder| { - let engine_tree_config = TreeConfig::default() - .with_persistence_threshold(rollup_args.persistence_threshold) - .with_memory_block_buffer_target(rollup_args.memory_block_buffer_target); - let launcher = EngineNodeLauncher::new( - builder.task_executor().clone(), - builder.config().datadir(), - engine_tree_config, - ); - builder.launch_with(launcher) - }) + .launch() .await?; // spawn raw transaction forwarding diff --git a/bin/relay/Cargo.toml b/bin/relay/Cargo.toml index 615159d..86fbe53 100644 --- a/bin/relay/Cargo.toml +++ b/bin/relay/Cargo.toml @@ -14,6 +14,7 @@ workspace = true alloy-primitives.workspace = true alloy-provider.workspace = true alloy-rpc-client.workspace = true +alloy-rpc-types.workspace = true alloy-signer-local.workspace = true clap = { workspace = true, features = ["derive", "env"] } eyre.workspace = true diff --git a/bin/relay/src/main.rs b/bin/relay/src/main.rs index 434cbb0..30342af 100644 --- a/bin/relay/src/main.rs +++ b/bin/relay/src/main.rs @@ -44,9 +44,8 @@ impl Args { // construct provider let signer: PrivateKeySigner = self.secret_key.parse().wrap_err("Invalid signing key")?; let wallet = EthereumWallet::from(signer); - let rpc_client = RpcClient::new_http(self.upstream).boxed(); - let provider = - ProviderBuilder::new().with_recommended_fillers().wallet(wallet).on_client(rpc_client); + let rpc_client = RpcClient::new_http(self.upstream); + let provider = ProviderBuilder::new().wallet(wallet).on_client(rpc_client); // get chain id let chain_id = provider.get_chain_id().await?; diff --git a/crates/node/Cargo.toml b/crates/node/Cargo.toml index 21e543d..445ec50 100644 --- a/crates/node/Cargo.toml +++ b/crates/node/Cargo.toml @@ -21,11 +21,8 @@ reth-optimism-node.workspace = true reth-optimism-forks.workspace = true reth-optimism-chainspec.workspace = true reth-optimism-primitives.workspace = true +reth-optimism-payload-builder.workspace = true reth-chainspec.workspace = true -reth-payload-builder.workspace = true -reth-primitives.workspace = true -reth-evm.workspace = true -reth-revm.workspace = true reth-rpc-eth-api.workspace = true reth-rpc-eth-types.workspace = true reth-transaction-pool.workspace = true @@ -35,7 +32,6 @@ reth-network.workspace = true reth-network-types.workspace = true reth-chain-state.workspace = true -alloy-consensus.workspace = true alloy-eips.workspace = true alloy-primitives.workspace = true alloy-rpc-types.workspace = true @@ -43,9 +39,6 @@ alloy-rpc-types-eth.workspace = true op-alloy-consensus.workspace = true -revm-precompile.workspace = true -revm-primitives.workspace = true - serde_json.workspace = true tokio.workspace = true tracing.workspace = true diff --git a/crates/node/src/chainspec.rs b/crates/node/src/chainspec.rs index 132af9c..3c55cf6 100644 --- a/crates/node/src/chainspec.rs +++ b/crates/node/src/chainspec.rs @@ -1,12 +1,13 @@ //! Odyssey chainspec parsing logic. -use alloy_primitives::{b256, U256}; +use alloy_primitives::U256; use reth_chainspec::{ - once_cell_set, BaseFeeParams, BaseFeeParamsKind, Chain, ChainHardforks, ChainSpec, - EthereumHardfork, ForkCondition, NamedChain, + BaseFeeParams, BaseFeeParamsKind, Chain, ChainHardforks, ChainSpec, EthereumHardfork, + ForkCondition, Hardfork, NamedChain, }; use reth_cli::chainspec::{parse_genesis, ChainSpecParser}; -use reth_optimism_chainspec::OpChainSpec; +use reth_optimism_chainspec::{make_op_genesis_header, OpChainSpec}; use reth_optimism_forks::OpHardfork; +use reth_primitives_traits::SealedHeader; use std::sync::{Arc, LazyLock}; /// Odyssey forks. @@ -25,7 +26,11 @@ pub static ODYSSEY_FORKS: LazyLock = LazyLock::new(|| { (EthereumHardfork::London.boxed(), ForkCondition::Block(0)), ( EthereumHardfork::Paris.boxed(), - ForkCondition::TTD { fork_block: None, total_difficulty: U256::ZERO }, + ForkCondition::TTD { + fork_block: None, + total_difficulty: U256::ZERO, + activation_block_number: 0, + }, ), (EthereumHardfork::Shanghai.boxed(), ForkCondition::Timestamp(0)), (EthereumHardfork::Cancun.boxed(), ForkCondition::Timestamp(0)), @@ -33,6 +38,8 @@ pub static ODYSSEY_FORKS: LazyLock = LazyLock::new(|| { (OpHardfork::Bedrock.boxed(), ForkCondition::Block(0)), (OpHardfork::Ecotone.boxed(), ForkCondition::Timestamp(0)), (OpHardfork::Canyon.boxed(), ForkCondition::Timestamp(0)), + (OpHardfork::Holocene.boxed(), ForkCondition::Timestamp(0)), + (OpHardfork::Isthmus.boxed(), ForkCondition::Timestamp(0)), (EthereumHardfork::Prague.boxed(), ForkCondition::Timestamp(0)), ]) }); @@ -54,15 +61,15 @@ pub static ODYSSEY_DEV: LazyLock> = LazyLock::new(|| { /// Odyssey main chain specification. pub static ODYSSEY_MAINNET: LazyLock> = LazyLock::new(|| { + let genesis = serde_json::from_str(include_str!("../../../etc/odyssey-genesis.json")) + .expect("Can't deserialize odyssey genesis json"); + let genesis_header = make_op_genesis_header(&genesis, &ODYSSEY_FORKS.clone()); OpChainSpec::new(ChainSpec { chain: Chain::from_named(NamedChain::Odyssey), // genesis contains empty alloc field because state at first bedrock block is imported // manually from trusted source - genesis: serde_json::from_str(include_str!("../../../etc/odyssey-genesis.json")) - .expect("Can't deserialize odyssey genesis json"), - genesis_hash: once_cell_set(b256!( - "2f980576711e3617a5e4d83dd539548ec0f7792007d505a3d2e9674833af2d7c" - )), + genesis, + genesis_header: SealedHeader::seal_slow(genesis_header), paris_block_and_final_difficulty: Some((0, U256::ZERO)), hardforks: ODYSSEY_FORKS.clone(), base_fee_params: BaseFeeParamsKind::Variable( @@ -102,6 +109,10 @@ impl ChainSpecParser for OdysseyChainSpecParser { .hardforks .insert(EthereumHardfork::Prague, ForkCondition::Timestamp(0)); + // NOTE: This enables isthmus, which is required to have OP features and prague + // features at the same time + chainspec.inner.hardforks.insert(OpHardfork::Isthmus, ForkCondition::Timestamp(0)); + // NOTE(onbjerg): op-node will fetch the genesis block and check that the hash // matches whatever is in the L2 rollup config, which it will not when we activate // Prague, since the autogenerated genesis header will include a requests hash of @@ -109,7 +120,7 @@ impl ChainSpecParser for OdysseyChainSpecParser { // generator, we simply remove the requests root manually here. let mut header = chainspec.genesis_header().clone(); header.requests_hash = None; - chainspec.inner.genesis_header = once_cell_set(header); + chainspec.inner.genesis_header = SealedHeader::seal_slow(header); Arc::new(chainspec) } diff --git a/crates/node/src/delayed_resolve.rs b/crates/node/src/delayed_resolve.rs index 9a64697..9bc1d80 100644 --- a/crates/node/src/delayed_resolve.rs +++ b/crates/node/src/delayed_resolve.rs @@ -8,6 +8,7 @@ use jsonrpsee::{ }; use parking_lot::Mutex; use reth_chain_state::CanonStateNotification; +use reth_optimism_primitives::OpPrimitives; use serde::de::Error; use serde_json::value::RawValue; use std::{ @@ -43,7 +44,7 @@ impl DelayedResolver { /// Listen for new blocks and track the local timestamp. pub fn spawn(self, mut st: St) where - St: Stream + Send + Unpin + 'static, + St: Stream> + Send + Unpin + 'static, { tokio::task::spawn(async move { while st.next().await.is_some() { diff --git a/crates/node/src/evm.rs b/crates/node/src/evm.rs deleted file mode 100644 index aa270da..0000000 --- a/crates/node/src/evm.rs +++ /dev/null @@ -1,366 +0,0 @@ -//! # Odyssey EVM configuration -//! -//! The [`OdysseyEvmConfig`] type implements the [`ConfigureEvm`] and [`ConfigureEvmEnv`] traits, -//! configuring the custom Odyssey precompiles and instructions. -//! -//! These trait implementations allow for custom precompiles and instructions to be implemented and -//! integrated in a reth node only with importing, without the need to fork the node or EVM -//! implementation. -//! -//! This currently configures the instructions defined in [EIP3074-instructions](https://github.com/paradigmxyz/eip3074-instructions), and the -//! precompiles defined by [`revm_precompile`]. - -use alloy_consensus::Header; -use alloy_primitives::{Address, Bytes, TxKind, U256}; -use op_alloy_consensus::EIP1559ParamError; -use reth_chainspec::{ChainSpec, EthereumHardfork, Head}; -use reth_evm::env::EvmEnv; -use reth_node_api::{ConfigureEvm, ConfigureEvmEnv, NextBlockEnvAttributes}; -use reth_optimism_chainspec::OpChainSpec; -use reth_optimism_forks::OpHardfork; -use reth_primitives::{transaction::FillTxEnv, TransactionSigned}; -use reth_revm::{ - handler::register::EvmHandler, - inspector_handle_register, - precompile::PrecompileSpecId, - primitives::{ - AnalysisKind, BlobExcessGasAndPrice, BlockEnv, CfgEnv, Env, HandlerCfg, OptimismFields, - SpecId, - }, - ContextPrecompiles, Database, Evm, EvmBuilder, GetInspector, -}; -use revm_precompile::{ - secp256r1::{p256_verify, P256VERIFY as REVM_P256VERIFY}, - u64_to_address, PrecompileWithAddress, -}; -use revm_primitives::{CfgEnvWithHandlerCfg, Precompile, TxEnv}; -use std::sync::Arc; - -/// P256 verify precompile address. -pub const P256VERIFY_ADDRESS: u64 = 0x14; - -/// [RIP-7212](https://github.com/ethereum/RIPs/blob/master/RIPS/rip-7212.md#specification) secp256r1 precompile. -pub const P256VERIFY: PrecompileWithAddress = - PrecompileWithAddress(u64_to_address(P256VERIFY_ADDRESS), Precompile::Standard(p256_verify)); - -/// Custom EVM configuration -#[derive(Debug, Clone)] -pub struct OdysseyEvmConfig { - chain_spec: Arc, -} - -impl OdysseyEvmConfig { - /// Creates a new Odyssey EVM configuration with the given chain spec. - pub const fn new(chain_spec: Arc) -> Self { - Self { chain_spec } - } - - fn precompiles() -> impl Iterator { - [P256VERIFY, REVM_P256VERIFY].into_iter() - } - - /// Sets the precompiles to the EVM handler - /// - /// This will be invoked when the EVM is created via [`ConfigureEvm::evm`] or - /// [`ConfigureEvm::evm_with_inspector`] - /// - /// This will use the default mainnet precompiles and add additional precompiles. - fn set_precompiles(handler: &mut EvmHandler<'_, EXT, DB>) - where - DB: Database, - { - // first we need the evm spec id, which determines the precompiles - let spec_id = handler.cfg.spec_id; - - // install the precompiles - handler.pre_execution.load_precompiles = Arc::new(move || { - let mut loaded_precompiles: ContextPrecompiles = - ContextPrecompiles::new(PrecompileSpecId::from_spec_id(spec_id)); - - loaded_precompiles.extend(Self::precompiles()); - - loaded_precompiles - }); - } -} - -impl ConfigureEvmEnv for OdysseyEvmConfig { - type Header = Header; - type Transaction = TransactionSigned; - type Error = EIP1559ParamError; - - fn fill_tx_env(&self, tx_env: &mut TxEnv, transaction: &TransactionSigned, sender: Address) { - transaction.fill_tx_env(tx_env, sender); - } - - fn fill_tx_env_system_contract_call( - &self, - env: &mut Env, - caller: Address, - contract: Address, - data: Bytes, - ) { - env.tx = TxEnv { - caller, - transact_to: TxKind::Call(contract), - // Explicitly set nonce to None so revm does not do any nonce checks - nonce: None, - gas_limit: 30_000_000, - value: U256::ZERO, - data, - // Setting the gas price to zero enforces that no value is transferred as part of the - // call, and that the call will not count against the block's gas limit - gas_price: U256::ZERO, - // The chain ID check is not relevant here and is disabled if set to None - chain_id: None, - // Setting the gas priority fee to None ensures the effective gas price is derived from - // the `gas_price` field, which we need to be zero - gas_priority_fee: None, - access_list: Vec::new(), - // blob fields can be None for this tx - blob_hashes: Vec::new(), - max_fee_per_blob_gas: None, - authorization_list: None, - optimism: OptimismFields { - source_hash: None, - mint: None, - is_system_transaction: Some(false), - // The L1 fee is not charged for the EIP-4788 transaction, submit zero bytes for the - // enveloped tx size. - enveloped_tx: Some(Bytes::default()), - }, - }; - - // ensure the block gas limit is >= the tx - env.block.gas_limit = U256::from(env.tx.gas_limit); - - // disable the base fee check for this call by setting the base fee to zero - env.block.basefee = U256::ZERO; - } - - fn fill_cfg_env( - &self, - cfg_env: &mut CfgEnvWithHandlerCfg, - header: &Header, - total_difficulty: U256, - ) { - let spec_id = revm_spec( - &self.chain_spec, - &Head { - number: header.number, - timestamp: header.timestamp, - difficulty: header.difficulty, - total_difficulty, - hash: Default::default(), - }, - ); - - cfg_env.chain_id = self.chain_spec.chain().id(); - cfg_env.perf_analyse_created_bytecodes = AnalysisKind::Analyse; - - cfg_env.handler_cfg.spec_id = spec_id; - cfg_env.handler_cfg.is_optimism = true; - } - - fn fill_block_env(&self, block_env: &mut BlockEnv, header: &Self::Header, after_merge: bool) { - block_env.number = U256::from(header.number); - block_env.coinbase = header.beneficiary; - block_env.timestamp = U256::from(header.timestamp); - if after_merge { - block_env.prevrandao = Some(header.mix_hash); - block_env.difficulty = U256::ZERO; - } else { - block_env.difficulty = header.difficulty; - block_env.prevrandao = None; - } - block_env.basefee = U256::from(header.base_fee_per_gas.unwrap_or_default()); - block_env.gas_limit = U256::from(header.gas_limit); - - // EIP-4844 excess blob gas of this block, introduced in Cancun - if let Some(excess_blob_gas) = header.excess_blob_gas { - block_env.set_blob_excess_gas_and_price(excess_blob_gas); - } - } - - fn next_cfg_and_block_env( - &self, - parent: &Self::Header, - attributes: NextBlockEnvAttributes, - ) -> Result { - // configure evm env based on parent block - let cfg_env = CfgEnv::default().with_chain_id(self.chain_spec.chain().id()); - - // ensure we're not missing any timestamp based hardforks - let spec_id = revm_spec( - &self.chain_spec, - &Head { - number: parent.number + 1, - timestamp: attributes.timestamp, - ..Default::default() - }, - ); - - // if the parent block did not have excess blob gas (i.e. it was pre-cancun), but it is - // cancun now, we need to set the excess blob gas to the default value - let blob_excess_gas_and_price = parent - .next_block_excess_blob_gas() - .or_else(|| spec_id.is_enabled_in(SpecId::CANCUN).then_some(0)) // default excess blob gas is zero - .map(BlobExcessGasAndPrice::new); - - let block_env = BlockEnv { - number: U256::from(parent.number + 1), - coinbase: attributes.suggested_fee_recipient, - timestamp: U256::from(attributes.timestamp), - difficulty: U256::ZERO, - prevrandao: Some(attributes.prev_randao), - gas_limit: U256::from(parent.gas_limit), - // calculate basefee based on parent block's gas usage - basefee: U256::from( - parent - .next_block_base_fee( - self.chain_spec.base_fee_params_at_timestamp(attributes.timestamp), - ) - .unwrap_or_default(), - ), - // calculate excess gas based on parent block's blob gas usage - blob_excess_gas_and_price, - }; - - Ok(( - CfgEnvWithHandlerCfg { - cfg_env, - handler_cfg: HandlerCfg { spec_id, is_optimism: true }, - }, - block_env, - ) - .into()) - } -} - -impl ConfigureEvm for OdysseyEvmConfig { - type DefaultExternalContext<'a> = (); - - fn evm(&self, db: DB) -> Evm<'_, Self::DefaultExternalContext<'_>, DB> { - EvmBuilder::default() - .with_db(db) - .optimism() - // add additional precompiles - .append_handler_register(Self::set_precompiles) - .build() - } - - fn evm_with_inspector(&self, db: DB, inspector: I) -> Evm<'_, I, DB> - where - DB: Database, - I: GetInspector, - { - EvmBuilder::default() - .with_db(db) - .with_external_context(inspector) - .optimism() - // add additional precompiles - .append_handler_register(Self::set_precompiles) - .append_handler_register(inspector_handle_register) - .build() - } - - fn default_external_context<'a>(&self) -> Self::DefaultExternalContext<'a> {} -} - -/// Determine the revm spec ID from the current block and reth chainspec. -fn revm_spec(chain_spec: &ChainSpec, block: &Head) -> reth_revm::primitives::SpecId { - if chain_spec.fork(EthereumHardfork::Prague).active_at_head(block) { - reth_revm::primitives::OSAKA - } else if chain_spec.fork(OpHardfork::Granite).active_at_head(block) { - reth_revm::primitives::GRANITE - } else if chain_spec.fork(OpHardfork::Fjord).active_at_head(block) { - reth_revm::primitives::FJORD - } else if chain_spec.fork(OpHardfork::Ecotone).active_at_head(block) { - reth_revm::primitives::ECOTONE - } else if chain_spec.fork(OpHardfork::Canyon).active_at_head(block) { - reth_revm::primitives::CANYON - } else if chain_spec.fork(OpHardfork::Regolith).active_at_head(block) { - reth_revm::primitives::REGOLITH - } else if chain_spec.fork(OpHardfork::Bedrock).active_at_head(block) { - reth_revm::primitives::BEDROCK - } else if chain_spec.fork(EthereumHardfork::Prague).active_at_head(block) { - reth_revm::primitives::PRAGUE - } else if chain_spec.fork(EthereumHardfork::Cancun).active_at_head(block) { - reth_revm::primitives::CANCUN - } else if chain_spec.fork(EthereumHardfork::Shanghai).active_at_head(block) { - reth_revm::primitives::SHANGHAI - } else if chain_spec.fork(EthereumHardfork::Paris).active_at_head(block) { - reth_revm::primitives::MERGE - } else if chain_spec.fork(EthereumHardfork::London).active_at_head(block) { - reth_revm::primitives::LONDON - } else if chain_spec.fork(EthereumHardfork::Berlin).active_at_head(block) { - reth_revm::primitives::BERLIN - } else if chain_spec.fork(EthereumHardfork::Istanbul).active_at_head(block) { - reth_revm::primitives::ISTANBUL - } else if chain_spec.fork(EthereumHardfork::Petersburg).active_at_head(block) { - reth_revm::primitives::PETERSBURG - } else if chain_spec.fork(EthereumHardfork::Byzantium).active_at_head(block) { - reth_revm::primitives::BYZANTIUM - } else if chain_spec.fork(EthereumHardfork::SpuriousDragon).active_at_head(block) { - reth_revm::primitives::SPURIOUS_DRAGON - } else if chain_spec.fork(EthereumHardfork::Tangerine).active_at_head(block) { - reth_revm::primitives::TANGERINE - } else if chain_spec.fork(EthereumHardfork::Homestead).active_at_head(block) { - reth_revm::primitives::HOMESTEAD - } else if chain_spec.fork(EthereumHardfork::Frontier).active_at_head(block) { - reth_revm::primitives::FRONTIER - } else { - panic!( - "invalid hardfork chainspec: expected at least one hardfork, got {:?}", - chain_spec.hardforks - ) - } -} - -#[cfg(test)] -mod tests { - use super::*; - use reth_chainspec::{Chain, ChainSpecBuilder, EthereumHardfork}; - use reth_primitives::ForkCondition; - use revm_primitives::{BlockEnv, CfgEnv, SpecId}; - - #[test] - fn test_fill_cfg_and_block_env() { - let mut cfg_env = CfgEnvWithHandlerCfg::new_with_spec_id(CfgEnv::default(), SpecId::LATEST); - let mut block_env = BlockEnv::default(); - let header = Header::default(); - let chain_spec = Arc::new(OpChainSpec::new( - ChainSpecBuilder::default() - .chain(Chain::optimism_mainnet()) - .genesis(Default::default()) - .with_fork(EthereumHardfork::Frontier, ForkCondition::Block(0)) - .build(), - )); - let total_difficulty = U256::ZERO; - - OdysseyEvmConfig::new(chain_spec.clone()).fill_cfg_and_block_env( - &mut cfg_env, - &mut block_env, - &header, - total_difficulty, - ); - - assert_eq!(cfg_env.chain_id, chain_spec.chain().id()); - } - - #[test] - fn test_p256verify_precompile_availability() { - let evm = EvmBuilder::default() - .with_empty_db() - .optimism() - // add additional precompiles - .append_handler_register(OdysseyEvmConfig::set_precompiles) - .build(); - - // loading the precompiles from pre execution instead of the evm context directly, as they - // are only set pre-execution in the context - let precompiles = evm.handler.pre_execution().load_precompiles(); - assert!(precompiles.contains(&u64_to_address(0x14))); - assert!(precompiles.contains(&u64_to_address(0x100))); - } -} diff --git a/crates/node/src/lib.rs b/crates/node/src/lib.rs index 7d99ed9..7628a7f 100644 --- a/crates/node/src/lib.rs +++ b/crates/node/src/lib.rs @@ -1,16 +1,10 @@ //! Standalone crate for Odyssey's node configuration and builder types. //! -//! This contains mainly two types, [`OdysseyNode`](node::OdysseyNode) and -//! [`OdysseyEvmConfig`](evm::OdysseyEvmConfig). +//! This contains mainly the [`OdysseyNode`](node::OdysseyNode) type. //! //! The [`OdysseyNode`](node::OdysseyNode) type implements the //! [`NodeTypes`](reth_node_builder::NodeTypes) trait, and configures the engine types required for //! the optimism engine API. -//! -//! The [`OdysseyEvmConfig`](evm::OdysseyEvmConfig) type implements the -//! [`ConfigureEvm`](reth_node_api::ConfigureEvm) and -//! [`ConfigureEvmEnv`](reth_node_api::ConfigureEvmEnv) traits, configuring the custom Odyssey -//! precompiles and instructions. #![cfg_attr(docsrs, feature(doc_cfg, doc_auto_cfg))] #![warn(unused_crate_dependencies)] @@ -18,7 +12,6 @@ pub mod broadcaster; pub mod chainspec; pub mod delayed_resolve; -pub mod evm; pub mod forwarder; pub mod node; pub mod rpc; diff --git a/crates/node/src/node.rs b/crates/node/src/node.rs index 0d62d74..ac2bef5 100644 --- a/crates/node/src/node.rs +++ b/crates/node/src/node.rs @@ -3,9 +3,7 @@ //! The [`OdysseyNode`] type implements the [`NodeTypes`] trait, and configures the engine types //! required for the optimism engine API. -use crate::evm::OdysseyEvmConfig; -use alloy_consensus::transaction::PooledTransaction; -use reth_evm::execute::BasicBlockExecutorProvider; +use op_alloy_consensus::OpPooledTransaction; use reth_network::{ transactions::{TransactionPropagationMode, TransactionsManagerConfig}, NetworkHandle, NetworkManager, PeersInfo, @@ -14,8 +12,7 @@ use reth_network_types::ReputationChangeWeights; use reth_node_api::{FullNodeTypes, NodeTypesWithEngine, TxTy}; use reth_node_builder::{ components::{ - ComponentsBuilder, ExecutorBuilder, NetworkBuilder, PayloadServiceBuilder, - PoolBuilderConfigOverrides, + BasicPayloadServiceBuilder, ComponentsBuilder, NetworkBuilder, PoolBuilderConfigOverrides, }, BuilderContext, Node, NodeAdapter, NodeComponentsBuilder, NodeTypes, }; @@ -23,12 +20,13 @@ use reth_optimism_chainspec::OpChainSpec; use reth_optimism_node::{ args::RollupArgs, node::{ - OpAddOns, OpConsensusBuilder, OpNetworkBuilder, OpPayloadBuilder, OpPoolBuilder, OpStorage, + OpAddOns, OpConsensusBuilder, OpExecutorBuilder, OpNetworkBuilder, OpPayloadBuilder, + OpPoolBuilder, OpStorage, }, - OpEngineTypes, OpExecutionStrategyFactory, OpNetworkPrimitives, + OpEngineTypes, OpNetworkPrimitives, }; +use reth_optimism_payload_builder::config::OpDAConfig; use reth_optimism_primitives::OpPrimitives; -use reth_payload_builder::PayloadBuilderHandle; use reth_transaction_pool::{ PoolTransaction, SubPoolLimit, TransactionPool, TXPOOL_MAX_ACCOUNT_SLOTS_PER_SENDER, }; @@ -41,23 +39,36 @@ use tracing::info; pub struct OdysseyNode { /// Additional Optimism args pub args: RollupArgs, + /// Data availability configuration for the OP builder. + /// + /// Used to throttle the size of the data availability payloads (configured by the batcher via + /// the `miner_` api). + /// + /// By default no throttling is applied. + pub da_config: OpDAConfig, } impl OdysseyNode { /// Creates a new instance of the Optimism node type. - pub const fn new(args: RollupArgs) -> Self { - Self { args } + pub fn new(args: RollupArgs) -> Self { + Self { args, da_config: OpDAConfig::default() } + } + + /// Configure the data availability configuration for the OP builder. + pub fn with_da_config(mut self, da_config: OpDAConfig) -> Self { + self.da_config = da_config; + self } /// Returns the components for the given [`RollupArgs`]. pub fn components( - args: &RollupArgs, + &self, ) -> ComponentsBuilder< Node, OpPoolBuilder, - OdysseyPayloadBuilder, + BasicPayloadServiceBuilder, OdysseyNetworkBuilder, - OdysseyExecutorBuilder, + OpExecutorBuilder, OpConsensusBuilder, > where @@ -69,23 +80,30 @@ impl OdysseyNode { >, >, { + let RollupArgs { disable_txpool_gossip, compute_pending_block, discovery_v4, .. } = + self.args; + + let mut pool_builder = OpPoolBuilder::default(); + pool_builder.enable_tx_conditional = true; + pool_builder.pool_config_overrides = PoolBuilderConfigOverrides { + queued_limit: Some(SubPoolLimit::default() * 2), + pending_limit: Some(SubPoolLimit::default() * 2), + basefee_limit: Some(SubPoolLimit::default() * 2), + max_account_slots: Some(TXPOOL_MAX_ACCOUNT_SLOTS_PER_SENDER * 2), + ..Default::default() + }; + ComponentsBuilder::default() .node_types::() - .pool(OpPoolBuilder { - pool_config_overrides: PoolBuilderConfigOverrides { - queued_limit: Some(SubPoolLimit::default() * 2), - pending_limit: Some(SubPoolLimit::default() * 2), - basefee_limit: Some(SubPoolLimit::default() * 2), - max_account_slots: Some(TXPOOL_MAX_ACCOUNT_SLOTS_PER_SENDER * 2), - ..Default::default() - }, - }) - .payload(OdysseyPayloadBuilder::new(args.compute_pending_block)) + .pool(pool_builder) + .payload(BasicPayloadServiceBuilder::new( + OpPayloadBuilder::new(compute_pending_block).with_da_config(self.da_config.clone()), + )) .network(OdysseyNetworkBuilder::new(OpNetworkBuilder { - disable_txpool_gossip: args.disable_txpool_gossip, - disable_discovery_v4: !args.discovery_v4, + disable_txpool_gossip, + disable_discovery_v4: !discovery_v4, })) - .executor(OdysseyExecutorBuilder::default()) + .executor(OpExecutorBuilder::default()) .consensus(OpConsensusBuilder::default()) } } @@ -116,9 +134,9 @@ where type ComponentsBuilder = ComponentsBuilder< N, OpPoolBuilder, - OdysseyPayloadBuilder, + BasicPayloadServiceBuilder, OdysseyNetworkBuilder, - OdysseyExecutorBuilder, + OpExecutorBuilder, OpConsensusBuilder, >; @@ -126,77 +144,15 @@ where OpAddOns>::Components>>; fn components_builder(&self) -> Self::ComponentsBuilder { - let Self { args } = self; - Self::components(args) + Self::components(self) } fn add_ons(&self) -> Self::AddOns { - Self::AddOns::builder().with_sequencer(self.args.sequencer_http.clone()).build() - } -} - -/// The Odyssey evm and executor builder. -#[derive(Debug, Default, Clone, Copy)] -#[non_exhaustive] -pub struct OdysseyExecutorBuilder; - -impl ExecutorBuilder for OdysseyExecutorBuilder -where - Node: FullNodeTypes>, -{ - type EVM = OdysseyEvmConfig; - type Executor = BasicBlockExecutorProvider>; - - async fn build_evm( - self, - ctx: &BuilderContext, - ) -> eyre::Result<(Self::EVM, Self::Executor)> { - let chain_spec = ctx.chain_spec(); - let evm_config = OdysseyEvmConfig::new(chain_spec); - let strategy_factory = - OpExecutionStrategyFactory::new(ctx.chain_spec(), evm_config.clone()); - let executor = BasicBlockExecutorProvider::new(strategy_factory); - - Ok((evm_config, executor)) - } -} - -/// The Odyssey payload service builder. -/// -/// This service wraps the default Optimism payload builder, but replaces the default evm config -/// with Odyssey's own. -#[derive(Debug, Default, Clone)] -pub struct OdysseyPayloadBuilder { - /// Inner Optimism payload builder service. - inner: OpPayloadBuilder, -} - -impl OdysseyPayloadBuilder { - /// Create a new instance with the given `compute_pending_block` flag. - pub fn new(compute_pending_block: bool) -> Self { - Self { inner: OpPayloadBuilder::new(compute_pending_block) } - } -} - -impl PayloadServiceBuilder for OdysseyPayloadBuilder -where - Node: FullNodeTypes< - Types: NodeTypesWithEngine< - Engine = OpEngineTypes, - ChainSpec = OpChainSpec, - Primitives = OpPrimitives, - >, - >, - Pool: TransactionPool>> - + Unpin - + 'static, -{ - async fn spawn_payload_service( - self, - ctx: &BuilderContext, - pool: Pool, - ) -> eyre::Result> { - self.inner.spawn(OdysseyEvmConfig::new(ctx.chain_spec()), ctx, pool) + Self::AddOns::builder() + .with_sequencer(self.args.sequencer_http.clone()) + .with_da_config(self.da_config.clone()) + .with_enable_tx_conditional(self.args.enable_tx_conditional) + .build() } } @@ -217,7 +173,10 @@ impl NetworkBuilder for OdysseyNetworkBuilder where Node: FullNodeTypes>, Pool: TransactionPool< - Transaction: PoolTransaction, Pooled = PooledTransaction>, + Transaction: PoolTransaction< + Consensus = TxTy, + Pooled = OpPooledTransaction, + >, > + Unpin + 'static, { @@ -227,7 +186,7 @@ where self, ctx: &BuilderContext, pool: Pool, - ) -> eyre::Result> { + ) -> eyre::Result> { let mut network_config = self.inner.network_config(ctx)?; // this is rolled with limited trusted peers and we want ignore any reputation slashing network_config.peers_config.reputation_weights = ReputationChangeWeights::zero(); @@ -235,14 +194,14 @@ where network_config.peers_config.backoff_durations.medium = Duration::from_secs(5); network_config.peers_config.backoff_durations.high = Duration::from_secs(5); network_config.peers_config.max_backoff_count = u8::MAX; - network_config.sessions_config.session_command_buffer = 750; - network_config.sessions_config.session_event_buffer = 750; + network_config.sessions_config.session_command_buffer = 500; + network_config.sessions_config.session_event_buffer = 500; let txconfig = TransactionsManagerConfig { propagation_mode: TransactionPropagationMode::All, ..network_config.transactions_manager_config.clone() }; - let network = NetworkManager::builder(network_config).await?; + let network = NetworkManager::::builder(network_config).await?; let handle = ctx.start_network_with(network, pool, txconfig); info!(target: "reth::cli", enode=%handle.local_node_record(), "P2P networking initialized"); Ok(handle) diff --git a/crates/wallet/Cargo.toml b/crates/wallet/Cargo.toml index 4be86f1..72662a1 100644 --- a/crates/wallet/Cargo.toml +++ b/crates/wallet/Cargo.toml @@ -13,8 +13,8 @@ categories.workspace = true alloy-network.workspace = true alloy-primitives.workspace = true alloy-provider.workspace = true +alloy-json-rpc.workspace = true alloy-rpc-types.workspace = true -alloy-transport.workspace = true reth-optimism-rpc.workspace = true reth-rpc-eth-api.workspace = true diff --git a/crates/wallet/src/lib.rs b/crates/wallet/src/lib.rs index f5d3437..3d2a39e 100644 --- a/crates/wallet/src/lib.rs +++ b/crates/wallet/src/lib.rs @@ -16,13 +16,14 @@ #![cfg_attr(not(test), warn(unused_crate_dependencies))] +use alloy_json_rpc::RpcObject; use alloy_network::{ - eip2718::Encodable2718, Ethereum, EthereumWallet, NetworkWallet, TransactionBuilder, + eip2718::Encodable2718, Ethereum, EthereumWallet, Network, NetworkWallet, TransactionBuilder, + TransactionBuilder7702, }; use alloy_primitives::{Address, Bytes, ChainId, TxHash, TxKind, U256}; use alloy_provider::{utils::Eip1559Estimation, Provider, WalletProvider}; use alloy_rpc_types::{BlockId, TransactionRequest}; -use alloy_transport::Transport; use jsonrpsee::{ core::{async_trait, RpcResult}, proc_macros::rpc, @@ -33,7 +34,7 @@ use metrics_derive::Metrics; use reth_rpc_eth_api::helpers::{EthCall, EthTransactions, FullEthApi, LoadFee, LoadState}; use reth_storage_api::StateProviderFactory; use serde::{Deserialize, Serialize}; -use std::{marker::PhantomData, sync::Arc}; +use std::{fmt::Debug, marker::PhantomData, sync::Arc}; use tracing::{trace, warn}; use reth_optimism_rpc as _; @@ -43,6 +44,9 @@ use tokio::sync::Mutex; /// specific chain. #[async_trait] pub trait Upstream { + /// The transaction request type. + type TxRequest; + /// Get the address of the account that sponsors transactions. fn default_signer_address(&self) -> Address; @@ -52,33 +56,35 @@ pub trait Upstream { /// Estimate the transaction request's gas usage and fees. async fn estimate( &self, - tx: &TransactionRequest, + tx: &Self::TxRequest, ) -> Result<(u64, Eip1559Estimation), OdysseyWalletError>; /// Sign the transaction request and send it to the upstream. - async fn sign_and_send(&self, tx: TransactionRequest) -> Result; + async fn sign_and_send(&self, tx: Self::TxRequest) -> Result; } /// A wrapper around an Alloy provider for signing and sending sponsored transactions. #[derive(Debug)] -pub struct AlloyUpstream { +pub struct AlloyUpstream { provider: P, - _transport: PhantomData, + _network: PhantomData, } -impl AlloyUpstream { +impl AlloyUpstream { /// Create a new [`AlloyUpstream`] pub const fn new(provider: P) -> Self { - Self { provider, _transport: PhantomData } + Self { provider, _network: PhantomData } } } #[async_trait] -impl Upstream for AlloyUpstream +impl Upstream for AlloyUpstream where - P: Provider + WalletProvider, - T: Transport + Clone, + P: Provider + WalletProvider, + N: Network, { + type TxRequest = ::TransactionRequest; + fn default_signer_address(&self) -> Address { self.provider.default_signer_address() } @@ -92,7 +98,7 @@ where async fn estimate( &self, - tx: &TransactionRequest, + tx: &Self::TxRequest, ) -> Result<(u64, Eip1559Estimation), OdysseyWalletError> { let (estimate, fee_estimate) = tokio::join!(self.provider.estimate_gas(tx), self.provider.estimate_eip1559_fees(None)); @@ -103,7 +109,7 @@ where )) } - async fn sign_and_send(&self, tx: TransactionRequest) -> Result { + async fn sign_and_send(&self, tx: Self::TxRequest) -> Result { self.provider .send_transaction(tx) .await @@ -134,6 +140,8 @@ where Provider: StateProviderFactory + Send + Sync, Eth: FullEthApi + Send + Sync, { + type TxRequest = TransactionRequest; + fn default_signer_address(&self) -> Address { NetworkWallet::::default_signer_address(&self.wallet) } @@ -143,7 +151,7 @@ where self.provider.latest().map_err(|err| OdysseyWalletError::InternalError(err.into()))?; Ok(state - .account_code(address) + .account_code(&address) .ok() .flatten() .map(|code| code.0.bytes()) @@ -218,7 +226,7 @@ pub struct DelegationCapability { /// Odyssey `wallet_` RPC namespace. #[cfg_attr(not(test), rpc(server, namespace = "wallet"))] #[cfg_attr(test, rpc(server, client, namespace = "wallet"))] -pub trait OdysseyWalletApi { +pub trait OdysseyWalletApi { /// Send a sponsored transaction. /// /// The transaction will only be processed if: @@ -234,7 +242,7 @@ pub trait OdysseyWalletApi { /// [eip-7702]: https://eips.ethereum.org/EIPS/eip-7702 /// [eip-1559]: https://eips.ethereum.org/EIPS/eip-1559 #[method(name = "sendTransaction", aliases = ["odyssey_sendTransaction"])] - async fn send_transaction(&self, request: TransactionRequest) -> RpcResult; + async fn send_transaction(&self, request: Request) -> RpcResult; } /// Errors returned by the wallet API. @@ -317,11 +325,12 @@ impl OdysseyWallet { } #[async_trait] -impl OdysseyWalletApiServer for OdysseyWallet +impl OdysseyWalletApiServer for OdysseyWallet where - T: Upstream + Sync + Send + 'static, + T: Upstream + Sync + Send + 'static, + Request: Debug + TransactionBuilder + TransactionBuilder7702 + RpcObject, { - async fn send_transaction(&self, mut request: TransactionRequest) -> RpcResult { + async fn send_transaction(&self, mut request: Request) -> RpcResult { trace!(target: "rpc::wallet", ?request, "Serving odyssey_sendTransaction"); // validate fields common to eip-7702 and eip-1559 @@ -331,7 +340,7 @@ where } // validate destination - match (request.authorization_list.is_some(), request.to) { + match (request.authorization_list().is_some(), request.kind()) { // if this is an eip-1559 tx, ensure that it is an account that delegates to a // whitelisted address (false, Some(TxKind::Call(addr))) => { @@ -366,12 +375,12 @@ where let _permit = self.inner.permit.lock().await; // set chain id - request.chain_id = Some(self.chain_id()); + request.set_chain_id(self.chain_id()); // set gas limit // note: we also set the `from` field here to correctly estimate for contracts that use e.g. // `tx.origin` - request.from = Some(self.inner.upstream.default_signer_address()); + request.set_from(self.inner.upstream.default_signer_address()); let (estimate, fee_estimate) = self .inner .upstream @@ -382,12 +391,11 @@ where self.inner.metrics.invalid_send_transaction_calls.increment(1); return Err(OdysseyWalletError::GasEstimateTooHigh { estimate }.into()); } - request.gas = Some(estimate); + request.set_gas_limit(estimate); // set gas price - request.max_fee_per_gas = Some(fee_estimate.max_fee_per_gas); - request.max_priority_fee_per_gas = Some(fee_estimate.max_priority_fee_per_gas); - request.gas_price = None; + request.set_max_fee_per_gas(fee_estimate.max_fee_per_gas); + request.set_max_priority_fee_per_gas(fee_estimate.max_priority_fee_per_gas); // all checks passed, increment the valid calls counter self.inner.metrics.valid_send_transaction_calls.increment(1); @@ -409,19 +417,21 @@ struct OdysseyWalletInner { metrics: WalletMetrics, } -fn validate_tx_request(request: &TransactionRequest) -> Result<(), OdysseyWalletError> { +fn validate_tx_request>( + request: &Request, +) -> Result<(), OdysseyWalletError> { // reject transactions that have a non-zero value to prevent draining the service. - if request.value.is_some_and(|val| val > U256::ZERO) { + if request.value().is_some_and(|val| val > U256::ZERO) { return Err(OdysseyWalletError::ValueNotZero); } // reject transactions that have from set, as this will be the service. - if request.from.is_some() { + if request.from().is_some() { return Err(OdysseyWalletError::FromSet); } // reject transaction requests that have nonce set, as this is managed by the service. - if request.nonce.is_some() { + if request.nonce().is_some() { return Err(OdysseyWalletError::NonceSet); } diff --git a/crates/walltime/Cargo.toml b/crates/walltime/Cargo.toml index ed5c377..3debfb5 100644 --- a/crates/walltime/Cargo.toml +++ b/crates/walltime/Cargo.toml @@ -14,6 +14,7 @@ workspace = true [dependencies] reth-chain-state.workspace = true +reth-optimism-primitives.workspace = true jsonrpsee = { workspace = true, features = ["server", "macros"] } serde = { workspace = true, features = ["derive"] } diff --git a/crates/walltime/src/lib.rs b/crates/walltime/src/lib.rs index edbd16a..b3c97f3 100644 --- a/crates/walltime/src/lib.rs +++ b/crates/walltime/src/lib.rs @@ -11,6 +11,7 @@ use jsonrpsee::{ types::{error::INTERNAL_ERROR_CODE, ErrorObject}, }; use reth_chain_state::CanonStateNotification; +use reth_optimism_primitives::OpPrimitives; use serde::{Deserialize, Serialize}; use std::sync::Arc; use tokio::sync::RwLock; @@ -25,7 +26,7 @@ impl OdysseyWallTime { /// Creates a new instance with the connected stream. pub fn spawn(mut st: St) -> Self where - St: Stream + Send + Unpin + 'static, + St: Stream> + Send + Unpin + 'static, { let walltime = Self { inner: Default::default() }; let listener = walltime.clone();