diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 93631609..1e5d1431 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -14,7 +14,8 @@ env: jobs: unit: - runs-on: ubuntu-latest + runs-on: + group: scroll-reth-runner-group timeout-minutes: 60 env: RUST_BACKTRACE: 1 @@ -34,7 +35,8 @@ jobs: run: cargo nextest run --all-features --workspace --locked -E '!kind(test)' integration: - runs-on: ubuntu-latest + runs-on: + group: scroll-reth-runner-group timeout-minutes: 60 env: RUST_BACKTRACE: 1 @@ -57,7 +59,8 @@ jobs: -- --skip test_should_consolidate_to_block_15k integration-docker-compose: - runs-on: ubuntu-latest + runs-on: + group: scroll-reth-runner-group timeout-minutes: 90 env: RUST_BACKTRACE: 1 diff --git a/Cargo.lock b/Cargo.lock index 3e3e5c87..74d62ad1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -114,9 +114,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-chains" -version = "0.2.6" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4195a29a4b87137b2bb02105e746102873bc03561805cf45c0e510c961f160e6" +checksum = "ef8ff73a143281cb77c32006b04af9c047a6b8fe5860e85a88ad325328965355" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -146,20 +146,20 @@ dependencies = [ "once_cell", "rand 0.8.5", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-consensus" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eda689f7287f15bd3582daba6be8d1545bad3740fd1fb778f629a1fe866bb43b" +checksum = "d213580c17d239ae83c0d897ac3315db7cda83d2d4936a9823cc3517552f2e24" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", - "alloy-trie 0.9.0", + "alloy-serde 1.0.30", + "alloy-trie 0.9.1", "alloy-tx-macros", "arbitrary", "auto_impl", @@ -172,29 +172,29 @@ dependencies = [ "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-consensus-any" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b5659581e41e8fe350ecc3593cb5c9dcffddfd550896390f2b78a07af67b0fa" +checksum = "81443e3b8dccfeac7cd511aced15928c97ff253f4177acbb97de97178e543f6c" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "arbitrary", "serde", ] [[package]] name = "alloy-dyn-abi" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9e8a436f0aad7df8bb47f144095fba61202265d9f5f09a70b0e3227881a668e" +checksum = "a3f56873f3cac7a2c63d8e98a4314b8311aa96adb1a0f82ae923eb2119809d2c" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -219,7 +219,7 @@ dependencies = [ "crc", "rand 0.8.5", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -248,7 +248,7 @@ dependencies = [ "rand 0.8.5", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -273,16 +273,16 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f35887da30b5fc50267109a3c61cd63e6ca1f45967983641053a40ee83468c1" +checksum = "2a15b4b0f6bab47aae017d52bb5a739bda381553c09fb9918b7172721ef5f5de" dependencies = [ "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "arbitrary", "auto_impl", "c-kzg", @@ -291,7 +291,9 @@ dependencies = [ "ethereum_ssz", "ethereum_ssz_derive", "serde", + "serde_with", "sha2 0.10.9", + "thiserror 2.0.16", ] [[package]] @@ -300,8 +302,8 @@ version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2211ccd0f05e2fea4f767242957f5e8cfb08b127ea2e6a3c0d9e5b10e6bf67d9" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-hardforks", "alloy-primitives", "alloy-rpc-types-eth", @@ -311,19 +313,19 @@ dependencies = [ "op-alloy-consensus", "op-revm", "revm", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-genesis" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d4009efea6f403b3a80531f9c6f70fc242399498ff71196a1688cc1c901f44" +checksum = "33ba1cbc25a07e0142e8875fcbe80e1fdb02be8160ae186b90f4b9a69a72ed2b" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-serde 1.0.24", - "alloy-trie 0.9.0", + "alloy-serde 1.0.30", + "alloy-trie 0.9.1", "serde", "serde_with", ] @@ -344,9 +346,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459f98c6843f208856f338bfb25e65325467f7aff35dfeb0484d0a76e059134b" +checksum = "125a1c373261b252e53e04d6e92c37d881833afc1315fceab53fd46045695640" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -356,34 +358,34 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "883dee3b4020fcb5667ee627b4f401e899dad82bf37b246620339dd980720ed9" +checksum = "f8882ec8e4542cfd02aadc6dccbe90caa73038f60016d936734eb6ced53d2167" dependencies = [ "alloy-primitives", "alloy-sol-types", "http 1.3.1", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "alloy-network" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd6e5b8ac1654a05c224390008e43634a2bdc74e181e02cf8ed591d8b3d4ad08" +checksum = "51d6d87d588bda509881a7a66ae77c86514bd1193ac30fbff0e0f24db95eb5a5" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-consensus-any", - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-network-primitives", "alloy-primitives", "alloy-rpc-types-any", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "alloy-signer", "alloy-sol-types", "async-trait", @@ -392,39 +394,38 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-network-primitives" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d7980333dd9391719756ac28bc2afa9baa705fc70ffd11dc86ab078dd64477" +checksum = "5b14fa9ba5774e0b30ae6a04176d998211d516c8af69c9c530af7c6c42a8c508" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", ] [[package]] name = "alloy-primitives" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cfebde8c581a5d37b678d0a48a32decb51efd7a63a08ce2517ddec26db705c8" +checksum = "bc9485c56de23438127a731a6b4c87803d49faf1a7068dcd1d8768aca3a9edb9" dependencies = [ "alloy-rlp", "arbitrary", "bytes", "cfg-if", "const-hex", - "derive_arbitrary", "derive_more", "foldhash", "getrandom 0.3.3", "hashbrown 0.15.5", - "indexmap 2.10.0", + "indexmap 2.11.0", "itoa", "k256", "keccak-asm", @@ -441,13 +442,13 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478a42fe167057b7b919cd8b0c2844f0247f667473340dad100eaf969de5754e" +checksum = "475a5141313c3665b75d818be97d5fa3eb5e0abb7e832e9767edd94746db28e3" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-network", "alloy-network-primitives", @@ -474,7 +475,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", "url", @@ -483,9 +484,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0a99b17987f40a066b29b6b56d75e84cd193b866cac27cae17b59f40338de95" +checksum = "f97c18795ce1ce8151c5539ce1e4200940389674173f677c7455f79bfb00e5df" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -522,14 +523,14 @@ checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "alloy-rpc-client" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a0c6d723fbdf4a87454e2e3a275e161be27edcfbf46e2e3255dd66c138634b6" +checksum = "25289674cd8c58fcca2568b5350423cb0dd7bca8c596c5e2869bfe4c5c57ed14" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -553,22 +554,22 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c41492dac39365b86a954de86c47ec23dcc7452cdb2fde591caadc194b3e34c6" +checksum = "39676beaa50db545cf15447fc94ec5513b64e85a48357a0625b9a04aef08a910" dependencies = [ "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", ] [[package]] name = "alloy-rpc-types-admin" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c0f415ad97cc68d2f49eb08214f45c6827a6932a69773594f4ce178f8a41dc0" +checksum = "65acc9264342069decb617aa344847f55180ba3aeab1c8d1db062d0619881029" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -578,25 +579,25 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10493fa300a2757d8134f584800fef545c15905c95122bed1f6dde0b0d9dae27" +checksum = "a9c8cad42fa936000be72ab80fcd97386a6a226c35c2989212756da9e76c1521" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", ] [[package]] name = "alloy-rpc-types-any" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f7eb22670a972ad6c222a6c6dac3eef905579acffe9d63ab42be24c7d158535" +checksum = "01bac57c987c93773787619e20f89167db74d460a2d1d40f591d94fb7c22c379" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", ] [[package]] @@ -610,36 +611,38 @@ dependencies = [ "alloy-rpc-types-engine 0.14.0", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-rpc-types-beacon" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53381ffba0110a8aed4c9f108ef34a382ed21aeefb5f50f91c73451ae68b89aa" +checksum = "8d3c0e6cc87a8be5582d08f929f96db25843f44cb636a0985a4a6bf02609c02f" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "ethereum_ssz", "ethereum_ssz_derive", "serde", + "serde_json", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", "tree_hash", "tree_hash_derive", ] [[package]] name = "alloy-rpc-types-debug" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b6f0482c82310366ec3dcf4e5212242f256a69fcf1a26e5017e6704091ee95" +checksum = "c2fe118e6c152d54cb4549b9835fb87d38b12754bb121375183ee3ec84bd0849" dependencies = [ "alloy-primitives", "derive_more", "serde", + "serde_with", ] [[package]] @@ -661,15 +664,15 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e24c171377c0684e3860385f6d93fbfcc8ecc74f6cce8304c822bf1a50bacce0" +checksum = "72a41624eb84bc743e414198bf10eb48b611a5554d6a9fd6205f7384d57dfd7f" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "arbitrary", "derive_more", "ethereum_ssz", @@ -682,64 +685,64 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b777b98526bbe5b7892ca22a7fd5f18ed624ff664a79f40d0f9f2bf94ba79a84" +checksum = "1cd1e1b4dcdf13eaa96343e5c0dafc2d2e8ce5d20b90347169d46a1df0dec210" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-consensus-any", - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-network-primitives", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "alloy-sol-types", "arbitrary", "itertools 0.14.0", "serde", "serde_json", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-rpc-types-mev" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c15e8ccb6c16e196fcc968e16a71cd8ce4160f3ec5871d2ea196b75bf569ac02" +checksum = "01620baa48d3f49fc908c781eb91ded71f3226e719bb6404697c2851cac4e098" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", "serde_json", ] [[package]] name = "alloy-rpc-types-trace" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6a854af3fe8fce1cfe319fcf84ee8ba8cda352b14d3dd4221405b5fc6cce9e1" +checksum = "1bc33d9d0e0b3cfe9c2e82a1a427c9ed516fcfebe764f0adf7ceb8107f702dd1" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-rpc-types-txpool" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cc803e9b8d16154c856a738c376e002abe4b388e5fef91c8aebc8373e99fd45" +checksum = "d4fa9e9b3e613425d2a2ee1a322bdad5f1cedf835406fd4b59538822500b44bc" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "serde", ] @@ -767,9 +770,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee8d2c52adebf3e6494976c8542fbdf12f10123b26e11ad56f77274c16a2a039" +checksum = "f1b3b1078b8775077525bc9fe9f6577e815ceaecd6c412a4f3b4d8aa2836e8f6" dependencies = [ "alloy-primitives", "arbitrary", @@ -779,9 +782,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c0494d1e0f802716480aabbe25549c7f6bc2a25ff33b08fd332bbb4b7d06894" +checksum = "10ab1b8d4649bf7d0db8ab04e31658a6cc20364d920795484d886c35bed3bab4" dependencies = [ "alloy-primitives", "async-trait", @@ -789,34 +792,35 @@ dependencies = [ "either", "elliptic-curve", "k256", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "alloy-signer-aws" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0559495d87c099f7dbd0804145032e6a16ee675d1d2a15e98dc2658d64265cde" +checksum = "a46118173eb381b2911202a83dc4f39267027b0fe7d3533449f5e4ebc0eadcab" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-network", "alloy-primitives", "alloy-signer", "async-trait", + "aws-config", "aws-sdk-kms", "k256", "spki", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "alloy-signer-local" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59c2435eb8979a020763ced3fb478932071c56e5f75ea86db41f320915d325ba" +checksum = "7bdeec36c8d9823102b571b3eab8b323e053dc19c12da14a9687bd474129bf2a" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-network", "alloy-primitives", "alloy-signer", @@ -825,46 +829,47 @@ dependencies = [ "coins-bip39", "k256", "rand 0.8.5", - "thiserror 2.0.14", + "thiserror 2.0.16", + "zeroize", ] [[package]] name = "alloy-sol-macro" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedac07a10d4c2027817a43cc1f038313fc53c7ac866f7363239971fd01f9f18" +checksum = "d20d867dcf42019d4779519a1ceb55eba8d7f3d0e4f0a89bcba82b8f9eb01e48" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24f9a598f010f048d8b8226492b6401104f5a5c1273c2869b72af29b48bb4ba9" +checksum = "b74e91b0b553c115d14bd0ed41898309356dc85d0e3d4b9014c4e7715e48c8ad" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", - "indexmap 2.10.0", + "indexmap 2.11.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f494adf9d60e49aa6ce26dfd42c7417aa6d4343cf2ae621f20e4d92a5ad07d85" +checksum = "84194d31220803f5f62d0a00f583fd3a062b36382e2bea446f1af96727754565" dependencies = [ "const-hex", "dunce", @@ -872,15 +877,15 @@ dependencies = [ "macro-string", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52db32fbd35a9c0c0e538b58b81ebbae08a51be029e7ad60e08b60481c2ec6c3" +checksum = "fe8c27b3cf6b2bb8361904732f955bc7c05e00be5f469cec7e2280b6167f3ff0" dependencies = [ "serde", "winnow", @@ -888,9 +893,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a285b46e3e0c177887028278f04cc8262b76fd3b8e0e20e93cea0a58c35f5ac5" +checksum = "f5383d34ea00079e6dd89c652bcbdb764db160cef84e6250926961a0b2295d04" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -900,9 +905,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0107675e10c7f248bf7273c1e7fdb02409a717269cc744012e6f3c39959bfb" +checksum = "dce5129146a76ca6139a19832c75ad408857a56bcd18cd2c684183b8eacd78d8" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -914,7 +919,7 @@ dependencies = [ "parking_lot 0.12.4", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tower", "tracing", @@ -924,15 +929,15 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78e3736701b5433afd06eecff08f0688a71a10e0e1352e0bbf0bed72f0dd4e35" +checksum = "e2379d998f46d422ec8ef2b61603bc28cda931e5e267aea1ebe71f62da61d101" dependencies = [ "alloy-json-rpc", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-transport", "http-body-util", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-tls", "hyper-util", "jsonwebtoken", @@ -945,9 +950,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c79064b5a08259581cb5614580010007c2df6deab1e8f3e8c7af8d7e9227008f" +checksum = "041aa5db2e907692a9a93a0a908057665c03e59364e1fbbeed613511a0159289" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -965,9 +970,9 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77fd607158cb9bc54cbcfcaab4c5f36c5b26994c7dc58b6f095ce27a54f270f3" +checksum = "c6d44395e6793566e9c89bd82297cc4b0566655c1e78a1d69362640814784cc6" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -999,9 +1004,9 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bada1fc392a33665de0dc50d401a3701b62583c655e3522a323490a5da016962" +checksum = "e3412d52bb97c6c6cc27ccc28d4e6e8cf605469101193b50b0bd5813b1f990b5" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -1009,7 +1014,7 @@ dependencies = [ "arrayvec", "derive_arbitrary", "derive_more", - "nybbles 0.4.2", + "nybbles 0.4.3", "proptest", "proptest-derive", "serde", @@ -1019,15 +1024,15 @@ dependencies = [ [[package]] name = "alloy-tx-macros" -version = "1.0.24" +version = "1.0.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6acb36318dfa50817154064fea7932adf2eec3f51c86680e2b37d7e8906c66bb" +checksum = "3b5becb9c269a7d05a2f28d549f86df5a5dbc923e2667eff84fdecac8cda534c" dependencies = [ "alloy-primitives", - "darling", + "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1118,14 +1123,14 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" dependencies = [ "derive_arbitrary", ] @@ -1260,7 +1265,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1298,7 +1303,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1387,7 +1392,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1443,18 +1448,15 @@ checksum = "155a5a185e42c6b77ac7b88a15143d930a9e9727a5b7b77eed417404ab15c247" [[package]] name = "async-compression" -version = "0.4.27" +version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddb939d66e4ae03cee6091612804ba446b12878410cfa17f785f4dd67d4014e8" +checksum = "977eb15ea9efd848bb8a4a1a2500347ed7f0bf794edf0dc3ddcf439f43d36b23" dependencies = [ - "brotli", - "flate2", + "compression-codecs", + "compression-core", "futures-core", - "memchr", "pin-project-lite", "tokio", - "zstd", - "zstd-safe", ] [[package]] @@ -1476,18 +1478,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "async-trait" -version = "0.1.88" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1534,7 +1536,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -1545,9 +1547,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "aws-config" -version = "1.8.4" +version = "1.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "483020b893cdef3d89637e428d588650c71cfae7ea2e6ecbaee4de4ff99fb2dd" +checksum = "8bc1b40fb26027769f16960d2f4a6bc20c4bb755d403e552c8c1a73af433c246" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1575,9 +1577,9 @@ dependencies = [ [[package]] name = "aws-credential-types" -version = "1.2.5" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1541072f81945fa1251f8795ef6c92c4282d74d59f88498ae7d4bf00f0ebdad9" +checksum = "d025db5d9f52cbc413b167136afb3d8aeea708c0d8884783cf6253be5e22f6f2" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -1634,9 +1636,9 @@ dependencies = [ [[package]] name = "aws-sdk-kms" -version = "1.82.0" +version = "1.86.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5296e1ff23bcb95f58a8250e2d00525daf23888ed2021c05bdfdbf79e1531784" +checksum = "15e7ef7189e532a6d7654befd668b535d31f261c61342397da47ccfa3fb0505a" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1656,9 +1658,9 @@ dependencies = [ [[package]] name = "aws-sdk-sso" -version = "1.79.0" +version = "1.83.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a847168f15b46329fa32c7aca4e4f1a2e072f9b422f0adb19756f2e1457f111" +checksum = "643cd43af212d2a1c4dedff6f044d7e1961e5d9e7cfe773d70f31d9842413886" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1678,9 +1680,9 @@ dependencies = [ [[package]] name = "aws-sdk-ssooidc" -version = "1.80.0" +version = "1.84.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b654dd24d65568738593e8239aef279a86a15374ec926ae8714e2d7245f34149" +checksum = "20ec4a95bd48e0db7a424356a161f8d87bd6a4f0af37204775f0da03d9e39fc3" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1700,9 +1702,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "1.81.0" +version = "1.85.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c92ea8a7602321c83615c82b408820ad54280fb026e92de0eeea937342fafa24" +checksum = "410309ad0df4606bc721aff0d89c3407682845453247213a0ccc5ff8801ee107" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1776,9 +1778,9 @@ dependencies = [ [[package]] name = "aws-smithy-http-client" -version = "1.0.6" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f108f1ca850f3feef3009bdcc977be201bca9a91058864d9de0684e64514bee0" +checksum = "147e8eea63a40315d704b97bf9bc9b8c1402ae94f89d5ad6f7550d963309da1b" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -1789,7 +1791,7 @@ dependencies = [ "http 1.3.1", "http-body 0.4.6", "hyper 0.14.32", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-rustls 0.24.2", "hyper-rustls 0.27.7", "hyper-util", @@ -1799,15 +1801,16 @@ dependencies = [ "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", + "tokio-rustls 0.26.2", "tower", "tracing", ] [[package]] name = "aws-smithy-json" -version = "0.61.4" +version = "0.61.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a16e040799d29c17412943bdbf488fd75db04112d0c0d4b9290bacf5ae0014b9" +checksum = "eaa31b350998e703e9826b2104dd6f63be0508666e1aba88137af060e8944047" dependencies = [ "aws-smithy-types", ] @@ -1833,9 +1836,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.8.6" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e107ce0783019dbff59b3a244aa0c114e4a8c9d93498af9162608cd5474e796" +checksum = "d3946acbe1ead1301ba6862e712c7903ca9bb230bdf1fbd1b5ac54158ef2ab1f" dependencies = [ "aws-smithy-async", "aws-smithy-http", @@ -1857,9 +1860,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime-api" -version = "1.8.7" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75d52251ed4b9776a3e8487b2a01ac915f73b2da3af8fc1e77e0fce697a550d4" +checksum = "07f5e0fc8a6b3f2303f331b94504bbf754d85488f402d6f1dd7a6080f99afe56" dependencies = [ "aws-smithy-async", "aws-smithy-types", @@ -2033,7 +2036,7 @@ version = "0.69.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cexpr", "clang-sys", "itertools 0.12.1", @@ -2046,7 +2049,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.104", + "syn 2.0.106", "which", ] @@ -2056,7 +2059,7 @@ version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cexpr", "clang-sys", "itertools 0.13.0", @@ -2065,7 +2068,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2107,9 +2110,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.1" +version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" +checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" dependencies = [ "serde", ] @@ -2185,11 +2188,11 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c340fe0f0b267787095cbe35240c6786ff19da63ec7b69367ba338eace8169b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "boa_interner", "boa_macros", "boa_string", - "indexmap 2.10.0", + "indexmap 2.11.0", "num-bigint", "rustc-hash 2.1.1", ] @@ -2201,7 +2204,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f620c3f06f51e65c0504ddf04978be1b814ac6586f0b45f6019801ab5efd37f9" dependencies = [ "arrayvec", - "bitflags 2.9.1", + "bitflags 2.9.4", "boa_ast", "boa_gc", "boa_interner", @@ -2215,7 +2218,7 @@ dependencies = [ "fast-float2", "hashbrown 0.15.5", "icu_normalizer 1.5.0", - "indexmap 2.10.0", + "indexmap 2.11.0", "intrusive-collections", "itertools 0.13.0", "num-bigint", @@ -2235,7 +2238,7 @@ dependencies = [ "static_assertions", "tap", "thin-vec", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", ] @@ -2261,7 +2264,7 @@ dependencies = [ "boa_gc", "boa_macros", "hashbrown 0.15.5", - "indexmap 2.10.0", + "indexmap 2.11.0", "once_cell", "phf", "rustc-hash 2.1.1", @@ -2276,7 +2279,7 @@ checksum = "9fd3f870829131332587f607a7ff909f1af5fc523fd1b192db55fbbdf52e8d3c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] @@ -2286,7 +2289,7 @@ version = "0.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9cc142dac798cdc6e2dbccfddeb50f36d2523bb977a976e19bdb3ae19b740804" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "boa_ast", "boa_interner", "boa_macros", @@ -2338,7 +2341,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2352,9 +2355,9 @@ dependencies = [ [[package]] name = "brotli" -version = "8.0.1" +version = "8.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9991eea70ea4f293524138648e41ee89b0b2b12ddef3b255effa43c8056e0e0d" +checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -2438,7 +2441,7 @@ checksum = "4f154e572231cb6ba2bd1176980827e3d5dc04cc183a75dea38109fbdd672d29" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2484,9 +2487,9 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.11" +version = "1.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d07aa9a93b00c76f71bc35d598bed923f6d4f3a9ca5c24b7737ae1a292841c0" +checksum = "dd0b03af37dad7a14518b7691d81acb0f8222604ad3d1b02f6b4bed5188c0cd5" dependencies = [ "serde", ] @@ -2524,7 +2527,7 @@ dependencies = [ "semver 1.0.26", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -2576,9 +2579,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.1" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" +checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" [[package]] name = "cfg_aliases" @@ -2598,7 +2601,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-link", + "windows-link 0.1.3", ] [[package]] @@ -2651,9 +2654,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.45" +version = "4.5.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc0e74a703892159f5ae7d3aac52c8e6c392f5ae5f359c70b5881d60aaac318" +checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931" dependencies = [ "clap_builder", "clap_derive", @@ -2661,9 +2664,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.44" +version = "4.5.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3e7f4214277f3c7aa526a59dd3fbe306a370daee1f8b7b8c987069cd8e888a8" +checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6" dependencies = [ "anstream", "anstyle", @@ -2673,14 +2676,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.45" +version = "4.5.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cb31bb0a7d536caef2639baa7fad459e15c3144efefa6dbd1c84562c4739f6" +checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -2794,11 +2797,11 @@ dependencies = [ [[package]] name = "comfy-table" -version = "7.1.4" +version = "7.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a" +checksum = "3f8e18d0dca9578507f13f9803add0df13362b02c501c1c17734f0dbb52eaf0b" dependencies = [ - "crossterm", + "crossterm 0.29.0", "unicode-segmentation", "unicode-width 0.2.0", ] @@ -2817,6 +2820,26 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "compression-codecs" +version = "0.4.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "485abf41ac0c8047c07c87c72c8fb3eb5197f6e9d7ded615dfd1a00ae00a0f64" +dependencies = [ + "brotli", + "compression-core", + "flate2", + "memchr", + "zstd", + "zstd-safe", +] + +[[package]] +name = "compression-core" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e47641d3deaf41fb1538ac1f54735925e275eaf3bf4d55c81b137fba797e5cbb" + [[package]] name = "concat-kdf" version = "0.1.0" @@ -2850,9 +2873,9 @@ dependencies = [ [[package]] name = "const-hex" -version = "1.14.1" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83e22e0ed40b96a48d3db274f72fd365bd78f67af39b6bbd47e8a15e1c6207ff" +checksum = "dccd746bf9b1038c0507b7cec21eb2b11222db96a2902c96e8c185d6d20fb9c4" dependencies = [ "cfg-if", "cpufeatures", @@ -3059,7 +3082,7 @@ version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "crossterm_winapi", "mio", "parking_lot 0.12.4", @@ -3069,6 +3092,20 @@ dependencies = [ "winapi", ] +[[package]] +name = "crossterm" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" +dependencies = [ + "bitflags 2.9.4", + "crossterm_winapi", + "document-features", + "parking_lot 0.12.4", + "rustix 1.0.8", + "winapi", +] + [[package]] name = "crossterm_winapi" version = "0.9.1" @@ -3140,7 +3177,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3149,8 +3186,18 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.20.11", + "darling_macro 0.20.11", +] + +[[package]] +name = "darling" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" +dependencies = [ + "darling_core 0.21.3", + "darling_macro 0.21.3", ] [[package]] @@ -3164,7 +3211,22 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.104", + "syn 2.0.106", +] + +[[package]] +name = "darling_core" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "serde", + "strsim", + "syn 2.0.106", ] [[package]] @@ -3173,9 +3235,20 @@ version = "0.20.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ - "darling_core", + "darling_core 0.20.11", + "quote", + "syn 2.0.106", +] + +[[package]] +name = "darling_macro" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" +dependencies = [ + "darling_core 0.21.3", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3228,7 +3301,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976" dependencies = [ "data-encoding", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3261,9 +3334,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.4.0" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e" +checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc" dependencies = [ "powerfmt", "serde", @@ -3288,18 +3361,18 @@ checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "derive_arbitrary" -version = "1.4.1" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3317,10 +3390,10 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3330,7 +3403,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3351,7 +3424,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "unicode-xid", ] @@ -3410,7 +3483,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.60.2", + "windows-sys 0.61.0", ] [[package]] @@ -3465,7 +3538,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3474,6 +3547,15 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" +[[package]] +name = "document-features" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" +dependencies = [ + "litrs", +] + [[package]] name = "dotenvy" version = "0.15.7" @@ -3541,7 +3623,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3582,7 +3664,7 @@ checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] name = "encoder-standard" version = "0.1.0" -source = "git+https://github.com/scroll-tech/da-codec#2cfec8c99547b68dc64e2b020fa2b83cfb9c0e99" +source = "git+https://github.com/scroll-tech/da-codec#b4cce5c5d17845fc6f4f6ec422d559470a09dca9" dependencies = [ "zstd", ] @@ -3625,7 +3707,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3645,7 +3727,7 @@ checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3656,7 +3738,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3740,10 +3822,10 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dd55d08012b4e0dfcc92b8d6081234df65f2986ad34cc76eeed69c5e2ce7506" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -3829,14 +3911,14 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "filetime" -version = "0.2.25" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +checksum = "bc0505cd1b6fa6580283f6bdf70a73fcf4aba1184038c90902b92b3dd0df63ed" dependencies = [ "cfg-if", "libc", "libredox", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -3901,9 +3983,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" dependencies = [ "percent-encoding", ] @@ -3996,7 +4078,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -4047,9 +4129,9 @@ checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" [[package]] name = "generator" -version = "0.8.5" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d18470a76cb7f8ff746cf1f7470914f900252ec36bbc40b569d74b1258446827" +checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2" dependencies = [ "cc", "cfg-if", @@ -4094,7 +4176,7 @@ dependencies = [ "js-sys", "libc", "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "wasi 0.14.4+wasi-0.2.4", "wasm-bindgen", ] @@ -4120,7 +4202,7 @@ version = "0.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2deb07a133b1520dc1a5690e9bd08950108873d7ed5de38dcc74d3b5ebffa110" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "libc", "libgit2-sys", "log", @@ -4181,12 +4263,12 @@ dependencies = [ [[package]] name = "gmp-mpfr-sys" -version = "1.6.5" +version = "1.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c66d61197a68f6323b9afa616cf83d55d69191e1bf364d4eb7d35ae18defe776" +checksum = "60f8970a75c006bb2f8ae79c6768a116dd215fa8346a87aed99bf9d82ca43394" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -4212,7 +4294,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.10.0", + "indexmap 2.11.0", "slab", "tokio", "tokio-util", @@ -4231,7 +4313,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.3.1", - "indexmap 2.10.0", + "indexmap 2.11.0", "slab", "tokio", "tokio-util", @@ -4373,7 +4455,7 @@ dependencies = [ "rand 0.9.2", "ring", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tinyvec", "tokio", "tracing", @@ -4397,7 +4479,7 @@ dependencies = [ "resolv-conf", "serde", "smallvec", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -4551,13 +4633,14 @@ dependencies = [ [[package]] name = "hyper" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +checksum = "eb3aa54a13a0dfe7fbe3a59e0c76093041720fdc77b110cc0fc260fafb4dc51e" dependencies = [ + "atomic-waker", "bytes", "futures-channel", - "futures-util", + "futures-core", "h2 0.4.12", "http 1.3.1", "http-body 1.0.1", @@ -4565,6 +4648,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", + "pin-utils", "smallvec", "tokio", "want", @@ -4593,7 +4677,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" dependencies = [ "http 1.3.1", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-util", "log", "rustls 0.23.31", @@ -4613,7 +4697,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-util", "native-tls", "tokio", @@ -4634,7 +4718,7 @@ dependencies = [ "futures-util", "http 1.3.1", "http-body 1.0.1", - "hyper 1.6.0", + "hyper 1.7.0", "ipnet", "libc", "percent-encoding", @@ -4872,7 +4956,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -4883,9 +4967,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" dependencies = [ "idna_adapter", "smallvec", @@ -4929,7 +5013,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -4970,9 +5054,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" +checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" dependencies = [ "arbitrary", "equivalent", @@ -5007,7 +5091,7 @@ checksum = "6c38228f24186d9cc68c729accb4d413be9eaed6ad07ff79e0270d9e56f3de13" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5016,7 +5100,7 @@ version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "inotify-sys", "libc", ] @@ -5046,11 +5130,11 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "435d80800b936787d62688c927b6490e887c7ef5ff9ce922c6c6050fca75eb9a" dependencies = [ - "darling", + "darling 0.20.11", "indoc", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5091,11 +5175,11 @@ dependencies = [ [[package]] name = "io-uring" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d93587f37623a1a17d94ef2bc9ada592f5465fe7732084ab7beefabe5c77c0c4" +checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cfg-if", "libc", ] @@ -5200,9 +5284,9 @@ checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] name = "jobserver" -version = "0.1.33" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" +checksum = "9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33" dependencies = [ "getrandom 0.3.3", "libc", @@ -5210,9 +5294,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "0c0b063578492ceec17683ef2f8c5e89121fbd0b172cbc280635ab7567db2738" dependencies = [ "once_cell", "wasm-bindgen", @@ -5253,7 +5337,7 @@ dependencies = [ "rustls-pki-types", "rustls-platform-verifier", "soketto", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-rustls 0.26.2", "tokio-util", @@ -5281,7 +5365,7 @@ dependencies = [ "rustc-hash 2.1.1", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tower", @@ -5297,7 +5381,7 @@ checksum = "6962d2bd295f75e97dd328891e58fce166894b974c1f7ce2e7597f02eeceb791" dependencies = [ "base64 0.22.1", "http-body 1.0.1", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-rustls 0.27.7", "hyper-util", "jsonrpsee-core", @@ -5306,7 +5390,7 @@ dependencies = [ "rustls-platform-verifier", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tower", "url", @@ -5322,7 +5406,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5335,7 +5419,7 @@ dependencies = [ "http 1.3.1", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-util", "jsonrpsee-core", "jsonrpsee-types", @@ -5344,7 +5428,7 @@ dependencies = [ "serde", "serde_json", "soketto", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -5361,7 +5445,7 @@ dependencies = [ "http 1.3.1", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -5522,7 +5606,7 @@ dependencies = [ "multihash", "quick-protobuf", "sha2 0.10.9", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", "zeroize", ] @@ -5544,7 +5628,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "libc", "redox_syscall 0.5.17", ] @@ -5658,6 +5742,12 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" +[[package]] +name = "litrs" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" + [[package]] name = "lock_api" version = "0.4.13" @@ -5671,9 +5761,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "loom" @@ -5685,7 +5775,7 @@ dependencies = [ "generator", "scoped-tls", "tracing", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -5754,16 +5844,16 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "matchers" -version = "0.1.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9" dependencies = [ - "regex-automata 0.1.10", + "regex-automata", ] [[package]] @@ -5784,9 +5874,9 @@ checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "memmap2" -version = "0.9.7" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "483758ad303d734cec05e5c12b41d7e93e6a6390c5e9dae6bdeb7c1259012d28" +checksum = "843a98750cd611cc2965a8213b53b43e715f13c37a9e096c6408e69990961db7" dependencies = [ "libc", ] @@ -5819,7 +5909,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -5829,7 +5919,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd7399781913e5393588a8d8c6a2867bf85fb38eaf2502fdce465aad2dc6f034" dependencies = [ "base64 0.22.1", - "indexmap 2.10.0", + "indexmap 2.11.0", "metrics", "metrics-util", "quanta", @@ -6045,7 +6135,7 @@ version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4d3d07927151ff8575b7087f245456e549fea62edf0ec4e565a5ee50c8402bc3" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "fsevent-sys", "inotify", "kqueue", @@ -6074,12 +6164,11 @@ dependencies = [ [[package]] name = "nu-ansi-term" -version = "0.46.0" +version = "0.50.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +checksum = "d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399" dependencies = [ - "overload", - "winapi", + "windows-sys 0.52.0", ] [[package]] @@ -6209,7 +6298,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6240,9 +6329,9 @@ dependencies = [ [[package]] name = "nybbles" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ff79de40513a478a9e374a480f897c2df829d48dcc64a83e4792a57fe231c64" +checksum = "63cb50036b1ad148038105af40aaa70ff24d8a14fbc44ae5c914e1348533d12e" dependencies = [ "alloy-rlp", "arbitrary", @@ -6290,16 +6379,16 @@ version = "0.18.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c88d2940558fd69f8f07b3cbd7bb3c02fc7d31159c1a7ba9deede50e7881024" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "arbitrary", "derive_more", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -6308,19 +6397,19 @@ version = "0.18.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b2b4f977b51e9e177e69a4d241ab7c4b439df9a3a5a998c000ae01be724de271" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-engine 1.0.24", - "alloy-serde 1.0.24", + "alloy-rpc-types-engine 1.0.30", + "alloy-serde 1.0.30", "derive_more", "ethereum_ssz", "ethereum_ssz_derive", "op-alloy-consensus", "serde", "snap", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -6346,7 +6435,7 @@ version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cfg-if", "foreign-types", "libc", @@ -6363,7 +6452,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6420,7 +6509,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6429,12 +6518,6 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - [[package]] name = "owo-colors" version = "4.2.2" @@ -6490,7 +6573,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6584,9 +6667,9 @@ dependencies = [ [[package]] name = "percent-encoding" -version = "2.3.1" +version = "2.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" @@ -6595,7 +6678,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" dependencies = [ "memchr", - "thiserror 2.0.14", + "thiserror 2.0.16", "ucd-trie", ] @@ -6649,7 +6732,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6678,7 +6761,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6783,9 +6866,9 @@ checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" [[package]] name = "potential_utf" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" dependencies = [ "zerovec 0.11.4", ] @@ -6817,12 +6900,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.36" +version = "0.2.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff24dfcda44452b9816fff4cd4227e1bb73ff5a2f1bc1105aa92fb8565ce44d2" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6873,14 +6956,14 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "proc-macro2" -version = "1.0.97" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61789d7719defeb74ea5fe81f2fdfdbd28a803847077cecce2ff14e1472f6f1" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -6893,7 +6976,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "version_check", "yansi", ] @@ -6904,7 +6987,7 @@ version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc5b72d8145275d844d4b5f6d4e1eef00c8cd889edb6035c21675d1bb1f45c9f" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "chrono", "flate2", "hex", @@ -6918,7 +7001,7 @@ version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "239df02d8349b06fc07398a3a1697b06418223b1c7725085e801e7c0fc6a12ec" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "chrono", "hex", ] @@ -6931,13 +7014,13 @@ checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.9.1", + "bitflags 2.9.4", "lazy_static", "num-traits", "rand 0.9.2", "rand_chacha 0.9.0", "rand_xorshift", - "regex-syntax 0.8.5", + "regex-syntax", "rusty-fork", "tempfile", "unarray", @@ -6961,7 +7044,7 @@ checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -6990,7 +7073,7 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "57206b407293d2bcd3af849ce869d52068623f19e1b5ff8e8778e3309439682b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "memchr", "unicase", ] @@ -7027,9 +7110,9 @@ dependencies = [ [[package]] name = "quinn" -version = "0.11.8" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" dependencies = [ "bytes", "cfg_aliases", @@ -7038,8 +7121,8 @@ dependencies = [ "quinn-udp", "rustc-hash 2.1.1", "rustls 0.23.31", - "socket2 0.5.10", - "thiserror 2.0.14", + "socket2 0.6.0", + "thiserror 2.0.16", "tokio", "tracing", "web-time", @@ -7047,9 +7130,9 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.11.12" +version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e" +checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ "bytes", "getrandom 0.3.3", @@ -7060,7 +7143,7 @@ dependencies = [ "rustls 0.23.31", "rustls-pki-types", "slab", - "thiserror 2.0.14", + "thiserror 2.0.16", "tinyvec", "tracing", "web-time", @@ -7068,16 +7151,16 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.13" +version = "0.5.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970" +checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.5.10", + "socket2 0.6.0", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -7187,10 +7270,10 @@ version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "cassowary", "compact_str", - "crossterm", + "crossterm 0.28.1", "indoc", "instability", "itertools 0.13.0", @@ -7204,18 +7287,18 @@ dependencies = [ [[package]] name = "raw-cpuid" -version = "11.5.0" +version = "11.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" +checksum = "498cd0dc59d73224351ee52a95fee0f1a617a2eae0e7d9d720cc622c73a54186" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", ] [[package]] name = "rayon" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" dependencies = [ "either", "rayon-core", @@ -7223,9 +7306,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -7252,7 +7335,7 @@ version = "0.5.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", ] [[package]] @@ -7274,7 +7357,7 @@ checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ "getrandom 0.2.16", "libredox", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -7294,58 +7377,43 @@ checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "regex" -version = "1.11.1" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - -[[package]] -name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" -dependencies = [ - "regex-syntax 0.6.29", + "regex-automata", + "regex-syntax", ] [[package]] name = "regex-automata" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.8.5", + "regex-syntax", ] [[package]] name = "regex-lite" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" - -[[package]] -name = "regex-syntax" -version = "0.6.29" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +checksum = "943f41321c63ef1c92fd763bfe054d2668f7f225a5c29f0105903dc2fc04ba30" [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" [[package]] name = "regress" @@ -7382,7 +7450,7 @@ dependencies = [ "http 1.3.1", "http-body 1.0.1", "http-body-util", - "hyper 1.6.0", + "hyper 1.7.0", "hyper-rustls 0.27.7", "hyper-tls", "hyper-util", @@ -7441,7 +7509,7 @@ dependencies = [ "futures", "getrandom 0.2.16", "http 1.3.1", - "hyper 1.6.0", + "hyper 1.7.0", "parking_lot 0.11.2", "reqwest", "reqwest-middleware", @@ -7461,10 +7529,10 @@ checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" [[package]] name = "reth-basic-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "futures-core", "futures-util", @@ -7485,10 +7553,10 @@ dependencies = [ [[package]] name = "reth-chain-state" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-signer", "alloy-signer-local", @@ -7516,15 +7584,15 @@ dependencies = [ [[package]] name = "reth-chainspec" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-genesis", "alloy-primitives", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "auto_impl", "derive_more", "reth-ethereum-forks", @@ -7536,7 +7604,7 @@ dependencies = [ [[package]] name = "reth-cli" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-genesis", "clap", @@ -7550,18 +7618,18 @@ dependencies = [ [[package]] name = "reth-cli-commands" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "ahash 0.8.12", "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "backon", "clap", "comfy-table", - "crossterm", + "crossterm 0.28.1", "eyre", "fdlimit", "futures", @@ -7623,7 +7691,7 @@ dependencies = [ [[package]] name = "reth-cli-runner" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "reth-tasks", "tokio", @@ -7633,9 +7701,9 @@ dependencies = [ [[package]] name = "reth-cli-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "cfg-if", "eyre", @@ -7644,19 +7712,19 @@ dependencies = [ "reth-fs-util", "secp256k1 0.30.0", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-codecs" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-primitives", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "arbitrary", "bytes", "modular-bitfield", @@ -7670,18 +7738,18 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "reth-config" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "eyre", "humantime-serde", @@ -7696,23 +7764,23 @@ dependencies = [ [[package]] name = "reth-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "auto_impl", "reth-execution-types", "reth-primitives-traits", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-consensus-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "reth-chainspec", "reth-consensus", "reth-primitives-traits", @@ -7721,14 +7789,14 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-primitives", "alloy-provider", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "auto_impl", "derive_more", "eyre", @@ -7746,7 +7814,7 @@ dependencies = [ [[package]] name = "reth-db" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "derive_more", @@ -7766,15 +7834,15 @@ dependencies = [ "strum 0.27.2", "sysinfo", "tempfile", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-db-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-genesis", "alloy-primitives", "arbitrary", @@ -7801,9 +7869,9 @@ dependencies = [ [[package]] name = "reth-db-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-genesis", "alloy-primitives", "boyer-moore-magiclen", @@ -7824,16 +7892,16 @@ dependencies = [ "reth-trie-db", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "reth-db-models" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "arbitrary", "bytes", @@ -7846,7 +7914,7 @@ dependencies = [ [[package]] name = "reth-discv4" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7863,7 +7931,7 @@ dependencies = [ "schnellru", "secp256k1 0.30.0", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -7872,7 +7940,7 @@ dependencies = [ [[package]] name = "reth-discv5" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7888,7 +7956,7 @@ dependencies = [ "reth-metrics", "reth-network-peers", "secp256k1 0.30.0", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -7896,7 +7964,7 @@ dependencies = [ [[package]] name = "reth-dns-discovery" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "data-encoding", @@ -7911,7 +7979,7 @@ dependencies = [ "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -7920,10 +7988,10 @@ dependencies = [ [[package]] name = "reth-downloaders" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "futures", @@ -7945,7 +8013,7 @@ dependencies = [ "reth-tasks", "reth-testing-utils", "tempfile", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -7955,16 +8023,16 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-network", "alloy-primitives", "alloy-provider", "alloy-rlp", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "alloy-signer", "alloy-signer-local", @@ -8018,7 +8086,7 @@ dependencies = [ [[package]] name = "reth-ecies" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "aes", "alloy-primitives", @@ -8038,7 +8106,7 @@ dependencies = [ "secp256k1 0.30.0", "sha2 0.10.9", "sha3", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -8049,11 +8117,11 @@ dependencies = [ [[package]] name = "reth-engine-local" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "eyre", "futures-util", "reth-chainspec", @@ -8072,12 +8140,12 @@ dependencies = [ [[package]] name = "reth-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "auto_impl", "futures", "reth-chain-state", @@ -8090,14 +8158,14 @@ dependencies = [ "reth-primitives-traits", "reth-trie-common", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", ] [[package]] name = "reth-engine-service" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "futures", "pin-project", @@ -8114,20 +8182,20 @@ dependencies = [ "reth-prune", "reth-stages-api", "reth-tasks", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-engine-tree" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "derive_more", "futures", "metrics", @@ -8164,7 +8232,7 @@ dependencies = [ "revm", "revm-primitives", "schnellru", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -8172,10 +8240,10 @@ dependencies = [ [[package]] name = "reth-engine-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-rpc-types-engine 1.0.24", + "alloy-consensus 1.0.30", + "alloy-rpc-types-engine 1.0.30", "eyre", "futures", "itertools 0.14.0", @@ -8200,23 +8268,23 @@ dependencies = [ [[package]] name = "reth-era" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "ethereum_ssz", "ethereum_ssz_derive", "reth-ethereum-primitives", "snap", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-era-downloader" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "bytes", @@ -8231,9 +8299,9 @@ dependencies = [ [[package]] name = "reth-era-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rlp", "eyre", @@ -8255,18 +8323,18 @@ dependencies = [ [[package]] name = "reth-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "reth-consensus", "reth-execution-errors", "reth-storage-errors", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-eth-wire" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-chains", "alloy-primitives", @@ -8284,7 +8352,7 @@ dependencies = [ "reth-primitives-traits", "serde", "snap", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -8294,11 +8362,11 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-hardforks", "alloy-primitives", "alloy-rlp", @@ -8309,16 +8377,16 @@ dependencies = [ "reth-ethereum-primitives", "reth-primitives-traits", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-ethereum-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "reth-chainspec", "reth-consensus", @@ -8331,25 +8399,25 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "reth-engine-primitives", "reth-ethereum-primitives", "reth-payload-primitives", "reth-primitives-traits", "serde", "sha2 0.10.9", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-ethereum-forks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -8363,12 +8431,12 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "reth-basic-payload-builder", "reth-chainspec", "reth-errors", @@ -8390,10 +8458,10 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "arbitrary", @@ -8408,7 +8476,7 @@ dependencies = [ [[package]] name = "reth-etl" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "rayon", "reth-db-api", @@ -8418,10 +8486,10 @@ dependencies = [ [[package]] name = "reth-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", "auto_impl", @@ -8442,13 +8510,13 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "reth-chainspec", "reth-ethereum-forks", "reth-ethereum-primitives", @@ -8462,23 +8530,23 @@ dependencies = [ [[package]] name = "reth-execution-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-evm", "alloy-primitives", "alloy-rlp", - "nybbles 0.4.2", + "nybbles 0.4.3", "reth-storage-errors", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-execution-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", "derive_more", @@ -8493,10 +8561,10 @@ dependencies = [ [[package]] name = "reth-exex" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "eyre", "futures", @@ -8522,7 +8590,7 @@ dependencies = [ "reth-tasks", "reth-tracing", "rmp-serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-util", "tracing", @@ -8531,9 +8599,9 @@ dependencies = [ [[package]] name = "reth-exex-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "reth-chain-state", "reth-execution-types", @@ -8545,19 +8613,19 @@ dependencies = [ [[package]] name = "reth-fs-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-invalid-block-hooks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-debug", @@ -8583,7 +8651,7 @@ dependencies = [ [[package]] name = "reth-ipc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "bytes", "futures", @@ -8592,7 +8660,7 @@ dependencies = [ "jsonrpsee", "pin-project", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -8603,24 +8671,24 @@ dependencies = [ [[package]] name = "reth-libmdbx" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "byteorder", "dashmap 6.1.0", "derive_more", - "indexmap 2.10.0", + "indexmap 2.11.0", "parking_lot 0.12.4", "reth-mdbx-sys", "smallvec", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "reth-mdbx-sys" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "bindgen 0.70.1", "cc", @@ -8629,7 +8697,7 @@ dependencies = [ [[package]] name = "reth-metrics" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "futures", "metrics", @@ -8641,7 +8709,7 @@ dependencies = [ [[package]] name = "reth-net-banlist" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", ] @@ -8649,13 +8717,13 @@ dependencies = [ [[package]] name = "reth-net-nat" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "futures-util", "if-addrs", "reqwest", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -8663,13 +8731,14 @@ dependencies = [ [[package]] name = "reth-network" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "aquamarine", + "async-trait", "auto_impl", "derive_more", "discv5", @@ -8708,7 +8777,7 @@ dependencies = [ "secp256k1 0.30.0", "serde", "smallvec", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-util", @@ -8718,9 +8787,9 @@ dependencies = [ [[package]] name = "reth-network-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rpc-types-admin", "alloy-rpc-types-eth", @@ -8736,7 +8805,7 @@ dependencies = [ "reth-primitives-traits", "reth-tokio-util", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", ] @@ -8744,10 +8813,10 @@ dependencies = [ [[package]] name = "reth-network-p2p" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "auto_impl", "derive_more", @@ -8767,14 +8836,14 @@ dependencies = [ [[package]] name = "reth-network-peers" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", "enr", "secp256k1 0.30.0", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "url", ] @@ -8782,7 +8851,7 @@ dependencies = [ [[package]] name = "reth-network-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -8796,7 +8865,7 @@ dependencies = [ [[package]] name = "reth-nippy-jar" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "anyhow", "bincode", @@ -8805,7 +8874,7 @@ dependencies = [ "memmap2", "reth-fs-util", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", "zstd", ] @@ -8813,9 +8882,9 @@ dependencies = [ [[package]] name = "reth-node-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "eyre", "reth-basic-payload-builder", "reth-consensus", @@ -8837,14 +8906,14 @@ dependencies = [ [[package]] name = "reth-node-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-provider", "alloy-rpc-types", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "aquamarine", "eyre", "fdlimit", @@ -8905,12 +8974,12 @@ dependencies = [ [[package]] name = "reth-node-core" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "clap", "derive_more", "dirs-next", @@ -8946,7 +9015,7 @@ dependencies = [ "serde", "shellexpand", "strum 0.27.2", - "thiserror 2.0.14", + "thiserror 2.0.16", "toml", "tracing", "url", @@ -8957,11 +9026,11 @@ dependencies = [ [[package]] name = "reth-node-ethereum" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-network", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "eyre", "reth-chainspec", @@ -8995,9 +9064,9 @@ dependencies = [ [[package]] name = "reth-node-ethstats" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "chrono", "futures-util", @@ -9008,7 +9077,7 @@ dependencies = [ "reth-transaction-pool", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tokio-tungstenite", @@ -9019,12 +9088,12 @@ dependencies = [ [[package]] name = "reth-node-events" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "derive_more", "futures", "humantime", @@ -9043,7 +9112,7 @@ dependencies = [ [[package]] name = "reth-node-metrics" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "eyre", "http 1.3.1", @@ -9063,7 +9132,7 @@ dependencies = [ [[package]] name = "reth-node-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "reth-chainspec", "reth-db-api", @@ -9076,10 +9145,10 @@ dependencies = [ [[package]] name = "reth-optimism-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "arbitrary", @@ -9095,9 +9164,9 @@ dependencies = [ [[package]] name = "reth-payload-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rpc-types", "futures-util", @@ -9116,7 +9185,7 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "pin-project", "reth-payload-primitives", @@ -9128,11 +9197,11 @@ dependencies = [ [[package]] name = "reth-payload-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "auto_impl", "op-alloy-rpc-types-engine", "reth-chain-state", @@ -9141,16 +9210,16 @@ dependencies = [ "reth-primitives-traits", "scroll-alloy-rpc-types-engine", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", ] [[package]] name = "reth-payload-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "reth-transaction-pool", ] @@ -9158,19 +9227,19 @@ dependencies = [ [[package]] name = "reth-payload-validator" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-rpc-types-engine 1.0.24", + "alloy-consensus 1.0.30", + "alloy-rpc-types-engine 1.0.30", "reth-primitives-traits", ] [[package]] name = "reth-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "c-kzg", "once_cell", "reth-ethereum-forks", @@ -9182,15 +9251,15 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "arbitrary", "auto_impl", "byteorder", @@ -9210,18 +9279,18 @@ dependencies = [ "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-provider" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "dashmap 6.1.0", "eyre", "itertools 0.14.0", @@ -9261,10 +9330,10 @@ dependencies = [ [[package]] name = "reth-prune" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "itertools 0.14.0", "metrics", @@ -9281,7 +9350,7 @@ dependencies = [ "reth-static-file-types", "reth-tokio-util", "rustc-hash 2.1.1", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -9289,7 +9358,7 @@ dependencies = [ [[package]] name = "reth-prune-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "arbitrary", @@ -9297,13 +9366,13 @@ dependencies = [ "modular-bitfield", "reth-codecs", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-revm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "reth-primitives-traits", @@ -9316,11 +9385,11 @@ dependencies = [ [[package]] name = "reth-rpc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-dyn-abi", - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-evm", "alloy-genesis", "alloy-network", @@ -9328,14 +9397,14 @@ dependencies = [ "alloy-rlp", "alloy-rpc-types", "alloy-rpc-types-admin", - "alloy-rpc-types-beacon 1.0.24", + "alloy-rpc-types-beacon 1.0.30", "alloy-rpc-types-debug", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "alloy-rpc-types-mev", "alloy-rpc-types-trace", "alloy-rpc-types-txpool", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "alloy-signer", "alloy-signer-local", "async-trait", @@ -9343,7 +9412,7 @@ dependencies = [ "futures", "http 1.3.1", "http-body 1.0.1", - "hyper 1.6.0", + "hyper 1.7.0", "itertools 0.14.0", "jsonrpsee", "jsonrpsee-types", @@ -9382,7 +9451,7 @@ dependencies = [ "serde", "serde_json", "sha2 0.10.9", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tower", @@ -9393,23 +9462,23 @@ dependencies = [ [[package]] name = "reth-rpc-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-json-rpc", "alloy-primitives", "alloy-rpc-types", "alloy-rpc-types-admin", "alloy-rpc-types-anvil", - "alloy-rpc-types-beacon 1.0.24", + "alloy-rpc-types-beacon 1.0.30", "alloy-rpc-types-debug", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "alloy-rpc-types-mev", "alloy-rpc-types-trace", "alloy-rpc-types-txpool", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "jsonrpsee", "reth-chain-state", "reth-engine-primitives", @@ -9421,7 +9490,7 @@ dependencies = [ [[package]] name = "reth-rpc-builder" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-network", "alloy-provider", @@ -9448,7 +9517,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-util", "tower", @@ -9459,9 +9528,9 @@ dependencies = [ [[package]] name = "reth-rpc-convert" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-json-rpc", "alloy-network", "alloy-primitives", @@ -9478,17 +9547,17 @@ dependencies = [ "scroll-alloy-consensus", "scroll-alloy-evm", "scroll-alloy-rpc-types", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-rpc-engine-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "async-trait", "jsonrpsee-core", "jsonrpsee-types", @@ -9506,7 +9575,7 @@ dependencies = [ "reth-tasks", "reth-transaction-pool", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -9514,11 +9583,11 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-dyn-abi", - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-evm", "alloy-json-rpc", "alloy-network", @@ -9526,7 +9595,7 @@ dependencies = [ "alloy-rlp", "alloy-rpc-types-eth", "alloy-rpc-types-mev", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "async-trait", "auto_impl", "dyn-clone", @@ -9559,10 +9628,10 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-network", "alloy-primitives", @@ -9594,7 +9663,7 @@ dependencies = [ "revm-inspectors", "schnellru", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -9603,9 +9672,9 @@ dependencies = [ [[package]] name = "reth-rpc-layer" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "http 1.3.1", "jsonrpsee-http-client", "pin-project", @@ -9617,11 +9686,11 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "jsonrpsee-core", "jsonrpsee-types", "reth-errors", @@ -9633,14 +9702,14 @@ dependencies = [ [[package]] name = "reth-scroll-chainspec" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-primitives", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "auto_impl", "derive_more", "once_cell", @@ -9658,7 +9727,7 @@ dependencies = [ [[package]] name = "reth-scroll-cli" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "clap", "eyre", @@ -9682,9 +9751,9 @@ dependencies = [ [[package]] name = "reth-scroll-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "reth-chainspec", "reth-consensus", @@ -9695,20 +9764,20 @@ dependencies = [ "reth-scroll-primitives", "scroll-alloy-consensus", "scroll-alloy-hardforks", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "reth-scroll-engine-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "reth-chain-state", "reth-chainspec", "reth-engine-primitives", @@ -9727,13 +9796,13 @@ dependencies = [ [[package]] name = "reth-scroll-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "derive_more", "reth-chainspec", "reth-evm", @@ -9750,14 +9819,14 @@ dependencies = [ "scroll-alloy-consensus", "scroll-alloy-evm", "scroll-alloy-hardforks", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "reth-scroll-forks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-chains", "alloy-primitives", @@ -9771,12 +9840,12 @@ dependencies = [ [[package]] name = "reth-scroll-node" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-genesis", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "clap", "eyre", @@ -9823,9 +9892,9 @@ dependencies = [ [[package]] name = "reth-scroll-payload" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rlp", "futures-util", @@ -9847,17 +9916,17 @@ dependencies = [ "reth-transaction-pool", "revm", "scroll-alloy-hardforks", - "thiserror 2.0.14", + "thiserror 2.0.16", "tracing", ] [[package]] name = "reth-scroll-primitives" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "arbitrary", @@ -9874,10 +9943,10 @@ dependencies = [ [[package]] name = "reth-scroll-rpc" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-primitives", "alloy-rpc-client", @@ -9907,7 +9976,7 @@ dependencies = [ "scroll-alloy-hardforks", "scroll-alloy-network", "scroll-alloy-rpc-types", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -9915,10 +9984,10 @@ dependencies = [ [[package]] name = "reth-scroll-txpool" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "c-kzg", "derive_more", @@ -9939,10 +10008,10 @@ dependencies = [ [[package]] name = "reth-stages" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "bincode", "blake3", @@ -9981,7 +10050,7 @@ dependencies = [ "reth-trie-db", "serde", "tempfile", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -9989,9 +10058,9 @@ dependencies = [ [[package]] name = "reth-stages-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "aquamarine", "auto_impl", @@ -10008,7 +10077,7 @@ dependencies = [ "reth-static-file", "reth-static-file-types", "reth-tokio-util", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -10016,7 +10085,7 @@ dependencies = [ [[package]] name = "reth-stages-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "arbitrary", @@ -10030,7 +10099,7 @@ dependencies = [ [[package]] name = "reth-static-file" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "parking_lot 0.12.4", @@ -10050,7 +10119,7 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "clap", @@ -10062,12 +10131,12 @@ dependencies = [ [[package]] name = "reth-storage-api" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "auto_impl", "reth-chainspec", "reth-db-api", @@ -10086,9 +10155,9 @@ dependencies = [ [[package]] name = "reth-storage-errors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "derive_more", @@ -10096,13 +10165,13 @@ dependencies = [ "reth-prune-types", "reth-static-file-types", "revm-database-interface", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] name = "reth-tasks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "auto_impl", "dyn-clone", @@ -10111,7 +10180,7 @@ dependencies = [ "pin-project", "rayon", "reth-metrics", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", "tracing-futures", @@ -10120,10 +10189,10 @@ dependencies = [ [[package]] name = "reth-testing-utils" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-genesis", "alloy-primitives", "rand 0.8.5", @@ -10136,7 +10205,7 @@ dependencies = [ [[package]] name = "reth-tokio-util" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "tokio", "tokio-stream", @@ -10146,7 +10215,7 @@ dependencies = [ [[package]] name = "reth-tracing" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "clap", "eyre", @@ -10155,21 +10224,21 @@ dependencies = [ "tracing-appender", "tracing-journald", "tracing-logfmt", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] name = "reth-transaction-pool" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "aquamarine", "auto_impl", - "bitflags 2.9.1", + "bitflags 2.9.4", "futures-util", "metrics", "parking_lot 0.12.4", @@ -10192,7 +10261,7 @@ dependencies = [ "serde", "serde_json", "smallvec", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -10201,13 +10270,13 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "auto_impl", "itertools 0.14.0", "metrics", @@ -10226,20 +10295,20 @@ dependencies = [ [[package]] name = "reth-trie-common" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", - "alloy-trie 0.9.0", + "alloy-serde 1.0.30", + "alloy-trie 0.9.1", "arbitrary", "bytes", "derive_more", "hash-db", "itertools 0.14.0", - "nybbles 0.4.2", + "nybbles 0.4.3", "plain_hasher", "reth-codecs", "reth-primitives-traits", @@ -10251,7 +10320,7 @@ dependencies = [ [[package]] name = "reth-trie-db" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "reth-db-api", @@ -10264,7 +10333,7 @@ dependencies = [ [[package]] name = "reth-trie-parallel" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -10281,7 +10350,7 @@ dependencies = [ "reth-trie-common", "reth-trie-db", "reth-trie-sparse", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -10289,11 +10358,11 @@ dependencies = [ [[package]] name = "reth-trie-sparse" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "auto_impl", "metrics", "rayon", @@ -10308,11 +10377,11 @@ dependencies = [ [[package]] name = "reth-trie-sparse-parallel" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-rlp", - "alloy-trie 0.9.0", + "alloy-trie 0.9.1", "metrics", "rayon", "reth-execution-errors", @@ -10326,7 +10395,7 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "zstd", ] @@ -10405,7 +10474,7 @@ name = "revm-database" version = "7.0.2" source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "revm-bytecode", "revm-database-interface", "revm-primitives", @@ -10462,9 +10531,9 @@ dependencies = [ [[package]] name = "revm-inspectors" -version = "0.27.1" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aad27cab355b0aa905d0744f3222e716b40ad48b32276ac4b0a615f2c3364c97" +checksum = "0dc2c1ee7db275fd7176cd1d873fa033e5a16e029c5c793661c5a13381e80534" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -10477,7 +10546,7 @@ dependencies = [ "revm", "serde", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -10530,7 +10599,7 @@ dependencies = [ [[package]] name = "revm-scroll" version = "0.1.0" -source = "git+https://github.com/scroll-tech/scroll-revm#720ee7802e5ad695ac1f8699bbab9c9f2424417f" +source = "git+https://github.com/scroll-tech/scroll-revm#59d400f1a0b616d7b97a24da1cb5b8dcb8006f4b" dependencies = [ "auto_impl", "enumn", @@ -10546,7 +10615,7 @@ name = "revm-state" version = "7.0.2" source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "revm-bytecode", "revm-primitives", "serde", @@ -10685,11 +10754,11 @@ name = "rollup-node" version = "0.0.1" dependencies = [ "alloy-chains", - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-provider", "alloy-rpc-client", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-rpc-types-eth", "alloy-signer", "alloy-signer-aws", @@ -10766,8 +10835,8 @@ dependencies = [ name = "rollup-node-chain-orchestrator" version = "0.0.1" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-primitives", "alloy-provider", @@ -10798,7 +10867,7 @@ dependencies = [ "scroll-network", "serde_json", "strum 0.27.2", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -10809,11 +10878,11 @@ name = "rollup-node-manager" version = "0.0.1" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-provider", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "futures", "metrics", "metrics-derive", @@ -10851,10 +10920,10 @@ name = "rollup-node-primitives" version = "0.0.1" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "arbitrary", "derive_more", "eyre", @@ -10872,7 +10941,7 @@ dependencies = [ name = "rollup-node-providers" version = "0.0.1" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-provider", "alloy-rpc-client", @@ -10891,7 +10960,7 @@ dependencies = [ "scroll-alloy-rpc-types-engine", "scroll-db", "serde", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", ] @@ -10899,10 +10968,10 @@ dependencies = [ name = "rollup-node-sequencer" version = "0.0.1" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-signer-local", "eyre", "futures", @@ -10925,7 +10994,7 @@ dependencies = [ "scroll-db", "scroll-engine", "tempfile", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -10943,7 +11012,7 @@ dependencies = [ "reth-scroll-primitives", "reth-tracing", "rollup-node-primitives", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -10953,8 +11022,8 @@ dependencies = [ name = "rollup-node-watcher" version = "0.0.1" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-json-rpc", "alloy-network", "alloy-primitives", @@ -10975,7 +11044,7 @@ dependencies = [ "rollup-node-providers", "scroll-alloy-consensus", "scroll-l1", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -11008,9 +11077,9 @@ dependencies = [ [[package]] name = "rug" -version = "1.27.0" +version = "1.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4207e8d668e5b8eb574bda8322088ccd0d7782d3d03c7e8d562e82ed82bdcbc3" +checksum = "58ad2e973fe3c3214251a840a621812a4f40468da814b1a3d6947d433c2af11f" dependencies = [ "az", "gmp-mpfr-sys", @@ -11119,7 +11188,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "errno", "libc", "linux-raw-sys 0.4.15", @@ -11132,7 +11201,7 @@ version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "errno", "libc", "linux-raw-sys 0.9.4", @@ -11188,7 +11257,7 @@ dependencies = [ "openssl-probe", "rustls-pki-types", "schannel", - "security-framework 3.3.0", + "security-framework 3.4.0", ] [[package]] @@ -11225,7 +11294,7 @@ dependencies = [ "rustls-native-certs 0.8.1", "rustls-platform-verifier-android", "rustls-webpki 0.103.4", - "security-framework 3.3.0", + "security-framework 3.4.0", "security-framework-sys", "webpki-root-certs 0.26.11", "windows-sys 0.59.0", @@ -11357,13 +11426,13 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "arbitrary", "derive_more", "modular-bitfield", @@ -11376,10 +11445,10 @@ dependencies = [ [[package]] name = "scroll-alloy-evm" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-evm", "alloy-primitives", "auto_impl", @@ -11394,7 +11463,7 @@ dependencies = [ [[package]] name = "scroll-alloy-hardforks" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-hardforks", "auto_impl", @@ -11404,9 +11473,9 @@ dependencies = [ [[package]] name = "scroll-alloy-network" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", + "alloy-consensus 1.0.30", "alloy-network", "alloy-primitives", "alloy-provider", @@ -11419,12 +11488,12 @@ dependencies = [ [[package]] name = "scroll-alloy-provider" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", "alloy-provider", "alloy-rpc-client", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "alloy-transport", "alloy-transport-http", "async-trait", @@ -11437,21 +11506,21 @@ dependencies = [ "reth-scroll-engine-primitives", "scroll-alloy-network", "scroll-alloy-rpc-types-engine", - "thiserror 2.0.14", + "thiserror 2.0.16", "tower", ] [[package]] name = "scroll-alloy-rpc-types" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-network-primitives", "alloy-primitives", "alloy-rpc-types-eth", - "alloy-serde 1.0.24", + "alloy-serde 1.0.30", "derive_more", "scroll-alloy-consensus", "serde", @@ -11461,10 +11530,10 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types-engine" version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth.git#260f87ec9a24a3d5a6fc849837353d85f1784c5a" +source = "git+https://github.com/scroll-tech/reth.git#af87226a789fb381bf219e1e93a02290892c11ae" dependencies = [ "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "arbitrary", "serde", ] @@ -11473,7 +11542,7 @@ dependencies = [ name = "scroll-codec" version = "0.1.0" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-rlp", "alloy-sol-types", @@ -11483,7 +11552,7 @@ dependencies = [ "scroll-alloy-consensus", "scroll-l1", "serde_json", - "thiserror 2.0.14", + "thiserror 2.0.16", "zstd", ] @@ -11491,7 +11560,7 @@ dependencies = [ name = "scroll-db" version = "0.0.1" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", "arbitrary", "async-trait", @@ -11503,7 +11572,7 @@ dependencies = [ "scroll-alloy-rpc-types-engine", "scroll-migration", "sea-orm", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -11512,9 +11581,9 @@ dependencies = [ name = "scroll-derivation-pipeline" version = "0.0.1" dependencies = [ - "alloy-eips 1.0.24", + "alloy-eips 1.0.30", "alloy-primitives", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "async-trait", "criterion", "eyre", @@ -11527,7 +11596,7 @@ dependencies = [ "scroll-alloy-rpc-types-engine", "scroll-codec", "scroll-db", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -11537,11 +11606,11 @@ name = "scroll-engine" version = "0.0.1" dependencies = [ "alloy-chains", - "alloy-consensus 1.0.24", - "alloy-eips 1.0.24", + "alloy-consensus 1.0.30", + "alloy-eips 1.0.30", "alloy-primitives", "alloy-provider", - "alloy-rpc-types-engine 1.0.24", + "alloy-rpc-types-engine 1.0.30", "arbitrary", "async-trait", "eyre", @@ -11565,7 +11634,7 @@ dependencies = [ "scroll-alloy-rpc-types-engine", "scroll-engine", "scroll-network", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tracing", ] @@ -11580,7 +11649,7 @@ dependencies = [ "bitvec", "derive_more", "scroll-alloy-consensus", - "thiserror 2.0.14", + "thiserror 2.0.16", ] [[package]] @@ -11623,7 +11692,7 @@ dependencies = [ "reth-tokio-util", "scroll-alloy-hardforks", "scroll-wire", - "thiserror 2.0.14", + "thiserror 2.0.16", "tokio", "tokio-stream", "tracing", @@ -11640,6 +11709,7 @@ dependencies = [ "reth-network", "reth-network-api", "reth-scroll-primitives", + "rollup-node-signer", "tokio", "tokio-stream", "tracing", @@ -11665,14 +11735,14 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "sea-orm" -version = "1.1.14" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34963b2d68331ef5fbc8aa28a53781471c15f90ba1ad4f2689d21ce8b9a9d1f1" +checksum = "458d38dfa73e8ab64260f9fd96d61e1ca96a312d06e94b71615a417ef29efcac" dependencies = [ "async-stream", "async-trait", @@ -11690,7 +11760,7 @@ dependencies = [ "serde_json", "sqlx", "strum 0.26.3", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", "tracing", "url", @@ -11699,9 +11769,9 @@ dependencies = [ [[package]] name = "sea-orm-cli" -version = "1.1.14" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc17cb2b24e93fc1d56de7751a12222f2303c06e83ed4d7a1e929e39f30c7d7" +checksum = "529b598e847338b7ff863a2abc8c693f515edd075f3f8e92f1b4aca2665f98dd" dependencies = [ "chrono", "clap", @@ -11711,29 +11781,29 @@ dependencies = [ "sea-schema", "sqlx", "tracing", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", "url", ] [[package]] name = "sea-orm-macros" -version = "1.1.14" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a489127c872766445b4e28f846825f89a076ac3af2591d1365503a68f93e974c" +checksum = "af976292446b09dd51d7b1784d6195dec76844e9e9e980b5fb12634ef417d6ea" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", "sea-bae", - "syn 2.0.104", + "syn 2.0.106", "unicode-ident", ] [[package]] name = "sea-orm-migration" -version = "1.1.14" +version = "1.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "695e830a1332a4e3e57b5972eee00574a36060e1938afca7041a524e0955d5ba" +checksum = "294321e37421a108ed040c349c543023f221e36f93c85411efc61e4a2266b811" dependencies = [ "async-trait", "clap", @@ -11742,7 +11812,7 @@ dependencies = [ "sea-orm-cli", "sea-schema", "tracing", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -11784,12 +11854,12 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bae0cbad6ab996955664982739354128c58d16e126114fe88c2a493642502aab" dependencies = [ - "darling", + "darling 0.20.11", "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.104", - "thiserror 2.0.14", + "syn 2.0.106", + "thiserror 2.0.16", ] [[package]] @@ -11814,7 +11884,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -11885,7 +11955,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "core-foundation 0.9.4", "core-foundation-sys", "libc", @@ -11894,11 +11964,11 @@ dependencies = [ [[package]] name = "security-framework" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80fb1d92c5028aa318b4b8bd7302a5bfcf48be96a37fc6fc790f806b0004ee0c" +checksum = "60b369d18893388b345804dc0007963c99b7d665ae71d275812d828c6f089640" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -11907,9 +11977,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" dependencies = [ "core-foundation-sys", "libc", @@ -11971,16 +12041,16 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "serde_json" -version = "1.0.142" +version = "1.0.143" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7" +checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.11.0", "itoa", "memchr", "ryu", @@ -12018,7 +12088,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.10.0", + "indexmap 2.11.0", "schemars 0.9.0", "schemars 1.0.4", "serde", @@ -12034,10 +12104,10 @@ version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12183,7 +12253,7 @@ checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" dependencies = [ "num-bigint", "num-traits", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", ] @@ -12330,7 +12400,7 @@ dependencies = [ "futures-util", "hashbrown 0.15.5", "hashlink 0.10.0", - "indexmap 2.10.0", + "indexmap 2.11.0", "log", "memchr", "native-tls", @@ -12341,7 +12411,7 @@ dependencies = [ "serde_json", "sha2 0.10.9", "smallvec", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", "tokio", "tokio-stream", @@ -12360,7 +12430,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12383,7 +12453,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.104", + "syn 2.0.106", "tokio", "url", ] @@ -12397,7 +12467,7 @@ dependencies = [ "atoi", "base64 0.22.1", "bigdecimal", - "bitflags 2.9.1", + "bitflags 2.9.4", "byteorder", "bytes", "chrono", @@ -12428,7 +12498,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", "tracing", "uuid", @@ -12444,7 +12514,7 @@ dependencies = [ "atoi", "base64 0.22.1", "bigdecimal", - "bitflags 2.9.1", + "bitflags 2.9.4", "byteorder", "chrono", "crc", @@ -12471,7 +12541,7 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", "tracing", "uuid", @@ -12498,7 +12568,7 @@ dependencies = [ "serde", "serde_urlencoded", "sqlx-core", - "thiserror 2.0.14", + "thiserror 2.0.16", "time", "tracing", "url", @@ -12562,7 +12632,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12574,7 +12644,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12596,9 +12666,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.104" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -12607,14 +12677,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a985ff4ffd7373e10e0fb048110fb11a162e5a4c47f92ddb8787a6f766b769" +checksum = "a0b198d366dbec045acfcd97295eb653a7a2b40e4dc764ef1e79aafcad439d3c" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12634,7 +12704,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12656,7 +12726,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.9.1", + "bitflags 2.9.4", "core-foundation 0.9.4", "system-configuration-sys", ] @@ -12696,15 +12766,15 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.20.0" +version = "3.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" +checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e" dependencies = [ "fastrand", "getrandom 0.3.3", "once_cell", "rustix 1.0.8", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -12739,11 +12809,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.14" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b0949c3a6c842cbde3f1686d6eea5a010516deb7085f79db747562d4102f41e" +checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" dependencies = [ - "thiserror-impl 2.0.14", + "thiserror-impl 2.0.16", ] [[package]] @@ -12754,18 +12824,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] name = "thiserror-impl" -version = "2.0.14" +version = "2.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc5b44b4ab9c2fdd0e0512e6bece8388e214c0749f5862b114cc5b7a25daf227" +checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -12788,12 +12858,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.41" +version = "0.3.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40" +checksum = "83bde6f1ec10e72d583d91623c939f623002284ef622b87de38cfd546cbf2031" dependencies = [ "deranged", - "itoa", "js-sys", "libc", "num-conv", @@ -12806,15 +12875,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.4" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c" +checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" [[package]] name = "time-macros" -version = "0.2.22" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49" +checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" dependencies = [ "num-conv", "time-core", @@ -12861,9 +12930,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" +checksum = "bfa5fdc3bce6191a1dbc8c02d5c8bffcf557bafa17c124c5264a458f1b0613fa" dependencies = [ "tinyvec_macros", ] @@ -12902,7 +12971,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13006,7 +13075,7 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.10.0", + "indexmap 2.11.0", "serde", "serde_spanned", "toml_datetime", @@ -13029,7 +13098,7 @@ dependencies = [ "futures-core", "futures-util", "hdrhistogram", - "indexmap 2.10.0", + "indexmap 2.11.0", "pin-project-lite", "slab", "sync_wrapper", @@ -13048,7 +13117,7 @@ checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" dependencies = [ "async-compression", "base64 0.22.1", - "bitflags 2.9.1", + "bitflags 2.9.4", "bytes", "futures-core", "futures-util", @@ -13104,7 +13173,7 @@ dependencies = [ "crossbeam-channel", "thiserror 1.0.69", "time", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -13115,7 +13184,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13135,7 +13204,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b1581020d7a273442f5b45074a6a57d5757ad0a47dac0e9f0bd57b81936f3db" dependencies = [ "tracing", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -13156,7 +13225,7 @@ checksum = "fc0b4143302cf1022dac868d521e36e8b27691f72c84b3311750d5188ebba657" dependencies = [ "libc", "tracing-core", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -13179,7 +13248,7 @@ dependencies = [ "time", "tracing", "tracing-core", - "tracing-subscriber 0.3.19", + "tracing-subscriber 0.3.20", ] [[package]] @@ -13203,14 +13272,14 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" +checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" dependencies = [ "matchers", "nu-ansi-term", "once_cell", - "regex", + "regex-automata", "serde", "serde_json", "sharded-slab", @@ -13241,10 +13310,10 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bee2ea1551f90040ab0e34b6fb7f2fa3bad8acc925837ac654f2c78a13e3089" dependencies = [ - "darling", + "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13284,7 +13353,7 @@ dependencies = [ "rustls 0.23.31", "rustls-pki-types", "sha1", - "thiserror 2.0.14", + "thiserror 2.0.16", "utf-8", ] @@ -13422,9 +13491,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.4" +version = "2.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" +checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b" dependencies = [ "form_urlencoded", "idna", @@ -13464,9 +13533,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.18.0" +version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f33196643e165781c20a5ead5582283a7dacbb87855d867fbc2df3f81eddc1be" +checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ "getrandom 0.3.3", "js-sys", @@ -13541,7 +13610,7 @@ checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13586,11 +13655,11 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.2+wasi-0.2.4" +version = "0.14.4+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3" +checksum = "88a5f4a424faf49c3c2c344f166f0662341d470ea185e939657aaff130f0ec4a" dependencies = [ - "wit-bindgen-rt", + "wit-bindgen", ] [[package]] @@ -13601,35 +13670,36 @@ checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "7e14915cadd45b529bb8d1f343c4ed0ac1de926144b746e2710f9cd05df6603b" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "e28d1ba982ca7923fd01448d5c30c6864d0a14109560296a162f80f305fb93bb" dependencies = [ "bumpalo", "log", "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "0ca85039a9b469b38336411d6d6ced91f3fc87109a2a27b0c197663f5144dffe" dependencies = [ "cfg-if", "js-sys", @@ -13640,9 +13710,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "7c3d463ae3eff775b0c45df9da45d68837702ac35af998361e2c84e7c5ec1b0d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -13650,22 +13720,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "7bb4ce89b08211f923caf51d527662b75bdc9c9c7aab40f86dcb9fb85ac552aa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "f143854a3b13752c6950862c906306adb27c7e839f7414cec8fea35beab624c1" dependencies = [ "unicode-ident", ] @@ -13700,9 +13770,9 @@ dependencies = [ [[package]] name = "wasmtimer" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8d49b5d6c64e8558d9b1b065014426f35c18de636895d24893dbbd329743446" +checksum = "1c598d6b99ea013e35844697fc4670d08339d5cda15588f193c6beedd12f644b" dependencies = [ "futures", "js-sys", @@ -13714,9 +13784,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12" dependencies = [ "js-sys", "wasm-bindgen", @@ -13814,11 +13884,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.0", ] [[package]] @@ -13856,7 +13926,7 @@ dependencies = [ "windows-collections", "windows-core 0.61.2", "windows-future", - "windows-link", + "windows-link 0.1.3", "windows-numerics", ] @@ -13902,7 +13972,7 @@ checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" dependencies = [ "windows-implement 0.60.0", "windows-interface 0.59.1", - "windows-link", + "windows-link 0.1.3", "windows-result 0.3.4", "windows-strings 0.4.2", ] @@ -13914,7 +13984,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" dependencies = [ "windows-core 0.61.2", - "windows-link", + "windows-link 0.1.3", "windows-threading", ] @@ -13926,7 +13996,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13937,7 +14007,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13948,7 +14018,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13959,7 +14029,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13970,7 +14040,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13981,7 +14051,7 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -13990,6 +14060,12 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +[[package]] +name = "windows-link" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" + [[package]] name = "windows-numerics" version = "0.2.0" @@ -13997,7 +14073,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" dependencies = [ "windows-core 0.61.2", - "windows-link", + "windows-link 0.1.3", ] [[package]] @@ -14006,7 +14082,7 @@ version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" dependencies = [ - "windows-link", + "windows-link 0.1.3", "windows-result 0.3.4", "windows-strings 0.4.2", ] @@ -14035,7 +14111,7 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" dependencies = [ - "windows-link", + "windows-link 0.1.3", ] [[package]] @@ -14054,7 +14130,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ - "windows-link", + "windows-link 0.1.3", ] [[package]] @@ -14102,6 +14178,15 @@ dependencies = [ "windows-targets 0.53.3", ] +[[package]] +name = "windows-sys" +version = "0.61.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa" +dependencies = [ + "windows-link 0.2.0", +] + [[package]] name = "windows-targets" version = "0.42.2" @@ -14154,7 +14239,7 @@ version = "0.53.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" dependencies = [ - "windows-link", + "windows-link 0.1.3", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -14171,7 +14256,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" dependencies = [ - "windows-link", + "windows-link 0.1.3", ] [[package]] @@ -14356,9 +14441,9 @@ checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" [[package]] name = "winnow" -version = "0.7.12" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95" +checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" dependencies = [ "memchr", ] @@ -14374,13 +14459,10 @@ dependencies = [ ] [[package]] -name = "wit-bindgen-rt" -version = "0.39.0" +name = "wit-bindgen" +version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" -dependencies = [ - "bitflags 2.9.1", -] +checksum = "5c573471f125075647d03df72e026074b7203790d41351cd6edc96f46bcccd36" [[package]] name = "write16" @@ -14413,7 +14495,7 @@ dependencies = [ "pharos", "rustc_version 0.4.1", "send_wrapper 0.6.0", - "thiserror 2.0.14", + "thiserror 2.0.16", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -14482,7 +14564,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] @@ -14494,28 +14576,28 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -14535,7 +14617,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", "synstructure", ] @@ -14556,7 +14638,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -14600,7 +14682,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -14611,7 +14693,7 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.104", + "syn 2.0.106", ] [[package]] @@ -14634,9 +14716,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.15+zstd.1.5.7" +version = "2.0.16+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237" +checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index cc16e4ab..8da9ef4f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -155,7 +155,6 @@ reth-primitives-traits = { git = "https://github.com/scroll-tech/reth.git", defa reth-provider = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-rpc-builder = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-rpc-server-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } -reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-tasks = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-tokio-util = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-tracing = { git = "https://github.com/scroll-tech/reth.git", default-features = false } diff --git a/crates/database/db/src/db.rs b/crates/database/db/src/db.rs index 3216351b..2839f4cf 100644 --- a/crates/database/db/src/db.rs +++ b/crates/database/db/src/db.rs @@ -4,7 +4,8 @@ use super::{transaction::DatabaseTransaction, DatabaseConnectionProvider}; use crate::error::DatabaseError; use sea_orm::{ - sqlx::sqlite::SqliteConnectOptions, DatabaseConnection, SqlxSqliteConnector, TransactionTrait, + sqlx::sqlite::{SqliteConnectOptions, SqlitePoolOptions}, + DatabaseConnection, SqlxSqliteConnector, TransactionTrait, }; // TODO: make these configurable via CLI. @@ -15,6 +16,9 @@ const BUSY_TIMEOUT_SECS: u64 = 5; /// The maximum number of connections in the database connection pool. const MAX_CONNECTIONS: u32 = 10; +/// The minimum number of connections in the database connection pool. +const MIN_CONNECTIONS: u32 = 5; + /// The timeout for acquiring a connection from the pool. const ACQUIRE_TIMEOUT_SECS: u64 = 5; @@ -34,16 +38,36 @@ pub struct Database { impl Database { /// Creates a new [`Database`] instance associated with the provided database URL. pub async fn new(database_url: &str) -> Result { + Self::new_sqlite_with_pool_options( + database_url, + MAX_CONNECTIONS, + MIN_CONNECTIONS, + ACQUIRE_TIMEOUT_SECS, + BUSY_TIMEOUT_SECS, + ) + .await + } + + /// Creates a new [`Database`] instance with SQLite-specific optimizations and custom pool + /// settings. + pub async fn new_sqlite_with_pool_options( + database_url: &str, + max_connections: u32, + min_connections: u32, + acquire_timeout_secs: u64, + busy_timeout_secs: u64, + ) -> Result { let options = SqliteConnectOptions::from_str(database_url)? .create_if_missing(true) .journal_mode(sea_orm::sqlx::sqlite::SqliteJournalMode::Wal) - .busy_timeout(Duration::from_secs(BUSY_TIMEOUT_SECS)) + .busy_timeout(Duration::from_secs(busy_timeout_secs)) .foreign_keys(true) .synchronous(sea_orm::sqlx::sqlite::SqliteSynchronous::Normal); - let sqlx_pool = sea_orm::sqlx::sqlite::SqlitePoolOptions::new() - .max_connections(MAX_CONNECTIONS) - .acquire_timeout(Duration::from_secs(ACQUIRE_TIMEOUT_SECS)) + let sqlx_pool = SqlitePoolOptions::new() + .max_connections(max_connections) + .min_connections(min_connections) + .acquire_timeout(Duration::from_secs(acquire_timeout_secs)) .connect_with(options) .await?; diff --git a/crates/database/db/src/error.rs b/crates/database/db/src/error.rs index 325b0a5a..127ea0bb 100644 --- a/crates/database/db/src/error.rs +++ b/crates/database/db/src/error.rs @@ -15,6 +15,9 @@ pub enum DatabaseError { /// The block was not found in database. #[error("no block for id {0}")] BlockNotFound(BlockId), + /// A generic error occurred. + #[error("parse signature error: {0}")] + ParseSignatureError(String), /// The L1 message was not found in database. #[error("L1 message at index [{0}] not found in database")] L1MessageNotFound(L1MessageStart), diff --git a/crates/database/db/src/models/block_signature.rs b/crates/database/db/src/models/block_signature.rs new file mode 100644 index 00000000..778339ef --- /dev/null +++ b/crates/database/db/src/models/block_signature.rs @@ -0,0 +1,51 @@ +use alloy_primitives::{Signature, B256}; +use sea_orm::{entity::prelude::*, ActiveValue}; + +/// A database model that represents a block signature. +/// +/// TODO: remove this once we deprecated l2geth. +/// The purpose of this model is to store the block signature in the database, and it will be used +/// to provide the block signature when reth receives eth66 block request from scroll's l2geth. +#[derive(Clone, Debug, PartialEq, Eq, DeriveEntityModel)] +#[sea_orm(table_name = "block_signature")] +pub struct Model { + /// The block hash as a primary key. + #[sea_orm(primary_key, auto_increment = false)] + pub block_hash: Vec, + /// The block signature. + pub signature: Vec, +} + +/// The relation for the block signature model. +#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)] +pub enum Relation {} + +/// The active model behavior for the block signature model. +impl ActiveModelBehavior for ActiveModel {} + +impl Model { + /// Get the block hash as B256 + pub fn get_block_hash(&self) -> Result { + if self.block_hash.len() != 32 { + return Err(format!("Invalid block hash length: {}", self.block_hash.len())); + } + Ok(B256::from_slice(&self.block_hash)) + } + + /// Get the signature + pub fn get_signature(&self) -> Result { + if self.signature.len() != 65 { + return Err(format!("Invalid signature length: {}", self.signature.len())); + } + Signature::from_raw(&self.signature).map_err(|e| format!("Invalid signature: {}", e)) + } +} + +impl From<(B256, Signature)> for ActiveModel { + fn from((block_hash, signature): (B256, Signature)) -> Self { + Self { + block_hash: ActiveValue::Set(block_hash.to_vec()), + signature: ActiveValue::Set(signature.as_bytes().to_vec()), + } + } +} diff --git a/crates/database/db/src/models/mod.rs b/crates/database/db/src/models/mod.rs index 3c63c245..f6dd71e9 100644 --- a/crates/database/db/src/models/mod.rs +++ b/crates/database/db/src/models/mod.rs @@ -12,3 +12,6 @@ pub mod l1_message; /// This module contains the metadata model. pub mod metadata; + +/// This module contains the block signature model. +pub mod block_signature; diff --git a/crates/database/db/src/operations.rs b/crates/database/db/src/operations.rs index 5d63015d..142a29d9 100644 --- a/crates/database/db/src/operations.rs +++ b/crates/database/db/src/operations.rs @@ -1,7 +1,7 @@ use super::{models, DatabaseError}; use crate::DatabaseConnectionProvider; -use alloy_primitives::B256; +use alloy_primitives::{Signature, B256}; use futures::{Stream, StreamExt}; use rollup_node_primitives::{ BatchCommitData, BatchInfo, BlockInfo, L1MessageEnvelope, L2BlockInfoWithL1Messages, Metadata, @@ -594,6 +594,50 @@ pub trait DatabaseOperations: DatabaseConnectionProvider { // commit the transaction Ok(UnwindResult { l1_block_number, queue_index, l2_head_block_number, l2_safe_block_info }) } + + /// Store a block signature in the database. + /// TODO: remove this once we deprecated l2geth. + async fn insert_signature( + &self, + block_hash: B256, + signature: Signature, + ) -> Result<(), DatabaseError> { + tracing::trace!(target: "scroll::db", block_hash = ?block_hash, "Storing block signature in database."); + + let block_signature: models::block_signature::ActiveModel = (block_hash, signature).into(); + + models::block_signature::Entity::insert(block_signature) + .on_conflict( + OnConflict::column(models::block_signature::Column::BlockHash) + .update_column(models::block_signature::Column::Signature) + .to_owned(), + ) + .exec(self.get_connection()) + .await + .map(|_| ())?; + + Ok(()) + } + + /// Get a block signature from the database by block hash. + /// TODO: remove this once we deprecated l2geth. + async fn get_signature(&self, block_hash: B256) -> Result, DatabaseError> { + tracing::trace!(target: "scroll::db", block_hash = ?block_hash, "Retrieving block signature from database."); + + let block_signature = models::block_signature::Entity::find_by_id(block_hash.to_vec()) + .one(self.get_connection()) + .await?; + + match block_signature { + Some(model) => { + let signature = model.get_signature().map_err(|e| { + DatabaseError::ParseSignatureError(format!("Failed to parse signature: {}", e)) + })?; + Ok(Some(signature)) + } + None => Ok(None), + } + } } /// This type defines the start of an L1 message stream. diff --git a/crates/database/migration/src/lib.rs b/crates/database/migration/src/lib.rs index 91ecd611..ddb5f1a7 100644 --- a/crates/database/migration/src/lib.rs +++ b/crates/database/migration/src/lib.rs @@ -9,6 +9,7 @@ mod m20250616_223947_add_metadata; mod m20250825_093350_remove_unsafe_l2_blocks; mod m20250829_042803_add_table_indexes; mod m20250901_102341_add_commit_batch_processed_column; +mod m20250904_175949_block_signature; mod migration_info; pub use migration_info::{ MigrationInfo, ScrollDevMigrationInfo, ScrollMainnetMigrationInfo, ScrollSepoliaMigrationInfo, @@ -29,6 +30,7 @@ impl MigratorTrait for Migrator { Box::new(m20250825_093350_remove_unsafe_l2_blocks::Migration), Box::new(m20250829_042803_add_table_indexes::Migration), Box::new(m20250901_102341_add_commit_batch_processed_column::Migration), + Box::new(m20250904_175949_block_signature::Migration), ] } } diff --git a/crates/database/migration/src/m20250904_175949_block_signature.rs b/crates/database/migration/src/m20250904_175949_block_signature.rs new file mode 100644 index 00000000..90d5e9d8 --- /dev/null +++ b/crates/database/migration/src/m20250904_175949_block_signature.rs @@ -0,0 +1,32 @@ +use sea_orm_migration::{prelude::*, schema::*}; + +#[derive(DeriveMigrationName)] +pub struct Migration; + +/// TODO: drop this table once we deprecated l2geth. +#[async_trait::async_trait] +impl MigrationTrait for Migration { + async fn up(&self, manager: &SchemaManager) -> Result<(), DbErr> { + manager + .create_table( + Table::create() + .table(BlockSignature::Table) + .if_not_exists() + .col(binary_len(BlockSignature::BlockHash, 32).primary_key()) + .col(binary_len(BlockSignature::Signature, 65)) + .to_owned(), + ) + .await + } + + async fn down(&self, manager: &SchemaManager) -> Result<(), DbErr> { + manager.drop_table(Table::drop().table(BlockSignature::Table).to_owned()).await + } +} + +#[derive(DeriveIden)] +pub enum BlockSignature { + Table, + BlockHash, + Signature, +} diff --git a/crates/manager/src/manager/mod.rs b/crates/manager/src/manager/mod.rs index 9dd9108d..f58b9373 100644 --- a/crates/manager/src/manager/mod.rs +++ b/crates/manager/src/manager/mod.rs @@ -42,7 +42,7 @@ use tokio_stream::wrappers::ReceiverStream; use tracing::{error, info, trace, warn}; use rollup_node_providers::{L1MessageProvider, L1Provider}; -use scroll_db::{Database, DatabaseError}; +use scroll_db::{Database, DatabaseError, DatabaseOperations}; use scroll_derivation_pipeline::DerivationPipeline; mod budget; @@ -116,6 +116,8 @@ pub struct RollupNodeManager< signer: Option, /// The trigger for the block building process. block_building_trigger: Option, + /// A connection to the database. + database: Arc, /// The original block time configuration for restoring automatic sequencing. block_time_config: Option, // metrics for the rollup node manager. @@ -187,7 +189,7 @@ where ) -> (Self, RollupManagerHandle) { let (handle_tx, handle_rx) = mpsc::channel(EVENT_CHANNEL_SIZE); let derivation_pipeline = - DerivationPipeline::new(l1_provider, database, l1_v2_message_queue_start_index); + DerivationPipeline::new(l1_provider, database.clone(), l1_v2_message_queue_start_index); let rnm = Self { handle_rx, chain_spec, @@ -205,6 +207,7 @@ where } else { None }, + database, block_time_config: block_time, metrics: RollupNodeManagerMetrics::default(), }; @@ -246,7 +249,28 @@ where result: Err(err.into()), }); } else { - self.chain.handle_block_from_peer(block_with_peer); + self.chain.handle_block_from_peer(block_with_peer.clone()); + + // TODO: remove this once we deprecate l2geth. + // Store the block signature in the database + let db = self.database.clone(); + let block_hash = block_with_peer.block.hash_slow(); + let signature = block_with_peer.signature; + tokio::spawn(async move { + if let Err(err) = db.insert_signature(block_hash, signature).await { + tracing::warn!( + target: "scroll::node::manager", + %block_hash, sig=%signature, error=?err, + "Failed to store block signature; execution client already persisted the block" + ); + } else { + tracing::trace!( + target: "scroll::node::manager", + %block_hash, sig=%signature, + "Persisted block signature to database" + ); + } + }); } } @@ -645,6 +669,26 @@ where )); } + // TODO: remove this once we deprecate l2geth. + // Store the block signature in the database + let db = this.database.clone(); + let block_hash = block.hash_slow(); + tokio::spawn(async move { + if let Err(err) = db.insert_signature(block_hash, signature).await { + tracing::warn!( + target: "scroll::node::manager", + %block_hash, sig=%signature, error=?err, + "Failed to store block signature; execution client already persisted the block" + ); + } else { + tracing::trace!( + target: "scroll::node::manager", + %block_hash, sig=%signature, + "Persisted block signature to database" + ); + } + }); + this.chain.handle_sequenced_block(NewBlockWithPeer { peer_id: Default::default(), block: block.clone(), diff --git a/crates/network/Cargo.toml b/crates/network/Cargo.toml index ecee2d09..adc549fe 100644 --- a/crates/network/Cargo.toml +++ b/crates/network/Cargo.toml @@ -18,7 +18,7 @@ reth-network-api.workspace = true reth-network-types = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-network-peers.workspace = true reth-primitives-traits.workspace = true -reth-storage-api = { workspace = true, default-features = false } +reth-storage-api = { git = "https://github.com/scroll-tech/reth.git", default-features = false } reth-tokio-util.workspace = true # scroll diff --git a/crates/node/Cargo.toml b/crates/node/Cargo.toml index 80fb1cd3..0311beec 100644 --- a/crates/node/Cargo.toml +++ b/crates/node/Cargo.toml @@ -33,6 +33,7 @@ scroll-alloy-hardforks.workspace = true scroll-alloy-network.workspace = true scroll-alloy-provider.workspace = true +reth-primitives-traits.workspace = true reth-scroll-engine-primitives.workspace = true reth-scroll-evm = { git = "https://github.com/scroll-tech/reth.git" } reth-scroll-cli = { git = "https://github.com/scroll-tech/reth.git" } @@ -91,6 +92,7 @@ scroll-network.workspace = true auto_impl.workspace = true clap = { workspace = true, features = ["derive", "env"] } eyre.workspace = true +futures.workspace = true jsonrpsee = { version = "0.25.1", features = ["server", "client", "macros"] } reqwest.workspace = true tokio.workspace = true diff --git a/crates/node/src/args.rs b/crates/node/src/args.rs index 9a05e56d..99dee50b 100644 --- a/crates/node/src/args.rs +++ b/crates/node/src/args.rs @@ -494,11 +494,35 @@ pub struct NetworkArgs { value_name = "NETWORK_SEQUENCER_URL" )] pub sequencer_url: Option, + /// The valid signer address for the network. + #[arg(long = "network.valid_signer", value_name = "VALID_SIGNER")] + pub signer_address: Option
, } impl Default for NetworkArgs { fn default() -> Self { - Self { enable_eth_scroll_wire_bridge: true, enable_scroll_wire: true, sequencer_url: None } + Self { + enable_eth_scroll_wire_bridge: true, + enable_scroll_wire: true, + sequencer_url: None, + signer_address: None, + } + } +} + +impl NetworkArgs { + /// Get the default authorized signer address for the given chain. + pub const fn default_authorized_signer(chain: Option) -> Option
{ + match chain { + Some(NamedChain::Scroll) => Some(constants::SCROLL_MAINNET_SIGNER), + Some(NamedChain::ScrollSepolia) => Some(constants::SCROLL_SEPOLIA_SIGNER), + _ => None, + } + } + + /// Get the effective signer address, using the configured signer or falling back to default. + pub fn effective_signer(&self, chain: Option) -> Option
{ + self.signer_address.or_else(|| Self::default_authorized_signer(chain)) } } @@ -702,6 +726,48 @@ mod tests { use super::*; use std::path::PathBuf; + #[test] + fn test_network_args_default_authorized_signer() { + // Test Scroll mainnet + let mainnet_signer = NetworkArgs::default_authorized_signer(Some(NamedChain::Scroll)); + assert_eq!(mainnet_signer, Some(constants::SCROLL_MAINNET_SIGNER)); + + // Test Scroll Sepolia + let sepolia_signer = + NetworkArgs::default_authorized_signer(Some(NamedChain::ScrollSepolia)); + assert_eq!(sepolia_signer, Some(constants::SCROLL_SEPOLIA_SIGNER)); + + // Test other chains + let other_signer = NetworkArgs::default_authorized_signer(Some(NamedChain::Mainnet)); + assert_eq!(other_signer, None); + + // Test None chain + let none_signer = NetworkArgs::default_authorized_signer(None); + assert_eq!(none_signer, None); + } + + #[test] + fn test_network_args_effective_signer() { + let custom_signer = Address::new([0x11; 20]); + + // Test with configured signer + let network_args = + NetworkArgs { signer_address: Some(custom_signer), ..Default::default() }; + assert_eq!(network_args.effective_signer(Some(NamedChain::Scroll)), Some(custom_signer)); + + // Test without configured signer, fallback to default + let network_args_default = NetworkArgs::default(); + assert_eq!( + network_args_default.effective_signer(Some(NamedChain::Scroll)), + Some(constants::SCROLL_MAINNET_SIGNER) + ); + assert_eq!( + network_args_default.effective_signer(Some(NamedChain::ScrollSepolia)), + Some(constants::SCROLL_SEPOLIA_SIGNER) + ); + assert_eq!(network_args_default.effective_signer(Some(NamedChain::Mainnet)), None); + } + #[test] fn test_validate_sequencer_enabled_without_any_signer_fails() { let config = ScrollRollupNodeConfig { diff --git a/crates/node/src/builder/mod.rs b/crates/node/src/builder/mod.rs new file mode 100644 index 00000000..dc449cad --- /dev/null +++ b/crates/node/src/builder/mod.rs @@ -0,0 +1,3 @@ +//! Builder components for the rollup node. + +pub(crate) mod network; diff --git a/crates/node/src/builder/network.rs b/crates/node/src/builder/network.rs new file mode 100644 index 00000000..af86bad8 --- /dev/null +++ b/crates/node/src/builder/network.rs @@ -0,0 +1,328 @@ +use alloy_primitives::{Address, Signature, B256}; +use reth_chainspec::EthChainSpec; +use reth_eth_wire_types::BasicNetworkPrimitives; +use reth_network::{ + config::NetworkMode, + protocol::{RlpxSubProtocol, RlpxSubProtocols}, + transform::header::{HeaderResponseTransform, HeaderTransform}, + NetworkConfig, NetworkHandle, NetworkManager, PeersInfo, +}; +use reth_node_api::TxTy; +use reth_node_builder::{components::NetworkBuilder, BuilderContext, FullNodeTypes}; +use reth_node_types::NodeTypes; +use reth_primitives_traits::BlockHeader; +use reth_scroll_chainspec::ScrollChainSpec; +use reth_scroll_primitives::ScrollPrimitives; +use reth_transaction_pool::{PoolTransaction, TransactionPool}; +use rollup_node_signer::SignatureAsBytes; +use scroll_alloy_hardforks::ScrollHardforks; +use scroll_db::{Database, DatabaseOperations}; +use std::{fmt, fmt::Debug, path::PathBuf, sync::Arc}; +use tracing::{debug, info, trace, warn}; + +use crate::args::NetworkArgs; + +/// The network builder for Scroll. +#[derive(Debug, Default)] +pub struct ScrollNetworkBuilder { + /// Additional `RLPx` sub-protocols to be added to the network. + scroll_sub_protocols: RlpxSubProtocols, + /// A reference to the rollup-node `Database`. + rollup_node_db_path: Option, + /// The address for which we should persist and serve signatures for. + signer: Option
, +} + +impl ScrollNetworkBuilder { + /// Create a new [`ScrollNetworkBuilder`] with default configuration. + pub fn new() -> Self { + Self { + scroll_sub_protocols: RlpxSubProtocols::default(), + rollup_node_db_path: None, + signer: None, + } + } + + /// Add a scroll sub-protocol to the network builder. + pub fn with_sub_protocol(mut self, protocol: RlpxSubProtocol) -> Self { + self.scroll_sub_protocols.push(protocol); + self + } + + /// Add a scroll sub-protocol to the network builder. + pub fn with_database_path(mut self, db_path: Option) -> Self { + self.rollup_node_db_path = db_path; + self + } + + /// Set the signer for which we will persist and serve signatures if included in block header + /// extra data field. + pub const fn with_signer(mut self, signer: Option
) -> Self { + self.signer = signer; + self + } +} + +impl NetworkBuilder for ScrollNetworkBuilder +where + Node: + FullNodeTypes>, + Pool: TransactionPool< + Transaction: PoolTransaction< + Consensus = TxTy, + Pooled = scroll_alloy_consensus::ScrollPooledTransaction, + >, + > + Unpin + + 'static, +{ + type Network = NetworkHandle; + + async fn build_network( + self, + ctx: &BuilderContext, + pool: Pool, + ) -> eyre::Result { + // initialize the rollup node database. + let db_path = ctx.config().datadir().db(); + let database_path = if let Some(database_path) = self.rollup_node_db_path { + database_path.to_string_lossy().to_string() + } else { + // append the path using strings as using `join(...)` overwrites "sqlite://" + // if the path is absolute. + let path = db_path.join("scroll.db?mode=rwc"); + "sqlite://".to_string() + &*path.to_string_lossy() + }; + let db = Arc::new(Database::new(&database_path).await?); + + // get the header transform. + let chain_spec = ctx.chain_spec(); + let authorized_signer = if self.signer.is_none() { + NetworkArgs::default_authorized_signer(chain_spec.chain().named()) + } else { + self.signer + }; + let transform = + ScrollHeaderTransform::new(chain_spec.clone(), db.clone(), authorized_signer); + let request_transform = + ScrollRequestHeaderTransform::new(chain_spec, db.clone(), authorized_signer); + + // set the network mode to work. + let config = ctx.network_config()?; + let config = NetworkConfig { + network_mode: NetworkMode::Work, + header_transform: Box::new(transform), + extra_protocols: self.scroll_sub_protocols, + ..config + }; + + let network = NetworkManager::builder(config).await?; + let handle = ctx.start_network(network, pool, Some(Arc::new(request_transform))); + info!(target: "reth::cli", enode=%handle.local_node_record(), "P2P networking initialized"); + Ok(handle) + } +} + +/// Network primitive types used by Scroll networks. +type ScrollNetworkPrimitives = + BasicNetworkPrimitives; + +/// Errors that can occur during signature validation +#[derive(Debug, Clone, PartialEq, Eq)] +pub(crate) enum HeaderTransformError { + /// Invalid signature length (expected 65 bytes) + InvalidSignature, + /// Invalid signer (not authorized) + InvalidSigner(Address), + /// Signature recovery failed + RecoveryFailed, + /// Database operation failed + DatabaseError(String), +} + +impl fmt::Display for HeaderTransformError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + Self::InvalidSignature => write!(f, "Invalid signature length, expected 65 bytes"), + Self::InvalidSigner(signer) => write!(f, "Invalid signer, not authorized: {}", signer), + Self::RecoveryFailed => write!(f, "Failed to recover signer from signature"), + Self::DatabaseError(msg) => write!(f, "Database error: {}", msg), + } + } +} + +impl std::error::Error for HeaderTransformError {} + +/// An implementation of a [`HeaderTransform`] for downloaded headers for Scroll. +#[derive(Debug, Clone)] +#[non_exhaustive] +pub(crate) struct ScrollHeaderTransform { + chain_spec: ChainSpec, + db: Arc, + signer: Option
, +} + +impl + ScrollHeaderTransform +{ + /// Returns a new instance of the [`ScrollHeaderTransform`] from the provider chain spec. + pub(crate) const fn new( + chain_spec: ChainSpec, + db: Arc, + signer: Option
, + ) -> Self { + Self { chain_spec, db, signer } + } +} + +impl + HeaderTransform for ScrollHeaderTransform +{ + fn map(&self, mut header: H) -> H { + if !self.chain_spec.is_euclid_v2_active_at_timestamp(header.timestamp()) { + return header; + } + // TODO: remove this once we deprecated l2geth + // Validate and process signature + + if let Err(err) = self.validate_and_store_signature(&mut header, self.signer) { + debug!( + target: "scroll::network::response_header_transform", + "Header signature persistence failed, header hash: {:?}, error: {}", + header.hash_slow(), err + ); + } + + header + } +} + +impl ScrollHeaderTransform { + fn validate_and_store_signature( + &self, + header: &mut H, + authorized_signer: Option
, + ) -> Result<(), HeaderTransformError> { + let signature_bytes = std::mem::take(header.extra_data_mut()); + let signature = parse_65b_signature(&signature_bytes)?; + + // Recover and verify signer + recover_and_verify_signer(&signature, header.hash_slow(), authorized_signer)?; + + // Store signature in database + persist_signature(self.db.clone(), header.hash_slow(), signature); + + Ok(()) + } +} + +/// An implementation of a [`HeaderTransform`] for header request responses for Scroll. +#[derive(Debug, Clone)] +#[non_exhaustive] +pub(crate) struct ScrollRequestHeaderTransform { + chain_spec: ChainSpec, + db: Arc, + signer: Option
, +} + +impl + ScrollRequestHeaderTransform +{ + /// Returns a new instance of the [`ScrollHeaderTransform`] from the provider chain spec. + pub(crate) const fn new( + chain_spec: ChainSpec, + db: Arc, + signer: Option
, + ) -> Self { + Self { chain_spec, db, signer } + } +} + +#[async_trait::async_trait] +impl + HeaderResponseTransform for ScrollRequestHeaderTransform +{ + async fn map(&self, mut header: H) -> H { + if !self.chain_spec.is_euclid_v2_active_at_timestamp(header.timestamp()) { + return header; + } + + // read the signature from the rollup node. + let block_hash = header.hash_slow(); + let signature = self + .db + .get_signature(block_hash) + .await + .inspect_err(|e| { + warn!(target: "scroll::network::request_header_transform", + "Failed to get block signature from database, header hash: {:?}, error: {}", + header.hash_slow(), + HeaderTransformError::DatabaseError(e.to_string()) + ) + }) + .ok() + .flatten(); + + // If we have a signature in the database and it matches configured signer then add it + // to the extra data field + if let Some(sig) = signature { + if let Err(err) = recover_and_verify_signer(&sig, header.hash_slow(), self.signer) { + warn!( + target: "scroll::network::request_header_transform", + "Found invalid signature(different from the hardcoded signer) for header hash: {:?}, sig: {:?}, error: {}", + header.hash_slow(), + sig.to_string(), + err + ); + } else { + *header.extra_data_mut() = sig.sig_as_bytes().into(); + } + } + + header + } +} + +/// Recover signer from signature and verify authorization. +fn recover_and_verify_signer( + signature: &Signature, + hash: B256, + authorized_signer: Option
, +) -> Result { + // Recover signer from signature + let signer = signature + .recover_address_from_prehash(&hash) + .map_err(|_| HeaderTransformError::RecoveryFailed)?; + + // Verify signer is authorized + if Some(signer) != authorized_signer { + return Err(HeaderTransformError::InvalidSigner(signer)); + } + + Ok(signer) +} + +/// Parse a canonical 65-byte secp256k1 signature: r (32) | s (32) | v (1). +fn parse_65b_signature(bytes: &[u8]) -> Result { + if bytes.len() != 65 { + return Err(HeaderTransformError::InvalidSignature); + } + + let signature = + Signature::from_raw(bytes).map_err(|_| HeaderTransformError::InvalidSignature)?; + + Ok(signature) +} + +/// Run the async DB insert from sync code safely. +fn persist_signature(db: Arc, hash: B256, signature: Signature) { + tokio::spawn(async move { + trace!( + "Persisting block signature to database, block hash: {:?}, sig: {:?}", + hash, + signature.to_string() + ); + if let Err(e) = db.insert_signature(hash, signature).await { + warn!(target: "scroll::network::header_transform", "Failed to store signature in database: {:?}", e); + } + }); +} diff --git a/crates/node/src/constants.rs b/crates/node/src/constants.rs index 8c0be884..3611aaa3 100644 --- a/crates/node/src/constants.rs +++ b/crates/node/src/constants.rs @@ -1,6 +1,6 @@ //! Constants related to the [`crate::ScrollRollupNode`] -use alloy_primitives::U128; +use alloy_primitives::{address, Address, U128}; /// The max retries for the L1 provider. pub(crate) const PROVIDER_MAX_RETRIES: u32 = 10; @@ -46,3 +46,12 @@ pub(crate) const SCROLL_MAINNET_V2_MESSAGE_QUEUE_START_INDEX: u64 = 953885; /// The L1 message queue index at which queue hashes should be computed on sepolia. pub(crate) const SCROLL_SEPOLIA_V2_MESSAGE_QUEUE_START_INDEX: u64 = 1062110; + +/// TODO: remove this once we deprecated l2geth. +/// The authorized signer address for Scroll mainnet. +pub(crate) const SCROLL_MAINNET_SIGNER: Address = + address!("0xD83C4892BB5aA241B63d8C4C134920111E142A20"); + +/// The authorized signer address for Scroll sepolia. +pub(crate) const SCROLL_SEPOLIA_SIGNER: Address = + address!("0x687E0E85AD67ff71aC134CF61b65905b58Ab43b2"); diff --git a/crates/node/src/lib.rs b/crates/node/src/lib.rs index b4abf7bc..5017bfcb 100644 --- a/crates/node/src/lib.rs +++ b/crates/node/src/lib.rs @@ -2,6 +2,7 @@ pub mod add_ons; mod args; +mod builder; pub mod constants; mod context; mod node; @@ -10,5 +11,6 @@ pub mod test_utils; pub use add_ons::*; pub use args::*; +pub use builder::network::ScrollNetworkBuilder; pub use context::RollupNodeContext; pub use node::ScrollRollupNode; diff --git a/crates/node/src/node.rs b/crates/node/src/node.rs index 10d23e32..d5005aab 100644 --- a/crates/node/src/node.rs +++ b/crates/node/src/node.rs @@ -1,6 +1,6 @@ //! Node specific implementations for Scroll rollup node. -use crate::{args::ScrollRollupNodeConfig, constants}; +use crate::{args::ScrollRollupNodeConfig, builder::network::ScrollNetworkBuilder, constants}; use std::time::Duration; use super::add_ons::ScrollRollupNodeAddOns; @@ -11,8 +11,8 @@ use reth_node_builder::{ FullNodeTypes, Node, NodeAdapter, NodeComponentsBuilder, }; use reth_scroll_node::{ - ScrollConsensusBuilder, ScrollExecutorBuilder, ScrollNetworkBuilder, ScrollNode, - ScrollPayloadBuilderBuilder, ScrollPoolBuilder, + ScrollConsensusBuilder, ScrollExecutorBuilder, ScrollNode, ScrollPayloadBuilderBuilder, + ScrollPoolBuilder, }; use scroll_wire::{ScrollWireConfig, ScrollWireEvent, ScrollWireProtocolHandler}; use std::sync::Arc; @@ -70,7 +70,9 @@ where })) .network( ScrollNetworkBuilder::new() - .with_sub_protocol(scroll_wire_handler.into_rlpx_sub_protocol()), + .with_sub_protocol(scroll_wire_handler.into_rlpx_sub_protocol()) + .with_database_path(self.config.database_args.path.clone()) + .with_signer(self.config.network_args.signer_address), ) } diff --git a/crates/node/src/test_utils.rs b/crates/node/src/test_utils.rs index 6585c7bb..ba570349 100644 --- a/crates/node/src/test_utils.rs +++ b/crates/node/src/test_utils.rs @@ -142,7 +142,7 @@ pub fn default_test_scroll_rollup_node_config() -> ScrollRollupNodeConfig { ScrollRollupNodeConfig { test: true, network_args: crate::args::NetworkArgs::default(), - database_args: DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) }, + database_args: DatabaseArgs::default(), l1_provider_args: L1ProviderArgs::default(), engine_driver_args: EngineDriverArgs { sync_at_startup: true }, chain_orchestrator_args: ChainOrchestratorArgs { diff --git a/crates/node/tests/e2e.rs b/crates/node/tests/e2e.rs index 0d99b3d5..fb03792e 100644 --- a/crates/node/tests/e2e.rs +++ b/crates/node/tests/e2e.rs @@ -151,6 +151,7 @@ async fn can_sequence_and_gossip_blocks() { enable_eth_scroll_wire_bridge: true, enable_scroll_wire: true, sequencer_url: None, + signer_address: None, }, database_args: DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) }, l1_provider_args: L1ProviderArgs::default(), @@ -251,6 +252,7 @@ async fn can_penalize_peer_for_invalid_block() { enable_eth_scroll_wire_bridge: true, enable_scroll_wire: true, sequencer_url: None, + signer_address: None, }, database_args: DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) }, l1_provider_args: L1ProviderArgs::default(), diff --git a/crates/node/tests/sync.rs b/crates/node/tests/sync.rs index 2a68b25b..b54716ed 100644 --- a/crates/node/tests/sync.rs +++ b/crates/node/tests/sync.rs @@ -44,6 +44,7 @@ async fn test_should_consolidate_to_block_15k() -> eyre::Result<()> { enable_eth_scroll_wire_bridge: false, enable_scroll_wire: false, sequencer_url: None, + signer_address: None, }, database_args: DatabaseArgs::default(), chain_orchestrator_args: ChainOrchestratorArgs { @@ -190,8 +191,9 @@ async fn test_should_consolidate_after_optimistic_sync() -> eyre::Result<()> { enable_eth_scroll_wire_bridge: true, enable_scroll_wire: true, sequencer_url: None, + signer_address: None, }, - database_args: DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) }, + database_args: DatabaseArgs::default(), l1_provider_args: L1ProviderArgs::default(), engine_driver_args: EngineDriverArgs::default(), chain_orchestrator_args: ChainOrchestratorArgs::default(), @@ -439,6 +441,7 @@ async fn test_consolidation() -> eyre::Result<()> { enable_eth_scroll_wire_bridge: true, enable_scroll_wire: true, sequencer_url: None, + signer_address: None, }, database_args: DatabaseArgs { path: Some(PathBuf::from("sqlite::memory:")) }, l1_provider_args: L1ProviderArgs::default(), diff --git a/crates/scroll-wire/Cargo.toml b/crates/scroll-wire/Cargo.toml index b8a754a2..c3b9bd47 100644 --- a/crates/scroll-wire/Cargo.toml +++ b/crates/scroll-wire/Cargo.toml @@ -21,6 +21,7 @@ reth-network-api.workspace = true # scroll reth-scroll-primitives = { workspace = true } +rollup-node-signer.workspace = true # misc futures.workspace = true diff --git a/crates/scroll-wire/src/protocol/proto.rs b/crates/scroll-wire/src/protocol/proto.rs index 92472371..610d1b42 100644 --- a/crates/scroll-wire/src/protocol/proto.rs +++ b/crates/scroll-wire/src/protocol/proto.rs @@ -4,6 +4,7 @@ use alloy_primitives::{ }; use alloy_rlp::{Decodable, Encodable, RlpDecodable, RlpEncodable}; use reth_eth_wire::{protocol::Protocol, Capability}; +use rollup_node_signer::SignatureAsBytes; /// The message IDs for messages sent over the scroll wire protocol. /// This is used to identify the type of message being sent or received @@ -32,7 +33,7 @@ pub struct NewBlock { impl NewBlock { /// Returns a [`NewBlock`] instance with the provided signature and block. pub fn new(signature: Signature, block: reth_scroll_primitives::ScrollBlock) -> Self { - Self { signature: Bytes::from(Into::>::into(signature)), block } + Self { signature: Bytes::copy_from_slice(&signature.sig_as_bytes()), block } } } diff --git a/crates/signer/src/lib.rs b/crates/signer/src/lib.rs index ed22fd81..7682a5bd 100644 --- a/crates/signer/src/lib.rs +++ b/crates/signer/src/lib.rs @@ -8,6 +8,7 @@ use std::time::Instant; +use alloy_primitives::Signature; use futures::stream::{FuturesOrdered, StreamExt}; use std::sync::Arc; use tokio::sync::mpsc::UnboundedSender; @@ -31,10 +32,13 @@ pub use metrics::SignerMetrics; mod requests; pub use requests::SignerRequest; +mod signature; +pub use signature::SignatureAsBytes; + /// The signer instance is responsible for signing artifacts for the rollup node. pub struct Signer { /// The signer instance. - signer: Arc, + signer: Arc + Send + Sync>, /// A stream of pending signing requests. requests: UnboundedReceiverStream, /// In progress signing requests. @@ -47,7 +51,9 @@ pub struct Signer { impl Signer { /// Creates a new [`Signer`] instance and [`SignerHandle`] with the provided signer. - fn new(signer: impl alloy_signer::Signer + Send + Sync + 'static) -> (Self, SignerHandle) { + fn new( + signer: impl alloy_signer::Signer + Send + Sync + 'static, + ) -> (Self, SignerHandle) { let (req_tx, req_rx) = tokio::sync::mpsc::unbounded_channel(); let (event_tx, event_rx) = tokio::sync::mpsc::unbounded_channel(); let address = signer.address(); @@ -62,7 +68,9 @@ impl Signer { } /// Spawns a new `Signer` instance onto the tokio runtime. - pub fn spawn(signer: impl alloy_signer::Signer + Send + Sync + 'static) -> SignerHandle { + pub fn spawn( + signer: impl alloy_signer::Signer + Send + Sync + 'static, + ) -> SignerHandle { let (signer, handle) = Self::new(signer); tokio::spawn(signer.run()); handle diff --git a/crates/signer/src/signature.rs b/crates/signer/src/signature.rs new file mode 100644 index 00000000..c26d3c56 --- /dev/null +++ b/crates/signer/src/signature.rs @@ -0,0 +1,23 @@ +use alloy_primitives::Signature; + +/// Trait for custom signature byte representation +pub trait SignatureAsBytes { + /// Custom implementation of `as_bytes` + /// We remove the `+ 27` offset from the v value + /// and use the original v value directly. + fn sig_as_bytes(&self) -> [u8; 65]; +} + +impl SignatureAsBytes for Signature { + /// Custom implementation of `as_bytes` + /// We remove the `+ 27` offset from the v value + /// and use the original v value directly. + #[inline] + fn sig_as_bytes(&self) -> [u8; 65] { + let mut sig = [0u8; 65]; + sig[..32].copy_from_slice(&self.r().to_be_bytes::<32>()); + sig[32..64].copy_from_slice(&self.s().to_be_bytes::<32>()); + sig[64] = self.v() as u8; + sig + } +}