From d0df4936b844c59b98930b4c9becec203dff5894 Mon Sep 17 00:00:00 2001 From: chatton Date: Thu, 22 Jan 2026 11:50:32 +0000 Subject: [PATCH 1/6] deps: upgrade to v1.10.1 --- Cargo.lock | 1349 +++++++++++--------- Cargo.toml | 156 +-- bin/ev-reth/src/main.rs | 48 +- crates/ev-precompiles/src/mint.rs | 133 +- crates/ev-revm/Cargo.toml | 1 + crates/ev-revm/src/evm.rs | 69 + crates/ev-revm/src/factory.rs | 8 +- crates/ev-revm/src/handler.rs | 2 +- crates/evolve/src/consensus.rs | 15 +- crates/node/src/attributes.rs | 13 +- crates/node/src/builder.rs | 3 +- crates/node/src/executor.rs | 4 +- crates/node/src/validator.rs | 11 +- crates/tests/src/e2e_tests.rs | 36 +- crates/tests/src/test_evolve_engine_api.rs | 1 + 15 files changed, 1077 insertions(+), 772 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 318aaf1..6aeee65 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -97,9 +97,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01db470290bb814e0485fa79aba6e36bb5d221c2e3cfeba5fba05a8a2ca8dad" +checksum = "e502b004e05578e537ce0284843ba3dfaf6a0d5c530f5c20454411aded561289" dependencies = [ "alloy-consensus", "alloy-contract", @@ -130,9 +130,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90d103d3e440ad6f703dd71a5b58a6abd24834563bde8a5fabe706e00242f810" +checksum = "5c3a590d13de3944675987394715f37537b50b856e3b23a0e66e97d963edbf38" dependencies = [ "alloy-eips", "alloy-primitives", @@ -142,6 +142,7 @@ dependencies = [ "alloy-tx-macros", "arbitrary", "auto_impl", + "borsh", "c-kzg", "derive_more", "either", @@ -157,9 +158,9 @@ dependencies = [ [[package]] name = "alloy-consensus-any" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48ead76c8c84ab3a50c31c56bc2c748c2d64357ad2131c32f9b10ab790a25e1a" +checksum = "0f28f769d5ea999f0d8a105e434f483456a15b4e1fcb08edbbbe1650a497ff6d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -172,9 +173,9 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5903097e4c131ad2dd80d87065f23c715ccb9cdb905fa169dffab8e1e798bae" +checksum = "990fa65cd132a99d3c3795a82b9f93ec82b81c7de3bab0bf26ca5c73286f7186" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -201,14 +202,15 @@ dependencies = [ "alloy-dyn-abi", "alloy-json-abi", "alloy-primitives", + "alloy-rlp", "alloy-sol-types", ] [[package]] name = "alloy-dyn-abi" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdff496dd4e98a81f4861e66f7eaf5f2488971848bb42d9c892f871730245c8" +checksum = "369f5707b958927176265e8a58627fc6195e5dfa5c55689396e68b241b3a72e6" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -238,26 +240,28 @@ dependencies = [ [[package]] name = "alloy-eip2930" -version = "0.2.1" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b82752a889170df67bbb36d42ca63c531eb16274f0d7299ae2a680facba17bd" +checksum = "9441120fa82df73e8959ae0e4ab8ade03de2aaae61be313fbf5746277847ce25" dependencies = [ "alloy-primitives", "alloy-rlp", "arbitrary", + "borsh", "rand 0.8.5", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.6.1" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" +checksum = "2919c5a56a1007492da313e7a3b6d45ef5edc5d33416fdec63c0d7a2702a0d20" dependencies = [ "alloy-primitives", "alloy-rlp", "arbitrary", + "borsh", "k256", "rand 0.8.5", "serde", @@ -265,11 +269,23 @@ dependencies = [ "thiserror 2.0.12", ] +[[package]] +name = "alloy-eip7928" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6adac476434bf024279164dcdca299309f0c7d1e3557024eb7a83f8d9d01c6b5" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "borsh", + "serde", +] + [[package]] name = "alloy-eips" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bdbec74583d0067798d77afa43d58f00d93035335d7ceaa5d3f93857d461bb9" +checksum = "09535cbc646b0e0c6fcc12b7597eaed12cf86dff4c4fba9507a61e71b94f30eb" dependencies = [ "alloy-eip2124", "alloy-eip2930", @@ -279,6 +295,7 @@ dependencies = [ "alloy-serde", "arbitrary", "auto_impl", + "borsh", "c-kzg", "derive_more", "either", @@ -286,15 +303,15 @@ dependencies = [ "ethereum_ssz_derive", "serde", "serde_with", - "sha2 0.10.9", + "sha2", "thiserror 2.0.12", ] [[package]] name = "alloy-evm" -version = "0.21.3" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f1bfade4de9f464719b5aca30cf5bb02b9fda7036f0cf43addc3a0e66a0340c" +checksum = "a96827207397445a919a8adc49289b53cc74e48e460411740bba31cec2fc307d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -305,8 +322,7 @@ dependencies = [ "alloy-sol-types", "auto_impl", "derive_more", - "op-alloy-consensus", - "op-alloy-rpc-types-engine", + "op-alloy", "op-revm", "revm", "thiserror 2.0.12", @@ -314,23 +330,24 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c25d5acb35706e683df1ea333c862bdb6b7c5548836607cd5bb56e501cca0b4f" +checksum = "1005520ccf89fa3d755e46c1d992a9e795466c2e7921be2145ef1f749c5727de" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-serde", "alloy-trie", + "borsh", "serde", "serde_with", ] [[package]] name = "alloy-hardforks" -version = "0.3.5" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "889eb3949b58368a09d4f16931c660275ef5fb08e5fbd4a96573b19c7085c41f" +checksum = "83ba208044232d14d4adbfa77e57d6329f51bc1acc21f5667bb7db72d88a0831" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -342,9 +359,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5513d5e6bd1cba6bdcf5373470f559f320c05c8c59493b6e98912fbe6733943f" +checksum = "84e3cf01219c966f95a460c95f1d4c30e12f6c18150c21a30b768af2a2a29142" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -354,9 +371,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b67c5a702121e618217f7a86f314918acb2622276d0273490e2d4534490bc0" +checksum = "72b626409c98ba43aaaa558361bca21440c88fd30df7542c7484b9c7a1489cdb" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -369,9 +386,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612296e6b723470bb1101420a73c63dfd535aa9bf738ce09951aedbd4ab7292e" +checksum = "89924fdcfeee0e0fa42b1f10af42f92802b5d16be614a70897382565663bf7cf" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -395,9 +412,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0e7918396eecd69d9c907046ec8a93fb09b89e2f325d5e7ea9c4e3929aa0dd2" +checksum = "0f0dbe56ff50065713ff8635d8712a0895db3ad7f209db9793ad8fcb6b1734aa" dependencies = [ "alloy-consensus", "alloy-eips", @@ -408,9 +425,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "355bf68a433e0fd7f7d33d5a9fc2583fde70bf5c530f63b80845f8da5505cf28" +checksum = "f6a0fb18dd5fb43ec5f0f6a20be1ce0287c79825827de5744afaa6c957737c33" dependencies = [ "alloy-rlp", "arbitrary", @@ -429,6 +446,7 @@ dependencies = [ "proptest", "proptest-derive 0.6.0", "rand 0.9.2", + "rapidhash", "ruint", "rustc-hash 2.1.1", "serde", @@ -438,9 +456,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55c1313a527a2e464d067c031f3c2ec073754ef615cc0eabca702fd0fe35729c" +checksum = "8b56f7a77513308a21a2ba0e9d57785a9d9d2d609e77f4e71a78a1192b83ff2d" dependencies = [ "alloy-chains", "alloy-consensus", @@ -451,7 +469,9 @@ dependencies = [ "alloy-primitives", "alloy-pubsub", "alloy-rpc-client", + "alloy-rpc-types-debug", "alloy-rpc-types-eth", + "alloy-rpc-types-trace", "alloy-signer", "alloy-sol-types", "alloy-transport", @@ -465,7 +485,7 @@ dependencies = [ "either", "futures", "futures-utils-wasm", - "lru 0.13.0", + "lru 0.16.3", "parking_lot", "pin-project", "reqwest 0.12.22", @@ -480,9 +500,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "810766eeed6b10ffa11815682b3f37afc5019809e3b470b23555297d5770ce63" +checksum = "94813abbd7baa30c700ea02e7f92319dbcb03bff77aeea92a3a9af7ba19c5c70" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -524,9 +544,9 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45f802228273056528dfd6cc8845cc91a7c7e0c6fc1a66d19e8673743dacdc7e" +checksum = "ff01723afc25ec4c5b04de399155bef7b6a96dfde2475492b1b7b4e7a4f46445" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -550,9 +570,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ff3df608dcabd6bdd197827ff2b8faaa6cefe0c462f7dc5e74108666a01f56" +checksum = "f91bf006bb06b7d812591b6ac33395cb92f46c6a65cda11ee30b348338214f0f" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -563,9 +583,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00e11a40c917c704888aa5aa6ffa563395123b732868d2e072ec7dd46c3d4672" +checksum = "b934c3bcdc6617563b45deb36a40881c8230b94d0546ea739dff7edb3aa2f6fd" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -575,9 +595,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac2bc988d7455e02dfb53460e1caa61f932b3f8452e12424e68ba8dcf60bba90" +checksum = "7e82145856df8abb1fefabef58cdec0f7d9abf337d4abd50c1ed7e581634acdd" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -587,9 +607,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdbf6d1766ca41e90ac21c4bc5cbc5e9e965978a25873c3f90b3992d905db4cb" +checksum = "212ca1c1dab27f531d3858f8b1a2d6bfb2da664be0c1083971078eb7b71abe4b" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -598,9 +618,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab94e446a003dcef86843eea60d05a6cec360eb8e1829e4cf388ef94d799b5cf" +checksum = "6d92a9b4b268fac505ef7fb1dac9bb129d4fd7de7753f22a5b6e9f666f7f7de6" dependencies = [ "alloy-eips", "alloy-primitives", @@ -618,9 +638,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "977698b458738369ba5ca645d2cdb4d51ba07a81db37306ff85322853161ea3a" +checksum = "bab1ebed118b701c497e6541d2d11dfa6f3c6ae31a3c52999daa802fcdcc16b7" dependencies = [ "alloy-primitives", "derive_more", @@ -630,9 +650,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07da696cc7fbfead4b1dda8afe408685cae80975cbb024f843ba74d9639cd0d3" +checksum = "232f00fcbcd3ee3b9399b96223a8fc884d17742a70a44f9d7cef275f93e6e872" dependencies = [ "alloy-consensus", "alloy-eips", @@ -651,9 +671,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15e4831b71eea9d20126a411c1c09facf1d01d5cac84fd51d532d3c429cfc26" +checksum = "5715d0bf7efbd360873518bd9f6595762136b5327a9b759a8c42ccd9b5e44945" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -673,9 +693,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c5d8f6f2c3b68af83a32d5c7fa1353d9b2e30441a3f0b8c3c5657c603b7238c" +checksum = "c7b61941d2add2ee64646612d3eda92cbbde8e6c933489760b6222c8898c79be" dependencies = [ "alloy-consensus", "alloy-eips", @@ -688,9 +708,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb0c800e2ce80829fca1491b3f9063c29092850dc6cf19249d5f678f0ce71bb0" +checksum = "9763cc931a28682bd4b9a68af90057b0fbe80e2538a82251afd69d7ae00bbebf" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -702,9 +722,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f82e3068673a3cf93fbbc2f60a59059395cd54bbe39af895827faa5e641cc8f" +checksum = "359a8caaa98cb49eed62d03f5bc511dd6dd5dee292238e8627a6e5690156df0f" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -714,9 +734,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "751d1887f7d202514a82c5b3caf28ee8bd4a2ad9549e4f498b6f0bff99b52add" +checksum = "5ed8531cae8d21ee1c6571d0995f8c9f0652a6ef6452fde369283edea6ab7138" dependencies = [ "alloy-primitives", "arbitrary", @@ -726,9 +746,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cf0b42ffbf558badfecf1dde0c3c5ed91f29bb7e97876d0bed008c3d5d67171" +checksum = "fb10ccd49d0248df51063fce6b716f68a315dd912d55b32178c883fd48b4021d" dependencies = [ "alloy-primitives", "async-trait", @@ -741,9 +761,9 @@ dependencies = [ [[package]] name = "alloy-signer-local" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e7d555ee5f27be29af4ae312be014b57c6cff9acb23fe2cf008500be6ca7e33" +checksum = "f4d992d44e6c414ece580294abbadb50e74cfd4eaa69787350a4dfd4b20eaa1b" dependencies = [ "alloy-consensus", "alloy-network", @@ -760,9 +780,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3ce480400051b5217f19d6e9a82d9010cdde20f1ae9c00d53591e4a1afbb312" +checksum = "09eb18ce0df92b4277291bbaa0ed70545d78b02948df756bbd3d6214bf39a218" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", @@ -774,9 +794,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d792e205ed3b72f795a8044c52877d2e6b6e9b1d13f431478121d8d4eaa9028" +checksum = "95d9fa2daf21f59aa546d549943f10b5cce1ae59986774019fbedae834ffe01b" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -793,9 +813,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd1247a8f90b465ef3f1207627547ec16940c35597875cdc09c49d58b19693c" +checksum = "9396007fe69c26ee118a19f4dee1f5d1d6be186ea75b3881adf16d87f8444686" dependencies = [ "alloy-json-abi", "const-hex", @@ -811,9 +831,9 @@ dependencies = [ [[package]] name = "alloy-sol-type-parser" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "954d1b2533b9b2c7959652df3076954ecb1122a28cc740aa84e7b0a49f6ac0a9" +checksum = "af67a0b0dcebe14244fc92002cd8d96ecbf65db4639d479f5fcd5805755a4c27" dependencies = [ "serde", "winnow", @@ -821,9 +841,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70319350969a3af119da6fb3e9bddb1bce66c9ea933600cb297c8b1850ad2a3c" +checksum = "09aeea64f09a7483bdcd4193634c7e5cf9fd7775ee767585270cd8ce2d69dc95" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -833,9 +853,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71b3deee699d6f271eab587624a9fa84d02d0755db7a95a043d52a6488d16ebe" +checksum = "3f50a9516736d22dd834cc2240e5bf264f338667cc1d9e514b55ec5a78b987ca" dependencies = [ "alloy-json-rpc", "auto_impl", @@ -856,9 +876,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1720bd2ba8fe7e65138aca43bb0f680e4e0bcbd3ca39bf9d3035c9d7d2757f24" +checksum = "0a18b541a6197cf9a084481498a766fdf32fefda0c35ea6096df7d511025e9f1" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -871,9 +891,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea89c214c7ddd2bcad100da929d6b642bbfed85788caf3b1be473abacd3111f9" +checksum = "8075911680ebc537578cacf9453464fd394822a0f68614884a9c63f9fbaf5e89" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -891,15 +911,14 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "571aadf0afce0d515a28b2c6352662a39cb9f48b4eeff9a5c34557d6ea126730" +checksum = "921d37a57e2975e5215f7dd0f28873ed5407c7af630d4831a4b5c737de4b0b8b" dependencies = [ "alloy-pubsub", "alloy-transport", "futures", "http 1.3.1", - "rustls", "serde_json", "tokio", "tokio-tungstenite", @@ -909,9 +928,9 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.9.1" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3412d52bb97c6c6cc27ccc28d4e6e8cf605469101193b50b0bd5813b1f990b5" +checksum = "428aa0f0e0658ff091f8f667c406e034b431cb10abd39de4f507520968acc499" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -929,9 +948,9 @@ dependencies = [ [[package]] name = "alloy-tx-macros" -version = "1.1.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7ce8ed34106acd6e21942022b6a15be6454c2c3ead4d76811d3bdcd63cf771" +checksum = "b2289a842d02fe63f8c466db964168bb2c7a9fdfb7b24816dbb17d45520575fb" dependencies = [ "darling 0.21.3", "proc-macro2", @@ -1006,9 +1025,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.98" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "aquamarine" @@ -1437,12 +1456,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" -[[package]] -name = "az" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b7e4c2464d97fe331d41de9d5db0def0a96f4d823b8b32a2efd503578988973" - [[package]] name = "backon" version = "1.5.1" @@ -1615,15 +1628,6 @@ dependencies = [ "wyz", ] -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -1654,6 +1658,29 @@ dependencies = [ "zeroize", ] +[[package]] +name = "borsh" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +dependencies = [ + "borsh-derive", + "cfg_aliases", +] + +[[package]] +name = "borsh-derive" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" +dependencies = [ + "once_cell", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.104", +] + [[package]] name = "boyer-moore-magiclen" version = "0.2.20" @@ -1690,7 +1717,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "sha2 0.10.9", + "sha2", "tinyvec", ] @@ -1767,6 +1794,16 @@ dependencies = [ "serde", ] +[[package]] +name = "cargo-platform" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87a0c0e6148f11f01f32650a2ea02d532b2ad4e81d8bd41e6e565b5adc5e6082" +dependencies = [ + "serde", + "serde_core", +] + [[package]] name = "cargo_metadata" version = "0.14.2" @@ -1774,7 +1811,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", - "cargo-platform", + "cargo-platform 0.1.9", "semver 1.0.26", "serde", "serde_json", @@ -1782,12 +1819,12 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.19.2" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" +checksum = "ef987d17b0a113becdd19d3d0022d04d7ef41f9efe4f3fb63ac44ba61df3ade9" dependencies = [ "camino", - "cargo-platform", + "cargo-platform 0.3.2", "semver 1.0.26", "serde", "serde_json", @@ -1885,9 +1922,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.41" +version = "4.5.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be92d32e80243a54711e5d7ce823c35c41c9d929dc4ab58e1276f625841aadf9" +checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394" dependencies = [ "clap_builder", "clap_derive", @@ -1895,9 +1932,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.41" +version = "4.5.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707eab41e9622f9139419d573eca0900137718000c517d47da73045f54331c3d" +checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00" dependencies = [ "anstream", "anstyle", @@ -1907,9 +1944,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.41" +version = "4.5.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491" +checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" dependencies = [ "heck", "proc-macro2", @@ -1935,7 +1972,7 @@ dependencies = [ "hmac", "k256", "serde", - "sha2 0.10.9", + "sha2", "thiserror 1.0.69", ] @@ -1951,7 +1988,7 @@ dependencies = [ "once_cell", "pbkdf2", "rand 0.8.5", - "sha2 0.10.9", + "sha2", "thiserror 1.0.69", ] @@ -1969,7 +2006,7 @@ dependencies = [ "generic-array", "ripemd", "serde", - "sha2 0.10.9", + "sha2", "sha3", "thiserror 1.0.69", ] @@ -2391,7 +2428,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976" dependencies = [ "data-encoding", - "syn 2.0.104", + "syn 1.0.109", ] [[package]] @@ -2423,12 +2460,12 @@ dependencies = [ [[package]] name = "deranged" -version = "0.4.0" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" dependencies = [ "powerfmt", - "serde", + "serde_core", ] [[package]] @@ -2538,7 +2575,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", + "block-buffer", "const-oid", "crypto-common", "subtle", @@ -2588,9 +2625,9 @@ dependencies = [ [[package]] name = "discv5" -version = "0.9.1" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4b4e7798d2ff74e29cee344dc490af947ae657d6ab5273dde35d58ce06a4d71" +checksum = "f170f4f6ed0e1df52bf43b403899f0081917ecf1500bfe312505cc3b515a8899" dependencies = [ "aes", "aes-gcm", @@ -2683,7 +2720,7 @@ dependencies = [ "ed25519", "rand_core 0.6.4", "serde", - "sha2 0.10.9", + "sha2", "subtle", "zeroize", ] @@ -2803,7 +2840,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.52.0", ] [[package]] @@ -2823,7 +2860,7 @@ checksum = "c853bd72c9e5787f8aafc3df2907c2ed03cff3150c3acd94e2e53a98ab70a8ab" dependencies = [ "cpufeatures", "ring", - "sha2 0.10.9", + "sha2", ] [[package]] @@ -2991,7 +3028,7 @@ dependencies = [ "thiserror 2.0.12", "tokio", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "url", ] @@ -3009,6 +3046,7 @@ dependencies = [ "reth-revm", "revm-context-interface", "revm-inspector", + "revm-inspectors", "thiserror 2.0.12", ] @@ -3191,6 +3229,27 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "fixed-map" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86ed19add84e8cb9e8cc5f7074de0324247149ffef0b851e215fb0edc50c229b" +dependencies = [ + "fixed-map-derive", + "serde", +] + +[[package]] +name = "fixed-map-derive" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dc7a9cb3326bafb80642c5ce99b39a2c0702d4bfa8ee8a3e773791a6cbe2407" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + [[package]] name = "flate2" version = "1.1.2" @@ -3383,7 +3442,6 @@ version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ - "serde", "typenum", "version_check", "zeroize", @@ -3497,16 +3555,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "gmp-mpfr-sys" -version = "1.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66d61197a68f6323b9afa616cf83d55d69191e1bf364d4eb7d35ae18defe776" -dependencies = [ - "libc", - "windows-sys 0.59.0", -] - [[package]] name = "group" version = "0.13.0" @@ -3600,6 +3648,8 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" dependencies = [ + "allocator-api2", + "equivalent", "foldhash 0.2.0", "serde", ] @@ -3879,6 +3929,19 @@ dependencies = [ "webpki-roots 1.0.2", ] +[[package]] +name = "hyper-timeout" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" +dependencies = [ + "hyper 1.6.0", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", +] + [[package]] name = "hyper-tls" version = "0.5.0" @@ -4055,9 +4118,9 @@ dependencies = [ [[package]] name = "if-addrs" -version = "0.13.4" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69b2eeee38fef3aa9b4cc5f1beea8a2444fc00e7377cafae396de3f5c2065e24" +checksum = "bf39cc0423ee66021dc5eccface85580e4a001e0c5288bae8bea7ecb69225e90" dependencies = [ "libc", "windows-sys 0.59.0", @@ -4513,7 +4576,7 @@ dependencies = [ "elliptic-curve", "once_cell", "serdect", - "sha2 0.10.9", + "sha2", "signature", ] @@ -4587,7 +4650,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" dependencies = [ "cfg-if", - "windows-targets 0.53.2", + "windows-targets 0.48.5", ] [[package]] @@ -4609,7 +4672,7 @@ dependencies = [ "k256", "multihash", "quick-protobuf", - "sha2 0.10.9", + "sha2", "thiserror 2.0.12", "tracing", "zeroize", @@ -4637,52 +4700,6 @@ dependencies = [ "redox_syscall", ] -[[package]] -name = "libsecp256k1" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79019718125edc905a079a70cfa5f3820bc76139fc91d6f9abc27ea2a887139" -dependencies = [ - "arrayref", - "base64 0.22.1", - "digest 0.9.0", - "libsecp256k1-core", - "libsecp256k1-gen-ecmult", - "libsecp256k1-gen-genmult", - "rand 0.8.5", - "serde", - "sha2 0.9.9", -] - -[[package]] -name = "libsecp256k1-core" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" -dependencies = [ - "crunchy", - "digest 0.9.0", - "subtle", -] - -[[package]] -name = "libsecp256k1-gen-ecmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" -dependencies = [ - "libsecp256k1-core", -] - -[[package]] -name = "libsecp256k1-gen-genmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" -dependencies = [ - "libsecp256k1-core", -] - [[package]] name = "libz-sys" version = "1.1.22" @@ -4756,7 +4773,7 @@ dependencies = [ "generator", "scoped-tls", "tracing", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -4770,11 +4787,11 @@ dependencies = [ [[package]] name = "lru" -version = "0.13.0" +version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" dependencies = [ - "hashbrown 0.15.4", + "hashbrown 0.16.0", ] [[package]] @@ -4817,6 +4834,15 @@ dependencies = [ "libc", ] +[[package]] +name = "mach2" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a1b95cd5421ec55b445b5ae102f5ea0e768de1f82bd3001e11f426c269c3aea" +dependencies = [ + "libc", +] + [[package]] name = "macro-string" version = "0.1.4" @@ -4845,9 +4871,9 @@ checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "memmap2" -version = "0.9.7" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "483758ad303d734cec05e5c12b41d7e93e6a6390c5e9dae6bdeb7c1259012d28" +checksum = "744133e4a0e0a658e1374cf3bf8e415c4052a15a111acd372764c55b4177d490" dependencies = [ "libc", ] @@ -4876,16 +4902,16 @@ dependencies = [ [[package]] name = "metrics-exporter-prometheus" -version = "0.16.2" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7399781913e5393588a8d8c6a2867bf85fb38eaf2502fdce465aad2dc6f034" +checksum = "3589659543c04c7dc5526ec858591015b87cd8746583b51b48ef4353f99dbcda" dependencies = [ "base64 0.22.1", "indexmap 2.10.0", "metrics", "metrics-util", "quanta", - "thiserror 1.0.69", + "thiserror 2.0.12", ] [[package]] @@ -4896,7 +4922,7 @@ checksum = "4a82c8add4382f29a122fa64fff1891453ed0f6b2867d971e7d60cb8dfa322ff" dependencies = [ "libc", "libproc", - "mach2", + "mach2 0.4.3", "metrics", "once_cell", "procfs", @@ -4906,13 +4932,13 @@ dependencies = [ [[package]] name = "metrics-util" -version = "0.19.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8496cc523d1f94c1385dd8f0f0c2c480b2b8aeccb5b7e4485ad6365523ae376" +checksum = "cdfb1365fea27e6dd9dc1dbc19f570198bc86914533ad639dae939635f096be4" dependencies = [ "crossbeam-epoch", "crossbeam-utils", - "hashbrown 0.15.4", + "hashbrown 0.16.0", "metrics", "quanta", "rand 0.9.2", @@ -5256,9 +5282,9 @@ dependencies = [ [[package]] name = "nybbles" -version = "0.4.3" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63cb50036b1ad148038105af40aaa70ff24d8a14fbc44ae5c914e1348533d12e" +checksum = "7b5676b5c379cf5b03da1df2b3061c4a4e2aa691086a56ac923e08c143f53f59" dependencies = [ "alloy-rlp", "arbitrary", @@ -5294,16 +5320,31 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +[[package]] +name = "op-alloy" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9b8fee21003dd4f076563de9b9d26f8c97840157ef78593cd7f262c5ca99848" +dependencies = [ + "op-alloy-consensus", + "op-alloy-network", + "op-alloy-provider", + "op-alloy-rpc-types", + "op-alloy-rpc-types-engine", +] + [[package]] name = "op-alloy-consensus" -version = "0.20.0" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a501241474c3118833d6195312ae7eb7cc90bbb0d5f524cbb0b06619e49ff67" +checksum = "736381a95471d23e267263cfcee9e1d96d30b9754a94a2819148f83379de8a86" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-network", "alloy-primitives", "alloy-rlp", + "alloy-rpc-types-eth", "alloy-serde", "arbitrary", "derive_more", @@ -5312,30 +5353,83 @@ dependencies = [ "thiserror 2.0.12", ] +[[package]] +name = "op-alloy-network" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4034183dca6bff6632e7c24c92e75ff5f0eabb58144edb4d8241814851334d47" +dependencies = [ + "alloy-consensus", + "alloy-network", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-eth", + "alloy-signer", + "op-alloy-consensus", + "op-alloy-rpc-types", +] + +[[package]] +name = "op-alloy-provider" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6753d90efbaa8ea8bcb89c1737408ca85fa60d7adb875049d3f382c063666f86" +dependencies = [ + "alloy-network", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-engine", + "alloy-transport", + "async-trait", + "op-alloy-rpc-types-engine", +] + +[[package]] +name = "op-alloy-rpc-types" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd87c6b9e5b6eee8d6b76f41b04368dca0e9f38d83338e5b00e730c282098a4" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "derive_more", + "op-alloy-consensus", + "serde", + "serde_json", + "thiserror 2.0.12", +] + [[package]] name = "op-alloy-rpc-types-engine" -version = "0.20.0" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14e50c94013a1d036a529df259151991dbbd6cf8dc215e3b68b784f95eec60e6" +checksum = "77727699310a18cdeed32da3928c709e2704043b6584ed416397d5da65694efc" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-engine", + "alloy-serde", "derive_more", "ethereum_ssz", "ethereum_ssz_derive", "op-alloy-consensus", + "serde", + "sha2", "snap", "thiserror 2.0.12", ] [[package]] name = "op-revm" -version = "10.1.1" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826f43a5b1613c224f561847c152bfbaefcb593a9ae2c612ff4dc4661c6e625f" +checksum = "79c92b75162c2ed1661849fa51683b11254a5b661798360a2c24be918edafd40" dependencies = [ "auto_impl", "revm", @@ -5394,9 +5488,9 @@ dependencies = [ [[package]] name = "opentelemetry" -version = "0.29.1" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e87237e2775f74896f9ad219d26a2081751187eb7c9f5c58dde20a23b95d16c" +checksum = "b84bcd6ae87133e903af7ef497404dda70c60d0ea14895fc8a5e6722754fc2a0" dependencies = [ "futures-core", "futures-sink", @@ -5408,25 +5502,23 @@ dependencies = [ [[package]] name = "opentelemetry-http" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46d7ab32b827b5b495bd90fa95a6cb65ccc293555dcc3199ae2937d2d237c8ed" +checksum = "d7a6d09a73194e6b66df7c8f1b680f156d916a1a942abf2de06823dd02b7855d" dependencies = [ "async-trait", "bytes", "http 1.3.1", "opentelemetry", "reqwest 0.12.22", - "tracing", ] [[package]] name = "opentelemetry-otlp" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d899720fe06916ccba71c01d04ecd77312734e2de3467fd30d9d580c8ce85656" +checksum = "7a2366db2dca4d2ad033cad11e6ee42844fd727007af5ad04a1730f4cb8163bf" dependencies = [ - "futures-core", "http 1.3.1", "opentelemetry", "opentelemetry-http", @@ -5435,43 +5527,43 @@ dependencies = [ "prost", "reqwest 0.12.22", "thiserror 2.0.12", + "tokio", + "tonic", "tracing", ] [[package]] name = "opentelemetry-proto" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c40da242381435e18570d5b9d50aca2a4f4f4d8e146231adb4e7768023309b3" +checksum = "a7175df06de5eaee9909d4805a3d07e28bb752c34cab57fa9cff549da596b30f" dependencies = [ "opentelemetry", "opentelemetry_sdk", "prost", "tonic", + "tonic-prost", ] [[package]] name = "opentelemetry-semantic-conventions" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b29a9f89f1a954936d5aa92f19b2feec3c8f3971d3e96206640db7f9706ae3" +checksum = "e62e29dfe041afb8ed2a6c9737ab57db4907285d999ef8ad3a59092a36bdc846" [[package]] name = "opentelemetry_sdk" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afdefb21d1d47394abc1ba6c57363ab141be19e27cc70d0e422b7f303e4d290b" +checksum = "e14ae4f5991976fd48df6d843de219ca6d31b01daaab2dad5af2badeded372bd" dependencies = [ "futures-channel", "futures-executor", "futures-util", - "glob", "opentelemetry", "percent-encoding", "rand 0.9.2", - "serde_json", "thiserror 2.0.12", - "tracing", ] [[package]] @@ -5489,7 +5581,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "primeorder", - "sha2 0.10.9", + "sha2", ] [[package]] @@ -5610,9 +5702,9 @@ dependencies = [ [[package]] name = "phf" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" dependencies = [ "phf_macros", "phf_shared", @@ -5621,19 +5713,19 @@ dependencies = [ [[package]] name = "phf_generator" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" dependencies = [ + "fastrand", "phf_shared", - "rand 0.8.5", ] [[package]] name = "phf_macros" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" dependencies = [ "phf_generator", "phf_shared", @@ -5644,9 +5736,9 @@ dependencies = [ [[package]] name = "phf_shared" -version = "0.11.3" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" dependencies = [ "siphasher", ] @@ -5899,9 +5991,9 @@ dependencies = [ [[package]] name = "prost" -version = "0.13.5" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +checksum = "d2ea70524a2f82d518bce41317d0fae74151505651af45faf1ffbd6fd33f0568" dependencies = [ "bytes", "prost-derive", @@ -5909,9 +6001,9 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.13.5" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +checksum = "27c6023962132f4b30eb4c172c91ce92d933da334c59c23cddee82358ddafb0b" dependencies = [ "anyhow", "itertools 0.14.0", @@ -6013,7 +6105,7 @@ dependencies = [ "once_cell", "socket2 0.5.10", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -6117,6 +6209,16 @@ dependencies = [ "rand_core 0.9.3", ] +[[package]] +name = "rapidhash" +version = "4.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d8b5b858a440a0bc02625b62dd95131b9201aa9f69f411195dd4a7cfb1de3d7" +dependencies = [ + "rand 0.9.2", + "rustversion", +] + [[package]] name = "ratatui" version = "0.29.0" @@ -6226,9 +6328,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.1" +version = "1.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" dependencies = [ "aho-corasick", "memchr", @@ -6238,9 +6340,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.9" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" dependencies = [ "aho-corasick", "memchr", @@ -6344,8 +6446,8 @@ checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" [[package]] name = "reth-basic-payload-builder" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6368,8 +6470,8 @@ dependencies = [ [[package]] name = "reth-chain-state" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6399,8 +6501,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6419,8 +6521,8 @@ dependencies = [ [[package]] name = "reth-cli" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-genesis", "clap", @@ -6433,8 +6535,8 @@ dependencies = [ [[package]] name = "reth-cli-commands" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6453,6 +6555,7 @@ dependencies = [ "humantime", "itertools 0.14.0", "lz4", + "metrics", "proptest", "proptest-arbitrary-interop", "ratatui", @@ -6498,6 +6601,7 @@ dependencies = [ "reth-stages-types", "reth-static-file", "reth-static-file-types", + "reth-tasks", "reth-trie", "reth-trie-common", "reth-trie-db", @@ -6509,13 +6613,14 @@ dependencies = [ "tokio-stream", "toml", "tracing", + "url", "zstd", ] [[package]] name = "reth-cli-runner" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "reth-tasks", "tokio", @@ -6524,8 +6629,8 @@ dependencies = [ [[package]] name = "reth-cli-util" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6534,6 +6639,7 @@ dependencies = [ "libc", "rand 0.8.5", "reth-fs-util", + "reth-tracing", "secp256k1 0.30.0", "serde", "thiserror 2.0.12", @@ -6543,8 +6649,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6563,10 +6669,9 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ - "convert_case", "proc-macro2", "quote", "syn 2.0.104", @@ -6574,14 +6679,15 @@ dependencies = [ [[package]] name = "reth-config" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "eyre", "humantime-serde", "reth-network-types", "reth-prune-types", "reth-stages-types", + "reth-static-file-types", "serde", "toml", "url", @@ -6589,8 +6695,8 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6602,8 +6708,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6614,8 +6720,8 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6640,8 +6746,8 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "derive_more", @@ -6666,8 +6772,8 @@ dependencies = [ [[package]] name = "reth-db-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6694,8 +6800,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6724,8 +6830,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6739,14 +6845,13 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", "discv5", "enr", - "generic-array", "itertools 0.14.0", "parking_lot", "rand 0.8.5", @@ -6765,8 +6870,8 @@ dependencies = [ [[package]] name = "reth-discv5" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6789,8 +6894,8 @@ dependencies = [ [[package]] name = "reth-dns-discovery" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "data-encoding", @@ -6813,13 +6918,14 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", + "async-compression", "futures", "futures-util", "itertools 0.14.0", @@ -6828,13 +6934,12 @@ dependencies = [ "rayon", "reth-config", "reth-consensus", - "reth-db", - "reth-db-api", "reth-ethereum-primitives", "reth-metrics", "reth-network-p2p", "reth-network-peers", "reth-primitives-traits", + "reth-provider", "reth-storage-api", "reth-tasks", "reth-testing-utils", @@ -6848,8 +6953,8 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6872,6 +6977,7 @@ dependencies = [ "reth-db", "reth-db-common", "reth-engine-local", + "reth-engine-primitives", "reth-ethereum-primitives", "reth-network-api", "reth-network-p2p", @@ -6905,8 +7011,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "aes", "alloy-primitives", @@ -6918,26 +7024,23 @@ dependencies = [ "ctr", "digest 0.10.7", "futures", - "generic-array", "hmac", "pin-project", "rand 0.8.5", "reth-network-peers", "secp256k1 0.30.0", - "sha2 0.10.9", - "sha3", + "sha2", "thiserror 2.0.12", "tokio", "tokio-stream", "tokio-util", "tracing", - "typenum", ] [[package]] name = "reth-engine-local" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6949,7 +7052,8 @@ dependencies = [ "reth-ethereum-engine-primitives", "reth-payload-builder", "reth-payload-primitives", - "reth-provider", + "reth-primitives-traits", + "reth-storage-api", "reth-transaction-pool", "tokio", "tokio-stream", @@ -6958,8 +7062,8 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6983,8 +7087,8 @@ dependencies = [ [[package]] name = "reth-engine-service" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "futures", "pin-project", @@ -7001,24 +7105,28 @@ dependencies = [ "reth-prune", "reth-stages-api", "reth-tasks", - "thiserror 2.0.12", + "reth-trie-db", ] [[package]] name = "reth-engine-tree" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", + "alloy-eip7928", "alloy-eips", "alloy-evm", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-engine", + "crossbeam-channel", + "dashmap 6.1.0", "derive_more", "futures", "metrics", "mini-moka", + "moka", "parking_lot", "rayon", "reth-chain-state", @@ -7045,6 +7153,7 @@ dependencies = [ "reth-tasks", "reth-tracing", "reth-trie", + "reth-trie-common", "reth-trie-db", "reth-trie-parallel", "reth-trie-sparse", @@ -7060,8 +7169,8 @@ dependencies = [ [[package]] name = "reth-engine-util" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -7088,8 +7197,8 @@ dependencies = [ [[package]] name = "reth-era" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7097,30 +7206,30 @@ dependencies = [ "alloy-rlp", "ethereum_ssz", "ethereum_ssz_derive", - "reth-ethereum-primitives", "snap", "thiserror 2.0.12", ] [[package]] name = "reth-era-downloader" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "bytes", "eyre", "futures-util", "reqwest 0.12.22", + "reth-era", "reth-fs-util", - "sha2 0.10.9", + "sha2", "tokio", ] [[package]] name = "reth-era-utils" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7141,8 +7250,8 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -7152,8 +7261,8 @@ dependencies = [ [[package]] name = "reth-eth-wire" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-chains", "alloy-primitives", @@ -7181,8 +7290,8 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-chains", "alloy-consensus", @@ -7205,8 +7314,8 @@ dependencies = [ [[package]] name = "reth-ethereum" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-rpc-types-engine", "alloy-rpc-types-eth", @@ -7245,8 +7354,8 @@ dependencies = [ [[package]] name = "reth-ethereum-cli" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "clap", "eyre", @@ -7267,8 +7376,8 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7283,8 +7392,8 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7295,14 +7404,14 @@ dependencies = [ "reth-payload-primitives", "reth-primitives-traits", "serde", - "sha2 0.10.9", + "sha2", "thiserror 2.0.12", ] [[package]] name = "reth-ethereum-forks" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -7315,8 +7424,8 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7344,8 +7453,8 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7364,8 +7473,8 @@ dependencies = [ [[package]] name = "reth-etl" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "rayon", "reth-db-api", @@ -7374,8 +7483,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7385,6 +7494,7 @@ dependencies = [ "derive_more", "futures-util", "metrics", + "rayon", "reth-execution-errors", "reth-execution-types", "reth-metrics", @@ -7397,8 +7507,8 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7418,8 +7528,8 @@ dependencies = [ [[package]] name = "reth-execution-errors" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-evm", "alloy-primitives", @@ -7431,8 +7541,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7449,8 +7559,8 @@ dependencies = [ [[package]] name = "reth-exex" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7487,8 +7597,8 @@ dependencies = [ [[package]] name = "reth-exex-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7501,8 +7611,8 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "serde", "serde_json", @@ -7511,8 +7621,8 @@ dependencies = [ [[package]] name = "reth-invalid-block-hooks" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7530,6 +7640,7 @@ dependencies = [ "reth-rpc-api", "reth-tracing", "reth-trie", + "revm", "revm-bytecode", "revm-database", "serde", @@ -7538,8 +7649,8 @@ dependencies = [ [[package]] name = "reth-ipc" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "bytes", "futures", @@ -7558,8 +7669,8 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "bitflags 2.10.0", "byteorder", @@ -7574,8 +7685,8 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "bindgen 0.71.1", "cc", @@ -7583,8 +7694,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "futures", "metrics", @@ -7595,16 +7706,17 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", + "ipnet", ] [[package]] name = "reth-net-nat" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "futures-util", "if-addrs", @@ -7617,8 +7729,8 @@ dependencies = [ [[package]] name = "reth-network" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7636,6 +7748,7 @@ dependencies = [ "pin-project", "rand 0.8.5", "rand 0.9.2", + "rayon", "reth-chainspec", "reth-consensus", "reth-discv4", @@ -7672,8 +7785,8 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7697,8 +7810,8 @@ dependencies = [ [[package]] name = "reth-network-p2p" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7720,8 +7833,8 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7735,8 +7848,8 @@ dependencies = [ [[package]] name = "reth-network-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -7749,8 +7862,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "anyhow", "bincode", @@ -7766,8 +7879,8 @@ dependencies = [ [[package]] name = "reth-node-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-rpc-types-engine", "eyre", @@ -7790,8 +7903,8 @@ dependencies = [ [[package]] name = "reth-node-builder" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7804,11 +7917,11 @@ dependencies = [ "fdlimit", "futures", "jsonrpsee", + "parking_lot", "rayon", "reth-basic-payload-builder", "reth-chain-state", "reth-chainspec", - "reth-cli-util", "reth-config", "reth-consensus", "reth-consensus-debug-client", @@ -7849,6 +7962,7 @@ dependencies = [ "reth-tokio-util", "reth-tracing", "reth-transaction-pool", + "reth-trie-db", "secp256k1 0.30.0", "serde_json", "tokio", @@ -7858,8 +7972,8 @@ dependencies = [ [[package]] name = "reth-node-core" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7871,6 +7985,7 @@ dependencies = [ "eyre", "futures", "humantime", + "ipnet", "rand 0.9.2", "reth-chainspec", "reth-cli-util", @@ -7882,11 +7997,13 @@ dependencies = [ "reth-engine-local", "reth-engine-primitives", "reth-ethereum-forks", + "reth-net-banlist", "reth-net-nat", "reth-network", "reth-network-p2p", "reth-network-peers", "reth-primitives-traits", + "reth-provider", "reth-prune-types", "reth-rpc-convert", "reth-rpc-eth-types", @@ -7895,6 +8012,7 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-tracing", + "reth-tracing-otlp", "reth-transaction-pool", "secp256k1 0.30.0", "serde", @@ -7910,8 +8028,8 @@ dependencies = [ [[package]] name = "reth-node-ethereum" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-network", @@ -7948,8 +8066,8 @@ dependencies = [ [[package]] name = "reth-node-ethstats" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7972,8 +8090,8 @@ dependencies = [ [[package]] name = "reth-node-events" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7996,17 +8114,20 @@ dependencies = [ [[package]] name = "reth-node-metrics" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ + "bytes", "eyre", "http 1.3.1", + "http-body-util", "jsonrpsee-server", "metrics", "metrics-exporter-prometheus", "metrics-process", "metrics-util", "procfs", + "reqwest 0.12.22", "reth-metrics", "reth-tasks", "tikv-jemalloc-ctl", @@ -8017,8 +8138,8 @@ dependencies = [ [[package]] name = "reth-node-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "reth-chainspec", "reth-db-api", @@ -8029,27 +8150,23 @@ dependencies = [ [[package]] name = "reth-optimism-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "arbitrary", - "bytes", "op-alloy-consensus", - "reth-codecs", "reth-primitives-traits", - "reth-zstd-compressors", "serde", "serde_with", ] [[package]] name = "reth-payload-builder" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8069,8 +8186,8 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "pin-project", "reth-payload-primitives", @@ -8081,9 +8198,10 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ + "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", @@ -8093,7 +8211,9 @@ dependencies = [ "reth-chain-state", "reth-chainspec", "reth-errors", + "reth-execution-types", "reth-primitives-traits", + "reth-trie-common", "serde", "thiserror 2.0.12", "tokio", @@ -8101,8 +8221,8 @@ dependencies = [ [[package]] name = "reth-payload-validator" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -8111,8 +8231,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "c-kzg", @@ -8125,8 +8245,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8158,8 +8278,8 @@ dependencies = [ [[package]] name = "reth-provider" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8180,9 +8300,7 @@ dependencies = [ "reth-errors", "reth-ethereum-engine-primitives", "reth-ethereum-primitives", - "reth-evm", "reth-execution-types", - "reth-fs-util", "reth-metrics", "reth-nippy-jar", "reth-node-types", @@ -8203,8 +8321,8 @@ dependencies = [ [[package]] name = "reth-prune" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8212,7 +8330,6 @@ dependencies = [ "itertools 0.14.0", "metrics", "rayon", - "reth-chainspec", "reth-config", "reth-db-api", "reth-errors", @@ -8221,6 +8338,7 @@ dependencies = [ "reth-primitives-traits", "reth-provider", "reth-prune-types", + "reth-stages-types", "reth-static-file-types", "reth-tokio-util", "rustc-hash 2.1.1", @@ -8231,8 +8349,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "arbitrary", @@ -8246,8 +8364,8 @@ dependencies = [ [[package]] name = "reth-revm" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "reth-primitives-traits", @@ -8259,11 +8377,12 @@ dependencies = [ [[package]] name = "reth-rpc" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-dyn-abi", + "alloy-eip7928", "alloy-eips", "alloy-evm", "alloy-genesis", @@ -8302,6 +8421,8 @@ dependencies = [ "reth-consensus-common", "reth-engine-primitives", "reth-errors", + "reth-ethereum-engine-primitives", + "reth-ethereum-primitives", "reth-evm", "reth-evm-ethereum", "reth-execution-types", @@ -8327,7 +8448,7 @@ dependencies = [ "revm-primitives", "serde", "serde_json", - "sha2 0.10.9", + "sha2", "thiserror 2.0.12", "tokio", "tokio-stream", @@ -8338,9 +8459,10 @@ dependencies = [ [[package]] name = "reth-rpc-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ + "alloy-eip7928", "alloy-eips", "alloy-genesis", "alloy-json-rpc", @@ -8362,12 +8484,13 @@ dependencies = [ "reth-network-peers", "reth-rpc-eth-api", "reth-trie-common", + "serde_json", ] [[package]] name = "reth-rpc-builder" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-network", "alloy-provider", @@ -8379,6 +8502,7 @@ dependencies = [ "reth-chain-state", "reth-chainspec", "reth-consensus", + "reth-engine-primitives", "reth-evm", "reth-ipc", "reth-metrics", @@ -8393,6 +8517,7 @@ dependencies = [ "reth-rpc-server-types", "reth-storage-api", "reth-tasks", + "reth-tokio-util", "reth-transaction-pool", "serde", "thiserror 2.0.12", @@ -8405,10 +8530,11 @@ dependencies = [ [[package]] name = "reth-rpc-convert" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", + "alloy-evm", "alloy-json-rpc", "alloy-network", "alloy-primitives", @@ -8420,14 +8546,13 @@ dependencies = [ "reth-ethereum-primitives", "reth-evm", "reth-primitives-traits", - "revm-context", "thiserror 2.0.12", ] [[package]] name = "reth-rpc-engine-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8436,10 +8561,10 @@ dependencies = [ "jsonrpsee-core", "jsonrpsee-types", "metrics", - "parking_lot", "reth-chainspec", "reth-engine-primitives", "reth-metrics", + "reth-network-api", "reth-payload-builder", "reth-payload-builder-primitives", "reth-payload-primitives", @@ -8456,8 +8581,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -8500,8 +8625,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8543,12 +8668,13 @@ dependencies = [ "tokio", "tokio-stream", "tracing", + "url", ] [[package]] name = "reth-rpc-layer" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-rpc-types-engine", "http 1.3.1", @@ -8561,8 +8687,8 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8577,8 +8703,8 @@ dependencies = [ [[package]] name = "reth-stages" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8613,6 +8739,7 @@ dependencies = [ "reth-revm", "reth-stages-api", "reth-static-file-types", + "reth-storage-api", "reth-storage-errors", "reth-testing-utils", "reth-trie", @@ -8625,8 +8752,8 @@ dependencies = [ [[package]] name = "reth-stages-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8652,8 +8779,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "arbitrary", @@ -8666,8 +8793,8 @@ dependencies = [ [[package]] name = "reth-static-file" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "parking_lot", @@ -8686,20 +8813,21 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "clap", "derive_more", + "fixed-map", "serde", "strum 0.27.2", ] [[package]] name = "reth-storage-api" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8717,12 +8845,13 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "revm-database", + "serde_json", ] [[package]] name = "reth-storage-errors" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8732,13 +8861,14 @@ dependencies = [ "reth-prune-types", "reth-static-file-types", "revm-database-interface", + "revm-state", "thiserror 2.0.12", ] [[package]] name = "reth-tasks" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "auto_impl", "dyn-clone", @@ -8755,8 +8885,8 @@ dependencies = [ [[package]] name = "reth-testing-utils" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8771,8 +8901,8 @@ dependencies = [ [[package]] name = "reth-tokio-util" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "tokio", "tokio-stream", @@ -8781,37 +8911,42 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "clap", "eyre", + "reth-tracing-otlp", "rolling-file", "tracing", "tracing-appender", "tracing-journald", "tracing-logfmt", - "tracing-subscriber 0.3.20", + "tracing-samply", + "tracing-subscriber 0.3.22", ] [[package]] name = "reth-tracing-otlp" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ + "clap", + "eyre", "opentelemetry", "opentelemetry-otlp", "opentelemetry-semantic-conventions", "opentelemetry_sdk", "tracing", "tracing-opentelemetry", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", + "url", ] [[package]] name = "reth-transaction-pool" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8853,8 +8988,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8864,6 +8999,7 @@ dependencies = [ "auto_impl", "itertools 0.14.0", "metrics", + "parking_lot", "reth-execution-errors", "reth-metrics", "reth-primitives-traits", @@ -8878,8 +9014,8 @@ dependencies = [ [[package]] name = "reth-trie-common" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8888,6 +9024,7 @@ dependencies = [ "alloy-serde", "alloy-trie", "arbitrary", + "arrayvec", "bytes", "derive_more", "hash-db", @@ -8904,36 +9041,43 @@ dependencies = [ [[package]] name = "reth-trie-db" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", + "metrics", + "parking_lot", "reth-db-api", "reth-execution-errors", + "reth-metrics", "reth-primitives-traits", + "reth-stages-types", + "reth-storage-api", + "reth-storage-errors", "reth-trie", + "reth-trie-common", "tracing", ] [[package]] name = "reth-trie-parallel" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", + "crossbeam-channel", + "dashmap 6.1.0", "derive_more", "itertools 0.14.0", "metrics", "rayon", - "reth-db-api", "reth-execution-errors", "reth-metrics", "reth-provider", "reth-storage-errors", "reth-trie", "reth-trie-common", - "reth-trie-db", "reth-trie-sparse", "thiserror 2.0.12", "tokio", @@ -8942,8 +9086,8 @@ dependencies = [ [[package]] name = "reth-trie-sparse" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8961,8 +9105,8 @@ dependencies = [ [[package]] name = "reth-trie-sparse-parallel" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8979,17 +9123,17 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "1.8.4" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.8.4#bde6574bcac266f9858c1a78f8d0da9fd1e5d262" +version = "1.10.1" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" dependencies = [ "zstd", ] [[package]] name = "revm" -version = "29.0.1" +version = "34.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718d90dce5f07e115d0e66450b1b8aa29694c1cf3f89ebddaddccc2ccbd2f13e" +checksum = "c2aabdebaa535b3575231a88d72b642897ae8106cf6b0d12eafc6bfdf50abfc7" dependencies = [ "revm-bytecode", "revm-context", @@ -9006,9 +9150,9 @@ dependencies = [ [[package]] name = "revm-bytecode" -version = "6.2.2" +version = "8.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c52031b73cae95d84cd1b07725808b5fd1500da3e5e24574a3b2dc13d9f16d" +checksum = "74d1e5c1eaa44d39d537f668bc5c3409dc01e5c8be954da6c83370bbdf006457" dependencies = [ "bitvec", "phf", @@ -9018,9 +9162,9 @@ dependencies = [ [[package]] name = "revm-context" -version = "9.1.0" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a20c98e7008591a6f012550c2a00aa36cba8c14cc88eb88dec32eb9102554b4" +checksum = "892ff3e6a566cf8d72ffb627fdced3becebbd9ba64089c25975b9b028af326a5" dependencies = [ "bitvec", "cfg-if", @@ -9035,9 +9179,9 @@ dependencies = [ [[package]] name = "revm-context-interface" -version = "10.2.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b50d241ed1ce647b94caf174fcd0239b7651318b2c4c06b825b59b973dfb8495" +checksum = "57f61cc6d23678c4840af895b19f8acfbbd546142ec8028b6526c53cc1c16c98" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -9051,9 +9195,9 @@ dependencies = [ [[package]] name = "revm-database" -version = "7.0.5" +version = "10.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39a276ed142b4718dcf64bc9624f474373ed82ef20611025045c3fb23edbef9c" +checksum = "529528d0b05fe646be86223032c3e77aa8b05caa2a35447d538c55965956a511" dependencies = [ "alloy-eips", "revm-bytecode", @@ -9065,22 +9209,23 @@ dependencies = [ [[package]] name = "revm-database-interface" -version = "7.0.5" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c523c77e74eeedbac5d6f7c092e3851dbe9c7fec6f418b85992bd79229db361" +checksum = "b7bf93ac5b91347c057610c0d96e923db8c62807e03f036762d03e981feddc1d" dependencies = [ "auto_impl", "either", "revm-primitives", "revm-state", "serde", + "thiserror 2.0.12", ] [[package]] name = "revm-handler" -version = "10.0.1" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "550331ea85c1d257686e672081576172fe3d5a10526248b663bbf54f1bef226a" +checksum = "0cd0e43e815a85eded249df886c4badec869195e70cdd808a13cfca2794622d2" dependencies = [ "auto_impl", "derive-where", @@ -9097,9 +9242,9 @@ dependencies = [ [[package]] name = "revm-inspector" -version = "10.0.1" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c0a6e9ccc2ae006f5bed8bd80cd6f8d3832cd55c5e861b9402fdd556098512f" +checksum = "4f3ccad59db91ef93696536a0dbaf2f6f17cfe20d4d8843ae118edb7e97947ef" dependencies = [ "auto_impl", "either", @@ -9115,9 +9260,9 @@ dependencies = [ [[package]] name = "revm-inspectors" -version = "0.30.1" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de23199c4b6181a6539e4131cf7e31cde4df05e1192bcdce491c34a511241588" +checksum = "4a1ce3f52a052d78cc251714d57bf05dc8bc75e269677de11805d3153300a2cd" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -9133,21 +9278,22 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "25.0.3" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06575dc51b1d8f5091daa12a435733a90b4a132dca7ccee0666c7db3851bc30c" +checksum = "11406408597bc249392d39295831c4b641b3a6f5c471a7c41104a7a1e3564c07" dependencies = [ "revm-bytecode", "revm-context-interface", "revm-primitives", + "revm-state", "serde", ] [[package]] name = "revm-precompile" -version = "27.0.0" +version = "32.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b57d4bd9e6b5fe469da5452a8a137bc2d030a3cd47c46908efc615bbc699da" +checksum = "50c1285c848d240678bf69cb0f6179ff5a4aee6fc8e921d89708087197a0aff3" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -9160,20 +9306,18 @@ dependencies = [ "c-kzg", "cfg-if", "k256", - "libsecp256k1", "p256", "revm-primitives", "ripemd", - "rug", "secp256k1 0.31.1", - "sha2 0.10.9", + "sha2", ] [[package]] name = "revm-primitives" -version = "20.2.1" +version = "22.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa29d9da06fe03b249b6419b33968ecdf92ad6428e2f012dc57bcd619b5d94e" +checksum = "ba580c56a8ec824a64f8a1683577876c2e1dbe5247044199e9b881421ad5dcf9" dependencies = [ "alloy-primitives", "num_enum", @@ -9183,10 +9327,11 @@ dependencies = [ [[package]] name = "revm-state" -version = "7.0.5" +version = "9.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f64fbacb86008394aaebd3454f9643b7d5a782bd251135e17c5b33da592d84d" +checksum = "311720d4f0f239b041375e7ddafdbd20032a33b7bae718562ea188e188ed9fd3" dependencies = [ + "alloy-eip7928", "bitflags 2.10.0", "revm-bytecode", "revm-primitives", @@ -9298,18 +9443,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746" -[[package]] -name = "rug" -version = "1.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58ad2e973fe3c3214251a840a621812a4f40468da814b1a3d6947d433c2af11f" -dependencies = [ - "az", - "gmp-mpfr-sys", - "libc", - "libm", -] - [[package]] name = "ruint" version = "1.17.0" @@ -9400,7 +9533,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -9413,7 +9546,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.9.4", - "windows-sys 0.60.2", + "windows-sys 0.52.0", ] [[package]] @@ -9480,7 +9613,7 @@ dependencies = [ "security-framework 3.2.0", "security-framework-sys", "webpki-root-certs 0.26.11", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -9502,9 +9635,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "rusty-fork" @@ -9837,19 +9970,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.9" @@ -10143,9 +10263,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff790eb176cc81bb8936aed0f7b9f14fc4670069a2d371b3e3b0ecce908b2cb3" +checksum = "5f92d01b5de07eaf324f7fca61cc6bd3d82bbc1de5b6c963e6fe79e86f36580d" dependencies = [ "paste", "proc-macro2", @@ -10246,7 +10366,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix 1.0.8", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -10340,9 +10460,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "f9e442fc33d7fdb45aa9bfeb312c095964abdf596f7567261062b2a7107aaabd" dependencies = [ "deranged", "itoa", @@ -10350,22 +10470,22 @@ dependencies = [ "num-conv", "num_threads", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "8b36ee98fd31ec7426d599183e8fe26932a8dc1fb76ddb6214d05493377d34ca" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "71e552d1249bf61ac2a52db88179fd0673def1e1ad8243a00d9ec9ed71fee3dd" dependencies = [ "num-conv", "time-core", @@ -10543,9 +10663,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "tonic" -version = "0.12.3" +version = "0.14.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" +checksum = "eb7613188ce9f7df5bfe185db26c5814347d110db17920415cf2fbcad85e7203" dependencies = [ "async-trait", "base64 0.22.1", @@ -10553,15 +10673,31 @@ dependencies = [ "http 1.3.1", "http-body 1.0.1", "http-body-util", + "hyper 1.6.0", + "hyper-timeout", + "hyper-util", "percent-encoding", "pin-project", - "prost", + "sync_wrapper 1.0.2", + "tokio", "tokio-stream", + "tower", "tower-layer", "tower-service", "tracing", ] +[[package]] +name = "tonic-prost" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66bd50ad6ce1252d87ef024b3d64fe4c3cf54a86fb9ef4c631fdd0ded7aeaa67" +dependencies = [ + "bytes", + "prost", + "tonic", +] + [[package]] name = "tower" version = "0.5.2" @@ -10627,9 +10763,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.41" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "log", "pin-project-lite", @@ -10646,14 +10782,14 @@ dependencies = [ "crossbeam-channel", "thiserror 1.0.69", "time", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] name = "tracing-attributes" -version = "0.1.30" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", @@ -10662,9 +10798,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.34" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -10688,7 +10824,7 @@ checksum = "fc0b4143302cf1022dac868d521e36e8b27691f72c84b3311750d5188ebba657" dependencies = [ "libc", "tracing-core", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] @@ -10711,27 +10847,41 @@ dependencies = [ "time", "tracing", "tracing-core", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", ] [[package]] name = "tracing-opentelemetry" -version = "0.30.0" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd8e764bd6f5813fd8bebc3117875190c5b0415be8f7f8059bffb6ecd979c444" +checksum = "1ac28f2d093c6c477eaa76b23525478f38de514fa9aeb1285738d4b97a9552fc" dependencies = [ "js-sys", - "once_cell", "opentelemetry", - "opentelemetry_sdk", "smallvec", "tracing", "tracing-core", "tracing-log", - "tracing-subscriber 0.3.20", + "tracing-subscriber 0.3.22", "web-time", ] +[[package]] +name = "tracing-samply" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c175f7ecc002b6ef04776a39f440503e4e788790ddbdbfac8259b7a069526334" +dependencies = [ + "cfg-if", + "itoa", + "libc", + "mach2 0.5.0", + "memmap2", + "smallvec", + "tracing-core", + "tracing-subscriber 0.3.22", +] + [[package]] name = "tracing-serde" version = "0.2.0" @@ -10753,9 +10903,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.20" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" +checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" dependencies = [ "matchers", "nu-ansi-term", @@ -10780,7 +10930,6 @@ checksum = "ef54005d3d760186fd662dad4b7bb27ecd5531cdef54d1573ebd3f20a9205ed7" dependencies = [ "loom", "once_cell", - "rustc-demangle", "tracy-client-sys", ] @@ -10791,7 +10940,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "319c70195101a93f56db4c74733e272d720768e13471f400c78406a326b172b0" dependencies = [ "cc", - "windows-targets 0.52.6", + "windows-targets 0.48.5", ] [[package]] @@ -11026,12 +11175,12 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" [[package]] name = "vergen" -version = "9.0.6" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777" +checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75" dependencies = [ "anyhow", - "cargo_metadata 0.19.2", + "cargo_metadata 0.23.1", "derive_builder", "regex", "rustversion", @@ -11041,9 +11190,9 @@ dependencies = [ [[package]] name = "vergen-git2" -version = "1.0.7" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f6ee511ec45098eabade8a0750e76eec671e7fb2d9360c563911336bea9cac1" +checksum = "d51ab55ddf1188c8d679f349775362b0fa9e90bd7a4ac69838b2a087623f0d57" dependencies = [ "anyhow", "derive_builder", @@ -11056,9 +11205,9 @@ dependencies = [ [[package]] name = "vergen-lib" -version = "0.1.6" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" +checksum = "b34a29ba7e9c59e62f229ae1932fb1b8fb8a6fdcc99215a641913f5f5a59a569" dependencies = [ "anyhow", "derive_builder", @@ -11307,7 +11456,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index d3babc7..679c737 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,98 +21,102 @@ authors = ["Evolve Stack Contributors"] [workspace.dependencies] # Reth dependencies - Using v1.8.4 stable -reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-tracing-otlp = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-errors = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-provider = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-network = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-ethereum-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-basic-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-engine-local = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-engine-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-ethereum-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-e2e-test-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-evm = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-execution-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-node-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-payload-builder-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-payload-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-ethereum-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-revm = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-rpc-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-rpc-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } -reth-rpc-engine-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4" } +reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-tracing-otlp = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-errors = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-provider = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-network = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-ethereum-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-basic-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-engine-local = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-engine-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-ethereum-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-e2e-test-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-evm = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-execution-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-node-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-payload-builder-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-payload-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-ethereum-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-revm = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-rpc-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-rpc-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +reth-rpc-engine-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } ev-revm = { path = "crates/ev-revm" } # Consensus dependencies -reth-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } -reth-consensus-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } -reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } +reth-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-consensus-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } # Test dependencies -reth-testing-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } -reth-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } -reth-tasks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.8.4", default-features = false } +reth-testing-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-tasks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -revm = { version = "29.0.1", default-features = false } -revm-context-interface = { version = "10.2.0", default-features = false } +revm = { version = "34.0.0", default-features = false } +revm-context-interface = { version = "14.0.0", default-features = false } -# Alloy dependencies -alloy = { version = "1.0.37", features = [ +# Alloy dependencies (aligned to reth v1.10.1) +alloy = { version = "1.4.3", features = [ "contract", "providers", "provider-http", "signers", "reqwest-rustls-tls", ], default-features = false } -# Alloy family versions aligned to 1.0.37 compatibility (reth v1.8.4) -alloy-evm = { version = "0.21.3", default-features = false } -alloy-eips = { version = "1.0.37", default-features = false } -alloy-network = { version = "1.0.37", default-features = false } -alloy-provider = { version = "1.0.37", default-features = false } -alloy-rpc-client = { version = "1.0.37", default-features = false } -alloy-rpc-types = { version = "1.0.37", default-features = false } -alloy-json-rpc = { version = "1.0.37", default-features = false } -alloy-rpc-types-eth = { version = "1.0.37", default-features = false } -alloy-rpc-types-engine = { version = "1.0.37", default-features = false } -alloy-signer = { version = "1.0.37", default-features = false } -alloy-signer-local = { version = "1.0.37", features = ["mnemonic"] } -alloy-primitives = { version = "1.3.1", default-features = false } -alloy-consensus = { version = "1.0.37", default-features = false } -alloy-genesis = { version = "1.0.37", default-features = false } -alloy-rpc-types-txpool = { version = "1.0.37", default-features = false } -alloy-sol-types = { version = "1.3.1", default-features = false } +alloy-evm = { version = "0.26.3", default-features = false } +alloy-eips = { version = "1.4.3", default-features = false } +alloy-network = { version = "1.4.3", default-features = false } +alloy-provider = { version = "1.4.3", default-features = false } +alloy-rpc-client = { version = "1.4.3", default-features = false } +alloy-rpc-types = { version = "1.4.3", default-features = false } +alloy-json-rpc = { version = "1.4.3", default-features = false } +alloy-rpc-types-eth = { version = "1.4.3", default-features = false } +alloy-rpc-types-engine = { version = "1.4.3", default-features = false } +alloy-signer = { version = "1.4.3", default-features = false } +alloy-signer-local = { version = "1.4.3", features = ["mnemonic"] } +alloy-primitives = { version = "1.5.0", default-features = false } +alloy-consensus = { version = "1.4.3", default-features = false } +alloy-genesis = { version = "1.4.3", default-features = false } +alloy-rpc-types-txpool = { version = "1.4.3", default-features = false } +alloy-sol-types = { version = "1.5.0", default-features = false } + +revm-inspector = "15.0.0" +revm-inspectors = "0.34.0" + +# force newer nybbles for const push_unchecked (needed for Rust 1.92+) +nybbles = "0.4.7" -revm-inspector = { version = "10.0.1" } # Core dependencies eyre = "0.6" tracing = "0.1" diff --git a/bin/ev-reth/src/main.rs b/bin/ev-reth/src/main.rs index e2d9ac9..477d6fa 100644 --- a/bin/ev-reth/src/main.rs +++ b/bin/ev-reth/src/main.rs @@ -11,25 +11,53 @@ use evolve_ev_reth::{ rpc::txpool::{EvolveTxpoolApiImpl, EvolveTxpoolApiServer}, }; use reth_ethereum_cli::Cli; -use reth_tracing_otlp::layer as otlp_layer; +use reth_tracing_otlp::{OtlpConfig, OtlpProtocol}; use tracing::info; use tracing_subscriber::{layer::SubscriberExt, util::SubscriberInitExt, EnvFilter}; +use url::Url; use ev_node::{log_startup, EvolveArgs, EvolveChainSpecParser, EvolveNode}; #[global_allocator] static ALLOC: reth_cli_util::allocator::Allocator = reth_cli_util::allocator::new_allocator(); -/// Initialize reth OTLP tracing -fn init_otlp_tracing() { - // Set up tracing subscriber with reth OTLP layer - tracing_subscriber::registry() +/// Builds OTLP config from environment variables. +/// Returns None if OTLP is disabled or endpoint is not configured. +fn otlp_config_from_env() -> Option { + // disabled if OTEL_SDK_DISABLED is set to anything other than "false" + if std::env::var("OTEL_SDK_DISABLED").is_ok_and(|v| v != "false") { + return None; + } + + let endpoint = std::env::var("OTEL_EXPORTER_OTLP_ENDPOINT").ok()?; + let endpoint_url = Url::parse(&endpoint).ok()?; + + let protocol = match std::env::var("OTEL_EXPORTER_OTLP_PROTOCOL") + .unwrap_or_else(|_| "http".to_string()) + .as_str() + { + "grpc" => OtlpProtocol::Grpc, + _ => OtlpProtocol::Http, + }; + + OtlpConfig::new("ev-reth", endpoint_url, protocol, None).ok() +} + +/// Initialize tracing with optional OTLP support. +fn init_tracing() { + let registry = tracing_subscriber::registry() .with(EnvFilter::try_from_default_env().unwrap_or_else(|_| "info".into())) - .with(tracing_subscriber::fmt::layer().with_target(false)) - .with(otlp_layer("ev-reth")) - .init(); + .with(tracing_subscriber::fmt::layer().with_target(false)); + + if let Some(config) = otlp_config_from_env() { + if let Ok(otlp_layer) = reth_tracing_otlp::span_layer(config) { + registry.with(otlp_layer).init(); + info!("OTLP tracing initialized for service: ev-reth"); + return; + } + } - info!("Reth OTLP tracing initialized for service: ev-reth"); + registry.init(); } fn main() { @@ -44,7 +72,7 @@ fn main() { // Initialize OTLP tracing if std::env::var("OTEL_SDK_DISABLED").as_deref() == Ok("false") { - init_otlp_tracing(); + init_tracing(); } if let Err(err) = diff --git a/crates/ev-precompiles/src/mint.rs b/crates/ev-precompiles/src/mint.rs index b25b3a0..1ca9036 100644 --- a/crates/ev-precompiles/src/mint.rs +++ b/crates/ev-precompiles/src/mint.rs @@ -48,26 +48,34 @@ impl MintPrecompile { } fn map_internals_error(err: EvmInternalsError) -> PrecompileError { - PrecompileError::Other(err.to_string()) + PrecompileError::Other(err.to_string().into()) } fn ensure_account_created( internals: &mut EvmInternals<'_>, addr: Address, ) -> Result<(), PrecompileError> { - let mut account = internals + // load immutably first to check state + let account = internals .load_account(addr) .map_err(Self::map_internals_error)?; if account.is_loaded_as_not_existing() { if addr == MINT_PRECOMPILE_ADDR { - // Ensure the mint precompile account is treated as non-empty so state pruning + // ensure the mint precompile account is treated as non-empty so state pruning // does not wipe out its storage between blocks. - account.info.set_code(Self::bytecode().clone()); - account.info.set_nonce(1); + internals + .set_code(addr, Self::bytecode().clone()) + .map_err(Self::map_internals_error)?; + internals + .load_account_mut(addr) + .map_err(Self::map_internals_error)? + .set_nonce(1); } - account.mark_created(); - internals.touch_account(addr); + // touch_account handles marking the account appropriately + internals + .touch_account(addr) + .map_err(Self::map_internals_error)?; } Ok(()) @@ -79,14 +87,11 @@ impl MintPrecompile { amount: U256, ) -> Result<(), PrecompileError> { let mut account = internals - .load_account(addr) + .load_account_mut(addr) .map_err(Self::map_internals_error)?; - let new_balance = account - .info - .balance - .checked_add(amount) - .ok_or_else(|| PrecompileError::Other("balance overflow".to_string()))?; - account.info.set_balance(new_balance); + if !account.incr_balance(amount) { + return Err(PrecompileError::Other("balance overflow".into())); + } Ok(()) } @@ -96,14 +101,11 @@ impl MintPrecompile { amount: U256, ) -> Result<(), PrecompileError> { let mut account = internals - .load_account(addr) + .load_account_mut(addr) .map_err(Self::map_internals_error)?; - let new_balance = account - .info - .balance - .checked_sub(amount) - .ok_or_else(|| PrecompileError::Other("insufficient balance".to_string()))?; - account.info.set_balance(new_balance); + if !account.decr_balance(amount) { + return Err(PrecompileError::Other("insufficient balance".into())); + } Ok(()) } @@ -111,7 +113,7 @@ impl MintPrecompile { if caller == self.admin { Ok(()) } else { - Err(PrecompileError::Other("unauthorized caller".to_string())) + Err(PrecompileError::Other("unauthorized caller".into())) } } @@ -131,7 +133,7 @@ impl MintPrecompile { Ok(()) } else { tracing::warn!(target: "mint_precompile", ?caller, "authorization denied: not admin and not allowlisted"); - Err(PrecompileError::Other("unauthorized caller".to_string())) + Err(PrecompileError::Other("unauthorized caller".into())) } } @@ -167,7 +169,9 @@ impl MintPrecompile { internals .sstore(MINT_PRECOMPILE_ADDR, Self::allowlist_key(addr), value) .map_err(Self::map_internals_error)?; - internals.touch_account(MINT_PRECOMPILE_ADDR); + internals + .touch_account(MINT_PRECOMPILE_ADDR) + .map_err(Self::map_internals_error)?; Ok(()) } @@ -198,7 +202,7 @@ impl Precompile for MintPrecompile { // 1) Decode by ABI — this inspects the 4-byte selector and picks the right variant. let decoded = match INativeToken::INativeTokenCalls::abi_decode(input.data) { Ok(v) => v, - Err(e) => return Err(PrecompileError::Other(e.to_string())), + Err(e) => return Err(PrecompileError::Other(e.to_string().into())), }; let internals = input.internals_mut(); @@ -211,7 +215,9 @@ impl Precompile for MintPrecompile { Self::ensure_account_created(internals, to)?; Self::add_balance(internals, to, amount)?; - internals.touch_account(to); + internals + .touch_account(to) + .map_err(Self::map_internals_error)?; Ok(PrecompileOutput::new(0, Bytes::new())) } @@ -222,7 +228,9 @@ impl Precompile for MintPrecompile { Self::ensure_account_created(internals, from)?; Self::sub_balance(internals, from, amount)?; - internals.touch_account(from); + internals + .touch_account(from) + .map_err(Self::map_internals_error)?; Ok(PrecompileOutput::new(0, Bytes::new())) } @@ -257,7 +265,7 @@ mod tests { use revm::{ context::{ journal::{Journal, JournalInner}, - BlockEnv, + BlockEnv, CfgEnv, TxEnv, }, database::{CacheDB, EmptyDB}, primitives::hardfork::SpecId, @@ -267,16 +275,20 @@ mod tests { const GAS_LIMIT: u64 = 1_000_000; - fn setup_context() -> (TestJournal, BlockEnv) { + fn setup_context() -> (TestJournal, BlockEnv, CfgEnv, TxEnv) { let mut journal = Journal::new_with_inner(CacheDB::default(), JournalInner::new()); journal.inner.set_spec_id(SpecId::PRAGUE); let block_env = BlockEnv::default(); - (journal, block_env) + let cfg_env = CfgEnv::default(); + let tx_env = TxEnv::default(); + (journal, block_env, cfg_env, tx_env) } fn run_call<'a>( journal: &'a mut TestJournal, block_env: &'a BlockEnv, + cfg_env: &'a CfgEnv, + tx_env: &'a TxEnv, precompile: &MintPrecompile, caller: Address, data: &'a [u8], @@ -287,8 +299,9 @@ mod tests { caller, value: U256::ZERO, target_address: MINT_PRECOMPILE_ADDR, + is_static: false, bytecode_address: MINT_PRECOMPILE_ADDR, - internals: EvmInternals::new(journal, block_env), + internals: EvmInternals::new(journal, block_env, cfg_env, tx_env), }; precompile.call(input) @@ -309,14 +322,14 @@ mod tests { let amount = U256::from(42u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let calldata = INativeToken::mintCall { to: recipient, amount, } .abi_encode(); - let output = run_call(&mut journal, &block_env, &precompile, admin, &calldata) + let output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &calldata) .expect("mint call should succeed"); assert_eq!(output.gas_used, 0, "mint precompile should not consume gas"); let balance = account_balance(&journal, recipient).expect("recipient account exists"); @@ -330,10 +343,8 @@ mod tests { account.is_touched(), "recipient account should be marked touched" ); - assert!( - account.is_created(), - "recipient account should be marked created" - ); + // note: is_created() is only true for accounts created via CREATE/CREATE2, + // not for accounts that just received a balance transfer } #[test] @@ -344,13 +355,13 @@ mod tests { let burn_amount = U256::from(60u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let mint_calldata = INativeToken::mintCall { to: holder, amount: mint_amount, } .abi_encode(); - let mint_output = run_call(&mut journal, &block_env, &precompile, admin, &mint_calldata) + let mint_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &mint_calldata) .expect("mint call should succeed"); assert_eq!( mint_output.gas_used, 0, @@ -362,7 +373,7 @@ mod tests { } .abi_encode(); - let burn_output = run_call(&mut journal, &block_env, &precompile, admin, &burn_calldata) + let burn_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &burn_calldata) .expect("burn call should succeed"); assert_eq!( burn_output.gas_used, 0, @@ -384,13 +395,13 @@ mod tests { let burn_amount = U256::from(50u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let mint_calldata = INativeToken::mintCall { to: holder, amount: initial_amount, } .abi_encode(); - run_call(&mut journal, &block_env, &precompile, admin, &mint_calldata) + run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &mint_calldata) .expect("mint call should succeed"); let burn_calldata = INativeToken::burnCall { from: holder, @@ -398,7 +409,7 @@ mod tests { } .abi_encode(); - let result = run_call(&mut journal, &block_env, &precompile, admin, &burn_calldata); + let result = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &burn_calldata); match result { Err(PrecompileError::Other(msg)) => { @@ -425,14 +436,14 @@ mod tests { let amount = U256::from(10u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let calldata = INativeToken::mintCall { to: recipient, amount, } .abi_encode(); - let result = run_call(&mut journal, &block_env, &precompile, caller, &calldata); + let result = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, caller, &calldata); match result { Err(PrecompileError::Other(msg)) => { @@ -458,13 +469,13 @@ mod tests { let amount = U256::from(77u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let add_calldata = INativeToken::addToAllowListCall { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &precompile, admin, &add_calldata) + let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) .expect("admin should be able to add to allowlist"); assert_eq!( add_output.gas_used, 0, @@ -479,6 +490,8 @@ mod tests { let mint_output = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, allowlisted, &mint_calldata, @@ -501,13 +514,13 @@ mod tests { let amount = U256::from(15u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let add_calldata = INativeToken::addToAllowListCall { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &precompile, admin, &add_calldata) + let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) .expect("admin should be able to add allowlist entry"); assert_eq!( add_output.gas_used, 0, @@ -521,6 +534,8 @@ mod tests { let remove_output = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, admin, &remove_calldata, @@ -539,6 +554,8 @@ mod tests { let result = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, allowlisted, &mint_calldata, @@ -567,21 +584,21 @@ mod tests { let burn_amount = U256::from(40u64); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); - // Add operator to allowlist + // add operator to allowlist let add_calldata = INativeToken::addToAllowListCall { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &precompile, admin, &add_calldata) + let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) .expect("admin should add allowlist entry"); assert_eq!( add_output.gas_used, 0, "allowlist add should not consume gas" ); - // Mint tokens as allowlisted operator + // mint tokens as allowlisted operator let mint_calldata = INativeToken::mintCall { to: holder, amount: mint_amount, @@ -590,6 +607,8 @@ mod tests { let mint_output = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, allowlisted, &mint_calldata, @@ -600,7 +619,7 @@ mod tests { "allowlisted mint should not consume gas" ); - // Burn subset as allowlisted operator + // burn subset as allowlisted operator let burn_calldata = INativeToken::burnCall { from: holder, amount: burn_amount, @@ -609,6 +628,8 @@ mod tests { let burn_output = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, allowlisted, &burn_calldata, @@ -634,12 +655,14 @@ mod tests { let target = address!("0x00000000000000000000000000000000000000b7"); let precompile = MintPrecompile::new(admin); - let (mut journal, block_env) = setup_context(); + let (mut journal, block_env, cfg_env, tx_env) = setup_context(); let add_calldata = INativeToken::addToAllowListCall { account: target }.abi_encode(); let result = run_call( &mut journal, &block_env, + &cfg_env, + &tx_env, &precompile, unauthorized, &add_calldata, diff --git a/crates/ev-revm/Cargo.toml b/crates/ev-revm/Cargo.toml index 9ee6715..7ea2f5c 100644 --- a/crates/ev-revm/Cargo.toml +++ b/crates/ev-revm/Cargo.toml @@ -16,6 +16,7 @@ reth-evm.workspace = true reth-primitives.workspace = true reth-evm-ethereum.workspace = true revm-inspector.workspace = true +revm-inspectors.workspace = true revm-context-interface.workspace = true thiserror.workspace = true ev-precompiles = { path = "../ev-precompiles" } diff --git a/crates/ev-revm/src/evm.rs b/crates/ev-revm/src/evm.rs index c9161c8..85e3536 100644 --- a/crates/ev-revm/src/evm.rs +++ b/crates/ev-revm/src/evm.rs @@ -191,6 +191,42 @@ where { type Inspector = INSP; + fn all_inspector( + &self, + ) -> ( + &Self::Context, + &Self::Instructions, + &Self::Precompiles, + &FrameStack, + &Self::Inspector, + ) { + ( + &self.inner.ctx, + &self.inner.instruction, + &self.inner.precompiles, + &self.inner.frame_stack, + &self.inner.inspector, + ) + } + + fn all_mut_inspector( + &mut self, + ) -> ( + &mut Self::Context, + &mut Self::Instructions, + &mut Self::Precompiles, + &mut FrameStack, + &mut Self::Inspector, + ) { + ( + &mut self.inner.ctx, + &mut self.inner.instruction, + &mut self.inner.precompiles, + &mut self.inner.frame_stack, + &mut self.inner.inspector, + ) + } + fn inspector(&mut self) -> &mut Self::Inspector { &mut self.inner.inspector } @@ -237,6 +273,38 @@ where type Precompiles = PRECOMP; type Frame = EthFrame; + fn all( + &self, + ) -> ( + &Self::Context, + &Self::Instructions, + &Self::Precompiles, + &FrameStack, + ) { + ( + &self.inner.ctx, + &self.inner.instruction, + &self.inner.precompiles, + &self.inner.frame_stack, + ) + } + + fn all_mut( + &mut self, + ) -> ( + &mut Self::Context, + &mut Self::Instructions, + &mut Self::Precompiles, + &mut FrameStack, + ) { + ( + &mut self.inner.ctx, + &mut self.inner.instruction, + &mut self.inner.precompiles, + &mut self.inner.frame_stack, + ) + } + fn ctx(&mut self) -> &mut Self::Context { &mut self.inner.ctx } @@ -304,6 +372,7 @@ where type Spec = SpecId; type Precompiles = PRECOMP; type Inspector = INSP; + type BlockEnv = BlockEnv; fn block(&self) -> &BlockEnv { &self.inner.ctx.block diff --git a/crates/ev-revm/src/factory.rs b/crates/ev-revm/src/factory.rs index d4d65e1..aa34dd5 100644 --- a/crates/ev-revm/src/factory.rs +++ b/crates/ev-revm/src/factory.rs @@ -14,7 +14,7 @@ use reth_revm::{ revm::{ context::{ result::{EVMError, HaltReason}, - TxEnv, + BlockEnv, TxEnv, }, context_interface::result::InvalidTransaction, primitives::hardfork::SpecId, @@ -176,6 +176,7 @@ impl EvmFactory for EvEvmFactory { EVMError; type HaltReason = HaltReason; type Spec = SpecId; + type BlockEnv = BlockEnv; type Precompiles = PrecompilesMap; fn create_evm( @@ -314,6 +315,7 @@ mod tests { nonce: 0, code_hash: KECCAK_EMPTY, code: None, + account_id: None, }, ); @@ -396,6 +398,7 @@ mod tests { nonce: 0, code_hash: KECCAK_EMPTY, code: None, + account_id: None, }, ); @@ -408,6 +411,7 @@ mod tests { code: Some(RevmBytecode::new_raw(Bytes::copy_from_slice( ADMIN_PROXY_RUNTIME.as_slice(), ))), + account_id: None, }, ); @@ -510,6 +514,7 @@ mod tests { nonce: 0, code_hash: KECCAK_EMPTY, code: None, + account_id: None, }, ); @@ -522,6 +527,7 @@ mod tests { code: Some(RevmBytecode::new_raw(Bytes::copy_from_slice( ADMIN_PROXY_RUNTIME.as_slice(), ))), + account_id: None, }, ); diff --git a/crates/ev-revm/src/handler.rs b/crates/ev-revm/src/handler.rs index d569869..8fb7ecc 100644 --- a/crates/ev-revm/src/handler.rs +++ b/crates/ev-revm/src/handler.rs @@ -97,7 +97,7 @@ where self.inner.validate_env(evm) } - fn validate_initial_tx_gas(&self, evm: &Self::Evm) -> Result { + fn validate_initial_tx_gas(&self, evm: &mut Self::Evm) -> Result { self.inner.validate_initial_tx_gas(evm) } diff --git a/crates/evolve/src/consensus.rs b/crates/evolve/src/consensus.rs index e74ed4e..a32a397 100644 --- a/crates/evolve/src/consensus.rs +++ b/crates/evolve/src/consensus.rs @@ -1,7 +1,7 @@ //! Evolve custom consensus implementation that allows same timestamps across blocks. use reth_chainspec::ChainSpec; -use reth_consensus::{Consensus, ConsensusError, FullConsensus, HeaderValidator}; +use reth_consensus::{Consensus, ConsensusError, FullConsensus, HeaderValidator, ReceiptRootBloom}; use reth_consensus_common::validation::{ validate_against_parent_eip1559_base_fee, validate_against_parent_gas_limit, validate_against_parent_hash_number, validate_body_against_header, @@ -36,7 +36,7 @@ where Node: FullNodeTypes, Node::Types: NodeTypes, { - type Consensus = Arc>; + type Consensus = Arc>; async fn build_consensus(self, ctx: &BuilderContext) -> eyre::Result { Ok(Arc::new(EvolveConsensus::new(ctx.chain_spec())) as Self::Consensus) @@ -97,18 +97,16 @@ impl HeaderValidator for EvolveConsensus { } impl Consensus for EvolveConsensus { - type Error = ConsensusError; - fn validate_body_against_header( &self, body: &BlockBody, header: &SealedHeader, - ) -> Result<(), Self::Error> { + ) -> Result<(), ConsensusError> { validate_body_against_header(body, header.header()) } - fn validate_block_pre_execution(&self, block: &SealedBlock) -> Result<(), Self::Error> { - // Use inner consensus for pre-execution validation + fn validate_block_pre_execution(&self, block: &SealedBlock) -> Result<(), ConsensusError> { + // use inner consensus for pre-execution validation self.inner.validate_block_pre_execution(block) } } @@ -118,7 +116,8 @@ impl FullConsensus for EvolveConsensus { &self, block: &RecoveredBlock, result: &BlockExecutionResult, + receipt_root_bloom: Option, ) -> Result<(), ConsensusError> { - as FullConsensus>::validate_block_post_execution(&self.inner, block, result) + as FullConsensus>::validate_block_post_execution(&self.inner, block, result, receipt_root_bloom) } } diff --git a/crates/node/src/attributes.rs b/crates/node/src/attributes.rs index ed7b3e6..c8c44e1 100644 --- a/crates/node/src/attributes.rs +++ b/crates/node/src/attributes.rs @@ -1,3 +1,4 @@ +use alloy_consensus::BlockHeader; use alloy_eips::{eip4895::Withdrawals, Decodable2718}; use alloy_primitives::{Address, Bytes, B256}; use alloy_rpc_types::{ @@ -12,6 +13,7 @@ use reth_ethereum::{ }; use reth_payload_builder::EthPayloadBuilderAttributes; use reth_payload_primitives::PayloadAttributesBuilder; +use reth_primitives_traits::SealedHeader; use serde::{Deserialize, Serialize}; use crate::error::EvolveEngineError; @@ -135,7 +137,16 @@ impl From for EvolveEnginePayloadBuilderAttributes impl PayloadAttributesBuilder for LocalPayloadAttributesBuilder { - fn build(&self, timestamp: u64) -> EvolveEnginePayloadAttributes { + fn build(&self, parent: &SealedHeader) -> EvolveEnginePayloadAttributes { + // use current time, ensuring it's at least parent + 1 + let timestamp = std::cmp::max( + parent.timestamp().saturating_add(1), + std::time::SystemTime::now() + .duration_since(std::time::UNIX_EPOCH) + .unwrap() + .as_secs(), + ); + let inner = RpcPayloadAttributes { timestamp, prev_randao: B256::random(), diff --git a/crates/node/src/builder.rs b/crates/node/src/builder.rs index c29c3d6..840c710 100644 --- a/crates/node/src/builder.rs +++ b/crates/node/src/builder.rs @@ -85,7 +85,7 @@ where // Get parent header using the client's HeaderProvider trait let parent_header = self .client - .header(&attributes.parent_hash) + .header(attributes.parent_hash) .map_err(PayloadBuilderError::other)? .ok_or_else(|| { PayloadBuilderError::Internal(RethError::Other("Parent header not found".into())) @@ -123,6 +123,7 @@ where // For post-Shanghai/Cancun chains, an empty withdrawals list is valid // and ensures version-specific fields are initialized. withdrawals: Some(Default::default()), + extra_data: Default::default(), }; let mut builder = self diff --git a/crates/node/src/executor.rs b/crates/node/src/executor.rs index 5c136b9..5356255 100644 --- a/crates/node/src/executor.rs +++ b/crates/node/src/executor.rs @@ -15,7 +15,6 @@ use reth_ethereum::{ }, }; use reth_ethereum_forks::Hardforks; -use reth_node_builder::PayloadBuilderConfig; use tracing::info; use crate::{config::EvolvePayloadBuilderConfig, EvolveNode}; @@ -30,8 +29,7 @@ where ChainSpec: Hardforks + EthExecutorSpec + EthereumHardforks, { let chain_spec = ctx.chain_spec(); - let base_config = EthEvmConfig::new(chain_spec.clone()) - .with_extra_data(ctx.payload_builder_config().extra_data_bytes()); + let base_config = EthEvmConfig::new(chain_spec.clone()); let evolve_config = EvolvePayloadBuilderConfig::from_chain_spec(chain_spec.as_ref())?; evolve_config.validate()?; diff --git a/crates/node/src/validator.rs b/crates/node/src/validator.rs index 5b1e285..e1edd0d 100644 --- a/crates/node/src/validator.rs +++ b/crates/node/src/validator.rs @@ -16,7 +16,7 @@ use reth_ethereum::{ }, }; use reth_ethereum_payload_builder::EthereumExecutionPayloadValidator; -use reth_primitives_traits::{Block as _, RecoveredBlock}; +use reth_primitives_traits::{Block as _, RecoveredBlock, SealedBlock}; use tracing::info; use crate::{attributes::EvolveEnginePayloadAttributes, node::EvolveEngineTypes}; @@ -45,6 +45,15 @@ impl EvolveEngineValidator { impl PayloadValidator for EvolveEngineValidator { type Block = reth_ethereum::Block; + fn convert_payload_to_block( + &self, + payload: ExecutionData, + ) -> Result, NewPayloadError> { + self.inner + .ensure_well_formed_payload(payload) + .map_err(NewPayloadError::other) + } + fn ensure_well_formed_payload( &self, payload: ExecutionData, diff --git a/crates/tests/src/e2e_tests.rs b/crates/tests/src/e2e_tests.rs index 9afd697..4831cc4 100644 --- a/crates/tests/src/e2e_tests.rs +++ b/crates/tests/src/e2e_tests.rs @@ -271,7 +271,7 @@ async fn test_e2e_base_fee_sink_receives_base_fee() -> Result<()> { setup.apply::(&mut env).await?; let initial_balance = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, fee_sink, Some(BlockId::latest()), @@ -357,7 +357,7 @@ async fn test_e2e_base_fee_sink_receives_base_fee() -> Result<()> { let expected_total_credit = expected_base_fee + expected_tip; let final_balance: U256 = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, fee_sink, Some(BlockId::latest()), @@ -437,7 +437,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { // Check initial balance of new wallet (should be zero since not in genesis). let initial_balance = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, new_wallet_address, Some(BlockId::latest()), @@ -500,6 +500,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, *allowlist_envelope.tx_hash() ) @@ -511,7 +512,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { ); let allowlist_slot = operator_address.into_word(); let allowlist_storage = - EthApiClient::::storage_at( + EthApiClient::::storage_at( &env.node_clients[0].rpc, MINT_PRECOMPILE_ADDR, allowlist_slot.into(), @@ -563,6 +564,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, *mint_envelope.tx_hash() ) @@ -579,7 +581,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { ); let balance_after_mint = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, new_wallet_address, Some(BlockId::latest()), @@ -634,6 +636,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, *burn_envelope.tx_hash() ) @@ -646,7 +649,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { ); if !burn_receipt.status() { let revert_preview = - EthApiClient::::call( + EthApiClient::::call( &env.node_clients[0].rpc, burn_tx.clone(), Some(BlockId::latest()), @@ -660,7 +663,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { let expected_after_burn = mint_amount - burn_amount; let balance_after_burn = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, new_wallet_address, Some(BlockId::latest()), @@ -713,6 +716,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, *remove_envelope.tx_hash() ) @@ -766,6 +770,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, *unauthorized_envelope.tx_hash() ) @@ -778,7 +783,7 @@ async fn test_e2e_mint_and_burn_to_new_wallet() -> Result<()> { // Ensure balance unchanged after failed mint. let final_balance = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, new_wallet_address, Some(BlockId::latest()), @@ -852,7 +857,7 @@ async fn test_e2e_mint_precompile_via_contract() -> Result<()> { setup.apply::(&mut env).await?; let recipient_initial_balance = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, recipient_address, Some(BlockId::latest()), @@ -957,6 +962,7 @@ async fn test_e2e_mint_precompile_via_contract() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt(&env.node_clients[0].rpc, mint_tx_hash) .await? .expect("mint transaction receipt available"); @@ -971,21 +977,21 @@ async fn test_e2e_mint_precompile_via_contract() -> Result<()> { ); let balance_after_mint: U256 = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, recipient_address, Some(BlockId::latest()), ) .await?; let balance_at_block = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, recipient_address, Some(BlockId::Number(BlockNumberOrTag::Number(parent_number))), ) .await?; let contract_balance_after_mint = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, contract_address, Some(BlockId::latest()), @@ -1043,7 +1049,7 @@ async fn test_e2e_mint_precompile_via_contract() -> Result<()> { .await?; let final_balance = - EthApiClient::::balance( + EthApiClient::::balance( &env.node_clients[0].rpc, recipient_address, Some(BlockId::latest()), @@ -1135,7 +1141,7 @@ async fn test_e2e_deploy_allowlist_blocks_unauthorized_deploys() -> Result<()> { let denied_address = contract_address_from_nonce(denied_deployer.address(), 0); let denied_code = - EthApiClient::::get_code( + EthApiClient::::get_code( &env.node_clients[0].rpc, denied_address, Some(BlockId::latest()), @@ -1192,7 +1198,7 @@ async fn test_e2e_deploy_allowlist_blocks_unauthorized_deploys() -> Result<()> { let allowed_address = contract_address_from_nonce(allowed_deployer.address(), 0); let allowed_code = - EthApiClient::::get_code( + EthApiClient::::get_code( &env.node_clients[0].rpc, allowed_address, Some(BlockId::latest()), diff --git a/crates/tests/src/test_evolve_engine_api.rs b/crates/tests/src/test_evolve_engine_api.rs index ea5f572..d5f3829 100644 --- a/crates/tests/src/test_evolve_engine_api.rs +++ b/crates/tests/src/test_evolve_engine_api.rs @@ -204,6 +204,7 @@ async fn test_e2e_engine_api_fork_choice_with_transactions() -> Result<()> { Block, Receipt, Header, + Bytes, >::transaction_receipt( &env.node_clients[0].rpc, tx_hash ) From 7f81d432751f872927f8115b5bcbb34aa004a319 Mon Sep 17 00:00:00 2001 From: chatton Date: Mon, 26 Jan 2026 09:28:38 +0000 Subject: [PATCH 2/6] chore: address PR feedback --- Cargo.toml | 2 +- bin/ev-reth/src/main.rs | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 679c737..7917825 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -20,7 +20,7 @@ repository = "https://github.com/evstack/ev-reth" authors = ["Evolve Stack Contributors"] [workspace.dependencies] -# Reth dependencies - Using v1.8.4 stable +# Reth dependencies - Using v1.10.1 stable reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } reth-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } diff --git a/bin/ev-reth/src/main.rs b/bin/ev-reth/src/main.rs index 477d6fa..da82b83 100644 --- a/bin/ev-reth/src/main.rs +++ b/bin/ev-reth/src/main.rs @@ -24,8 +24,8 @@ static ALLOC: reth_cli_util::allocator::Allocator = reth_cli_util::allocator::ne /// Builds OTLP config from environment variables. /// Returns None if OTLP is disabled or endpoint is not configured. fn otlp_config_from_env() -> Option { - // disabled if OTEL_SDK_DISABLED is set to anything other than "false" - if std::env::var("OTEL_SDK_DISABLED").is_ok_and(|v| v != "false") { + // disabled if OTEL_SDK_DISABLED is set to "true" (case-insensitive) per OpenTelemetry spec + if std::env::var("OTEL_SDK_DISABLED").is_ok_and(|v| v.eq_ignore_ascii_case("true")) { return None; } @@ -70,10 +70,8 @@ fn main() { std::env::set_var("RUST_BACKTRACE", "1"); } - // Initialize OTLP tracing - if std::env::var("OTEL_SDK_DISABLED").as_deref() == Ok("false") { - init_tracing(); - } + // initialize tracing (with optional OTLP support based on env vars) + init_tracing(); if let Err(err) = Cli::::parse().run(|builder, _evolve_args| async move { From 19f05ea43c2be55213a54dde864de056aa5eb848 Mon Sep 17 00:00:00 2001 From: chatton Date: Mon, 26 Jan 2026 09:43:10 +0000 Subject: [PATCH 3/6] chore: fix linter --- Makefile | 8 +-- crates/ev-precompiles/src/mint.rs | 104 +++++++++++++++++++++++++----- crates/ev-revm/src/handler.rs | 5 +- 3 files changed, 96 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index d25b47e..d822579 100644 --- a/Makefile +++ b/Makefile @@ -55,13 +55,13 @@ run: build-dev run-dev: build-dev RUST_LOG=debug ./$(TARGET_DIR)/debug/$(BINARY_NAME) node -## fmt: Format code using rustfmt +## fmt: Format code using rustfmt (nightly) fmt: - $(CARGO) fmt --all + $(CARGO) +nightly fmt --all -## fmt-check: Check if code is formatted correctly +## fmt-check: Check if code is formatted correctly (nightly) fmt-check: - $(CARGO) fmt --all -- --check + $(CARGO) +nightly fmt --all --check ## lint: Run clippy linter lint: diff --git a/crates/ev-precompiles/src/mint.rs b/crates/ev-precompiles/src/mint.rs index 1ca9036..6966597 100644 --- a/crates/ev-precompiles/src/mint.rs +++ b/crates/ev-precompiles/src/mint.rs @@ -329,8 +329,16 @@ mod tests { } .abi_encode(); - let output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &calldata) - .expect("mint call should succeed"); + let output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &calldata, + ) + .expect("mint call should succeed"); assert_eq!(output.gas_used, 0, "mint precompile should not consume gas"); let balance = account_balance(&journal, recipient).expect("recipient account exists"); assert_eq!( @@ -361,8 +369,16 @@ mod tests { amount: mint_amount, } .abi_encode(); - let mint_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &mint_calldata) - .expect("mint call should succeed"); + let mint_output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &mint_calldata, + ) + .expect("mint call should succeed"); assert_eq!( mint_output.gas_used, 0, "mint precompile should not consume gas" @@ -373,8 +389,16 @@ mod tests { } .abi_encode(); - let burn_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &burn_calldata) - .expect("burn call should succeed"); + let burn_output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &burn_calldata, + ) + .expect("burn call should succeed"); assert_eq!( burn_output.gas_used, 0, "burn precompile should not consume gas" @@ -401,15 +425,31 @@ mod tests { amount: initial_amount, } .abi_encode(); - run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &mint_calldata) - .expect("mint call should succeed"); + run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &mint_calldata, + ) + .expect("mint call should succeed"); let burn_calldata = INativeToken::burnCall { from: holder, amount: burn_amount, } .abi_encode(); - let result = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &burn_calldata); + let result = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &burn_calldata, + ); match result { Err(PrecompileError::Other(msg)) => { @@ -443,7 +483,15 @@ mod tests { } .abi_encode(); - let result = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, caller, &calldata); + let result = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + caller, + &calldata, + ); match result { Err(PrecompileError::Other(msg)) => { @@ -475,8 +523,16 @@ mod tests { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) - .expect("admin should be able to add to allowlist"); + let add_output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &add_calldata, + ) + .expect("admin should be able to add to allowlist"); assert_eq!( add_output.gas_used, 0, "allowlist add should not consume gas" @@ -520,8 +576,16 @@ mod tests { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) - .expect("admin should be able to add allowlist entry"); + let add_output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &add_calldata, + ) + .expect("admin should be able to add allowlist entry"); assert_eq!( add_output.gas_used, 0, "allowlist add should not consume gas" @@ -591,8 +655,16 @@ mod tests { account: allowlisted, } .abi_encode(); - let add_output = run_call(&mut journal, &block_env, &cfg_env, &tx_env, &precompile, admin, &add_calldata) - .expect("admin should add allowlist entry"); + let add_output = run_call( + &mut journal, + &block_env, + &cfg_env, + &tx_env, + &precompile, + admin, + &add_calldata, + ) + .expect("admin should add allowlist entry"); assert_eq!( add_output.gas_used, 0, "allowlist add should not consume gas" diff --git a/crates/ev-revm/src/handler.rs b/crates/ev-revm/src/handler.rs index 8fb7ecc..17392f2 100644 --- a/crates/ev-revm/src/handler.rs +++ b/crates/ev-revm/src/handler.rs @@ -97,7 +97,10 @@ where self.inner.validate_env(evm) } - fn validate_initial_tx_gas(&self, evm: &mut Self::Evm) -> Result { + fn validate_initial_tx_gas( + &self, + evm: &mut Self::Evm, + ) -> Result { self.inner.validate_initial_tx_gas(evm) } From 78f6a88b99ecf898dcfe7549379bf8285ecb60c9 Mon Sep 17 00:00:00 2001 From: chatton Date: Tue, 17 Feb 2026 11:41:09 +0000 Subject: [PATCH 4/6] deps: bump to reth v1.11.0 --- Cargo.lock | 1204 +++++++++++++----------------- Cargo.toml | 158 ++-- crates/node/src/evm_executor.rs | 58 +- crates/node/src/node.rs | 4 +- crates/node/src/payload_types.rs | 43 +- crates/node/src/txpool.rs | 39 +- 6 files changed, 710 insertions(+), 796 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 11366f0..27172bd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -116,7 +116,7 @@ dependencies = [ "num_enum", "proptest", "serde", - "strum 0.27.2", + "strum", ] [[package]] @@ -199,9 +199,9 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14ff5ee5f27aa305bda825c735f686ad71bb65508158f059f513895abe69b8c3" +checksum = "e6ab1b2f1b48a7e6b3597cb2afae04f93879fb69d71e39736b5663d7366b23f2" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -292,8 +292,8 @@ dependencies = [ "c-kzg", "derive_more", "either", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_ssz 0.9.1", + "ethereum_ssz_derive 0.9.1", "serde", "serde_with", "sha2", @@ -302,9 +302,9 @@ dependencies = [ [[package]] name = "alloy-evm" -version = "0.26.4" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b99ba7b74a87176f31ee1cd26768f7155b0eeff61ed925f59b13085ffe5f891" +checksum = "d2ccfe6d724ceabd5518350cfb34f17dd3a6c3cc33579eee94d98101d3a511ff" dependencies = [ "alloy-consensus", "alloy-eips", @@ -352,9 +352,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8708475665cc00e081c085886e68eada2f64cfa08fc668213a9231655093d4de" +checksum = "1e414aa37b335ad2acb78a95814c59d137d53139b412f87aed1e10e2d862cd49" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -418,9 +418,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b88cf92ed20685979ed1d8472422f0c6c2d010cec77caf63aaa7669cc1a7bc2" +checksum = "66b1483f8c2562bf35f0270b697d5b5fe8170464e935bd855a4c5eaf6f89b354" dependencies = [ "alloy-rlp", "arbitrary", @@ -429,7 +429,7 @@ dependencies = [ "const-hex", "derive_more", "foldhash 0.2.0", - "getrandom 0.3.4", + "getrandom 0.4.1", "hashbrown 0.16.1", "indexmap 2.13.0", "itoa", @@ -437,7 +437,7 @@ dependencies = [ "keccak-asm", "paste", "proptest", - "proptest-derive 0.6.0", + "proptest-derive", "rand 0.9.2", "rapidhash", "ruint", @@ -473,7 +473,7 @@ dependencies = [ "async-stream", "async-trait", "auto_impl", - "dashmap 6.1.0", + "dashmap", "either", "futures", "futures-utils-wasm", @@ -618,8 +618,8 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", "derive_more", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_ssz 0.9.1", + "ethereum_ssz_derive 0.9.1", "serde", "serde_json", "serde_with", @@ -653,12 +653,12 @@ dependencies = [ "alloy-serde", "arbitrary", "derive_more", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_ssz 0.9.1", + "ethereum_ssz_derive 0.9.1", "jsonwebtoken", "rand 0.8.5", "serde", - "strum 0.27.2", + "strum", ] [[package]] @@ -772,9 +772,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5fa1ca7e617c634d2bd9fa71f9ec8e47c07106e248b9fcbd3eaddc13cabd625" +checksum = "2c4b64c8146291f750c3f391dff2dd40cf896f7e2b253417a31e342aa7265baa" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", @@ -786,9 +786,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27c00c0c3a75150a9dc7c8c679ca21853a137888b4e1c5569f92d7e2b15b5102" +checksum = "d9df903674682f9bae8d43fdea535ab48df2d6a8cb5104ca29c58ada22ef67b3" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -805,9 +805,9 @@ dependencies = [ [[package]] name = "alloy-sol-macro-input" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297db260eb4d67c105f68d6ba11b8874eec681caec5505eab8fbebee97f790bc" +checksum = "737b8a959f527a86e07c44656db237024a32ae9b97d449f788262a547e8aa136" dependencies = [ "alloy-json-abi", "const-hex", @@ -823,9 +823,9 @@ dependencies = [ [[package]] name = "alloy-sol-type-parser" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b91b13181d3bcd23680fd29d7bc861d1f33fbe90fdd0af67162434aeba902d" +checksum = "b28e6e86c6d2db52654b65a5a76b4f57eae5a32a7f0aa2222d1dbdb74e2cb8e0" dependencies = [ "serde", "winnow", @@ -833,9 +833,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc442cc2a75207b708d481314098a0f8b6f7b58e3148dd8d8cc7407b0d6f9385" +checksum = "fdf7effe4ab0a4f52c865959f790036e61a7983f68b13b75d7fbcedf20b753ce" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -914,7 +914,7 @@ dependencies = [ "http 1.4.0", "serde_json", "tokio", - "tokio-tungstenite", + "tokio-tungstenite 0.26.2", "tracing", "ws_stream_wasm", ] @@ -933,7 +933,7 @@ dependencies = [ "derive_more", "nybbles", "proptest", - "proptest-derive 0.7.0", + "proptest-derive", "serde", "smallvec", "thiserror 2.0.18", @@ -1511,24 +1511,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bindgen" -version = "0.71.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f58bf3d7db68cfbac37cfc485a8d711e87e064c3d0fe0435b92f7a407f9d6b3" -dependencies = [ - "bitflags 2.10.0", - "cexpr", - "clang-sys", - "itertools 0.13.0", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", - "syn 2.0.114", -] - [[package]] name = "bindgen" version = "0.72.1" @@ -1712,12 +1694,6 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" -[[package]] -name = "bytecount" -version = "0.6.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "175812e0be2bccb6abe50bb8d566126198344f707e304f45c648fd8f2cc0365e" - [[package]] name = "bytemuck" version = "1.25.0" @@ -1764,15 +1740,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "cargo-platform" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" -dependencies = [ - "serde", -] - [[package]] name = "cargo-platform" version = "0.3.2" @@ -1783,19 +1750,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "cargo_metadata" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" -dependencies = [ - "camino", - "cargo-platform 0.1.9", - "semver 1.0.27", - "serde", - "serde_json", -] - [[package]] name = "cargo_metadata" version = "0.23.1" @@ -1803,19 +1757,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef987d17b0a113becdd19d3d0022d04d7ef41f9efe4f3fb63ac44ba61df3ade9" dependencies = [ "camino", - "cargo-platform 0.3.2", + "cargo-platform", "semver 1.0.27", "serde", "serde_json", "thiserror 2.0.18", ] -[[package]] -name = "cassowary" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53" - [[package]] name = "castaway" version = "0.2.4" @@ -2012,16 +1960,16 @@ version = "7.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "958c5d6ecf1f214b4c2bbbbf6ab9523a864bd136dcf71a7e8904799acfe1ad47" dependencies = [ - "crossterm 0.29.0", + "crossterm", "unicode-segmentation", - "unicode-width 0.2.0", + "unicode-width", ] [[package]] name = "compact_str" -version = "0.8.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32" +checksum = "3fdb1325a1cece981e8a296ab8f0f9b63ae357bd0784a9faaf548cc7b480707a" dependencies = [ "castaway", "cfg-if", @@ -2221,22 +2169,6 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" -[[package]] -name = "crossterm" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" -dependencies = [ - "bitflags 2.10.0", - "crossterm_winapi", - "mio", - "parking_lot", - "rustix 0.38.44", - "signal-hook", - "signal-hook-mio", - "winapi", -] - [[package]] name = "crossterm" version = "0.29.0" @@ -2245,9 +2177,13 @@ checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ "bitflags 2.10.0", "crossterm_winapi", + "derive_more", "document-features", + "mio", "parking_lot", - "rustix 1.1.3", + "rustix", + "signal-hook", + "signal-hook-mio", "winapi", ] @@ -2430,31 +2366,20 @@ dependencies = [ "syn 2.0.114", ] -[[package]] -name = "dashmap" -version = "5.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - [[package]] name = "dashmap" version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ + "arbitrary", "cfg-if", "crossbeam-utils", "hashbrown 0.14.5", "lock_api", "once_cell", "parking_lot_core", + "serde", ] [[package]] @@ -2905,15 +2830,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[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_hashing" version = "0.7.0" @@ -2953,6 +2869,21 @@ dependencies = [ "typenum", ] +[[package]] +name = "ethereum_ssz" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2128a84f7a3850d54ee343334e3392cca61f9f6aa9441eec481b9394b43c238b" +dependencies = [ + "alloy-primitives", + "ethereum_serde_utils", + "itertools 0.14.0", + "serde", + "serde_derive", + "smallvec", + "typenum", +] + [[package]] name = "ethereum_ssz_derive" version = "0.9.1" @@ -2965,6 +2896,18 @@ dependencies = [ "syn 2.0.114", ] +[[package]] +name = "ethereum_ssz_derive" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd596f91cff004fc8d02be44c21c0f9b93140a04b66027ae052f5f8e05b48eba" +dependencies = [ + "darling 0.23.0", + "proc-macro2", + "quote", + "syn 2.0.114", +] + [[package]] name = "ev-common" version = "0.1.0" @@ -3316,6 +3259,17 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" +[[package]] +name = "fixed-cache" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c41c7aa69c00ebccf06c3fa7ffe2a6cf26a58b5fe4deabfe646285ff48136a8f" +dependencies = [ + "equivalent", + "rapidhash", + "typeid", +] + [[package]] name = "fixed-hash" version = "0.8.0" @@ -3533,7 +3487,7 @@ dependencies = [ "log", "rustversion", "windows-link", - "windows-result 0.4.1", + "windows-result", ] [[package]] @@ -4096,7 +4050,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.62.2", + "windows-core", ] [[package]] @@ -4679,6 +4633,17 @@ dependencies = [ "signature", ] +[[package]] +name = "kasuari" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fe90c1150662e858c7d5f945089b7517b0a80d8bf7ba4b1b5ffc984e7230a5b" +dependencies = [ + "hashbrown 0.16.1", + "portable-atomic", + "thiserror 2.0.18", +] + [[package]] name = "keccak" version = "0.1.5" @@ -4789,7 +4754,7 @@ version = "0.14.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a54ad7278b8bc5301d5ffd2a94251c004feb971feba96c971ea4063645990757" dependencies = [ - "bindgen 0.72.1", + "bindgen", "errno", "libc", ] @@ -4817,6 +4782,15 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "line-clipping" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f4de44e98ddbf09375cbf4d17714d18f39195f4f4894e8524501726fd9a8a4a" +dependencies = [ + "bitflags 2.10.0", +] + [[package]] name = "linked-hash-map" version = "0.5.6" @@ -4833,12 +4807,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "linux-raw-sys" -version = "0.4.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" - [[package]] name = "linux-raw-sys" version = "0.11.0" @@ -4931,9 +4899,9 @@ dependencies = [ [[package]] name = "lz4_flex" -version = "0.11.5" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08ab2867e3eeeca90e844d1940eab391c9dc5228783db2ed999acbc0a9ed375a" +checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" [[package]] name = "mach2" @@ -5042,9 +5010,9 @@ dependencies = [ "mach2 0.6.0", "metrics", "once_cell", - "procfs 0.18.0", + "procfs", "rlimit", - "windows 0.62.2", + "windows", ] [[package]] @@ -5079,21 +5047,6 @@ 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" @@ -5124,9 +5077,9 @@ dependencies = [ [[package]] name = "modular-bitfield" -version = "0.11.2" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +checksum = "2956e537fc68236d2aa048f55704f231cc93f1c4de42fe1ecb5bd7938061fc4a" dependencies = [ "modular-bitfield-impl", "static_assertions", @@ -5134,13 +5087,13 @@ dependencies = [ [[package]] name = "modular-bitfield-impl" -version = "0.11.2" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +checksum = "59b43b4fd69e3437618106f7754f34021b831a514f9e1a98ae863cabcd8d8dad" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.114", ] [[package]] @@ -5415,6 +5368,25 @@ dependencies = [ "smallvec", ] +[[package]] +name = "objc2-core-foundation" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c10c2894a6fed806ade6027bcd50662746363a9589d3ec9d9bef30a4e4bc166" +dependencies = [ + "bitflags 2.10.0", +] + +[[package]] +name = "objc2-io-kit" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71c1c64d6120e51cd86033f67176b1cb66780c2efe34dec55176f77befd93c0a" +dependencies = [ + "libc", + "objc2-core-foundation", +] + [[package]] name = "once_cell" version = "1.21.3" @@ -5527,8 +5499,8 @@ dependencies = [ "alloy-rpc-types-engine", "alloy-serde", "derive_more", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_ssz 0.9.1", + "ethereum_ssz_derive 0.9.1", "op-alloy-consensus", "serde", "sha2", @@ -6004,7 +5976,7 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.23.10+spec-1.0.0", + "toml_edit", ] [[package]] @@ -6038,40 +6010,17 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "procfs" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc5b72d8145275d844d4b5f6d4e1eef00c8cd889edb6035c21675d1bb1f45c9f" -dependencies = [ - "bitflags 2.10.0", - "chrono", - "flate2", - "hex", - "procfs-core 0.17.0", - "rustix 0.38.44", -] - [[package]] name = "procfs" version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25485360a54d6861439d60facef26de713b1e126bf015ec8f98239467a2b82f7" -dependencies = [ - "bitflags 2.10.0", - "procfs-core 0.18.0", - "rustix 1.1.3", -] - -[[package]] -name = "procfs-core" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239df02d8349b06fc07398a3a1697b06418223b1c7725085e801e7c0fc6a12ec" dependencies = [ "bitflags 2.10.0", "chrono", - "hex", + "flate2", + "procfs-core", + "rustix", ] [[package]] @@ -6081,6 +6030,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6401bf7b6af22f78b563665d15a22e9aef27775b79b149a66ca022468a4e405" dependencies = [ "bitflags 2.10.0", + "chrono", "hex", ] @@ -6113,17 +6063,6 @@ dependencies = [ "proptest", ] -[[package]] -name = "proptest-derive" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "095a99f75c69734802359b682be8daaf8980296731f6470434ea2c652af1dd30" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.114", -] - [[package]] name = "proptest-derive" version = "0.7.0" @@ -6158,17 +6097,6 @@ dependencies = [ "syn 2.0.114", ] -[[package]] -name = "pulldown-cmark" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" -dependencies = [ - "bitflags 2.10.0", - "memchr", - "unicase", -] - [[package]] name = "quanta" version = "0.12.6" @@ -6367,23 +6295,65 @@ dependencies = [ [[package]] name = "ratatui" -version = "0.29.0" +version = "0.30.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b" +checksum = "d1ce67fb8ba4446454d1c8dbaeda0557ff5e94d39d5e5ed7f10a65eb4c8266bc" +dependencies = [ + "instability", + "ratatui-core", + "ratatui-crossterm", + "ratatui-widgets", +] + +[[package]] +name = "ratatui-core" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ef8dea09a92caaf73bff7adb70b76162e5937524058a7e5bff37869cbbec293" dependencies = [ "bitflags 2.10.0", - "cassowary", "compact_str", - "crossterm 0.28.1", + "hashbrown 0.16.1", "indoc", - "instability", - "itertools 0.13.0", - "lru 0.12.5", - "paste", - "strum 0.26.3", + "itertools 0.14.0", + "kasuari", + "lru 0.16.3", + "strum", + "thiserror 2.0.18", "unicode-segmentation", "unicode-truncate", - "unicode-width 0.2.0", + "unicode-width", +] + +[[package]] +name = "ratatui-crossterm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "577c9b9f652b4c121fb25c6a391dd06406d3b092ba68827e6d2f09550edc54b3" +dependencies = [ + "cfg-if", + "crossterm", + "instability", + "ratatui-core", +] + +[[package]] +name = "ratatui-widgets" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7dbfa023cd4e604c2553483820c5fe8aa9d71a42eea5aa77c6e7f35756612db" +dependencies = [ + "bitflags 2.10.0", + "hashbrown 0.16.1", + "indoc", + "instability", + "itertools 0.14.0", + "line-clipping", + "ratatui-core", + "strum", + "time", + "unicode-segmentation", + "unicode-width", ] [[package]] @@ -6601,8 +6571,8 @@ checksum = "1e061d1b48cb8d38042de4ae0a7a6401009d6143dc80d2e2d6f31f0bdd6470c7" [[package]] name = "reth-basic-payload-builder" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6625,8 +6595,8 @@ dependencies = [ [[package]] name = "reth-chain-state" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6638,6 +6608,7 @@ dependencies = [ "parking_lot", "pin-project", "rand 0.9.2", + "rayon", "reth-chainspec", "reth-errors", "reth-ethereum-primitives", @@ -6656,8 +6627,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6676,8 +6647,8 @@ dependencies = [ [[package]] name = "reth-cli" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-genesis", "clap", @@ -6690,8 +6661,8 @@ dependencies = [ [[package]] name = "reth-cli-commands" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6702,7 +6673,7 @@ dependencies = [ "backon", "clap", "comfy-table", - "crossterm 0.28.1", + "crossterm", "eyre", "fdlimit", "futures", @@ -6711,6 +6682,7 @@ dependencies = [ "itertools 0.14.0", "lz4", "metrics", + "parking_lot", "proptest", "proptest-arbitrary-interop", "ratatui", @@ -6756,6 +6728,7 @@ dependencies = [ "reth-stages-types", "reth-static-file", "reth-static-file-types", + "reth-storage-api", "reth-tasks", "reth-trie", "reth-trie-common", @@ -6774,8 +6747,8 @@ dependencies = [ [[package]] name = "reth-cli-runner" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "reth-tasks", "tokio", @@ -6784,8 +6757,8 @@ dependencies = [ [[package]] name = "reth-cli-util" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6804,8 +6777,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6824,8 +6797,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "proc-macro2", "quote", @@ -6834,8 +6807,8 @@ dependencies = [ [[package]] name = "reth-config" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "eyre", "humantime-serde", @@ -6850,8 +6823,8 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6863,8 +6836,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6875,8 +6848,8 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6901,8 +6874,8 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "derive_more", @@ -6919,31 +6892,33 @@ dependencies = [ "reth-storage-errors", "reth-tracing", "rustc-hash", - "strum 0.27.2", + "strum", "sysinfo", "tempfile", "thiserror 2.0.18", + "tracing", ] [[package]] name = "reth-db-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-genesis", "alloy-primitives", "arbitrary", + "arrayvec", "bytes", "derive_more", "metrics", "modular-bitfield", + "op-alloy-consensus", "parity-scale-codec", "proptest", "reth-codecs", "reth-db-models", "reth-ethereum-primitives", - "reth-optimism-primitives", "reth-primitives-traits", "reth-prune-types", "reth-stages-types", @@ -6955,8 +6930,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6985,8 +6960,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7000,8 +6975,8 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7025,8 +7000,8 @@ dependencies = [ [[package]] name = "reth-discv5" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7049,15 +7024,15 @@ dependencies = [ [[package]] name = "reth-dns-discovery" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", + "dashmap", "data-encoding", "enr", "hickory-resolver", "linked_hash_set", - "parking_lot", "reth-ethereum-forks", "reth-network-peers", "reth-tokio-util", @@ -7073,8 +7048,8 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7108,8 +7083,8 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7166,8 +7141,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "aes", "alloy-primitives", @@ -7194,8 +7169,8 @@ dependencies = [ [[package]] name = "reth-engine-local" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7217,8 +7192,8 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7242,8 +7217,8 @@ dependencies = [ [[package]] name = "reth-engine-service" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "futures", "pin-project", @@ -7251,7 +7226,6 @@ dependencies = [ "reth-consensus", "reth-engine-primitives", "reth-engine-tree", - "reth-ethereum-primitives", "reth-evm", "reth-network-p2p", "reth-node-types", @@ -7265,8 +7239,8 @@ dependencies = [ [[package]] name = "reth-engine-tree" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eip7928", @@ -7276,11 +7250,10 @@ dependencies = [ "alloy-rlp", "alloy-rpc-types-engine", "crossbeam-channel", - "dashmap 6.1.0", "derive_more", + "fixed-cache", "futures", "metrics", - "mini-moka", "moka", "parking_lot", "rayon", @@ -7312,7 +7285,6 @@ dependencies = [ "reth-trie-db", "reth-trie-parallel", "reth-trie-sparse", - "reth-trie-sparse-parallel", "revm", "revm-primitives", "schnellru", @@ -7324,8 +7296,8 @@ dependencies = [ [[package]] name = "reth-engine-util" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -7352,23 +7324,23 @@ dependencies = [ [[package]] name = "reth-era" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "ethereum_ssz", - "ethereum_ssz_derive", + "ethereum_ssz 0.10.1", + "ethereum_ssz_derive 0.10.1", "snap", "thiserror 2.0.18", ] [[package]] name = "reth-era-downloader" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "bytes", @@ -7383,8 +7355,8 @@ dependencies = [ [[package]] name = "reth-era-utils" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7405,8 +7377,8 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -7416,8 +7388,8 @@ dependencies = [ [[package]] name = "reth-eth-wire" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-chains", "alloy-primitives", @@ -7445,8 +7417,8 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-chains", "alloy-consensus", @@ -7469,8 +7441,8 @@ dependencies = [ [[package]] name = "reth-ethereum" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-rpc-types-engine", "alloy-rpc-types-eth", @@ -7509,8 +7481,8 @@ dependencies = [ [[package]] name = "reth-ethereum-cli" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "clap", "eyre", @@ -7525,14 +7497,15 @@ dependencies = [ "reth-node-ethereum", "reth-node-metrics", "reth-rpc-server-types", + "reth-tasks", "reth-tracing", "tracing", ] [[package]] name = "reth-ethereum-consensus" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7547,8 +7520,8 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7565,8 +7538,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -7579,8 +7552,8 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7608,8 +7581,8 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7628,8 +7601,8 @@ dependencies = [ [[package]] name = "reth-etl" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "rayon", "reth-db-api", @@ -7638,8 +7611,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7662,8 +7635,8 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7671,6 +7644,7 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", "derive_more", + "parking_lot", "reth-chainspec", "reth-ethereum-forks", "reth-ethereum-primitives", @@ -7683,8 +7657,8 @@ dependencies = [ [[package]] name = "reth-execution-errors" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-evm", "alloy-primitives", @@ -7696,8 +7670,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7714,8 +7688,8 @@ dependencies = [ [[package]] name = "reth-exex" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7752,8 +7726,8 @@ dependencies = [ [[package]] name = "reth-exex-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7766,8 +7740,8 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "serde", "serde_json", @@ -7776,8 +7750,8 @@ dependencies = [ [[package]] name = "reth-invalid-block-hooks" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7804,8 +7778,8 @@ dependencies = [ [[package]] name = "reth-ipc" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "bytes", "futures", @@ -7824,12 +7798,12 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "bitflags 2.10.0", "byteorder", - "dashmap 6.1.0", + "dashmap", "derive_more", "parking_lot", "reth-mdbx-sys", @@ -7840,17 +7814,17 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ - "bindgen 0.71.1", + "bindgen", "cc", ] [[package]] name = "reth-metrics" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "futures", "metrics", @@ -7861,8 +7835,8 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "ipnet", @@ -7870,8 +7844,8 @@ dependencies = [ [[package]] name = "reth-net-nat" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "futures-util", "if-addrs", @@ -7884,8 +7858,8 @@ dependencies = [ [[package]] name = "reth-network" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7914,6 +7888,7 @@ dependencies = [ "reth-eth-wire-types", "reth-ethereum-forks", "reth-ethereum-primitives", + "reth-evm-ethereum", "reth-fs-util", "reth-metrics", "reth-net-banlist", @@ -7940,8 +7915,8 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7965,8 +7940,8 @@ dependencies = [ [[package]] name = "reth-network-p2p" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7988,8 +7963,8 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -8003,8 +7978,8 @@ dependencies = [ [[package]] name = "reth-network-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -8017,8 +7992,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "anyhow", "bincode", @@ -8034,8 +8009,8 @@ dependencies = [ [[package]] name = "reth-node-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-rpc-types-engine", "eyre", @@ -8058,8 +8033,8 @@ dependencies = [ [[package]] name = "reth-node-builder" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8127,8 +8102,8 @@ dependencies = [ [[package]] name = "reth-node-core" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8158,7 +8133,6 @@ dependencies = [ "reth-network-p2p", "reth-network-peers", "reth-primitives-traits", - "reth-provider", "reth-prune-types", "reth-rpc-convert", "reth-rpc-eth-types", @@ -8172,7 +8146,7 @@ dependencies = [ "secp256k1 0.30.0", "serde", "shellexpand", - "strum 0.27.2", + "strum", "thiserror 2.0.18", "toml", "tracing", @@ -8183,8 +8157,8 @@ dependencies = [ [[package]] name = "reth-node-ethereum" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-network", @@ -8221,8 +8195,8 @@ dependencies = [ [[package]] name = "reth-node-ethstats" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8238,15 +8212,15 @@ dependencies = [ "thiserror 2.0.18", "tokio", "tokio-stream", - "tokio-tungstenite", + "tokio-tungstenite 0.28.0", "tracing", "url", ] [[package]] name = "reth-node-events" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8269,8 +8243,8 @@ dependencies = [ [[package]] name = "reth-node-metrics" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "bytes", "eyre", @@ -8281,7 +8255,7 @@ dependencies = [ "metrics-exporter-prometheus", "metrics-process", "metrics-util", - "procfs 0.17.0", + "procfs", "reqwest 0.12.28", "reth-metrics", "reth-tasks", @@ -8293,8 +8267,8 @@ dependencies = [ [[package]] name = "reth-node-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "reth-chainspec", "reth-db-api", @@ -8303,25 +8277,10 @@ dependencies = [ "reth-primitives-traits", ] -[[package]] -name = "reth-optimism-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "op-alloy-consensus", - "reth-primitives-traits", - "serde", - "serde_with", -] - [[package]] name = "reth-payload-builder" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8341,8 +8300,8 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "pin-project", "reth-payload-primitives", @@ -8353,8 +8312,8 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8376,8 +8335,8 @@ dependencies = [ [[package]] name = "reth-payload-validator" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -8386,8 +8345,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "once_cell", @@ -8399,8 +8358,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8413,6 +8372,7 @@ dependencies = [ "auto_impl", "byteorder", "bytes", + "dashmap", "derive_more", "modular-bitfield", "once_cell", @@ -8432,14 +8392,13 @@ dependencies = [ [[package]] name = "reth-provider" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", - "dashmap 6.1.0", "eyre", "itertools 0.14.0", "metrics", @@ -8455,6 +8414,7 @@ dependencies = [ "reth-ethereum-engine-primitives", "reth-ethereum-primitives", "reth-execution-types", + "reth-fs-util", "reth-metrics", "reth-nippy-jar", "reth-node-types", @@ -8464,19 +8424,20 @@ dependencies = [ "reth-static-file-types", "reth-storage-api", "reth-storage-errors", + "reth-tasks", "reth-trie", "reth-trie-db", "revm-database", "revm-state", - "strum 0.27.2", + "strum", "tokio", "tracing", ] [[package]] name = "reth-prune" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8494,6 +8455,7 @@ dependencies = [ "reth-prune-types", "reth-stages-types", "reth-static-file-types", + "reth-storage-api", "reth-tokio-util", "rustc-hash", "thiserror 2.0.18", @@ -8503,8 +8465,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "arbitrary", @@ -8512,14 +8474,15 @@ dependencies = [ "modular-bitfield", "reth-codecs", "serde", - "strum 0.27.2", + "strum", "thiserror 2.0.18", + "tracing", ] [[package]] name = "reth-revm" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "reth-primitives-traits", @@ -8531,8 +8494,8 @@ dependencies = [ [[package]] name = "reth-rpc" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -8560,13 +8523,9 @@ dependencies = [ "derive_more", "dyn-clone", "futures", - "http 1.4.0", - "http-body 1.0.1", - "hyper 1.8.1", "itertools 0.14.0", "jsonrpsee", "jsonrpsee-types", - "jsonwebtoken", "parking_lot", "pin-project", "reth-chain-state", @@ -8606,15 +8565,14 @@ dependencies = [ "thiserror 2.0.18", "tokio", "tokio-stream", - "tower", "tracing", "tracing-futures", ] [[package]] name = "reth-rpc-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eip7928", "alloy-eips", @@ -8643,8 +8601,8 @@ dependencies = [ [[package]] name = "reth-rpc-builder" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-network", "alloy-provider", @@ -8684,8 +8642,8 @@ dependencies = [ [[package]] name = "reth-rpc-convert" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-evm", @@ -8705,8 +8663,8 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8735,8 +8693,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -8779,8 +8737,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8827,8 +8785,8 @@ dependencies = [ [[package]] name = "reth-rpc-layer" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-rpc-types-engine", "http 1.4.0", @@ -8841,8 +8799,8 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8852,13 +8810,13 @@ dependencies = [ "reth-errors", "reth-network-api", "serde", - "strum 0.27.2", + "strum", ] [[package]] name = "reth-stages" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8895,6 +8853,7 @@ dependencies = [ "reth-static-file-types", "reth-storage-api", "reth-storage-errors", + "reth-tasks", "reth-testing-utils", "reth-trie", "reth-trie-db", @@ -8906,8 +8865,8 @@ dependencies = [ [[package]] name = "reth-stages-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8933,8 +8892,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "arbitrary", @@ -8947,8 +8906,8 @@ dependencies = [ [[package]] name = "reth-static-file" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "parking_lot", @@ -8967,21 +8926,23 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "clap", "derive_more", "fixed-map", + "reth-stages-types", "serde", - "strum 0.27.2", + "strum", + "tracing", ] [[package]] name = "reth-storage-api" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9004,8 +8965,8 @@ dependencies = [ [[package]] name = "reth-storage-errors" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-eips", "alloy-primitives", @@ -9021,8 +8982,8 @@ dependencies = [ [[package]] name = "reth-tasks" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "auto_impl", "dyn-clone", @@ -9039,8 +9000,8 @@ dependencies = [ [[package]] name = "reth-testing-utils" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9055,8 +9016,8 @@ dependencies = [ [[package]] name = "reth-tokio-util" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "tokio", "tokio-stream", @@ -9065,8 +9026,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "clap", "eyre", @@ -9082,8 +9043,8 @@ dependencies = [ [[package]] name = "reth-tracing-otlp" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "clap", "eyre", @@ -9099,8 +9060,8 @@ dependencies = [ [[package]] name = "reth-transaction-pool" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9121,12 +9082,15 @@ dependencies = [ "reth-chainspec", "reth-eth-wire-types", "reth-ethereum-primitives", + "reth-evm", + "reth-evm-ethereum", "reth-execution-types", "reth-fs-util", "reth-metrics", "reth-primitives-traits", "reth-storage-api", "reth-tasks", + "revm", "revm-interpreter", "revm-primitives", "rustc-hash", @@ -9142,8 +9106,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9168,8 +9132,8 @@ dependencies = [ [[package]] name = "reth-trie-common" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -9195,8 +9159,8 @@ dependencies = [ [[package]] name = "reth-trie-db" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "metrics", @@ -9215,33 +9179,33 @@ dependencies = [ [[package]] name = "reth-trie-parallel" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "alloy-rlp", "crossbeam-channel", - "dashmap 6.1.0", "derive_more", "itertools 0.14.0", "metrics", "rayon", "reth-execution-errors", "reth-metrics", + "reth-primitives-traits", "reth-provider", "reth-storage-errors", + "reth-tasks", "reth-trie", "reth-trie-common", "reth-trie-sparse", "thiserror 2.0.18", - "tokio", "tracing", ] [[package]] name = "reth-trie-sparse" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -9257,28 +9221,10 @@ dependencies = [ "tracing", ] -[[package]] -name = "reth-trie-sparse-parallel" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "alloy-trie", - "metrics", - "rayon", - "reth-execution-errors", - "reth-metrics", - "reth-trie-common", - "reth-trie-sparse", - "smallvec", - "tracing", -] - [[package]] name = "reth-zstd-compressors" -version = "1.10.1" -source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.10.1#c9dad4765df6c96a427d513227e09767e8e56f14" +version = "1.11.0" +source = "git+https://github.com/paradigmxyz/reth.git?tag=v1.11.0#564ffa586845fa4a8bb066f0c7b015ff36b26c08" dependencies = [ "zstd", ] @@ -9518,9 +9464,9 @@ dependencies = [ [[package]] name = "ringbuffer" -version = "0.15.0" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df6368f71f205ff9c33c076d170dd56ebf68e8161c733c0caa07a7a5509ed53" +checksum = "57b0b88a509053cbfd535726dcaaceee631313cef981266119527a1d110f6d2b" [[package]] name = "ripemd" @@ -9571,9 +9517,9 @@ dependencies = [ [[package]] name = "roaring" -version = "0.10.12" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e8d2cfa184d94d0726d650a9f4a1be7f9b76ac9fdb954219878dc00c1c1e7b" +checksum = "8ba9ce64a8f45d7fc86358410bb1a82e8c987504c0d4900e9141d69a9f26c885" dependencies = [ "bytemuck", "byteorder", @@ -9662,19 +9608,6 @@ dependencies = [ "semver 1.0.27", ] -[[package]] -name = "rustix" -version = "0.38.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" -dependencies = [ - "bitflags 2.10.0", - "errno", - "libc", - "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", -] - [[package]] name = "rustix" version = "1.1.3" @@ -9684,7 +9617,7 @@ dependencies = [ "bitflags 2.10.0", "errno", "libc", - "linux-raw-sys 0.11.0", + "linux-raw-sys", "windows-sys 0.61.2", ] @@ -10039,11 +9972,11 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.9" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" dependencies = [ - "serde", + "serde_core", ] [[package]] @@ -10230,21 +10163,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" -[[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" version = "0.3.0" @@ -10337,35 +10255,13 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", -] - [[package]] name = "strum" version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" dependencies = [ - "strum_macros 0.27.2", -] - -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.114", + "strum_macros", ] [[package]] @@ -10410,9 +10306,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.5.4" +version = "1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2379beea9476b89d0237078be761cf8e012d92d5ae4ae0c9a329f974838870fc" +checksum = "f8658017776544996edc21c8c7cc8bb4f13db60955382f4bac25dc6303b38438" dependencies = [ "paste", "proc-macro2", @@ -10448,15 +10344,16 @@ dependencies = [ [[package]] name = "sysinfo" -version = "0.33.1" +version = "0.38.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fc858248ea01b66f19d8e8a6d55f41deaf91e9d495246fd01368d99935c6c01" +checksum = "1efc19935b4b66baa6f654ac7924c192f55b175c00a7ab72410fc24284dacda8" dependencies = [ - "core-foundation-sys", "libc", "memchr", "ntapi", - "windows 0.57.0", + "objc2-core-foundation", + "objc2-io-kit", + "windows", ] [[package]] @@ -10512,7 +10409,7 @@ dependencies = [ "fastrand", "getrandom 0.4.1", "once_cell", - "rustix 1.1.3", + "rustix", "windows-sys 0.61.2", ] @@ -10732,14 +10629,25 @@ dependencies = [ "futures-util", "log", "rustls", - "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls", - "tungstenite", + "tungstenite 0.26.2", "webpki-roots 0.26.11", ] +[[package]] +name = "tokio-tungstenite" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25a406cddcc431a75d3d9afc6a7c0f7428d4891dd973e4d54c56b46127bf857" +dependencies = [ + "futures-util", + "log", + "tokio", + "tungstenite 0.28.0", +] + [[package]] name = "tokio-util" version = "0.7.18" @@ -10757,23 +10665,17 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.23" +version = "0.9.12+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" +checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" dependencies = [ - "serde", + "indexmap 2.13.0", + "serde_core", "serde_spanned", - "toml_datetime 0.6.11", - "toml_edit 0.22.27", -] - -[[package]] -name = "toml_datetime" -version = "0.6.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" -dependencies = [ - "serde", + "toml_datetime", + "toml_parser", + "toml_writer", + "winnow", ] [[package]] @@ -10785,20 +10687,6 @@ dependencies = [ "serde_core", ] -[[package]] -name = "toml_edit" -version = "0.22.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" -dependencies = [ - "indexmap 2.13.0", - "serde", - "serde_spanned", - "toml_datetime 0.6.11", - "toml_write", - "winnow", -] - [[package]] name = "toml_edit" version = "0.23.10+spec-1.0.0" @@ -10806,7 +10694,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" dependencies = [ "indexmap 2.13.0", - "toml_datetime 0.7.5+spec-1.1.0", + "toml_datetime", "toml_parser", "winnow", ] @@ -10821,10 +10709,10 @@ dependencies = [ ] [[package]] -name = "toml_write" -version = "0.1.2" +name = "toml_writer" +version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" +checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" [[package]] name = "tonic" @@ -11005,9 +10893,9 @@ dependencies = [ [[package]] name = "tracing-logfmt" -version = "0.3.7" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a250055a3518b5efba928a18ffac8d32d42ea607a9affff4532144cd5b2e378e" +checksum = "6b1f47d22deb79c3f59fcf2a1f00f60cbdc05462bf17d1cd356c1fefa3f444bd" dependencies = [ "time", "tracing", @@ -11116,7 +11004,7 @@ checksum = "ee44f4cef85f88b4dea21c0b1f58320bdf35715cf56d840969487cff00613321" dependencies = [ "alloy-primitives", "ethereum_hashing", - "ethereum_ssz", + "ethereum_ssz 0.9.1", "smallvec", "typenum", ] @@ -11143,12 +11031,6 @@ dependencies = [ "rlp", ] -[[package]] -name = "triomphe" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd69c5aa8f924c7519d6372789a74eac5b94fb0f8fcf0d4a97eb0bfc3e785f39" - [[package]] name = "try-lock" version = "0.2.5" @@ -11174,6 +11056,29 @@ dependencies = [ "utf-8", ] +[[package]] +name = "tungstenite" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8628dcc84e5a09eb3d8423d6cb682965dea9133204e8fb3efee74c2a0c259442" +dependencies = [ + "bytes", + "data-encoding", + "http 1.4.0", + "httparse", + "log", + "rand 0.9.2", + "sha1", + "thiserror 2.0.18", + "utf-8", +] + +[[package]] +name = "typeid" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" + [[package]] name = "typenum" version = "1.19.0" @@ -11236,21 +11141,15 @@ checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] name = "unicode-truncate" -version = "1.1.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf" +checksum = "16b380a1238663e5f8a691f9039c73e1cdae598a30e9855f541d29b08b53e9a5" dependencies = [ - "itertools 0.13.0", + "itertools 0.14.0", "unicode-segmentation", - "unicode-width 0.1.14", + "unicode-width", ] -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - [[package]] name = "unicode-width" version = "0.2.0" @@ -11346,7 +11245,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75" dependencies = [ "anyhow", - "cargo_metadata 0.23.1", + "cargo_metadata", "derive_builder", "regex", "rustversion", @@ -11662,16 +11561,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" -dependencies = [ - "windows-core 0.57.0", - "windows-targets 0.52.6", -] - [[package]] name = "windows" version = "0.62.2" @@ -11679,7 +11568,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580" dependencies = [ "windows-collections", - "windows-core 0.62.2", + "windows-core", "windows-future", "windows-numerics", ] @@ -11690,19 +11579,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23b2d95af1a8a14a3c7367e1ed4fc9c20e0a26e79551b1454d72583c97cc6610" dependencies = [ - "windows-core 0.62.2", -] - -[[package]] -name = "windows-core" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" -dependencies = [ - "windows-implement 0.57.0", - "windows-interface 0.57.0", - "windows-result 0.1.2", - "windows-targets 0.52.6", + "windows-core", ] [[package]] @@ -11711,10 +11588,10 @@ version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ - "windows-implement 0.60.2", - "windows-interface 0.59.3", + "windows-implement", + "windows-interface", "windows-link", - "windows-result 0.4.1", + "windows-result", "windows-strings", ] @@ -11724,22 +11601,11 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb" dependencies = [ - "windows-core 0.62.2", + "windows-core", "windows-link", "windows-threading", ] -[[package]] -name = "windows-implement" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.114", -] - [[package]] name = "windows-implement" version = "0.60.2" @@ -11751,17 +11617,6 @@ dependencies = [ "syn 2.0.114", ] -[[package]] -name = "windows-interface" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.114", -] - [[package]] name = "windows-interface" version = "0.59.3" @@ -11785,19 +11640,10 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26" dependencies = [ - "windows-core 0.62.2", + "windows-core", "windows-link", ] -[[package]] -name = "windows-result" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-result" version = "0.4.1" @@ -12270,7 +12116,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" dependencies = [ "libc", - "rustix 1.1.3", + "rustix", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 0028052..b7db151 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,104 +21,104 @@ repository = "https://github.com/evstack/ev-reth" authors = ["Evolve Stack Contributors"] [workspace.dependencies] -# Reth dependencies - Using v1.10.1 stable -reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-tracing-otlp = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-errors = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-provider = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-network = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-db-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-ethereum-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-basic-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-engine-local = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-engine-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-ethereum-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", features = ["serde", "serde-bincode-compat", "reth-codec"] } -reth-e2e-test-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-evm = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.10.1" } -reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.10.1" } -reth-execution-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-node-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-payload-builder-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-payload-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.10.1" } -reth-ethereum-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-revm = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.10.1" } -reth-rpc-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc-engine-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-rpc-convert = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } -reth-codecs = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1" } +# Reth dependencies - Using v1.11.0 stable +reth-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-cli-util = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-tracing-otlp = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-node-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-node-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-errors = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-node = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-trie-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-trie-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc-eth-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-provider = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-storage-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-tracing = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-network = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-network-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-chain-state = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-db-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-ethereum = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-ethereum-cli = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-basic-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-engine-local = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-engine-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-ethereum-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", features = ["serde", "serde-bincode-compat", "reth-codec"] } +reth-e2e-test-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-evm = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.11.0" } +reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.11.0" } +reth-execution-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-node-core = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-node-types = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-payload-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-payload-builder-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-payload-primitives = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-primitives = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.11.0" } +reth-ethereum-forks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-revm = { git = "https://github.com/paradigmxyz/reth.git", default-features = false, tag = "v1.11.0" } +reth-rpc-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc-builder = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc-engine-api = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-rpc-convert = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } +reth-codecs = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0" } ev-revm = { path = "crates/ev-revm" } ev-primitives = { path = "crates/ev-primitives" } # Consensus dependencies -reth-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-consensus-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-consensus-common = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } # Test dependencies -reth-testing-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } -reth-tasks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.10.1", default-features = false } +reth-testing-utils = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-db = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } +reth-tasks = { git = "https://github.com/paradigmxyz/reth.git", tag = "v1.11.0", default-features = false } revm = { version = "34.0.0", default-features = false } revm-context-interface = { version = "14.0.0", default-features = false } -# Alloy dependencies (aligned to reth v1.10.1) -alloy = { version = "1.4.3", features = [ +# Alloy dependencies (aligned to reth v1.11.0) +alloy = { version = "1.5.6", features = [ "contract", "providers", "provider-http", "signers", "reqwest-rustls-tls", ], default-features = false } -alloy-evm = { version = "0.26.3", default-features = false } -alloy-eips = { version = "1.4.3", default-features = false } -alloy-network = { version = "1.4.3", default-features = false } -alloy-provider = { version = "1.4.3", default-features = false } -alloy-rpc-client = { version = "1.4.3", default-features = false } -alloy-rpc-types = { version = "1.4.3", default-features = false } -alloy-json-rpc = { version = "1.4.3", default-features = false } -alloy-rpc-types-eth = { version = "1.4.3", default-features = false } -alloy-rpc-types-engine = { version = "1.4.3", default-features = false } -alloy-signer = { version = "1.4.3", default-features = false } -alloy-signer-local = { version = "1.4.3", features = ["mnemonic"] } -alloy-serde = { version = "1.4.3", default-features = false } -alloy-primitives = { version = "1.5.0", default-features = false } -alloy-consensus = { version = "1.4.3", default-features = false } -alloy-consensus-any = { version = "1.4.3", default-features = false } +alloy-evm = { version = "0.27.2", default-features = false } +alloy-eips = { version = "1.5.6", default-features = false } +alloy-network = { version = "1.5.6", default-features = false } +alloy-provider = { version = "1.5.6", default-features = false } +alloy-rpc-client = { version = "1.5.6", default-features = false } +alloy-rpc-types = { version = "1.5.6", default-features = false } +alloy-json-rpc = { version = "1.5.6", default-features = false } +alloy-rpc-types-eth = { version = "1.5.6", default-features = false } +alloy-rpc-types-engine = { version = "1.6.3", default-features = false } +alloy-signer = { version = "1.5.6", default-features = false } +alloy-signer-local = { version = "1.5.6", features = ["mnemonic"] } +alloy-serde = { version = "1.5.6", default-features = false } +alloy-primitives = { version = "1.5.6", default-features = false } +alloy-consensus = { version = "1.5.6", default-features = false } +alloy-consensus-any = { version = "1.5.6", default-features = false } alloy-rlp = { version = "0.3.12", default-features = false } -alloy-genesis = { version = "1.4.3", default-features = false } -alloy-rpc-types-txpool = { version = "1.4.3", default-features = false } -alloy-sol-types = { version = "1.5.0", default-features = false } +alloy-genesis = { version = "1.5.6", default-features = false } +alloy-rpc-types-txpool = { version = "1.5.6", default-features = false } +alloy-sol-types = { version = "1.5.6", default-features = false } # Utility dependencies bytes = "1.10.1" diff --git a/crates/node/src/evm_executor.rs b/crates/node/src/evm_executor.rs index 36f1e3d..ae3d8d5 100644 --- a/crates/node/src/evm_executor.rs +++ b/crates/node/src/evm_executor.rs @@ -1,6 +1,6 @@ use std::{borrow::Cow, boxed::Box, vec::Vec}; -use alloy_consensus::{Transaction, TxReceipt}; +use alloy_consensus::{Transaction, TransactionEnvelope, TxReceipt}; use alloy_eips::{eip7685::Requests, Encodable2718}; use alloy_evm::{ block::{ @@ -15,11 +15,10 @@ use alloy_evm::{ spec::{EthExecutorSpec, EthSpec}, EthBlockExecutionCtx, }, - Database, EthEvmFactory, Evm, EvmFactory, FromRecoveredTx, FromTxWithEncoded, + Database, EthEvmFactory, Evm, EvmFactory, FromRecoveredTx, FromTxWithEncoded, RecoveredTx, }; use alloy_primitives::Log; use ev_primitives::{Receipt, TransactionSigned}; -use reth_codecs::alloy::transaction::Envelope; use reth_ethereum_forks::EthereumHardfork; use reth_revm::{ context_interface::block::Block as BlockEnvTr, @@ -27,6 +26,22 @@ use reth_revm::{ revm::{context_interface::result::ResultAndState, database::State, DatabaseCommit, Inspector}, }; +// Local copy mirroring alloy_evm's EthTxResult for our custom executor +#[derive(Debug)] +pub struct EvTxResult { + pub result: ResultAndState, + pub blob_gas_used: u64, + pub tx_type: T, +} + +impl alloy_evm::block::TxResult for EvTxResult { + type HaltReason = H; + + fn result(&self) -> &ResultAndState { + &self.result + } +} + /// Receipt builder that works with Ev transaction envelopes. #[derive(Debug, Clone, Copy, Default)] #[non_exhaustive] @@ -38,16 +53,16 @@ impl ReceiptBuilder for EvReceiptBuilder { fn build_receipt( &self, - ctx: ReceiptBuilderCtx<'_, Self::Transaction, E>, + ctx: ReceiptBuilderCtx<'_, ::TxType, E>, ) -> Self::Receipt { let ReceiptBuilderCtx { - tx, + tx_type, result, cumulative_gas_used, .. } = ctx; Receipt { - tx_type: tx.tx_type(), + tx_type, success: result.is_success(), cumulative_gas_used, logs: result.into_logs(), @@ -102,6 +117,8 @@ where type Transaction = R::Transaction; type Receipt = R::Receipt; type Evm = E; + type Result = + EvTxResult<::HaltReason, ::TxType>; fn apply_pre_execution_changes(&mut self) -> Result<(), BlockExecutionError> { let state_clear_flag = self @@ -120,7 +137,9 @@ where fn execute_transaction_without_commit( &mut self, tx: impl ExecutableTx, - ) -> Result::HaltReason>, BlockExecutionError> { + ) -> Result { + let (tx_env, tx) = tx.into_parts(); + let block_available_gas = self.evm.block().gas_limit() - self.gas_used; if tx.tx().gas_limit() > block_available_gas { @@ -133,18 +152,24 @@ where ); } - self.evm.transact(&tx).map_err(|err| { + let result = self.evm.transact(tx_env).map_err(|err| { let hash = tx.tx().trie_hash(); BlockExecutionError::evm(err, hash) + })?; + + Ok(EvTxResult { + result, + blob_gas_used: tx.tx().blob_gas_used().unwrap_or_default(), + tx_type: tx.tx().tx_type(), }) } - fn commit_transaction( - &mut self, - output: ResultAndState<::HaltReason>, - tx: impl ExecutableTx, - ) -> Result { - let ResultAndState { result, state } = output; + fn commit_transaction(&mut self, output: Self::Result) -> Result { + let EvTxResult { + result: ResultAndState { result, state }, + blob_gas_used, + tx_type, + } = output; self.system_caller .on_state(StateChangeSource::Transaction(self.receipts.len()), &state); @@ -156,13 +181,12 @@ where .spec .is_cancun_active_at_timestamp(self.evm.block().timestamp().saturating_to()) { - let tx_blob_gas_used = tx.tx().blob_gas_used().unwrap_or_default(); - self.blob_gas_used = self.blob_gas_used.saturating_add(tx_blob_gas_used); + self.blob_gas_used = self.blob_gas_used.saturating_add(blob_gas_used); } self.receipts .push(self.receipt_builder.build_receipt(ReceiptBuilderCtx { - tx: tx.tx(), + tx_type, evm: &self.evm, result, state: &state, diff --git a/crates/node/src/node.rs b/crates/node/src/node.rs index 4a9e814..4ee48ae 100644 --- a/crates/node/src/node.rs +++ b/crates/node/src/node.rs @@ -2,7 +2,8 @@ use alloy_rpc_types::engine::{ ExecutionData, ExecutionPayloadEnvelopeV2, ExecutionPayloadEnvelopeV3, - ExecutionPayloadEnvelopeV4, ExecutionPayloadEnvelopeV5, ExecutionPayloadV1, + ExecutionPayloadEnvelopeV4, ExecutionPayloadEnvelopeV5, ExecutionPayloadEnvelopeV6, + ExecutionPayloadV1, }; use ev_primitives::EvPrimitives; use reth_ethereum::{ @@ -62,6 +63,7 @@ impl EngineTypes for EvolveEngineTypes { type ExecutionPayloadEnvelopeV3 = ExecutionPayloadEnvelopeV3; type ExecutionPayloadEnvelopeV4 = ExecutionPayloadEnvelopeV4; type ExecutionPayloadEnvelopeV5 = ExecutionPayloadEnvelopeV5; + type ExecutionPayloadEnvelopeV6 = ExecutionPayloadEnvelopeV6; } /// Evolve node type. diff --git a/crates/node/src/payload_types.rs b/crates/node/src/payload_types.rs index 81085e6..b8c9f4e 100644 --- a/crates/node/src/payload_types.rs +++ b/crates/node/src/payload_types.rs @@ -1,11 +1,12 @@ use std::sync::Arc; use alloy_eips::eip7685::Requests; +use alloy_primitives::Bytes; use alloy_primitives::U256; use alloy_rpc_types_engine::{ BlobsBundleV1, BlobsBundleV2, ExecutionPayloadEnvelopeV2, ExecutionPayloadEnvelopeV3, - ExecutionPayloadEnvelopeV4, ExecutionPayloadEnvelopeV5, ExecutionPayloadFieldV2, - ExecutionPayloadV1, ExecutionPayloadV3, PayloadId, + ExecutionPayloadEnvelopeV4, ExecutionPayloadEnvelopeV5, ExecutionPayloadEnvelopeV6, + ExecutionPayloadFieldV2, ExecutionPayloadV1, ExecutionPayloadV3, ExecutionPayloadV4, PayloadId, }; use ev_primitives::EvPrimitives; use reth_payload_builder::BlobSidecars; @@ -205,3 +206,41 @@ impl TryFrom for ExecutionPayloadEnvelopeV5 { value.try_into_v5() } } + +impl TryFrom for ExecutionPayloadEnvelopeV6 { + type Error = EvBuiltPayloadConversionError; + + fn try_from(value: EvBuiltPayload) -> Result { + let EvBuiltPayload { + block, + fees, + sidecars, + requests, + .. + } = value; + + let blobs_bundle = match sidecars { + BlobSidecars::Empty => BlobsBundleV2::empty(), + BlobSidecars::Eip7594(sidecars) => BlobsBundleV2::from(sidecars), + BlobSidecars::Eip4844(_) => { + return Err(EvBuiltPayloadConversionError::UnexpectedEip4844Sidecars) + } + }; + + let execution_payload = ExecutionPayloadV4 { + payload_inner: ExecutionPayloadV3::from_block_unchecked( + block.hash(), + &Arc::unwrap_or_clone(block).into_block(), + ), + block_access_list: Bytes::new(), + }; + + Ok(ExecutionPayloadEnvelopeV6 { + execution_payload, + block_value: fees, + should_override_builder: false, + blobs_bundle, + execution_requests: requests.unwrap_or_default(), + }) + } +} diff --git a/crates/node/src/txpool.rs b/crates/node/src/txpool.rs index f14c821..cf26248 100644 --- a/crates/node/src/txpool.rs +++ b/crates/node/src/txpool.rs @@ -303,13 +303,13 @@ impl PoolTransactionError for EvTxPoolError { /// Transaction validator that adds EV-specific checks on top of the base validator. #[derive(Debug, Clone)] -pub struct EvTransactionValidator { - inner: Arc>, +pub struct EvTransactionValidator { + inner: Arc>, } -impl EvTransactionValidator { +impl EvTransactionValidator { /// Wraps the provided Ethereum validator with EV-specific validation logic. - pub fn new(inner: EthTransactionValidator) -> Self { + pub fn new(inner: EthTransactionValidator) -> Self { Self { inner: Arc::new(inner), } @@ -340,7 +340,7 @@ impl EvTransactionValidator { Client: StateProviderFactory, { if state.is_none() { - let new_state = self.inner.client().latest().map_err(|err| { + let new_state = self.inner.client().latest().map_err(|err: _| { InvalidPoolTransactionError::other(EvTxPoolError::StateProvider(err.to_string())) })?; *state = Some(Box::new(new_state)); @@ -420,11 +420,13 @@ impl EvTransactionValidator { } } -impl TransactionValidator for EvTransactionValidator +impl TransactionValidator for EvTransactionValidator where Client: ChainSpecProvider + StateProviderFactory, + Evm: reth_evm::ConfigureEvm + 'static, { type Transaction = EvPooledTransaction; + type Block = ::Block; async fn validate_transaction( &self, @@ -467,21 +469,22 @@ where #[non_exhaustive] pub struct EvolvePoolBuilder; -impl PoolBuilder for EvolvePoolBuilder +impl PoolBuilder for EvolvePoolBuilder where Types: NodeTypes< ChainSpec: EthereumHardforks, Primitives: NodePrimitives, >, Node: FullNodeTypes, + Evm: reth_evm::ConfigureEvm + 'static, { type Pool = reth_transaction_pool::Pool< - TransactionValidationTaskExecutor>, + TransactionValidationTaskExecutor>, CoinbaseTipOrdering, DiskFileBlobStore, >; - async fn build_pool(self, ctx: &BuilderContext) -> eyre::Result { + async fn build_pool(self, ctx: &BuilderContext, evm: Evm) -> eyre::Result { let pool_config = ctx.pool_config(); let blobs_disabled = ctx.config().txpool.blobpool_max_count == 0; @@ -502,8 +505,7 @@ where let blob_store = create_blob_store_with_cache(ctx, blob_cache_size)?; - let validator = TransactionValidationTaskExecutor::eth_builder(ctx.provider().clone()) - .with_head_timestamp(ctx.head().timestamp) + let validator = TransactionValidationTaskExecutor::eth_builder(ctx.provider().clone(), evm) .set_eip4844(!blobs_disabled) .kzg_settings(ctx.kzg_settings()?) .with_max_tx_input_bytes(ctx.config().txpool.max_tx_input_bytes) @@ -525,7 +527,7 @@ where if validator.validator().inner.eip4844() { let kzg_settings = validator.validator().inner.kzg_settings().clone(); - ctx.task_executor().spawn_blocking(async move { + ctx.task_executor().spawn_blocking(move || { let _ = kzg_settings.get(); debug!(target: "reth::cli", "Initialized KZG settings"); }); @@ -583,14 +585,15 @@ mod tests { EvPooledTransaction::new(recovered, encoded_length) } - fn create_test_validator() -> EvTransactionValidator { + fn build_test_validator( + ) -> EvTransactionValidator { use reth_transaction_pool::{ blobstore::InMemoryBlobStore, validate::EthTransactionValidatorBuilder, }; - - let provider = MockEthProvider::default(); + let provider = MockEthProvider::default().with_genesis_block(); + let evm = crate::executor::EvolveEvmConfig::new(provider.chain_spec()); let blob_store = InMemoryBlobStore::default(); - let inner = EthTransactionValidatorBuilder::new(provider) + let inner = EthTransactionValidatorBuilder::new(provider, evm.clone()) .no_shanghai() .no_cancun() .build(blob_store); @@ -604,7 +607,7 @@ mod tests { /// sender balance for non-sponsored `EvNode` transactions. #[test] fn non_sponsored_evnode_rejects_insufficient_balance() { - let validator = create_test_validator(); + let validator = build_test_validator(); // Create a non-sponsored EvNode transaction let gas_limit = 21_000u64; @@ -638,7 +641,7 @@ mod tests { /// Tests that non-sponsored `EvNode` transactions with sufficient balance are accepted. #[test] fn non_sponsored_evnode_accepts_sufficient_balance() { - let validator = create_test_validator(); + let validator = build_test_validator(); let gas_limit = 21_000u64; let max_fee_per_gas = 1_000_000_000u128; From 1f2fca9a43c3d78b1566f65906192eb17fac7515 Mon Sep 17 00:00:00 2001 From: chatton Date: Tue, 17 Feb 2026 11:42:55 +0000 Subject: [PATCH 5/6] cargo fmt --- crates/node/src/payload_types.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/crates/node/src/payload_types.rs b/crates/node/src/payload_types.rs index b8c9f4e..0d61e3b 100644 --- a/crates/node/src/payload_types.rs +++ b/crates/node/src/payload_types.rs @@ -1,8 +1,7 @@ use std::sync::Arc; use alloy_eips::eip7685::Requests; -use alloy_primitives::Bytes; -use alloy_primitives::U256; +use alloy_primitives::{Bytes, U256}; use alloy_rpc_types_engine::{ BlobsBundleV1, BlobsBundleV2, ExecutionPayloadEnvelopeV2, ExecutionPayloadEnvelopeV3, ExecutionPayloadEnvelopeV4, ExecutionPayloadEnvelopeV5, ExecutionPayloadEnvelopeV6, From e403e0da3e7d6618e61b637363bca004c2359b40 Mon Sep 17 00:00:00 2001 From: chatton Date: Tue, 17 Feb 2026 12:36:26 +0000 Subject: [PATCH 6/6] fix clippy and docs --- .github/workflows/integration.yml | 6 +++--- crates/node/src/evm_executor.rs | 8 +++++++- crates/node/src/payload_types.rs | 2 +- crates/node/src/txpool.rs | 2 +- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 4af5bcb..4418135 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -30,12 +30,12 @@ jobs: - uses: Swatinem/rust-cache@v2 with: cache-on-failure: true - - name: Run tests + - name: Run tests (unit/integration only) run: | cargo nextest run \ --locked \ --workspace \ - -E 'kind(test)' \ + -E 'kind(test) - package(ev-tests)' \ --no-tests=warn \ --no-capture @@ -49,4 +49,4 @@ jobs: - name: Decide whether the needed jobs succeeded or failed uses: re-actors/alls-green@v1.2.2 with: - jobs: ${{ toJSON(needs) }} \ No newline at end of file + jobs: ${{ toJSON(needs) }} diff --git a/crates/node/src/evm_executor.rs b/crates/node/src/evm_executor.rs index ae3d8d5..a18b82e 100644 --- a/crates/node/src/evm_executor.rs +++ b/crates/node/src/evm_executor.rs @@ -26,11 +26,17 @@ use reth_revm::{ revm::{context_interface::result::ResultAndState, database::State, DatabaseCommit, Inspector}, }; -// Local copy mirroring alloy_evm's EthTxResult for our custom executor +/// Execution result wrapper used by the EV block executor. +/// +/// This mirrors the public surface needed from alloy-evm's internal result type and +/// implements `TxResult` so it integrates with the generic `BlockExecutor` trait. #[derive(Debug)] pub struct EvTxResult { + /// Result of EVM execution alongside the resulting state changes. pub result: ResultAndState, + /// Amount of blob gas used by the executed transaction (0 before Cancun). pub blob_gas_used: u64, + /// Consensus-layer transaction type used for receipt construction. pub tx_type: T, } diff --git a/crates/node/src/payload_types.rs b/crates/node/src/payload_types.rs index 0d61e3b..26614ea 100644 --- a/crates/node/src/payload_types.rs +++ b/crates/node/src/payload_types.rs @@ -234,7 +234,7 @@ impl TryFrom for ExecutionPayloadEnvelopeV6 { block_access_list: Bytes::new(), }; - Ok(ExecutionPayloadEnvelopeV6 { + Ok(Self { execution_payload, block_value: fees, should_override_builder: false, diff --git a/crates/node/src/txpool.rs b/crates/node/src/txpool.rs index cf26248..6fae14a 100644 --- a/crates/node/src/txpool.rs +++ b/crates/node/src/txpool.rs @@ -593,7 +593,7 @@ mod tests { let provider = MockEthProvider::default().with_genesis_block(); let evm = crate::executor::EvolveEvmConfig::new(provider.chain_spec()); let blob_store = InMemoryBlobStore::default(); - let inner = EthTransactionValidatorBuilder::new(provider, evm.clone()) + let inner = EthTransactionValidatorBuilder::new(provider, evm) .no_shanghai() .no_cancun() .build(blob_store);