From 2e80d7645884600663b8551ed4826cbcc3cfa3a2 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 00:26:18 +0400 Subject: [PATCH 01/20] wip --- Cargo.lock | 221 +++++++++++------- Cargo.toml | 74 +++--- bin/reth-bench/src/bench/context.rs | 7 +- bin/reth-bench/src/bench/new_payload_fcu.rs | 7 +- bin/reth-bench/src/bench/new_payload_only.rs | 3 +- crates/consensus/common/src/validation.rs | 4 +- crates/consensus/debug-client/src/client.rs | 6 +- .../debug-client/src/providers/rpc.rs | 6 +- crates/ethereum/node/tests/e2e/p2p.rs | 3 +- crates/ethereum/node/tests/e2e/rpc.rs | 7 +- crates/net/eth-wire-types/src/blocks.rs | 10 +- crates/net/eth-wire-types/src/transactions.rs | 30 +-- crates/net/network/tests/it/requests.rs | 4 +- crates/node/builder/src/launch/common.rs | 1 + crates/optimism/chainspec/src/lib.rs | 4 +- crates/optimism/evm/src/execute.rs | 4 +- crates/primitives/src/alloy_compat.rs | 135 +++++++++-- crates/primitives/src/transaction/mod.rs | 171 +++++--------- crates/primitives/src/transaction/pooled.rs | 51 ++-- crates/primitives/src/transaction/sidecar.rs | 106 +-------- .../primitives/src/transaction/signature.rs | 96 ++------ crates/primitives/src/transaction/util.rs | 22 +- crates/rpc/rpc-api/src/otterscan.rs | 11 +- crates/rpc/rpc-builder/src/lib.rs | 2 + crates/rpc/rpc-builder/tests/it/http.rs | 169 ++++++++------ crates/rpc/rpc-builder/tests/it/middleware.rs | 4 +- crates/rpc/rpc-eth-api/src/core.rs | 21 +- crates/rpc/rpc-eth-api/src/helpers/block.rs | 25 +- crates/rpc/rpc-eth-api/src/helpers/call.rs | 30 +-- crates/rpc/rpc-eth-api/src/types.rs | 24 +- crates/rpc/rpc-eth-types/src/simulate.rs | 16 +- crates/rpc/rpc-testing-util/src/debug.rs | 4 +- crates/rpc/rpc-testing-util/tests/it/trace.rs | 4 +- crates/rpc/rpc-types-compat/src/block.rs | 108 ++------- .../src/transaction/signature.rs | 9 +- crates/rpc/rpc/src/engine.rs | 3 +- crates/rpc/rpc/src/eth/core.rs | 8 +- crates/rpc/rpc/src/eth/helpers/signer.rs | 6 +- crates/rpc/rpc/src/otterscan.rs | 32 ++- .../codecs/src/alloy/authorization_list.rs | 3 +- crates/storage/codecs/src/alloy/signature.rs | 6 +- .../src/providers/database/provider.rs | 2 +- .../src/providers/static_file/manager.rs | 2 +- .../storage/provider/src/test_utils/blocks.rs | 6 +- testing/testing-utils/src/generators.rs | 16 +- 45 files changed, 718 insertions(+), 765 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0b3318c4ae09..02b27a649627 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,8 +113,7 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed961a48297c732a5d97ee321aa8bb5009ecadbcb077d8bec90cb54e651629" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-eips", "alloy-primitives", @@ -135,7 +134,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "460ab80ce4bda1c80bcf96fe7460520476f2c7b734581c6567fac2708e2a60ef" dependencies = [ "alloy-dyn-abi", - "alloy-json-abi", + "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-network", "alloy-network-primitives", "alloy-primitives", @@ -154,9 +153,9 @@ version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5228b189b18b85761340dc9eaac0141148a8503657b36f9bc3a869413d987ca" dependencies = [ - "alloy-json-abi", + "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", - "alloy-sol-type-parser", + "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-sol-types", "const-hex", "derive_more 1.0.0", @@ -182,8 +181,7 @@ dependencies = [ [[package]] name = "alloy-eip7702" version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ffc577390ce50234e02d841214b3dc0bea6aaaae8e04bbf3cb82e9a45da9eb" +source = "git+https://github.com/alloy-rs/eips?rev=9e6fcee#9e6fcee13e7f72d32f136baf233108e567e1c51c" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -198,8 +196,7 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b69e06cf9c37be824b9d26d6d101114fdde6af0c87de2828b414c05c4b3daa71" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -219,8 +216,7 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde15e14944a88bd6a57d325e9a49b75558746fe16aaccc79713ae50a6a9574c" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "alloy-serde", @@ -234,7 +230,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "31a0f0d51db8a1a30a4d98a9f90e090a94c8f44cb4d9eafc7e03aa6d00aae984" dependencies = [ "alloy-primitives", - "alloy-sol-type-parser", + "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-abi" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "alloy-primitives", + "alloy-sol-type-parser 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", "serde", "serde_json", ] @@ -242,8 +249,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af5979e0d5a7bf9c7eb79749121e8256e59021af611322aee56e77e20776b4b3" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -256,8 +262,7 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "204237129086ce5dc17a58025e93739b01b45313841f98fa339eb1d780511e57" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -277,8 +282,7 @@ dependencies = [ [[package]] name = "alloy-network-primitives" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514f70ee2a953db21631cd817b13a1571474ec77ddc03d47616d5e8203489fde" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -290,8 +294,7 @@ dependencies = [ [[package]] name = "alloy-node-bindings" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27444ea67d360508753022807cdd0b49a95c878924c9c5f8f32668b7d7768245" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -307,8 +310,7 @@ dependencies = [ [[package]] name = "alloy-primitives" version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8edae627382349b56cd6a7a2106f4fd69b243a9233e560c55c2e03cabb7e1d3c" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" dependencies = [ "alloy-rlp", "arbitrary", @@ -339,8 +341,7 @@ dependencies = [ [[package]] name = "alloy-provider" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4814d141ede360bb6cd1b4b064f1aab9de391e7c4d0d4d50ac89ea4bc1e25fbd" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-chains", "alloy-consensus", @@ -380,8 +381,7 @@ dependencies = [ [[package]] name = "alloy-pubsub" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96ba46eb69ddf7a9925b81f15229cb74658e6eebe5dd30a5b74e2cd040380573" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -421,8 +421,7 @@ dependencies = [ [[package]] name = "alloy-rpc-client" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc2bd1e7403463a5f2c61e955bcc9d3072b63aa177442b0f9aa6a6d22a941e3" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -446,8 +445,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eea9bf1abdd506f985a53533f5ac01296bcd6102c5e139bbc5d40bc468d2c916" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -459,8 +457,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea02c25541fb19eaac4278aa5c41d2d7e0245898887e54a74bfc0f3103e99415" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -471,10 +468,10 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2382fc63fb0cf3e02818d547b80cb66cc49a31f8803d0c328402b2008bc13650" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", + "alloy-rpc-types-eth", "alloy-serde", "serde", ] @@ -482,8 +479,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45357a642081c8ce235c0ad990c4e9279f5f18a723545076b38cfcc05cc25234" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-eips", "alloy-primitives", @@ -496,8 +492,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5afe3ab1038f90faf56304aa0adf1e6a8c9844615d8f83967f932f3a70390b1" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "serde", @@ -506,8 +501,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "886d22d41992287a235af2f3af4299b5ced2bcafb81eb835572ad35747476946" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -527,8 +521,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b034779a4850b4b03f5be5ea674a1cf7d746b2da762b34d1860ab45e48ca27" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -548,8 +541,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3246948dfa5f5060a9abe04233d741ea656ef076b12958f3242416ce9f375058" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-eips", "alloy-primitives", @@ -561,8 +553,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e5fb6c5c401321f802f69dcdb95b932f30f8158f6798793f914baac5995628e" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -575,8 +566,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ad066b49c3b1b5f64cdd2399177a19926a6a15db2dbf11e2098de621f9e7480" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -587,8 +577,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "028e72eaa9703e4882344983cfe7636ce06d8cce104a78ea62fd19b46659efc4" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "arbitrary", @@ -599,8 +588,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "592c185d7100258c041afac51877660c7bf6213447999787197db4842f0e938e" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-primitives", "async-trait", @@ -613,8 +601,7 @@ dependencies = [ [[package]] name = "alloy-signer-local" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6614f02fc1d5b079b2a4a5320018317b506fd0a6d67c1fd5542a71201724986c" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-consensus", "alloy-network", @@ -634,8 +621,21 @@ version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "841eabaa4710f719fddbc24c95d386eae313f07e6da4babc25830ee37945be0c" dependencies = [ - "alloy-sol-macro-expander", - "alloy-sol-macro-input", + "alloy-sol-macro-expander 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "alloy-sol-macro-expander 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", + "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", "proc-macro-error2", "proc-macro2", "quote", @@ -648,15 +648,37 @@ version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6672337f19d837b9f7073c45853aeb528ed9f7dd6a4154ce683e9e5cb7794014" dependencies = [ - "alloy-sol-macro-input", + "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "const-hex", "heck", "indexmap 2.6.0", "proc-macro-error2", "proc-macro2", "quote", +<<<<<<< HEAD "syn 2.0.87", "syn-solidity", +======= + "syn 2.0.86", + "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", + "const-hex", + "heck", + "indexmap 2.6.0", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", +>>>>>>> 66fadca3a (wip) "tiny-keccak", ] @@ -671,8 +693,27 @@ dependencies = [ "heck", "proc-macro2", "quote", +<<<<<<< HEAD "syn 2.0.87", "syn-solidity", +======= + "syn 2.0.86", + "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "alloy-sol-macro-input" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "const-hex", + "dunce", + "heck", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", +>>>>>>> 66fadca3a (wip) ] [[package]] @@ -685,15 +726,23 @@ dependencies = [ "winnow", ] +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "serde", + "winnow", +] + [[package]] name = "alloy-sol-types" version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa828bb1b9a6dc52208fbb18084fb9ce2c30facc2bfda6a5d922349b4990354f" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" dependencies = [ - "alloy-json-abi", + "alloy-json-abi 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", "alloy-primitives", - "alloy-sol-macro", + "alloy-sol-macro 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", "const-hex", "serde", ] @@ -701,8 +750,7 @@ dependencies = [ [[package]] name = "alloy-transport" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be77579633ebbc1266ae6fd7694f75c408beb1aeb6865d0b18f22893c265a061" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -721,8 +769,7 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91fd1a5d0827939847983b46f2f79510361f901dc82f8e3c38ac7397af142c6e" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -736,8 +783,7 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8073d1186bfeeb8fbdd1292b6f1a0731f3aed8e21e1463905abfae0b96a887a6" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -755,8 +801,7 @@ dependencies = [ [[package]] name = "alloy-transport-ws" version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f27837bb4a1d6c83a28231c94493e814882f0e9058648a97e908a5f3fc9fcf" +source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -2817,7 +2862,7 @@ version = "0.0.0" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-sol-macro", + "alloy-sol-macro 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-sol-types", "eyre", "reth", @@ -5267,8 +5312,7 @@ checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" [[package]] name = "op-alloy-consensus" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26c3b35b7b3e36d15e0563eebffe13c1d9ca16b7aaffcb6a64354633547e16b" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5285,8 +5329,7 @@ dependencies = [ [[package]] name = "op-alloy-genesis" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccacc2efed3d60d98ea581bddb885df1c6c62a592e55de049cfefd94116112cd" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5299,8 +5342,7 @@ dependencies = [ [[package]] name = "op-alloy-network" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ff6fc0f94702ea0f4d8466bffdc990067ae6df9213465df9b7957f74f1e5461" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-consensus", "alloy-network", @@ -5313,8 +5355,7 @@ dependencies = [ [[package]] name = "op-alloy-protocol" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5f8e6ec6b91c6aaeb20860b455a52fd8e300acfe5d534e96e9073a24f853e74" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5333,8 +5374,7 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94bae9bf91b620e1e2c2291562e5998bc1247bd8ada011773e1997b31a95de99" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5351,8 +5391,7 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b52ee59c86537cff83e8c7f2a6aa287a94f3608bb40c06d442aafd0c2e807a4" +source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -9389,8 +9428,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "13.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d11fa1e195b0bebaf3fb18596f314a13ba3a4cb1fdd16d3465934d812fd921e" +source = "git+https://github.com/klkvr/revm?rev=e552b1d#e552b1d83c27fff70331c4a36da01709ebe77096" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -10378,6 +10416,17 @@ dependencies = [ "syn 2.0.87", ] +[[package]] +name = "syn-solidity" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.86", +] + [[package]] name = "sync_wrapper" version = "0.1.2" @@ -11417,9 +11466,9 @@ dependencies = [ [[package]] name = "wasmtimer" -version = "0.2.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7ed9d8b15c7fb594d72bfb4b5a276f3d2029333cd93a932f376f5937f6f80ee" +checksum = "bb4f099acbc1043cc752b91615b24b02d7f6fcd975bd781fed9f50b3c3e15bf7" dependencies = [ "futures", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 8c5cf7b0cd5a..b692167ce671 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -427,7 +427,7 @@ revm-primitives = { version = "13.0.0", features = [ # eth alloy-chains = "0.1.32" alloy-dyn-abi = "0.8.0" -alloy-primitives = { version = "0.8.9", default-features = false } +alloy-primitives = { version = "0.8.10", default-features = false } alloy-rlp = "0.3.4" alloy-sol-types = "0.8.0" alloy-trie = { version = "0.7", default-features = false } @@ -602,35 +602,43 @@ tikv-jemalloc-ctl = "0.6" tikv-jemallocator = "0.6" tracy-client = "0.17.3" -#[patch.crates-io] -#alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } -#alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } - -#op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } -#op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } -#op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } -#op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } \ No newline at end of file +[patch.crates-io] +alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } +alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } + +alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } + +revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } + +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } + +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } diff --git a/bin/reth-bench/src/bench/context.rs b/bin/reth-bench/src/bench/context.rs index 5f8936934c69..59533bc6e979 100644 --- a/bin/reth-bench/src/bench/context.rs +++ b/bin/reth-bench/src/bench/context.rs @@ -74,14 +74,17 @@ impl BenchContext { let first_block = match benchmark_mode { BenchMode::Continuous => { // fetch Latest block - block_provider.get_block_by_number(BlockNumberOrTag::Latest, true).await?.unwrap() + block_provider + .get_block_by_number(BlockNumberOrTag::Latest, true.into()) + .await? + .unwrap() } BenchMode::Range(ref mut range) => { match range.next() { Some(block_number) => { // fetch first block in range block_provider - .get_block_by_number(block_number.into(), true) + .get_block_by_number(block_number.into(), true.into()) .await? .unwrap() } diff --git a/bin/reth-bench/src/bench/new_payload_fcu.rs b/bin/reth-bench/src/bench/new_payload_fcu.rs index ca5359fb8c26..2fc58ab68556 100644 --- a/bin/reth-bench/src/bench/new_payload_fcu.rs +++ b/bin/reth-bench/src/bench/new_payload_fcu.rs @@ -43,16 +43,17 @@ impl Command { let (sender, mut receiver) = tokio::sync::mpsc::channel(1000); tokio::task::spawn(async move { while benchmark_mode.contains(next_block) { - let block_res = block_provider.get_block_by_number(next_block.into(), true).await; + let block_res = + block_provider.get_block_by_number(next_block.into(), true.into()).await; let block = block_res.unwrap().unwrap(); let block_hash = block.header.hash; let block = Block::try_from(block.inner).unwrap().seal(block_hash); let head_block_hash = block.hash(); let safe_block_hash = block_provider - .get_block_by_number(block.number.saturating_sub(32).into(), false); + .get_block_by_number(block.number.saturating_sub(32).into(), false.into()); let finalized_block_hash = block_provider - .get_block_by_number(block.number.saturating_sub(64).into(), false); + .get_block_by_number(block.number.saturating_sub(64).into(), false.into()); let (safe, finalized) = tokio::join!(safe_block_hash, finalized_block_hash,); diff --git a/bin/reth-bench/src/bench/new_payload_only.rs b/bin/reth-bench/src/bench/new_payload_only.rs index 85342d1af76c..26dc8f3f4acf 100644 --- a/bin/reth-bench/src/bench/new_payload_only.rs +++ b/bin/reth-bench/src/bench/new_payload_only.rs @@ -43,7 +43,8 @@ impl Command { let (sender, mut receiver) = tokio::sync::mpsc::channel(1000); tokio::task::spawn(async move { while benchmark_mode.contains(next_block) { - let block_res = block_provider.get_block_by_number(next_block.into(), true).await; + let block_res = + block_provider.get_block_by_number(next_block.into(), true.into()).await; let block = block_res.unwrap().unwrap(); let block_hash = block.header.hash; let block = Block::try_from(block.inner).unwrap().seal(block_hash); diff --git a/crates/consensus/common/src/validation.rs b/crates/consensus/common/src/validation.rs index c6539cdcf71c..28d4e29c083f 100644 --- a/crates/consensus/common/src/validation.rs +++ b/crates/consensus/common/src/validation.rs @@ -276,7 +276,7 @@ mod tests { use super::*; use alloy_consensus::{TxEip4844, EMPTY_OMMER_ROOT_HASH, EMPTY_ROOT_HASH}; use alloy_primitives::{ - hex_literal::hex, Address, BlockHash, BlockNumber, Bytes, Parity, Sealable, U256, + hex_literal::hex, Address, BlockHash, BlockNumber, Bytes, Sealable, U256, }; use mockall::mock; use rand::Rng; @@ -403,7 +403,7 @@ mod tests { blob_versioned_hashes: std::iter::repeat_with(|| rng.gen()).take(num_blobs).collect(), }); - let signature = Signature::new(U256::default(), U256::default(), Parity::Parity(true)); + let signature = Signature::new(U256::default(), U256::default(), true); TransactionSigned::from_transaction_and_signature(request, signature) } diff --git a/crates/consensus/debug-client/src/client.rs b/crates/consensus/debug-client/src/client.rs index a6a59a6a380b..5a46a0ab342b 100644 --- a/crates/consensus/debug-client/src/client.rs +++ b/crates/consensus/debug-client/src/client.rs @@ -191,11 +191,11 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { payload_inner: ExecutionPayloadV2 { payload_inner: ExecutionPayloadV1 { parent_hash: block.header.parent_hash, - fee_recipient: block.header.miner, + fee_recipient: block.header.beneficiary, state_root: block.header.state_root, receipts_root: block.header.receipts_root, logs_bloom: block.header.logs_bloom, - prev_randao: block.header.mix_hash.unwrap(), + prev_randao: block.header.mix_hash, block_number: block.header.number, gas_limit: block.header.gas_limit, gas_used: block.header.gas_used, @@ -213,7 +213,7 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { }) .collect(), }, - withdrawals: block.withdrawals.clone().unwrap_or_default(), + withdrawals: block.withdrawals.clone().unwrap_or_default().to_vec(), }, blob_gas_used: block.header.blob_gas_used.unwrap(), excess_blob_gas: block.header.excess_blob_gas.unwrap(), diff --git a/crates/consensus/debug-client/src/providers/rpc.rs b/crates/consensus/debug-client/src/providers/rpc.rs index a8cd15c105aa..5312bd55b3f9 100644 --- a/crates/consensus/debug-client/src/providers/rpc.rs +++ b/crates/consensus/debug-client/src/providers/rpc.rs @@ -30,9 +30,9 @@ impl BlockProvider for RpcBlockProvider { .expect("failed to subscribe on new blocks") .into_stream(); - while let Some(block) = stream.next().await { + while let Some(header) = stream.next().await { let full_block = ws_provider - .get_block_by_hash(block.header.hash, BlockTransactionsKind::Full) + .get_block_by_hash(header.hash, BlockTransactionsKind::Full) .await .expect("failed to get block") .expect("block not found"); @@ -49,7 +49,7 @@ impl BlockProvider for RpcBlockProvider { .await .expect("failed to create WS provider"); let block: Block = ws_provider - .get_block_by_number(BlockNumberOrTag::Number(block_number), true) + .get_block_by_number(BlockNumberOrTag::Number(block_number), true.into()) .await? .ok_or_else(|| eyre::eyre!("block not found by number {}", block_number))?; Ok(block) diff --git a/crates/ethereum/node/tests/e2e/p2p.rs b/crates/ethereum/node/tests/e2e/p2p.rs index 180b88bbd5a2..5b2a6654fbbd 100644 --- a/crates/ethereum/node/tests/e2e/p2p.rs +++ b/crates/ethereum/node/tests/e2e/p2p.rs @@ -157,7 +157,8 @@ async fn e2e_test_send_transactions() -> eyre::Result<()> { assert_eq!(second_provider.get_block_number().await?, 0); - let head = provider.get_block_by_number(Default::default(), false).await?.unwrap().header.hash; + let head = + provider.get_block_by_number(Default::default(), false.into()).await?.unwrap().header.hash; second_node.engine_api.update_forkchoice(head, head).await?; let start = std::time::Instant::now(); diff --git a/crates/ethereum/node/tests/e2e/rpc.rs b/crates/ethereum/node/tests/e2e/rpc.rs index 1f7ac32e048b..94ae997eed67 100644 --- a/crates/ethereum/node/tests/e2e/rpc.rs +++ b/crates/ethereum/node/tests/e2e/rpc.rs @@ -69,7 +69,7 @@ async fn test_fee_history() -> eyre::Result<()> { let receipt = builder.get_receipt().await?; assert!(receipt.status()); - let block = provider.get_block_by_number(1.into(), false).await?.unwrap(); + let block = provider.get_block_by_number(1.into(), false.into()).await?.unwrap(); assert_eq!(block.header.gas_used as u128, receipt.gas_used,); assert_eq!(block.header.base_fee_per_gas.unwrap(), expected_first_base_fee as u64); @@ -89,7 +89,7 @@ async fn test_fee_history() -> eyre::Result<()> { let fee_history = provider.get_fee_history(block_count, latest_block.into(), &[]).await?; let mut prev_header = provider - .get_block_by_number((latest_block + 1 - block_count).into(), false) + .get_block_by_number((latest_block + 1 - block_count).into(), false.into()) .await? .unwrap() .header; @@ -101,7 +101,8 @@ async fn test_fee_history() -> eyre::Result<()> { chain_spec.base_fee_params_at_block(block), ); - let header = provider.get_block_by_number(block.into(), false).await?.unwrap().header; + let header = + provider.get_block_by_number(block.into(), false.into()).await?.unwrap().header; assert_eq!(header.base_fee_per_gas.unwrap(), expected_base_fee as u64); assert_eq!( diff --git a/crates/net/eth-wire-types/src/blocks.rs b/crates/net/eth-wire-types/src/blocks.rs index 878b4573f2b6..53424564ae41 100644 --- a/crates/net/eth-wire-types/src/blocks.rs +++ b/crates/net/eth-wire-types/src/blocks.rs @@ -113,7 +113,7 @@ mod tests { HeadersDirection, }; use alloy_consensus::TxLegacy; - use alloy_primitives::{hex, Parity, TxKind, U256}; + use alloy_primitives::{hex, TxKind, U256}; use alloy_rlp::{Decodable, Encodable}; use reth_primitives::{BlockHashOrNumber, Header, Signature, Transaction, TransactionSigned}; use std::str::FromStr; @@ -372,7 +372,7 @@ mod tests { }), Signature::new( U256::from_str("0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c12").unwrap(), U256::from_str("0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c10").unwrap(), - Parity::Parity(false), + false, ), ), TransactionSigned::from_transaction_and_signature(Transaction::Legacy(TxLegacy { @@ -386,7 +386,7 @@ mod tests { }), Signature::new( U256::from_str("0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb").unwrap(), U256::from_str("0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb").unwrap(), - Parity::Parity(false), + false, ), ), ], @@ -445,7 +445,7 @@ mod tests { Signature::new( U256::from_str("0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c12").unwrap(), U256::from_str("0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c10").unwrap(), - Parity::Eip155(37), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -461,7 +461,7 @@ mod tests { Signature::new( U256::from_str("0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb").unwrap(), U256::from_str("0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb").unwrap(), - Parity::Eip155(37), + false, ), ), ], diff --git a/crates/net/eth-wire-types/src/transactions.rs b/crates/net/eth-wire-types/src/transactions.rs index ab65aa178ee8..d3d1f392d139 100644 --- a/crates/net/eth-wire-types/src/transactions.rs +++ b/crates/net/eth-wire-types/src/transactions.rs @@ -78,7 +78,7 @@ impl FromIterator for PooledTransactions { mod tests { use crate::{message::RequestPair, GetPooledTransactions, PooledTransactions}; use alloy_consensus::{TxEip1559, TxLegacy}; - use alloy_primitives::{hex, Parity, TxKind, U256}; + use alloy_primitives::{hex, TxKind, U256}; use alloy_rlp::{Decodable, Encodable}; use reth_chainspec::MIN_TRANSACTION_GAS; use reth_primitives::{PooledTransactionsElement, Signature, Transaction, TransactionSigned}; @@ -142,7 +142,7 @@ mod tests { "0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c10", ) .unwrap(), - Parity::Parity(false), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -164,7 +164,7 @@ mod tests { "0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb", ) .unwrap(), - Parity::Parity(false), + false, ), ), ]; @@ -208,7 +208,7 @@ mod tests { "0x64b1702d9298fee62dfeccc57d322a463ad55ca201256d01f62b45b2e1c21c10", ) .unwrap(), - Parity::Eip155(37), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -230,7 +230,7 @@ mod tests { "0x52f8f61201b2b11a78d6e866abc9c3db2ae8631fa656bfe5cb53668255367afb", ) .unwrap(), - Parity::Eip155(37), + false, ), ), ]; @@ -275,7 +275,7 @@ mod tests { "0x612638fb29427ca33b9a3be2a0a561beecfe0269655be160d35e72d366a6a860", ) .unwrap(), - Parity::Eip155(44), + true, ), ), TransactionSigned::from_transaction_and_signature( @@ -299,7 +299,7 @@ mod tests { "0x016b83f4f980694ed2eee4d10667242b1f40dc406901b34125b008d334d47469", ) .unwrap(), - Parity::Parity(true), + true, ), ), TransactionSigned::from_transaction_and_signature( @@ -321,7 +321,7 @@ mod tests { "0x3ca3ae86580e94550d7c071e3a02eadb5a77830947c9225165cf9100901bee88", ) .unwrap(), - Parity::Eip155(43), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -343,7 +343,7 @@ mod tests { "0x5406ad177223213df262cb66ccbb2f46bfdccfdfbbb5ffdda9e2c02d977631da", ) .unwrap(), - Parity::Eip155(43), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -365,7 +365,7 @@ mod tests { "0x3a456401896b1b6055311536bf00a718568c744d8c1f9df59879e8350220ca18", ) .unwrap(), - Parity::Eip155(43), + false, ), ), ]; @@ -414,7 +414,7 @@ mod tests { "0x612638fb29427ca33b9a3be2a0a561beecfe0269655be160d35e72d366a6a860", ) .unwrap(), - Parity::Parity(true), + true, ), ), TransactionSigned::from_transaction_and_signature( @@ -438,7 +438,7 @@ mod tests { "0x016b83f4f980694ed2eee4d10667242b1f40dc406901b34125b008d334d47469", ) .unwrap(), - Parity::Parity(true), + true, ), ), TransactionSigned::from_transaction_and_signature( @@ -460,7 +460,7 @@ mod tests { "0x3ca3ae86580e94550d7c071e3a02eadb5a77830947c9225165cf9100901bee88", ) .unwrap(), - Parity::Parity(false), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -482,7 +482,7 @@ mod tests { "0x5406ad177223213df262cb66ccbb2f46bfdccfdfbbb5ffdda9e2c02d977631da", ) .unwrap(), - Parity::Parity(false), + false, ), ), TransactionSigned::from_transaction_and_signature( @@ -504,7 +504,7 @@ mod tests { "0x3a456401896b1b6055311536bf00a718568c744d8c1f9df59879e8350220ca18", ) .unwrap(), - Parity::Parity(false), + false, ), ), ]; diff --git a/crates/net/network/tests/it/requests.rs b/crates/net/network/tests/it/requests.rs index 61241f02d2de..87b0dfab6aa7 100644 --- a/crates/net/network/tests/it/requests.rs +++ b/crates/net/network/tests/it/requests.rs @@ -4,7 +4,7 @@ use std::sync::Arc; use alloy_consensus::TxEip2930; -use alloy_primitives::{Bytes, Parity, TxKind, U256}; +use alloy_primitives::{Bytes, TxKind, U256}; use rand::Rng; use reth_eth_wire::HeadersDirection; use reth_network::{ @@ -31,7 +31,7 @@ pub fn rng_transaction(rng: &mut impl rand::RngCore) -> TransactionSigned { input: Bytes::from(vec![1, 2]), access_list: Default::default(), }); - let signature = Signature::new(U256::default(), U256::default(), Parity::Parity(true)); + let signature = Signature::new(U256::default(), U256::default(), true); TransactionSigned::from_transaction_and_signature(request, signature) } diff --git a/crates/node/builder/src/launch/common.rs b/crates/node/builder/src/launch/common.rs index ac2339fa6cfc..83ba10e21304 100644 --- a/crates/node/builder/src/launch/common.rs +++ b/crates/node/builder/src/launch/common.rs @@ -939,6 +939,7 @@ where EthApiClient::< alloy_rpc_types::Transaction, alloy_rpc_types::Block, + alloy_rpc_types::Header, alloy_rpc_types::Receipt, >::chain_id(&client) .await diff --git a/crates/optimism/chainspec/src/lib.rs b/crates/optimism/chainspec/src/lib.rs index 3248625d604c..ae6f2d823621 100644 --- a/crates/optimism/chainspec/src/lib.rs +++ b/crates/optimism/chainspec/src/lib.rs @@ -20,7 +20,7 @@ mod op_sepolia; use alloc::{boxed::Box, vec, vec::Vec}; use alloy_chains::Chain; use alloy_genesis::Genesis; -use alloy_primitives::{Bytes, Parity, Signature, B256, U256}; +use alloy_primitives::{Bytes, Signature, B256, U256}; pub use base::BASE_MAINNET; pub use base_sepolia::BASE_SEPOLIA; use derive_more::{Constructor, Deref, Display, From, Into}; @@ -259,7 +259,7 @@ pub fn decode_holocene_1559_params(extra_data: Bytes) -> Result<(u32, u32), Deco /// Returns the signature for the optimism deposit transactions, which don't include a /// signature. pub fn optimism_deposit_tx_signature() -> Signature { - Signature::new(U256::ZERO, U256::ZERO, Parity::Parity(false)) + Signature::new(U256::ZERO, U256::ZERO, false) } impl EthChainSpec for OpChainSpec { diff --git a/crates/optimism/evm/src/execute.rs b/crates/optimism/evm/src/execute.rs index 91cdb1bd2c50..69934b1f5735 100644 --- a/crates/optimism/evm/src/execute.rs +++ b/crates/optimism/evm/src/execute.rs @@ -298,7 +298,7 @@ mod tests { use crate::OpChainSpec; use alloy_consensus::TxEip1559; use alloy_primitives::{b256, Address, StorageKey, StorageValue}; - use op_alloy_consensus::TxDeposit; + use op_alloy_consensus::optimism_deposit_tx_signature; use reth_chainspec::MIN_TRANSACTION_GAS; use reth_evm::execute::{BasicBlockExecutorProvider, BatchExecutor, BlockExecutorProvider}; use reth_optimism_chainspec::OpChainSpecBuilder; @@ -467,7 +467,7 @@ mod tests { gas_limit: MIN_TRANSACTION_GAS, ..Default::default() }), - TxDeposit::signature(), + optimism_deposit_tx_signature(), ); let provider = executor_provider(chain_spec); diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index 917baef66612..d2bf2eb9ca8a 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -1,14 +1,15 @@ //! Common conversions from alloy types. use crate::{ - transaction::extract_chain_id, Block, BlockBody, Signature, Transaction, TransactionSigned, - TransactionSignedEcRecovered, TransactionSignedNoHash, TxType, + Block, BlockBody, Signature, Transaction, TransactionSigned, TransactionSignedEcRecovered, + TransactionSignedNoHash, TxType, }; use alloc::{string::ToString, vec::Vec}; use alloy_consensus::{ - constants::EMPTY_TRANSACTIONS, Transaction as _, TxEip1559, TxEip2930, TxEip4844, TxLegacy, + constants::EMPTY_TRANSACTIONS, transaction::from_eip155_value, AnyHeader, Header, TxEip1559, + TxEip2930, TxEip4844, TxLegacy, }; -use alloy_primitives::{Parity, TxKind}; +use alloy_primitives::{SignatureError, TxKind}; use alloy_rlp::Error as RlpError; use alloy_serde::WithOtherFields; use op_alloy_rpc_types as _; @@ -43,11 +44,107 @@ impl TryFrom, + alloy_rpc_types::Header, + >, + > for Block +{ + type Error = alloy_rpc_types::ConversionError; + + fn try_from( + block: alloy_rpc_types::Block< + WithOtherFields, + alloy_rpc_types::Header, + >, + ) -> Result { + use alloy_rpc_types::ConversionError; + + let transactions = { + let transactions: Result, ConversionError> = match block + .transactions + { + alloy_rpc_types::BlockTransactions::Full(transactions) => { + transactions.into_iter().map(|tx| tx.try_into()).collect() + } + alloy_rpc_types::BlockTransactions::Hashes(_) | + alloy_rpc_types::BlockTransactions::Uncle => { + // alloy deserializes empty blocks into `BlockTransactions::Hashes`, if the tx + // root is the empty root then we can just return an empty vec. + if block.header.transactions_root == EMPTY_TRANSACTIONS { + Ok(Vec::new()) + } else { + Err(ConversionError::MissingFullTransactions) + } + } + }; + transactions? + }; + + let AnyHeader { + parent_hash, + ommers_hash, + beneficiary, + state_root, + transactions_root, + receipts_root, + logs_bloom, + difficulty, + number, + gas_limit, + gas_used, + timestamp, + extra_data, + mix_hash, + nonce, + base_fee_per_gas, + withdrawals_root, + blob_gas_used, + excess_blob_gas, + parent_beacon_block_root, + requests_hash, + } = block.header.inner; + + Ok(Self { + header: Header { + parent_hash, + ommers_hash, + beneficiary, + state_root, + transactions_root, + receipts_root, + logs_bloom, + difficulty, + number, + gas_limit, + gas_used, + timestamp, + extra_data, + mix_hash: mix_hash.ok_or(ConversionError::Custom("missing mixHash".to_string()))?, + nonce: nonce.ok_or(ConversionError::Custom("missing nonce".to_string()))?, + base_fee_per_gas, + withdrawals_root, + blob_gas_used, + excess_blob_gas, + parent_beacon_block_root, + requests_hash, + }, + body: BlockBody { + transactions, + ommers: Default::default(), + withdrawals: block.withdrawals.map(|w| w.into_inner().into()), }, }) } @@ -88,8 +185,12 @@ impl TryFrom> for Transaction { // sometimes rpc providers return legacy transactions without a chain id // explicitly in the response, however those transactions may also have // a chain id in the signature from eip155 - extract_chain_id(signature.v.to()) - .map_err(|err| ConversionError::Eip2718Error(err.into()))? + from_eip155_value(signature.v.to()) + .ok_or_else(|| { + ConversionError::SignatureError(SignatureError::InvalidParity( + signature.v.to(), + )) + })? .1 } else { return Err(ConversionError::MissingChainId) @@ -227,25 +328,21 @@ impl TryFrom> for TransactionSigne // If the transaction type is Legacy, adjust the v component of the // signature according to the Ethereum specification TxType::Legacy => { - extract_chain_id(signature.v.to()) - .map_err(|_| ConversionError::InvalidSignature)? + from_eip155_value(signature.v.to()) + .ok_or_else(|| { + ConversionError::SignatureError(SignatureError::InvalidParity( + signature.v.to(), + )) + })? .0 } _ => !signature.v.is_zero(), } }; - let mut parity = Parity::Parity(y_parity); - - if matches!(transaction.tx_type(), TxType::Legacy) { - if let Some(chain_id) = transaction.chain_id() { - parity = parity.with_chain_id(chain_id) - } - } - Ok(Self::from_transaction_and_signature( transaction, - Signature::new(signature.r, signature.s, parity), + Signature::new(signature.r, signature.s, y_parity), )) } } diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index 59d3b9e12976..41259d57741e 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -4,7 +4,8 @@ use crate::BlockHashOrNumber; #[cfg(any(test, feature = "reth-codec"))] use alloy_consensus::constants::{EIP4844_TX_TYPE_ID, EIP7702_TX_TYPE_ID}; use alloy_consensus::{ - SignableTransaction, Transaction as _, TxEip1559, TxEip2930, TxEip4844, TxEip7702, TxLegacy, + transaction::RlpEcdsaTx, SignableTransaction, Transaction as _, TxEip1559, TxEip2930, + TxEip4844, TxEip7702, TxLegacy, }; use alloy_eips::{ eip2718::{Decodable2718, Eip2718Error, Eip2718Result, Encodable2718}, @@ -19,10 +20,10 @@ use once_cell as _; #[cfg(not(feature = "std"))] use once_cell::sync::Lazy as LazyLock; #[cfg(feature = "optimism")] -use op_alloy_consensus::DepositTransaction; +use op_alloy_consensus::{optimism_deposit_tx_signature, DepositTransaction}; use rayon::prelude::{IntoParallelIterator, ParallelIterator}; use serde::{Deserialize, Serialize}; -use signature::{decode_with_eip155_chain_id, with_eip155_parity}; +use signature::decode_with_eip155_chain_id; #[cfg(feature = "std")] use std::sync::LazyLock; @@ -36,9 +37,7 @@ pub use sidecar::BlobTransactionValidationError; pub use sidecar::{BlobTransaction, BlobTransactionSidecar}; pub use compat::FillTxEnv; -pub use signature::{ - extract_chain_id, legacy_parity, recover_signer, recover_signer_unchecked, Signature, -}; +pub use signature::{recover_signer, recover_signer_unchecked, Signature}; pub use tx_type::TxType; pub use variant::TransactionSignedVariant; @@ -385,38 +384,37 @@ impl Transaction { /// This encodes the transaction _without_ the signature, and is only suitable for creating a /// hash intended for signing. - pub fn encode_without_signature(&self, out: &mut dyn bytes::BufMut) { - Encodable::encode(self, out); + pub fn encode_for_signing(&self, out: &mut dyn bytes::BufMut) { + match self { + Self::Legacy(tx) => tx.encode_for_signing(out), + Self::Eip2930(tx) => tx.encode_for_signing(out), + Self::Eip1559(tx) => tx.encode_for_signing(out), + Self::Eip4844(tx) => tx.encode_for_signing(out), + Self::Eip7702(tx) => tx.encode_for_signing(out), + #[cfg(feature = "optimism")] + Self::Deposit(_) => {} + } } - /// Inner encoding function that is used for both rlp [`Encodable`] trait and for calculating - /// hash that for eip2718 does not require rlp header - pub fn encode_with_signature( - &self, - signature: &Signature, - out: &mut dyn bytes::BufMut, - with_header: bool, - ) { + /// Produces EIP-2718 encoding of the transaction + pub fn eip2718_encode(&self, signature: &Signature, out: &mut dyn bytes::BufMut) { match self { Self::Legacy(legacy_tx) => { // do nothing w/ with_header - legacy_tx.encode_with_signature_fields( - &with_eip155_parity(signature, legacy_tx.chain_id), - out, - ) + legacy_tx.eip2718_encode(signature, out); } Self::Eip2930(access_list_tx) => { - access_list_tx.encode_with_signature(signature, out, with_header) + access_list_tx.eip2718_encode(signature, out); } Self::Eip1559(dynamic_fee_tx) => { - dynamic_fee_tx.encode_with_signature(signature, out, with_header) + dynamic_fee_tx.eip2718_encode(signature, out); } - Self::Eip4844(blob_tx) => blob_tx.encode_with_signature(signature, out, with_header), + Self::Eip4844(blob_tx) => blob_tx.eip2718_encode(signature, out), Self::Eip7702(set_code_tx) => { - set_code_tx.encode_with_signature(signature, out, with_header) + set_code_tx.eip2718_encode(signature, out); } #[cfg(feature = "optimism")] - Self::Deposit(deposit_tx) => deposit_tx.encode_inner(out, with_header), + Self::Deposit(deposit_tx) => deposit_tx.eip2718_encode(out), } } @@ -651,46 +649,6 @@ impl Default for Transaction { } } -impl Encodable for Transaction { - /// This encodes the transaction _without_ the signature, and is only suitable for creating a - /// hash intended for signing. - fn encode(&self, out: &mut dyn bytes::BufMut) { - match self { - Self::Legacy(legacy_tx) => { - legacy_tx.encode_for_signing(out); - } - Self::Eip2930(access_list_tx) => { - access_list_tx.encode_for_signing(out); - } - Self::Eip1559(dynamic_fee_tx) => { - dynamic_fee_tx.encode_for_signing(out); - } - Self::Eip4844(blob_tx) => { - blob_tx.encode_for_signing(out); - } - Self::Eip7702(set_code_tx) => { - set_code_tx.encode_for_signing(out); - } - #[cfg(feature = "optimism")] - Self::Deposit(deposit_tx) => { - deposit_tx.encode_inner(out, true); - } - } - } - - fn length(&self) -> usize { - match self { - Self::Legacy(legacy_tx) => legacy_tx.payload_len_for_signature(), - Self::Eip2930(access_list_tx) => access_list_tx.payload_len_for_signature(), - Self::Eip1559(dynamic_fee_tx) => dynamic_fee_tx.payload_len_for_signature(), - Self::Eip4844(blob_tx) => blob_tx.payload_len_for_signature(), - Self::Eip7702(set_code_tx) => set_code_tx.payload_len_for_signature(), - #[cfg(feature = "optimism")] - Self::Deposit(deposit_tx) => deposit_tx.encoded_len(true), - } - } -} - impl alloy_consensus::Transaction for Transaction { fn chain_id(&self) -> Option { match self { @@ -893,7 +851,7 @@ impl TransactionSignedNoHash { pub fn hash(&self) -> B256 { // pre-allocate buffer for the transaction let mut buf = Vec::with_capacity(128 + self.transaction.input().len()); - self.transaction.encode_with_signature(&self.signature, &mut buf, false); + self.transaction.eip2718_encode(&self.signature, &mut buf); keccak256(&buf) } @@ -927,7 +885,7 @@ impl TransactionSignedNoHash { /// This makes it possible to import pre bedrock transactions via the sender recovery stage. pub fn encode_and_recover_unchecked(&self, buffer: &mut Vec) -> Option
{ buffer.clear(); - self.transaction.encode_without_signature(buffer); + self.transaction.encode_for_signing(buffer); // Optimism's Deposit transaction does not have a signature. Directly return the // `from` address. @@ -941,7 +899,7 @@ impl TransactionSignedNoHash { // transactions with an empty signature // // NOTE: this is very hacky and only relevant for op-mainnet pre bedrock - if self.is_legacy() && self.signature == TxDeposit::signature() { + if self.is_legacy() && self.signature == optimism_deposit_tx_signature() { return Some(Address::ZERO) } } @@ -1036,7 +994,7 @@ impl reth_codecs::Compact for TransactionSignedNoHash { let bitflags = buf.get_u8() as usize; let sig_bit = bitflags & 1; - let (mut signature, buf) = Signature::from_compact(buf, sig_bit); + let (signature, buf) = Signature::from_compact(buf, sig_bit); let zstd_bit = bitflags >> 3; let (transaction, buf) = if zstd_bit != 0 { @@ -1065,10 +1023,6 @@ impl reth_codecs::Compact for TransactionSignedNoHash { Transaction::from_compact(buf, transaction_type) }; - if matches!(transaction, Transaction::Legacy(_)) { - signature = signature.with_parity(legacy_parity(&signature, transaction.chain_id())) - } - (Self { signature, transaction }, buf) } } @@ -1468,28 +1422,36 @@ impl Encodable2718 for TransactionSigned { fn encode_2718_len(&self) -> usize { match &self.transaction { - Transaction::Legacy(legacy_tx) => legacy_tx.encoded_len_with_signature( - &with_eip155_parity(&self.signature, legacy_tx.chain_id), - ), + Transaction::Legacy(legacy_tx) => legacy_tx.eip2718_encoded_length(&self.signature), Transaction::Eip2930(access_list_tx) => { - access_list_tx.encoded_len_with_signature(&self.signature, false) + access_list_tx.eip2718_encoded_length(&self.signature) } Transaction::Eip1559(dynamic_fee_tx) => { - dynamic_fee_tx.encoded_len_with_signature(&self.signature, false) - } - Transaction::Eip4844(blob_tx) => { - blob_tx.encoded_len_with_signature(&self.signature, false) + dynamic_fee_tx.eip2718_encoded_length(&self.signature) } + Transaction::Eip4844(blob_tx) => blob_tx.eip2718_encoded_length(&self.signature), Transaction::Eip7702(set_code_tx) => { - set_code_tx.encoded_len_with_signature(&self.signature, false) + set_code_tx.eip2718_encoded_length(&self.signature) } #[cfg(feature = "optimism")] - Transaction::Deposit(deposit_tx) => deposit_tx.encoded_len(false), + Transaction::Deposit(deposit_tx) => deposit_tx.eip2718_encoded_length(), } } fn encode_2718(&self, out: &mut dyn alloy_rlp::BufMut) { - self.transaction.encode_with_signature(&self.signature, out, false) + match &self.transaction { + Transaction::Legacy(legacy_tx) => legacy_tx.eip2718_encode(&self.signature, out), + Transaction::Eip2930(access_list_tx) => { + access_list_tx.eip2718_encode(&self.signature, out) + } + Transaction::Eip1559(dynamic_fee_tx) => { + dynamic_fee_tx.eip2718_encode(&self.signature, out) + } + Transaction::Eip4844(blob_tx) => blob_tx.eip2718_encode(&self.signature, out), + Transaction::Eip7702(set_code_tx) => set_code_tx.eip2718_encode(&self.signature, out), + #[cfg(feature = "optimism")] + Transaction::Deposit(deposit_tx) => deposit_tx.eip2718_encode(out), + } } } @@ -1498,25 +1460,25 @@ impl Decodable2718 for TransactionSigned { match ty.try_into().map_err(|_| Eip2718Error::UnexpectedType(ty))? { TxType::Legacy => Err(Eip2718Error::UnexpectedType(0)), TxType::Eip2930 => { - let (tx, signature, hash) = TxEip2930::decode_signed_fields(buf)?.into_parts(); + let (tx, signature, hash) = TxEip2930::rlp_decode_signed(buf)?.into_parts(); Ok(Self { transaction: Transaction::Eip2930(tx), signature, hash }) } TxType::Eip1559 => { - let (tx, signature, hash) = TxEip1559::decode_signed_fields(buf)?.into_parts(); + let (tx, signature, hash) = TxEip1559::rlp_decode_signed(buf)?.into_parts(); Ok(Self { transaction: Transaction::Eip1559(tx), signature, hash }) } TxType::Eip7702 => { - let (tx, signature, hash) = TxEip7702::decode_signed_fields(buf)?.into_parts(); + let (tx, signature, hash) = TxEip7702::rlp_decode_signed(buf)?.into_parts(); Ok(Self { transaction: Transaction::Eip7702(tx), signature, hash }) } TxType::Eip4844 => { - let (tx, signature, hash) = TxEip4844::decode_signed_fields(buf)?.into_parts(); + let (tx, signature, hash) = TxEip4844::rlp_decode_signed(buf)?.into_parts(); Ok(Self { transaction: Transaction::Eip4844(tx), signature, hash }) } #[cfg(feature = "optimism")] TxType::Deposit => Ok(Self::from_transaction_and_signature( - Transaction::Deposit(TxDeposit::decode(buf)?), - TxDeposit::signature(), + Transaction::Deposit(TxDeposit::rlp_decode(buf)?), + optimism_deposit_tx_signature(), )), } } @@ -1534,22 +1496,12 @@ impl<'a> arbitrary::Arbitrary<'a> for TransactionSigned { let secp = secp256k1::Secp256k1::new(); let key_pair = secp256k1::Keypair::new(&secp, &mut rand::thread_rng()); - let mut signature = crate::sign_message( + let signature = crate::sign_message( B256::from_slice(&key_pair.secret_bytes()[..]), transaction.signature_hash(), ) .unwrap(); - signature = if matches!(transaction, Transaction::Legacy(_)) { - if let Some(chain_id) = transaction.chain_id() { - signature.with_chain_id(chain_id) - } else { - signature.with_parity(alloy_primitives::Parity::NonEip155(bool::arbitrary(u)?)) - } - } else { - signature.with_parity_bool() - }; - #[cfg(feature = "optimism")] // Both `Some(0)` and `None` values are encoded as empty string byte. This introduces // ambiguity in roundtrip tests. Patch the mint value of deposit transaction here, so that @@ -1561,7 +1513,8 @@ impl<'a> arbitrary::Arbitrary<'a> for TransactionSigned { } #[cfg(feature = "optimism")] - let signature = if transaction.is_deposit() { TxDeposit::signature() } else { signature }; + let signature = + if transaction.is_deposit() { optimism_deposit_tx_signature() } else { signature }; Ok(Self::from_transaction_and_signature(transaction, signature)) } @@ -1904,7 +1857,7 @@ mod tests { }; use alloy_consensus::Transaction as _; use alloy_eips::eip2718::{Decodable2718, Encodable2718}; - use alloy_primitives::{address, b256, bytes, hex, Address, Bytes, Parity, B256, U256}; + use alloy_primitives::{address, b256, bytes, hex, Address, Bytes, B256, U256}; use alloy_rlp::{Decodable, Encodable, Error as RlpError}; use reth_chainspec::MIN_TRANSACTION_GAS; use reth_codecs::Compact; @@ -2012,7 +1965,7 @@ mod tests { .unwrap(), U256::from_str("0x3a456401896b1b6055311536bf00a718568c744d8c1f9df59879e8350220ca18") .unwrap(), - Parity::Eip155(43), + false, ); let hash = b256!("a517b206d2223278f860ea017d3626cacad4f52ff51030dc9a96b432f17f8d34"); test_decode_and_encode(&bytes, transaction, signature, Some(hash)); @@ -2032,7 +1985,7 @@ mod tests { .unwrap(), U256::from_str("0x5406ad177223213df262cb66ccbb2f46bfdccfdfbbb5ffdda9e2c02d977631da") .unwrap(), - Parity::Eip155(43), + false, ); test_decode_and_encode(&bytes, transaction, signature, None); @@ -2051,7 +2004,7 @@ mod tests { .unwrap(), U256::from_str("0x3ca3ae86580e94550d7c071e3a02eadb5a77830947c9225165cf9100901bee88") .unwrap(), - Parity::Eip155(43), + false, ); test_decode_and_encode(&bytes, transaction, signature, None); @@ -2072,7 +2025,7 @@ mod tests { .unwrap(), U256::from_str("0x016b83f4f980694ed2eee4d10667242b1f40dc406901b34125b008d334d47469") .unwrap(), - Parity::Parity(true), + true, ); test_decode_and_encode(&bytes, transaction, signature, None); @@ -2091,7 +2044,7 @@ mod tests { .unwrap(), U256::from_str("0x612638fb29427ca33b9a3be2a0a561beecfe0269655be160d35e72d366a6a860") .unwrap(), - Parity::Eip155(44), + true, ); test_decode_and_encode(&bytes, transaction, signature, None); } @@ -2255,7 +2208,7 @@ mod tests { .unwrap(), U256::from_str("0x3a456401896b1b6055311536bf00a718568c744d8c1f9df59879e8350220ca18") .unwrap(), - Parity::Eip155(43), + false, ); let inputs: Vec> = vec![ diff --git a/crates/primitives/src/transaction/pooled.rs b/crates/primitives/src/transaction/pooled.rs index 000ff41fe523..d41e703265c1 100644 --- a/crates/primitives/src/transaction/pooled.rs +++ b/crates/primitives/src/transaction/pooled.rs @@ -1,18 +1,14 @@ //! Defines the types for blob transactions, legacy, and other EIP-2718 transactions included in a //! response to `GetPooledTransactions`. -use super::{ - error::TransactionConversionError, - signature::{recover_signer, with_eip155_parity}, - TxEip7702, -}; +use super::{error::TransactionConversionError, signature::recover_signer, TxEip7702}; use crate::{ BlobTransaction, BlobTransactionSidecar, Signature, Transaction, TransactionSigned, TransactionSignedEcRecovered, }; use alloy_consensus::{ constants::EIP4844_TX_TYPE_ID, - transaction::{TxEip1559, TxEip2930, TxEip4844, TxLegacy}, + transaction::{RlpEcdsaTx, TxEip1559, TxEip2930, TxEip4844, TxLegacy}, SignableTransaction, TxEip4844WithSidecar, }; use alloy_eips::eip2718::{Decodable2718, Eip2718Result, Encodable2718}; @@ -404,58 +400,43 @@ impl Encodable2718 for PooledTransactionsElement { match self { Self::Legacy { transaction, signature, .. } => { // method computes the payload len with a RLP header - transaction.encoded_len_with_signature(&with_eip155_parity( - signature, - transaction.chain_id, - )) + transaction.eip2718_encoded_length(signature) } Self::Eip2930 { transaction, signature, .. } => { // method computes the payload len without a RLP header - transaction.encoded_len_with_signature(signature, false) + transaction.eip2718_encoded_length(signature) } Self::Eip1559 { transaction, signature, .. } => { // method computes the payload len without a RLP header - transaction.encoded_len_with_signature(signature, false) + transaction.eip2718_encoded_length(signature) } Self::Eip7702 { transaction, signature, .. } => { // method computes the payload len without a RLP header - transaction.encoded_len_with_signature(signature, false) + transaction.eip2718_encoded_length(signature) } - Self::BlobTransaction(blob_tx) => { + Self::BlobTransaction(BlobTransaction { transaction, signature, .. }) => { // the encoding does not use a header, so we set `with_header` to false - blob_tx.payload_len_with_type(false) + transaction.eip2718_encoded_length(signature) } } } fn encode_2718(&self, out: &mut dyn alloy_rlp::BufMut) { - // The encoding of `tx-data` depends on the transaction type. Refer to these docs for more - // information on the exact format: - // - Legacy: TxLegacy::encode_with_signature - // - EIP-2930: TxEip2930::encode_with_signature - // - EIP-1559: TxEip1559::encode_with_signature - // - EIP-4844: BlobTransaction::encode_with_type_inner - // - EIP-7702: TxEip7702::encode_with_signature match self { - Self::Legacy { transaction, signature, .. } => transaction - .encode_with_signature_fields( - &with_eip155_parity(signature, transaction.chain_id), - out, - ), + Self::Legacy { transaction, signature, .. } => { + transaction.eip2718_encode(signature, out) + } Self::Eip2930 { transaction, signature, .. } => { - transaction.encode_with_signature(signature, out, false) + transaction.eip2718_encode(signature, out) } Self::Eip1559 { transaction, signature, .. } => { - transaction.encode_with_signature(signature, out, false) + transaction.eip2718_encode(signature, out) } Self::Eip7702 { transaction, signature, .. } => { - transaction.encode_with_signature(signature, out, false) + transaction.eip2718_encode(signature, out) } - Self::BlobTransaction(blob_tx) => { - // The inner encoding is used with `with_header` set to true, making the final - // encoding: - // `tx_type || rlp([transaction_payload_body, blobs, commitments, proofs]))` - blob_tx.encode_with_type_inner(out, false); + Self::BlobTransaction(BlobTransaction { transaction, signature, .. }) => { + transaction.eip2718_encode(signature, out) } } } diff --git a/crates/primitives/src/transaction/sidecar.rs b/crates/primitives/src/transaction/sidecar.rs index 1e6560e152be..67363e0a44c2 100644 --- a/crates/primitives/src/transaction/sidecar.rs +++ b/crates/primitives/src/transaction/sidecar.rs @@ -1,9 +1,8 @@ #![cfg_attr(docsrs, doc(cfg(feature = "c-kzg")))] use crate::{Signature, Transaction, TransactionSigned}; -use alloy_consensus::{constants::EIP4844_TX_TYPE_ID, TxEip4844WithSidecar}; +use alloy_consensus::{transaction::RlpEcdsaTx, TxEip4844WithSidecar}; use alloy_primitives::TxHash; -use alloy_rlp::Header; use serde::{Deserialize, Serialize}; #[doc(inline)] @@ -74,107 +73,6 @@ impl BlobTransaction { (transaction, self.transaction.sidecar) } - /// Encodes the [`BlobTransaction`] fields as RLP, with a tx type. If `with_header` is `false`, - /// the following will be encoded: - /// `tx_type (0x03) || rlp([transaction_payload_body, blobs, commitments, proofs])` - /// - /// If `with_header` is `true`, the following will be encoded: - /// `rlp(tx_type (0x03) || rlp([transaction_payload_body, blobs, commitments, proofs]))` - /// - /// NOTE: The header will be a byte string header, not a list header. - pub(crate) fn encode_with_type_inner(&self, out: &mut dyn bytes::BufMut, with_header: bool) { - // Calculate the length of: - // `tx_type || rlp([transaction_payload_body, blobs, commitments, proofs])` - // - // to construct and encode the string header - if with_header { - Header { - list: false, - // add one for the tx type - payload_length: 1 + self.payload_len(), - } - .encode(out); - } - - out.put_u8(EIP4844_TX_TYPE_ID); - - // Now we encode the inner blob transaction: - self.encode_inner(out); - } - - /// Encodes the [`BlobTransaction`] fields as RLP, with the following format: - /// `rlp([transaction_payload_body, blobs, commitments, proofs])` - /// - /// where `transaction_payload_body` is a list: - /// `[chain_id, nonce, max_priority_fee_per_gas, ..., y_parity, r, s]` - /// - /// Note: this should be used only when implementing other RLP encoding methods, and does not - /// represent the full RLP encoding of the blob transaction. - pub(crate) fn encode_inner(&self, out: &mut dyn bytes::BufMut) { - self.transaction.encode_with_signature_fields(&self.signature, out); - } - - /// Outputs the length of the RLP encoding of the blob transaction, including the tx type byte, - /// optionally including the length of a wrapping string header. If `with_header` is `false`, - /// the length of the following will be calculated: - /// `tx_type (0x03) || rlp([transaction_payload_body, blobs, commitments, proofs])` - /// - /// If `with_header` is `true`, the length of the following will be calculated: - /// `rlp(tx_type (0x03) || rlp([transaction_payload_body, blobs, commitments, proofs]))` - pub(crate) fn payload_len_with_type(&self, with_header: bool) -> usize { - if with_header { - // Construct a header and use that to calculate the total length - let wrapped_header = Header { - list: false, - // add one for the tx type byte - payload_length: 1 + self.payload_len(), - }; - - // The total length is now the length of the header plus the length of the payload - // (which includes the tx type byte) - wrapped_header.length() + wrapped_header.payload_length - } else { - // Just add the length of the tx type to the payload length - 1 + self.payload_len() - } - } - - /// Outputs the length of the RLP encoding of the blob transaction with the following format: - /// `rlp([transaction_payload_body, blobs, commitments, proofs])` - /// - /// where `transaction_payload_body` is a list: - /// `[chain_id, nonce, max_priority_fee_per_gas, ..., y_parity, r, s]` - /// - /// Note: this should be used only when implementing other RLP encoding length methods, and - /// does not represent the full RLP encoding of the blob transaction. - pub(crate) fn payload_len(&self) -> usize { - // The `transaction_payload_body` length is the length of the fields, plus the length of - // its list header. - let tx_header = Header { - list: true, - payload_length: self.transaction.tx.fields_len() + self.signature.rlp_vrs_len(), - }; - - let tx_length = tx_header.length() + tx_header.payload_length; - - // The payload length is the length of the `tranascation_payload_body` list, plus the - // length of the blobs, commitments, and proofs. - let payload_length = tx_length + self.transaction.sidecar.rlp_encoded_fields_length(); - - // We use the calculated payload len to construct the first list header, which encompasses - // everything in the tx - the length of the second, inner list header is part of - // payload_length - let blob_tx_header = Header { list: true, payload_length }; - - // The final length is the length of: - // * the outer blob tx header + - // * the inner tx header + - // * the inner tx fields + - // * the signature fields + - // * the sidecar fields - blob_tx_header.length() + blob_tx_header.payload_length - } - /// Decodes a [`BlobTransaction`] from RLP. This expects the encoding to be: /// `rlp([transaction_payload_body, blobs, commitments, proofs])` /// @@ -185,7 +83,7 @@ impl BlobTransaction { /// represent the full RLP decoding of the `PooledTransactionsElement` type. pub(crate) fn decode_inner(data: &mut &[u8]) -> alloy_rlp::Result { let (transaction, signature, hash) = - TxEip4844WithSidecar::decode_signed_fields(data)?.into_parts(); + TxEip4844WithSidecar::rlp_decode_signed(data)?.into_parts(); Ok(Self { transaction, hash, signature }) } diff --git a/crates/primitives/src/transaction/signature.rs b/crates/primitives/src/transaction/signature.rs index 5bfdab8e68e9..ec1753b199ef 100644 --- a/crates/primitives/src/transaction/signature.rs +++ b/crates/primitives/src/transaction/signature.rs @@ -1,6 +1,7 @@ use crate::transaction::util::secp256k1; -use alloy_primitives::{Address, Parity, B256, U256}; -use alloy_rlp::{Decodable, Error as RlpError}; +use alloy_consensus::transaction::from_eip155_value; +use alloy_primitives::{Address, B256, U256}; +use alloy_rlp::Decodable; pub use alloy_primitives::Signature; @@ -16,25 +17,23 @@ const SECP256K1N_HALF: U256 = U256::from_be_bytes([ pub(crate) fn decode_with_eip155_chain_id( buf: &mut &[u8], ) -> alloy_rlp::Result<(Signature, Option)> { - let v: Parity = Decodable::decode(buf)?; + let v: u64 = Decodable::decode(buf)?; let r: U256 = Decodable::decode(buf)?; let s: U256 = Decodable::decode(buf)?; - #[cfg(not(feature = "optimism"))] - if matches!(v, Parity::Parity(_)) { - return Err(alloy_rlp::Error::Custom("invalid parity for legacy transaction")); - } - - #[cfg(feature = "optimism")] - // pre bedrock system transactions were sent from the zero address as legacy - // transactions with an empty signature - // - // NOTE: this is very hacky and only relevant for op-mainnet pre bedrock - if matches!(v, Parity::Parity(false)) && r.is_zero() && s.is_zero() { - return Ok((Signature::new(r, s, Parity::Parity(false)), None)) - } + let Some((parity, chain_id)) = from_eip155_value(v) else { + // pre bedrock system transactions were sent from the zero address as legacy + // transactions with an empty signature + // + // NOTE: this is very hacky and only relevant for op-mainnet pre bedrock + #[cfg(feature = "optimism")] + if v == 0 && r.is_zero() && s.is_zero() { + return Ok((Signature::new(r, s, false), None)) + } + return Err(alloy_rlp::Error::Custom("invalid parity for legacy transaction")) + }; - Ok((Signature::new(r, s, v), v.chain_id())) + Ok((Signature::new(r, s, parity), chain_id)) } /// Recover signer from message hash, _without ensuring that the signature has a low `s` @@ -48,7 +47,7 @@ pub fn recover_signer_unchecked(signature: &Signature, hash: B256) -> Option()); sig[32..64].copy_from_slice(&signature.s().to_be_bytes::<32>()); - sig[64] = signature.v().y_parity_byte(); + sig[64] = signature.v() as u8; // NOTE: we are removing error from underlying crypto library as it will restrain primitive // errors and we care only if recovery is passing or not. @@ -68,71 +67,16 @@ pub fn recover_signer(signature: &Signature, hash: B256) -> Option
{ recover_signer_unchecked(signature, hash) } -/// Returns [Parity] value based on `chain_id` for legacy transaction signature. -#[allow(clippy::missing_const_for_fn)] -pub fn legacy_parity(signature: &Signature, chain_id: Option) -> Parity { - if let Some(chain_id) = chain_id { - Parity::Parity(signature.v().y_parity()).with_chain_id(chain_id) - } else { - #[cfg(feature = "optimism")] - // pre bedrock system transactions were sent from the zero address as legacy - // transactions with an empty signature - // - // NOTE: this is very hacky and only relevant for op-mainnet pre bedrock - if *signature == op_alloy_consensus::TxDeposit::signature() { - return Parity::Parity(false) - } - Parity::NonEip155(signature.v().y_parity()) - } -} - -/// Returns a signature with the given chain ID applied to the `v` value. -pub(crate) fn with_eip155_parity(signature: &Signature, chain_id: Option) -> Signature { - Signature::new(signature.r(), signature.s(), legacy_parity(signature, chain_id)) -} - -/// Outputs (`odd_y_parity`, `chain_id`) from the `v` value. -/// This doesn't check validity of the `v` value for optimism. -#[inline] -pub const fn extract_chain_id(v: u64) -> alloy_rlp::Result<(bool, Option)> { - if v < 35 { - // non-EIP-155 legacy scheme, v = 27 for even y-parity, v = 28 for odd y-parity - if v != 27 && v != 28 { - return Err(RlpError::Custom("invalid Ethereum signature (V is not 27 or 28)")) - } - Ok((v == 28, None)) - } else { - // EIP-155: v = {0, 1} + CHAIN_ID * 2 + 35 - let odd_y_parity = ((v - 35) % 2) != 0; - let chain_id = (v - 35) >> 1; - Ok((odd_y_parity, Some(chain_id))) - } -} - #[cfg(test)] mod tests { use crate::{ - transaction::signature::{ - legacy_parity, recover_signer, recover_signer_unchecked, SECP256K1N_HALF, - }, + transaction::signature::{recover_signer, recover_signer_unchecked, SECP256K1N_HALF}, Signature, }; use alloy_eips::eip2718::Decodable2718; - use alloy_primitives::{hex, Address, Parity, B256, U256}; + use alloy_primitives::{hex, Address, B256, U256}; use std::str::FromStr; - #[test] - fn test_legacy_parity() { - // Select 1 as an arbitrary nonzero value for R and S, as v() always returns 0 for (0, 0). - let signature = Signature::new(U256::from(1), U256::from(1), Parity::Parity(false)); - assert_eq!(Parity::NonEip155(false), legacy_parity(&signature, None)); - assert_eq!(Parity::Eip155(37), legacy_parity(&signature, Some(1))); - - let signature = Signature::new(U256::from(1), U256::from(1), Parity::Parity(true)); - assert_eq!(Parity::NonEip155(true), legacy_parity(&signature, None)); - assert_eq!(Parity::Eip155(38), legacy_parity(&signature, Some(1))); - } - #[test] fn test_recover_signer() { let signature = Signature::new( @@ -144,7 +88,7 @@ mod tests { "46948507304638947509940763649030358759909902576025900602547168820602576006531", ) .unwrap(), - Parity::Parity(false), + false, ); let hash = B256::from_str("daf5a779ae972f972197303d7b574746c7ef83eadac0f2791ad23db92e4c8e53") diff --git a/crates/primitives/src/transaction/util.rs b/crates/primitives/src/transaction/util.rs index 7569400e94b4..ffcefd5fb97e 100644 --- a/crates/primitives/src/transaction/util.rs +++ b/crates/primitives/src/transaction/util.rs @@ -19,7 +19,7 @@ mod impl_secp256k1 { ecdsa::{RecoverableSignature, RecoveryId}, Message, PublicKey, SecretKey, SECP256K1, }; - use alloy_primitives::{keccak256, Parity, B256, U256}; + use alloy_primitives::{keccak256, B256, U256}; /// Recovers the address of the sender using secp256k1 pubkey recovery. /// @@ -45,7 +45,7 @@ mod impl_secp256k1 { let signature = Signature::new( U256::try_from_be_slice(&data[..32]).expect("The slice has at most 32 bytes"), U256::try_from_be_slice(&data[32..64]).expect("The slice has at most 32 bytes"), - Parity::Parity(rec_id.to_i32() != 0), + rec_id.to_i32() != 0, ); Ok(signature) } @@ -63,7 +63,7 @@ mod impl_secp256k1 { #[cfg_attr(feature = "secp256k1", allow(unused, unreachable_pub))] mod impl_k256 { use super::*; - use alloy_primitives::{keccak256, Parity, B256, U256}; + use alloy_primitives::{keccak256, B256, U256}; pub(crate) use k256::ecdsa::Error; use k256::ecdsa::{RecoveryId, SigningKey, VerifyingKey}; @@ -93,15 +93,7 @@ mod impl_k256 { /// Returns the corresponding signature. pub fn sign_message(secret: B256, message: B256) -> Result { let sec = SigningKey::from_slice(secret.as_ref())?; - let (sig, rec_id) = sec.sign_prehash_recoverable(&message.0)?; - let (r, s) = sig.split_bytes(); - - let signature = Signature::new( - U256::try_from_be_slice(&r).expect("The slice has at most 32 bytes"), - U256::try_from_be_slice(&s).expect("The slice has at most 32 bytes"), - Parity::Parity(rec_id.is_y_odd()), - ); - Ok(signature) + sec.sign_prehash_recoverable(&message.0).map(Into::into) } /// Converts a public key into an ethereum address by hashing the encoded public key with @@ -132,7 +124,7 @@ mod tests { let mut sig: [u8; 65] = [0; 65]; sig[0..32].copy_from_slice(&signature.r().to_be_bytes::<32>()); sig[32..64].copy_from_slice(&signature.s().to_be_bytes::<32>()); - sig[64] = signature.v().y_parity_byte(); + sig[64] = signature.v() as u8; assert_eq!(recover_signer_unchecked(&sig, &hash), Ok(signer)); } @@ -190,14 +182,14 @@ mod tests { sig[0..32].copy_from_slice(&secp256k1_signature.r().to_be_bytes::<32>()); sig[32..64].copy_from_slice(&secp256k1_signature.s().to_be_bytes::<32>()); - sig[64] = secp256k1_signature.v().y_parity_byte(); + sig[64] = secp256k1_signature.v() as u8; let secp256k1_recovered = impl_secp256k1::recover_signer_unchecked(&sig, &hash).expect("secp256k1 recover"); assert_eq!(secp256k1_recovered, secp256k1_signer); sig[0..32].copy_from_slice(&k256_signature.r().to_be_bytes::<32>()); sig[32..64].copy_from_slice(&k256_signature.s().to_be_bytes::<32>()); - sig[64] = k256_signature.v().y_parity_byte(); + sig[64] = k256_signature.v() as u8; let k256_recovered = impl_k256::recover_signer_unchecked(&sig, &hash).expect("k256 recover"); assert_eq!(k256_recovered, k256_signer); diff --git a/crates/rpc/rpc-api/src/otterscan.rs b/crates/rpc/rpc-api/src/otterscan.rs index ee805b482c34..62e5676fe508 100644 --- a/crates/rpc/rpc-api/src/otterscan.rs +++ b/crates/rpc/rpc-api/src/otterscan.rs @@ -1,6 +1,5 @@ use alloy_json_rpc::RpcObject; use alloy_primitives::{Address, Bytes, TxHash, B256}; -use alloy_rpc_types::Header; use alloy_rpc_types_trace::otterscan::{ BlockDetails, ContractCreator, InternalOperation, OtsBlockTransactions, TraceEntry, TransactionsWithReceipts, @@ -11,7 +10,7 @@ use reth_primitives::BlockId; /// Otterscan rpc interface. #[cfg_attr(not(feature = "client"), rpc(server, namespace = "ots"))] #[cfg_attr(feature = "client", rpc(server, client, namespace = "ots"))] -pub trait Otterscan { +pub trait Otterscan { /// Get the block header by block number, required by otterscan. /// Otterscan currently requires this endpoint, used as: /// @@ -20,7 +19,7 @@ pub trait Otterscan { /// /// Ref: #[method(name = "getHeaderByNumber", aliases = ["erigon_getHeaderByNumber"])] - async fn get_header_by_number(&self, block_number: u64) -> RpcResult>; + async fn get_header_by_number(&self, block_number: u64) -> RpcResult>; /// Check if a certain address contains a deployed code. #[method(name = "hasCode")] @@ -48,11 +47,11 @@ pub trait Otterscan { /// Tailor-made and expanded version of eth_getBlockByNumber for block details page in /// Otterscan. #[method(name = "getBlockDetails")] - async fn get_block_details(&self, block_number: u64) -> RpcResult; + async fn get_block_details(&self, block_number: u64) -> RpcResult>; /// Tailor-made and expanded version of eth_getBlockByHash for block details page in Otterscan. #[method(name = "getBlockDetailsByHash")] - async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult; + async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult>; /// Get paginated transactions for a certain block. Also remove some verbose fields like logs. #[method(name = "getBlockTransactions")] @@ -61,7 +60,7 @@ pub trait Otterscan { block_number: u64, page_number: usize, page_size: usize, - ) -> RpcResult>; + ) -> RpcResult>; /// Gets paginated inbound/outbound transaction calls for a certain address. #[method(name = "searchTransactionsBefore")] diff --git a/crates/rpc/rpc-builder/src/lib.rs b/crates/rpc/rpc-builder/src/lib.rs index 385b92af3d0b..6ee3f9fd0c85 100644 --- a/crates/rpc/rpc-builder/src/lib.rs +++ b/crates/rpc/rpc-builder/src/lib.rs @@ -194,6 +194,7 @@ use reth_rpc::{ use reth_rpc_api::servers::*; use reth_rpc_eth_api::{ helpers::{Call, EthApiSpec, EthTransactions, LoadPendingBlock, TraceExt}, + types::RpcHeader, EthApiServer, EthApiTypes, FullEthApiServer, RpcBlock, RpcReceipt, RpcTransaction, }; use reth_rpc_eth_types::{EthConfig, EthStateCache, EthSubscriptionIdProvider}; @@ -1072,6 +1073,7 @@ where EthApi: EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > + EthApiTypes, BlockExecutor: BlockExecutorProvider, diff --git a/crates/rpc/rpc-builder/tests/it/http.rs b/crates/rpc/rpc-builder/tests/it/http.rs index ed9ef56d62bf..a5e2e61f236e 100644 --- a/crates/rpc/rpc-builder/tests/it/http.rs +++ b/crates/rpc/rpc-builder/tests/it/http.rs @@ -4,7 +4,7 @@ use crate::utils::{launch_http, launch_http_ws, launch_ws}; use alloy_primitives::{hex_literal::hex, Address, Bytes, TxHash, B256, B64, U256, U64}; use alloy_rpc_types_eth::{ - transaction::TransactionRequest, Block, FeeHistory, Filter, Index, Log, + transaction::TransactionRequest, Block, FeeHistory, Filter, Header, Index, Log, PendingTransactionFilterKind, SyncStatus, Transaction, TransactionReceipt, }; use alloy_rpc_types_trace::filter::TraceFilter; @@ -173,16 +173,24 @@ where .unwrap(); // Implemented - EthApiClient::::protocol_version(client).await.unwrap(); - EthApiClient::::chain_id(client).await.unwrap(); - EthApiClient::::accounts(client).await.unwrap(); - EthApiClient::::get_account(client, address, block_number.into()) + EthApiClient::::protocol_version(client).await.unwrap(); + EthApiClient::::chain_id(client).await.unwrap(); + EthApiClient::::accounts(client).await.unwrap(); + EthApiClient::::get_account( + client, + address, + block_number.into(), + ) + .await + .unwrap(); + EthApiClient::::block_number(client).await.unwrap(); + EthApiClient::::get_code(client, address, None) + .await + .unwrap(); + EthApiClient::::send_raw_transaction(client, tx) .await .unwrap(); - EthApiClient::::block_number(client).await.unwrap(); - EthApiClient::::get_code(client, address, None).await.unwrap(); - EthApiClient::::send_raw_transaction(client, tx).await.unwrap(); - EthApiClient::::fee_history( + EthApiClient::::fee_history( client, U64::from(0), block_number, @@ -190,11 +198,13 @@ where ) .await .unwrap(); - EthApiClient::::balance(client, address, None).await.unwrap(); - EthApiClient::::transaction_count(client, address, None) + EthApiClient::::balance(client, address, None) .await .unwrap(); - EthApiClient::::storage_at( + EthApiClient::::transaction_count(client, address, None) + .await + .unwrap(); + EthApiClient::::storage_at( client, address, U256::default().into(), @@ -202,64 +212,79 @@ where ) .await .unwrap(); - EthApiClient::::block_by_hash(client, hash, false).await.unwrap(); - EthApiClient::::block_by_number(client, block_number, false) + EthApiClient::::block_by_hash(client, hash, false) .await .unwrap(); - EthApiClient::::block_transaction_count_by_number( + EthApiClient::::block_by_number( client, block_number, + false, ) .await .unwrap(); - EthApiClient::::block_transaction_count_by_hash(client, hash) - .await - .unwrap(); - EthApiClient::::block_uncles_count_by_hash(client, hash) - .await - .unwrap(); - EthApiClient::::block_uncles_count_by_number(client, block_number) - .await - .unwrap(); - EthApiClient::::uncle_by_block_hash_and_index(client, hash, index) + EthApiClient::::block_transaction_count_by_number( + client, + block_number, + ) + .await + .unwrap(); + EthApiClient::::block_transaction_count_by_hash( + client, hash, + ) + .await + .unwrap(); + EthApiClient::::block_uncles_count_by_hash(client, hash) .await .unwrap(); - EthApiClient::::uncle_by_block_number_and_index( + EthApiClient::::block_uncles_count_by_number( + client, + block_number, + ) + .await + .unwrap(); + EthApiClient::::uncle_by_block_hash_and_index( + client, hash, index, + ) + .await + .unwrap(); + EthApiClient::::uncle_by_block_number_and_index( client, block_number, index, ) .await .unwrap(); - EthApiClient::::sign(client, address, bytes.clone()) + EthApiClient::::sign(client, address, bytes.clone()) .await .unwrap_err(); - EthApiClient::::sign_typed_data(client, address, typed_data) - .await - .unwrap_err(); - EthApiClient::::transaction_by_hash(client, tx_hash) + EthApiClient::::sign_typed_data( + client, address, typed_data, + ) + .await + .unwrap_err(); + EthApiClient::::transaction_by_hash(client, tx_hash) .await .unwrap(); - EthApiClient::::transaction_by_block_hash_and_index( + EthApiClient::::transaction_by_block_hash_and_index( client, hash, index, ) .await .unwrap(); - EthApiClient::::transaction_by_block_number_and_index( + EthApiClient::::transaction_by_block_number_and_index( client, block_number, index, ) .await .unwrap(); - EthApiClient::::create_access_list( + EthApiClient::::create_access_list( client, call_request.clone(), Some(block_number.into()), ) .await .unwrap(); - EthApiClient::::estimate_gas( + EthApiClient::::estimate_gas( client, call_request.clone(), Some(block_number.into()), @@ -267,7 +292,7 @@ where ) .await .unwrap(); - EthApiClient::::call( + EthApiClient::::call( client, call_request.clone(), Some(block_number.into()), @@ -276,38 +301,41 @@ where ) .await .unwrap(); - EthApiClient::::syncing(client).await.unwrap(); - EthApiClient::::send_transaction(client, transaction_request) - .await - .unwrap_err(); - EthApiClient::::hashrate(client).await.unwrap(); - EthApiClient::::submit_hashrate( + EthApiClient::::syncing(client).await.unwrap(); + EthApiClient::::send_transaction( + client, + transaction_request, + ) + .await + .unwrap_err(); + EthApiClient::::hashrate(client).await.unwrap(); + EthApiClient::::submit_hashrate( client, U256::default(), B256::default(), ) .await .unwrap(); - EthApiClient::::gas_price(client).await.unwrap_err(); - EthApiClient::::max_priority_fee_per_gas(client) + EthApiClient::::gas_price(client).await.unwrap_err(); + EthApiClient::::max_priority_fee_per_gas(client) .await .unwrap_err(); - EthApiClient::::get_proof(client, address, vec![], None) + EthApiClient::::get_proof(client, address, vec![], None) .await .unwrap(); // Unimplemented assert!(is_unimplemented( - EthApiClient::::author(client).await.err().unwrap() + EthApiClient::::author(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::is_mining(client).await.err().unwrap() + EthApiClient::::is_mining(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::get_work(client).await.err().unwrap() + EthApiClient::::get_work(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::submit_work( + EthApiClient::::submit_work( client, B64::default(), B256::default(), @@ -318,10 +346,13 @@ where .unwrap() )); assert!(is_unimplemented( - EthApiClient::::sign_transaction(client, call_request.clone()) - .await - .err() - .unwrap() + EthApiClient::::sign_transaction( + client, + call_request.clone() + ) + .await + .err() + .unwrap() )); } @@ -399,28 +430,32 @@ where let nonce = 1; let block_hash = B256::default(); - OtterscanClient::::get_header_by_number(client, block_number).await.unwrap(); + OtterscanClient::::get_header_by_number(client, block_number) + .await + .unwrap(); - OtterscanClient::::has_code(client, address, None).await.unwrap(); - OtterscanClient::::has_code(client, address, Some(block_number.into())) + OtterscanClient::::has_code(client, address, None).await.unwrap(); + OtterscanClient::::has_code(client, address, Some(block_number.into())) .await .unwrap(); - OtterscanClient::::get_api_level(client).await.unwrap(); + OtterscanClient::::get_api_level(client).await.unwrap(); - OtterscanClient::::get_internal_operations(client, tx_hash).await.unwrap(); + OtterscanClient::::get_internal_operations(client, tx_hash).await.unwrap(); - OtterscanClient::::get_transaction_error(client, tx_hash).await.unwrap(); + OtterscanClient::::get_transaction_error(client, tx_hash).await.unwrap(); - OtterscanClient::::trace_transaction(client, tx_hash).await.unwrap(); + OtterscanClient::::trace_transaction(client, tx_hash).await.unwrap(); - OtterscanClient::::get_block_details(client, block_number).await.unwrap_err(); + OtterscanClient::::get_block_details(client, block_number) + .await + .unwrap_err(); - OtterscanClient::::get_block_details_by_hash(client, block_hash) + OtterscanClient::::get_block_details_by_hash(client, block_hash) .await .unwrap_err(); - OtterscanClient::::get_block_transactions( + OtterscanClient::::get_block_transactions( client, block_number, page_number, @@ -431,7 +466,7 @@ where .unwrap(); assert!(is_unimplemented( - OtterscanClient::::search_transactions_before( + OtterscanClient::::search_transactions_before( client, address, block_number, @@ -442,7 +477,7 @@ where .unwrap() )); assert!(is_unimplemented( - OtterscanClient::::search_transactions_after( + OtterscanClient::::search_transactions_after( client, address, block_number, @@ -452,13 +487,13 @@ where .err() .unwrap() )); - assert!(OtterscanClient::::get_transaction_by_sender_and_nonce( + assert!(OtterscanClient::::get_transaction_by_sender_and_nonce( client, sender, nonce ) .await .err() .is_none()); - assert!(OtterscanClient::::get_contract_creator(client, address) + assert!(OtterscanClient::::get_contract_creator(client, address) .await .unwrap() .is_none()); diff --git a/crates/rpc/rpc-builder/tests/it/middleware.rs b/crates/rpc/rpc-builder/tests/it/middleware.rs index 0e2186e56eeb..780daf4de170 100644 --- a/crates/rpc/rpc-builder/tests/it/middleware.rs +++ b/crates/rpc/rpc-builder/tests/it/middleware.rs @@ -1,5 +1,5 @@ use crate::utils::{test_address, test_rpc_builder}; -use alloy_rpc_types_eth::{Block, Receipt, Transaction}; +use alloy_rpc_types_eth::{Block, Header, Receipt, Transaction}; use jsonrpsee::{ server::{middleware::rpc::RpcServiceT, RpcServiceBuilder}, types::Request, @@ -75,7 +75,7 @@ async fn test_rpc_middleware() { .unwrap(); let client = handle.http_client().unwrap(); - EthApiClient::::protocol_version(&client).await.unwrap(); + EthApiClient::::protocol_version(&client).await.unwrap(); let count = mylayer.count.load(Ordering::Relaxed); assert_eq!(count, 1); } diff --git a/crates/rpc/rpc-eth-api/src/core.rs b/crates/rpc/rpc-eth-api/src/core.rs index 66bc5a44d2db..38d9b3ae97ee 100644 --- a/crates/rpc/rpc-eth-api/src/core.rs +++ b/crates/rpc/rpc-eth-api/src/core.rs @@ -8,8 +8,8 @@ use alloy_rpc_types::{ serde_helpers::JsonStorageKey, simulate::{SimulatePayload, SimulatedBlock}, state::{EvmOverrides, StateOverride}, - BlockOverrides, Bundle, EIP1186AccountProofResponse, EthCallResponse, FeeHistory, Header, - Index, StateContext, SyncStatus, Work, + BlockOverrides, Bundle, EIP1186AccountProofResponse, EthCallResponse, FeeHistory, Index, + StateContext, SyncStatus, Work, }; use alloy_rpc_types_eth::transaction::TransactionRequest; use jsonrpsee::{core::RpcResult, proc_macros::rpc}; @@ -19,6 +19,7 @@ use tracing::trace; use crate::{ helpers::{EthApiSpec, EthBlocks, EthCall, EthFees, EthState, EthTransactions, FullEthApi}, + types::RpcHeader, RpcBlock, RpcReceipt, RpcTransaction, }; @@ -28,6 +29,7 @@ pub trait FullEthApiServer: EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > + FullEthApi + Clone @@ -38,6 +40,7 @@ impl FullEthApiServer for T where T: EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > + FullEthApi + Clone @@ -47,7 +50,7 @@ impl FullEthApiServer for T where /// Eth rpc interface: #[cfg_attr(not(feature = "client"), rpc(server, namespace = "eth"))] #[cfg_attr(feature = "client", rpc(server, client, namespace = "eth"))] -pub trait EthApi { +pub trait EthApi { /// Returns the protocol version encoded as a string. #[method(name = "protocolVersion")] async fn protocol_version(&self) -> RpcResult; @@ -201,11 +204,11 @@ pub trait EthApi { /// Returns the block's header at given number. #[method(name = "getHeaderByNumber")] - async fn header_by_number(&self, hash: BlockNumberOrTag) -> RpcResult>; + async fn header_by_number(&self, hash: BlockNumberOrTag) -> RpcResult>; /// Returns the block's header at given hash. #[method(name = "getHeaderByHash")] - async fn header_by_hash(&self, hash: B256) -> RpcResult>; + async fn header_by_hash(&self, hash: B256) -> RpcResult>; /// `eth_simulateV1` executes an arbitrary number of transactions on top of the requested state. /// The transactions are packed into individual blocks. Overrides can be provided. @@ -366,6 +369,7 @@ impl EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > for T where @@ -607,13 +611,16 @@ where } /// Handler for: `eth_getHeaderByNumber` - async fn header_by_number(&self, block_number: BlockNumberOrTag) -> RpcResult> { + async fn header_by_number( + &self, + block_number: BlockNumberOrTag, + ) -> RpcResult>> { trace!(target: "rpc::eth", ?block_number, "Serving eth_getHeaderByNumber"); Ok(EthBlocks::rpc_block_header(self, block_number.into()).await?) } /// Handler for: `eth_getHeaderByHash` - async fn header_by_hash(&self, hash: B256) -> RpcResult> { + async fn header_by_hash(&self, hash: B256) -> RpcResult>> { trace!(target: "rpc::eth", ?hash, "Serving eth_getHeaderByHash"); Ok(EthBlocks::rpc_block_header(self, hash.into()).await?) } diff --git a/crates/rpc/rpc-eth-api/src/helpers/block.rs b/crates/rpc/rpc-eth-api/src/helpers/block.rs index fa397db35e02..3cf46b7fea7c 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/block.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/block.rs @@ -2,13 +2,15 @@ use std::sync::Arc; -use alloy_rpc_types::{Header, Index}; +use alloy_rpc_types::{Block, Header, Index}; use futures::Future; use reth_primitives::{BlockId, Receipt, SealedBlock, SealedBlockWithSenders}; use reth_provider::{BlockIdReader, BlockReader, BlockReaderIdExt, HeaderProvider}; -use reth_rpc_types_compat::block::{from_block, uncle_block_from_header}; +use reth_rpc_types_compat::block::from_block; -use crate::{node::RpcNodeCoreExt, FromEthApiError, FullEthApiTypes, RpcBlock, RpcReceipt}; +use crate::{ + node::RpcNodeCoreExt, types::RpcHeader, FromEthApiError, FullEthApiTypes, RpcBlock, RpcReceipt, +}; use super::{LoadPendingBlock, LoadReceipt, SpawnBlocking}; @@ -24,7 +26,7 @@ pub trait EthBlocks: LoadBlock { fn rpc_block_header( &self, block_id: BlockId, - ) -> impl Future, Self::Error>> + Send + ) -> impl Future>, Self::Error>> + Send where Self: FullEthApiTypes, { @@ -188,7 +190,20 @@ pub trait EthBlocks: LoadBlock { } .unwrap_or_default(); - Ok(uncles.into_iter().nth(index.into()).map(uncle_block_from_header)) + Ok(uncles.into_iter().nth(index.into()).map(|uncle| { + let block = Block::uncle_from_header(uncle); + Block { + header: Header { + inner: block.header.inner.into(), + size: block.header.size, + total_difficulty: block.header.total_difficulty, + hash: block.header.hash, + }, + uncles: block.uncles, + transactions: block.transactions, + withdrawals: block.withdrawals, + } + })) } } } diff --git a/crates/rpc/rpc-eth-api/src/helpers/call.rs b/crates/rpc/rpc-eth-api/src/helpers/call.rs index b90577c14867..10148fbe78b6 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/call.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/call.rs @@ -5,6 +5,7 @@ use crate::{ AsEthApiError, FromEthApiError, FromEvmError, FullEthApiTypes, IntoEthApiError, RpcBlock, RpcNodeCore, }; +use alloy_consensus::BlockHeader; use alloy_eips::{eip1559::calc_next_block_base_fee, eip2930::AccessListResult}; use alloy_primitives::{Address, Bytes, TxKind, B256, U256}; use alloy_rpc_types::{ @@ -125,9 +126,9 @@ pub trait EthCall: Call + LoadPendingBlock { let base_fee = if let Some(latest) = blocks.last() { let header = &latest.inner.header; calc_next_block_base_fee( - header.gas_used, - header.gas_limit, - header.base_fee_per_gas.unwrap_or_default(), + header.gas_used(), + header.gas_limit(), + header.base_fee_per_gas().unwrap_or_default(), base_fee_params, ) } else { @@ -192,19 +193,20 @@ pub trait EthCall: Call + LoadPendingBlock { results.push((env.tx.caller, res.result)); } - let block = simulate::build_block( - results, - transactions, - &block_env, - parent_hash, - total_difficulty, - return_full_transactions, - &db, - this.tx_resp_builder(), - )?; + let block: SimulatedBlock> = + simulate::build_block( + results, + transactions, + &block_env, + parent_hash, + total_difficulty, + return_full_transactions, + &db, + this.tx_resp_builder(), + )?; parent_hash = block.inner.header.hash; - gas_used += block.inner.header.gas_used; + gas_used += block.inner.header.gas_used(); blocks.push(block); } diff --git a/crates/rpc/rpc-eth-api/src/types.rs b/crates/rpc/rpc-eth-api/src/types.rs index 1d176dd1e86e..93ba251939a8 100644 --- a/crates/rpc/rpc-eth-api/src/types.rs +++ b/crates/rpc/rpc-eth-api/src/types.rs @@ -1,9 +1,13 @@ //! Trait for specifying `eth` network dependent API types. -use std::{error::Error, fmt}; +use std::{ + error::Error, + fmt::{self, Debug}, +}; use alloy_network::Network; use alloy_rpc_types::Block; +use jsonrpsee::core::{DeserializeOwned, Serialize}; use reth_rpc_types_compat::TransactionCompat; use crate::{AsEthApiError, FromEthApiError, FromEvmError}; @@ -19,7 +23,18 @@ pub trait EthApiTypes: Send + Sync + Clone { + Send + Sync; /// Blockchain primitive types, specific to network, e.g. block and transaction. - type NetworkTypes: Network; + type NetworkTypes: Network< + Header: Send + + Sync + + Clone + + Debug + + Unpin + + From + + Serialize + + DeserializeOwned + + 'static, + HeaderResponse = alloy_rpc_types::Header<::Header>, + >; /// Conversion methods for transaction RPC type. type TransactionCompat: Send + Sync + Clone + fmt::Debug; @@ -31,7 +46,10 @@ pub trait EthApiTypes: Send + Sync + Clone { pub type RpcTransaction = ::TransactionResponse; /// Adapter for network specific block type. -pub type RpcBlock = Block, ::HeaderResponse>; +pub type RpcHeader = ::HeaderResponse; + +/// Adapter for network specific block type. +pub type RpcBlock = Block, RpcHeader>; /// Adapter for network specific receipt type. pub type RpcReceipt = ::ReceiptResponse; diff --git a/crates/rpc/rpc-eth-types/src/simulate.rs b/crates/rpc/rpc-eth-types/src/simulate.rs index 62f0e24b1c6d..95cce2af7461 100644 --- a/crates/rpc/rpc-eth-types/src/simulate.rs +++ b/crates/rpc/rpc-eth-types/src/simulate.rs @@ -1,10 +1,9 @@ //! Utilities for serving `eth_simulateV1` -use alloy_consensus::{Transaction as _, TxEip4844Variant, TxType, TypedTransaction}; -use alloy_primitives::Parity; +use alloy_consensus::{BlockHeader, Transaction as _, TxEip4844Variant, TxType, TypedTransaction}; use alloy_rpc_types::{ simulate::{SimCallResult, SimulateError, SimulatedBlock}, - Block, BlockTransactionsKind, + Block, BlockTransactionsKind, Header, }; use alloy_rpc_types_eth::transaction::TransactionRequest; use jsonrpsee_types::ErrorObject; @@ -134,8 +133,7 @@ where }; // Create an empty signature for the transaction. - let signature = - Signature::new(Default::default(), Default::default(), Parity::Parity(false)); + let signature = Signature::new(Default::default(), Default::default(), false); let tx = match tx { TypedTransaction::Legacy(tx) => { @@ -171,8 +169,8 @@ where } /// Handles outputs of the calls execution and builds a [`SimulatedBlock`]. -#[expect(clippy::too_many_arguments)] -pub fn build_block( +#[expect(clippy::complexity)] +pub fn build_block>( results: Vec<(Address, ExecutionResult)>, transactions: Vec, block_env: &BlockEnv, @@ -181,7 +179,7 @@ pub fn build_block( full_transactions: bool, db: &CacheDB>>, tx_resp_builder: &T, -) -> Result>, EthApiError> { +) -> Result>>, EthApiError> { let mut calls: Vec = Vec::with_capacity(results.len()); let mut senders = Vec::with_capacity(results.len()); let mut receipts = Vec::with_capacity(results.len()); @@ -307,6 +305,6 @@ pub fn build_block( let txs_kind = if full_transactions { BlockTransactionsKind::Full } else { BlockTransactionsKind::Hashes }; - let block = from_block(block, total_difficulty, txs_kind, None, tx_resp_builder)?; + let block = from_block::(block, total_difficulty, txs_kind, None, tx_resp_builder)?; Ok(SimulatedBlock { inner: block, calls }) } diff --git a/crates/rpc/rpc-testing-util/src/debug.rs b/crates/rpc/rpc-testing-util/src/debug.rs index 97fe008fa97c..e1574552699d 100644 --- a/crates/rpc/rpc-testing-util/src/debug.rs +++ b/crates/rpc/rpc-testing-util/src/debug.rs @@ -7,7 +7,7 @@ use std::{ }; use alloy_primitives::{TxHash, B256}; -use alloy_rpc_types::{Block, Transaction}; +use alloy_rpc_types::{Block, Header, Transaction}; use alloy_rpc_types_eth::transaction::TransactionRequest; use alloy_rpc_types_trace::{ common::TraceResult, @@ -77,7 +77,7 @@ pub trait DebugApiExt { impl DebugApiExt for T where - T: EthApiClient + DebugApiClient + Sync, + T: EthApiClient + DebugApiClient + Sync, { type Provider = T; diff --git a/crates/rpc/rpc-testing-util/tests/it/trace.rs b/crates/rpc/rpc-testing-util/tests/it/trace.rs index b0fccefbb464..6077d773839e 100644 --- a/crates/rpc/rpc-testing-util/tests/it/trace.rs +++ b/crates/rpc/rpc-testing-util/tests/it/trace.rs @@ -1,7 +1,7 @@ //! Integration tests for the trace API. use alloy_primitives::map::HashSet; -use alloy_rpc_types::{Block, Transaction}; +use alloy_rpc_types::{Block, Header, Transaction}; use alloy_rpc_types_trace::{ filter::TraceFilter, parity::TraceType, tracerequest::TraceCallRequest, }; @@ -113,7 +113,7 @@ async fn debug_trace_block_entire_chain() { let client = HttpClientBuilder::default().build(url).unwrap(); let current_block: u64 = - >::block_number(&client) + >::block_number(&client) .await .unwrap() .try_into() diff --git a/crates/rpc/rpc-types-compat/src/block.rs b/crates/rpc/rpc-types-compat/src/block.rs index a954e05e4f65..17133ada9c53 100644 --- a/crates/rpc/rpc-types-compat/src/block.rs +++ b/crates/rpc/rpc-types-compat/src/block.rs @@ -1,13 +1,12 @@ //! Compatibility functions for rpc `Block` type. +use alloy_consensus::{BlockHeader, Sealed}; use alloy_primitives::{B256, U256}; use alloy_rlp::Encodable; use alloy_rpc_types::{ Block, BlockError, BlockTransactions, BlockTransactionsKind, Header, TransactionInfo, }; -use reth_primitives::{ - Block as PrimitiveBlock, BlockWithSenders, Header as PrimitiveHeader, SealedHeader, Withdrawals, -}; +use reth_primitives::{Block as PrimitiveBlock, BlockWithSenders, Withdrawals}; use crate::{transaction::from_recovered_with_block_context, TransactionCompat}; @@ -15,19 +14,19 @@ use crate::{transaction::from_recovered_with_block_context, TransactionCompat}; /// [`BlockTransactionsKind`] /// /// If a `block_hash` is provided, then this is used, otherwise the block hash is computed. -pub fn from_block( +pub fn from_block>( block: BlockWithSenders, total_difficulty: U256, kind: BlockTransactionsKind, block_hash: Option, tx_resp_builder: &T, -) -> Result, BlockError> { +) -> Result>, BlockError> { match kind { BlockTransactionsKind::Hashes => { - Ok(from_block_with_tx_hashes::(block, total_difficulty, block_hash)) + Ok(from_block_with_tx_hashes::(block, total_difficulty, block_hash)) } BlockTransactionsKind::Full => { - from_block_full::(block, total_difficulty, block_hash, tx_resp_builder) + from_block_full::(block, total_difficulty, block_hash, tx_resp_builder) } } } @@ -37,11 +36,11 @@ pub fn from_block( /// /// This will populate the `transactions` field with only the hashes of the transactions in the /// block: [`BlockTransactions::Hashes`] -pub fn from_block_with_tx_hashes( +pub fn from_block_with_tx_hashes>( block: BlockWithSenders, total_difficulty: U256, block_hash: Option, -) -> Block { +) -> Block> { let block_hash = block_hash.unwrap_or_else(|| block.header.hash_slow()); let transactions = block.body.transactions().map(|tx| tx.hash()).collect(); @@ -59,12 +58,12 @@ pub fn from_block_with_tx_hashes( /// /// This will populate the `transactions` field with the _full_ /// [`TransactionCompat::Transaction`] objects: [`BlockTransactions::Full`] -pub fn from_block_full( +pub fn from_block_full>( mut block: BlockWithSenders, total_difficulty: U256, block_hash: Option, tx_resp_builder: &T, -) -> Result, BlockError> { +) -> Result>, BlockError> { let block_hash = block_hash.unwrap_or_else(|| block.block.header.hash_slow()); let block_number = block.block.number; let base_fee_per_gas = block.block.base_fee_per_gas; @@ -106,91 +105,32 @@ pub fn from_block_full( /// /// This does not set the `totalDifficulty` field. pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader) -> Header { - let (header, hash) = primitive_header.split(); - let PrimitiveHeader { - parent_hash, - ommers_hash, - beneficiary, - state_root, - transactions_root, - receipts_root, - logs_bloom, - difficulty, - number, - gas_limit, - gas_used, - timestamp, - mix_hash, - nonce, - base_fee_per_gas, - extra_data, - withdrawals_root, - blob_gas_used, - excess_blob_gas, - parent_beacon_block_root, - requests_hash, - } = header; + let (inner, hash) = primitive_header.split(); - Header { - hash, - parent_hash, - uncles_hash: ommers_hash, - miner: beneficiary, - state_root, - transactions_root, - receipts_root, - withdrawals_root, - number, - gas_used, - gas_limit, - extra_data, - logs_bloom, - timestamp, - difficulty, - mix_hash: Some(mix_hash), - nonce: Some(nonce), - base_fee_per_gas, - blob_gas_used, - excess_blob_gas, - parent_beacon_block_root, - total_difficulty: None, - requests_hash, - } + Header { hash, inner, total_difficulty: None, size: None } } #[inline] -fn from_block_with_transactions( +fn from_block_with_transactions>( block_length: usize, block_hash: B256, block: PrimitiveBlock, total_difficulty: U256, transactions: BlockTransactions, -) -> Block { - let uncles = block.body.ommers.into_iter().map(|h| h.hash_slow()).collect(); - let mut header = from_primitive_with_hash(SealedHeader::new(block.header, block_hash)); - header.total_difficulty = Some(total_difficulty); - - let withdrawals = header +) -> Block> { + let withdrawals = block + .header .withdrawals_root .is_some() - .then(|| block.body.withdrawals.map(Withdrawals::into_inner)) + .then(|| block.body.withdrawals.map(Withdrawals::into_inner).map(Into::into)) .flatten(); - Block { header, uncles, transactions, size: Some(U256::from(block_length)), withdrawals } -} + let uncles = block.body.ommers.into_iter().map(|h| h.hash_slow()).collect(); + let header = Header::from_consensus( + Sealed::new_unchecked(block.header.into(), block_hash), + Some(total_difficulty), + Some(U256::from(block_length)), + ); -/// Build an RPC block response representing -/// an Uncle from its header. -pub fn uncle_block_from_header(header: PrimitiveHeader) -> Block { - let hash = header.hash_slow(); - let uncle_block = PrimitiveBlock { header, ..Default::default() }; - let size = Some(U256::from(uncle_block.length())); - let rpc_header = from_primitive_with_hash(SealedHeader::new(uncle_block.header, hash)); - Block { - uncles: vec![], - header: rpc_header, - transactions: BlockTransactions::Uncle, - withdrawals: None, - size, - } + Block { header, uncles, transactions, withdrawals } } diff --git a/crates/rpc/rpc-types-compat/src/transaction/signature.rs b/crates/rpc/rpc-types-compat/src/transaction/signature.rs index 536f6ac5e5cf..02b3d54dcefa 100644 --- a/crates/rpc/rpc-types-compat/src/transaction/signature.rs +++ b/crates/rpc/rpc-types-compat/src/transaction/signature.rs @@ -1,6 +1,7 @@ +use alloy_consensus::transaction::to_eip155_value; use alloy_primitives::U256; use alloy_rpc_types::{Parity, Signature}; -use reth_primitives::{transaction::legacy_parity, Signature as PrimitiveSignature, TxType}; +use reth_primitives::{Signature as PrimitiveSignature, TxType}; /// Creates a new rpc signature from a legacy [primitive /// signature](reth_primitives::Signature), using the give chain id to compute the signature's @@ -14,7 +15,7 @@ pub fn from_legacy_primitive_signature( Signature { r: signature.r(), s: signature.s(), - v: U256::from(legacy_parity(&signature, chain_id).to_u64()), + v: U256::from(to_eip155_value(signature.v(), chain_id)), y_parity: None, } } @@ -26,8 +27,8 @@ pub fn from_typed_primitive_signature(signature: PrimitiveSignature) -> Signatur Signature { r: signature.r(), s: signature.s(), - v: U256::from(signature.v().y_parity_byte()), - y_parity: Some(Parity(signature.v().y_parity())), + v: U256::from(signature.v() as u8), + y_parity: Some(Parity(signature.v())), } } diff --git a/crates/rpc/rpc/src/engine.rs b/crates/rpc/rpc/src/engine.rs index 928e2050a5c2..b49bee7b7f9f 100644 --- a/crates/rpc/rpc/src/engine.rs +++ b/crates/rpc/rpc/src/engine.rs @@ -9,7 +9,7 @@ use reth_primitives::{BlockId, BlockNumberOrTag}; use reth_rpc_api::{EngineEthApiServer, EthApiServer, EthFilterApiServer}; /// Re-export for convenience pub use reth_rpc_engine_api::EngineApi; -use reth_rpc_eth_api::{FullEthApiTypes, RpcBlock, RpcReceipt, RpcTransaction}; +use reth_rpc_eth_api::{types::RpcHeader, FullEthApiTypes, RpcBlock, RpcReceipt, RpcTransaction}; use tracing_futures::Instrument; macro_rules! engine_span { @@ -40,6 +40,7 @@ where Eth: EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > + FullEthApiTypes, EthFilter: EthFilterApiServer>, diff --git a/crates/rpc/rpc/src/eth/core.rs b/crates/rpc/rpc/src/eth/core.rs index 98ac9e9f4094..9ad655bf6851 100644 --- a/crates/rpc/rpc/src/eth/core.rs +++ b/crates/rpc/rpc/src/eth/core.rs @@ -549,7 +549,7 @@ mod tests { /// Invalid block range #[tokio::test] async fn test_fee_history_empty() { - let response = as EthApiServer<_, _, _>>::fee_history( + let response = as EthApiServer<_, _, _, _>>::fee_history( &build_test_eth_api(NoopProvider::default()), U64::from(1), BlockNumberOrTag::Latest, @@ -571,7 +571,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _>>::fee_history( + let response = as EthApiServer<_, _, _, _>>::fee_history( ð_api, U64::from(newest_block + 1), newest_block.into(), @@ -594,7 +594,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _>>::fee_history( + let response = as EthApiServer<_, _, _, _>>::fee_history( ð_api, U64::from(1), (newest_block + 1000).into(), @@ -617,7 +617,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _>>::fee_history( + let response = as EthApiServer<_, _, _, _>>::fee_history( ð_api, U64::from(0), newest_block.into(), diff --git a/crates/rpc/rpc/src/eth/helpers/signer.rs b/crates/rpc/rpc/src/eth/helpers/signer.rs index e59be0ac2838..c80eb064adf7 100644 --- a/crates/rpc/rpc/src/eth/helpers/signer.rs +++ b/crates/rpc/rpc/src/eth/helpers/signer.rs @@ -109,7 +109,7 @@ impl EthSigner for DevSigner { #[cfg(test)] mod tests { - use alloy_primitives::{Bytes, Parity, U256}; + use alloy_primitives::{Bytes, U256}; use alloy_rpc_types_eth::TransactionInput; use revm_primitives::TxKind; @@ -205,7 +205,7 @@ mod tests { 16, ) .unwrap(), - Parity::Parity(false), + false, ); assert_eq!(sig, expected) } @@ -227,7 +227,7 @@ mod tests { 16, ) .unwrap(), - Parity::Parity(true), + true, ); assert_eq!(sig, expected) } diff --git a/crates/rpc/rpc/src/otterscan.rs b/crates/rpc/rpc/src/otterscan.rs index a772dd501d42..7ea91477add8 100644 --- a/crates/rpc/rpc/src/otterscan.rs +++ b/crates/rpc/rpc/src/otterscan.rs @@ -1,7 +1,7 @@ -use alloy_consensus::Transaction; +use alloy_consensus::{BlockHeader, Transaction}; use alloy_network::{ReceiptResponse, TransactionResponse}; use alloy_primitives::{Address, Bytes, TxHash, B256, U256}; -use alloy_rpc_types::{BlockTransactions, Header, TransactionReceipt}; +use alloy_rpc_types::{BlockTransactions, TransactionReceipt}; use alloy_rpc_types_trace::{ otterscan::{ BlockDetails, ContractCreator, InternalOperation, OperationType, OtsBlockTransactions, @@ -15,6 +15,7 @@ use reth_primitives::{BlockId, BlockNumberOrTag}; use reth_rpc_api::{EthApiServer, OtterscanServer}; use reth_rpc_eth_api::{ helpers::{EthTransactions, TraceExt}, + types::RpcHeader, FullEthApiTypes, RpcBlock, RpcReceipt, RpcTransaction, TransactionCompat, }; use reth_rpc_eth_types::{utils::binary_search, EthApiError}; @@ -49,7 +50,7 @@ where &self, block: RpcBlock, receipts: Vec>, - ) -> RpcResult { + ) -> RpcResult>> { // blob fee is burnt, so we don't need to calculate it let total_fees = receipts .iter() @@ -61,18 +62,23 @@ where } #[async_trait] -impl OtterscanServer> for OtterscanApi +impl OtterscanServer, RpcHeader> + for OtterscanApi where Eth: EthApiServer< RpcTransaction, RpcBlock, + RpcHeader, RpcReceipt, > + EthTransactions + TraceExt + 'static, { /// Handler for `{ots,erigon}_getHeaderByNumber` - async fn get_header_by_number(&self, block_number: u64) -> RpcResult> { + async fn get_header_by_number( + &self, + block_number: u64, + ) -> RpcResult>> { self.eth.header_by_number(BlockNumberOrTag::Number(block_number)).await } @@ -165,7 +171,10 @@ where } /// Handler for `ots_getBlockDetails` - async fn get_block_details(&self, block_number: u64) -> RpcResult { + async fn get_block_details( + &self, + block_number: u64, + ) -> RpcResult>> { let block_id = block_number.into(); let block = self.eth.block_by_number(block_id, true); let block_id = block_id.into(); @@ -178,7 +187,10 @@ where } /// Handler for `getBlockDetailsByHash` - async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult { + async fn get_block_details_by_hash( + &self, + block_hash: B256, + ) -> RpcResult>> { let block = self.eth.block_by_hash(block_hash, true); let block_id = block_hash.into(); let receipts = self.eth.block_receipts(block_id); @@ -195,7 +207,9 @@ where block_number: u64, page_number: usize, page_size: usize, - ) -> RpcResult>> { + ) -> RpcResult< + OtsBlockTransactions, RpcHeader>, + > { let block_id = block_number.into(); // retrieve full block and its receipts let block = self.eth.block_by_number(block_id, true); @@ -236,7 +250,7 @@ where } // Crop receipts and transform them into OtsTransactionReceipt - let timestamp = Some(block.header.timestamp); + let timestamp = Some(block.header.timestamp()); let receipts = receipts .drain(page_start..page_end) .zip(transactions.iter().map(Eth::TransactionCompat::tx_type)) diff --git a/crates/storage/codecs/src/alloy/authorization_list.rs b/crates/storage/codecs/src/alloy/authorization_list.rs index e17c0fb32a10..e9135b2f5e65 100644 --- a/crates/storage/codecs/src/alloy/authorization_list.rs +++ b/crates/storage/codecs/src/alloy/authorization_list.rs @@ -85,12 +85,11 @@ mod tests { nonce: 1, } .into_signed( - alloy_primitives::Signature::from_rs_and_parity( + alloy_primitives::Signature::new( b256!("1fd474b1f9404c0c5df43b7620119ffbc3a1c3f942c73b6e14e9f55255ed9b1d").into(), b256!("29aca24813279a901ec13b5f7bb53385fa1fc627b946592221417ff74a49600d").into(), false, ) - .unwrap(), ); let mut compacted_authorization = Vec::::new(); let len = authorization.to_compact(&mut compacted_authorization); diff --git a/crates/storage/codecs/src/alloy/signature.rs b/crates/storage/codecs/src/alloy/signature.rs index 0cc4774d0f8b..a7a4614c3cfd 100644 --- a/crates/storage/codecs/src/alloy/signature.rs +++ b/crates/storage/codecs/src/alloy/signature.rs @@ -1,7 +1,7 @@ //! Compact implementation for [`Signature`] use crate::Compact; -use alloy_primitives::{Parity, Signature, U256}; +use alloy_primitives::{Signature, U256}; impl Compact for Signature { fn to_compact(&self, buf: &mut B) -> usize @@ -10,7 +10,7 @@ impl Compact for Signature { { buf.put_slice(&self.r().as_le_bytes()); buf.put_slice(&self.s().as_le_bytes()); - self.v().y_parity() as usize + self.v() as usize } fn from_compact(mut buf: &[u8], identifier: usize) -> (Self, &[u8]) { @@ -19,6 +19,6 @@ impl Compact for Signature { let r = U256::from_le_slice(&buf[0..32]); let s = U256::from_le_slice(&buf[32..64]); buf.advance(64); - (Self::new(r, s, Parity::Parity(identifier != 0)), buf) + (Self::new(r, s, identifier != 0), buf) } } diff --git a/crates/storage/provider/src/providers/database/provider.rs b/crates/storage/provider/src/providers/database/provider.rs index 2af22cec0b59..96e26ff22524 100644 --- a/crates/storage/provider/src/providers/database/provider.rs +++ b/crates/storage/provider/src/providers/database/provider.rs @@ -1704,7 +1704,7 @@ impl> TransactionsProviderE rlp_buf: &mut Vec, ) -> Result<(B256, TxNumber), Box> { let (tx_id, tx) = entry.map_err(|e| Box::new(e.into()))?; - tx.transaction.encode_with_signature(&tx.signature, rlp_buf, false); + tx.transaction.eip2718_encode(&tx.signature, rlp_buf); Ok((keccak256(rlp_buf), tx_id)) } diff --git a/crates/storage/provider/src/providers/static_file/manager.rs b/crates/storage/provider/src/providers/static_file/manager.rs index e81dc01f722c..c291419b8ba7 100644 --- a/crates/storage/provider/src/providers/static_file/manager.rs +++ b/crates/storage/provider/src/providers/static_file/manager.rs @@ -1672,6 +1672,6 @@ fn calculate_hash( rlp_buf: &mut Vec, ) -> Result<(B256, TxNumber), Box> { let (tx_id, tx) = entry; - tx.transaction.encode_with_signature(&tx.signature, rlp_buf, false); + tx.transaction.eip2718_encode(&tx.signature, rlp_buf); Ok((keccak256(rlp_buf), tx_id)) } diff --git a/crates/storage/provider/src/test_utils/blocks.rs b/crates/storage/provider/src/test_utils/blocks.rs index cacb71b351de..8e1ace79ff60 100644 --- a/crates/storage/provider/src/test_utils/blocks.rs +++ b/crates/storage/provider/src/test_utils/blocks.rs @@ -2,8 +2,8 @@ use crate::{DatabaseProviderRW, ExecutionOutcome}; use alloy_consensus::{TxLegacy, EMPTY_OMMER_ROOT_HASH}; use alloy_primitives::{ - b256, hex_literal::hex, map::HashMap, Address, BlockNumber, Bytes, Log, Parity, Sealable, - TxKind, B256, U256, + b256, hex_literal::hex, map::HashMap, Address, BlockNumber, Bytes, Log, Sealable, TxKind, B256, + U256, }; use reth_db::tables; @@ -97,7 +97,7 @@ pub(crate) static TEST_BLOCK: LazyLock = LazyLock::new(|| SealedBlo "29056683545955299640297374067888344259176096769870751649153779895496107008675", ) .unwrap(), - Parity::NonEip155(false), + false, ), transaction: Transaction::Legacy(TxLegacy { gas_price: 10, diff --git a/testing/testing-utils/src/generators.rs b/testing/testing-utils/src/generators.rs index 571727cb2fd6..24b066b6752f 100644 --- a/testing/testing-utils/src/generators.rs +++ b/testing/testing-utils/src/generators.rs @@ -1,7 +1,7 @@ //! Generators for different data structures like block headers, block bodies and ranges of those. use alloy_consensus::{Transaction as _, TxLegacy}; -use alloy_primitives::{Address, BlockNumber, Bytes, Parity, Sealable, TxKind, B256, U256}; +use alloy_primitives::{Address, BlockNumber, Bytes, Sealable, TxKind, B256, U256}; pub use rand::Rng; use rand::{ distributions::uniform::SampleRange, rngs::StdRng, seq::SliceRandom, thread_rng, SeedableRng, @@ -147,17 +147,9 @@ pub fn sign_tx_with_random_key_pair(rng: &mut R, tx: Transaction) -> Tra /// Signs the [Transaction] with the given key pair. pub fn sign_tx_with_key_pair(key_pair: Keypair, tx: Transaction) -> TransactionSigned { - let mut signature = + let signature = sign_message(B256::from_slice(&key_pair.secret_bytes()[..]), tx.signature_hash()).unwrap(); - if matches!(tx, Transaction::Legacy(_)) { - signature = if let Some(chain_id) = tx.chain_id() { - signature.with_chain_id(chain_id) - } else { - signature.with_parity(Parity::NonEip155(signature.v().y_parity())) - } - } - TransactionSigned::from_transaction_and_signature(tx, signature) } @@ -463,7 +455,7 @@ mod tests { use super::*; use alloy_consensus::TxEip1559; use alloy_eips::eip2930::AccessList; - use alloy_primitives::{hex, Parity}; + use alloy_primitives::hex; use reth_primitives::{public_key_to_address, Signature}; use std::str::FromStr; @@ -537,7 +529,7 @@ mod tests { "46948507304638947509940763649030358759909902576025900602547168820602576006531", ) .unwrap(), - Parity::Parity(false), + false, ); assert_eq!(expected, signature); } From 1c4ac5911598c023aed757ffd61bc1e425af9972 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 00:32:25 +0400 Subject: [PATCH 02/20] fix --- crates/primitives/src/transaction/util.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/primitives/src/transaction/util.rs b/crates/primitives/src/transaction/util.rs index ffcefd5fb97e..eebec36c04d4 100644 --- a/crates/primitives/src/transaction/util.rs +++ b/crates/primitives/src/transaction/util.rs @@ -63,7 +63,7 @@ mod impl_secp256k1 { #[cfg_attr(feature = "secp256k1", allow(unused, unreachable_pub))] mod impl_k256 { use super::*; - use alloy_primitives::{keccak256, B256, U256}; + use alloy_primitives::{keccak256, B256}; pub(crate) use k256::ecdsa::Error; use k256::ecdsa::{RecoveryId, SigningKey, VerifyingKey}; From 7c1bb6d7f5062f7c210b995c33aa4d9b516fc067 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 00:40:44 +0400 Subject: [PATCH 03/20] fix patches --- book/sources/Cargo.toml | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index b374ad798b5d..af3a8666d12b 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -11,3 +11,44 @@ reth-exex = { path = "../../crates/exex/exex" } reth-node-ethereum = { path = "../../crates/ethereum/node" } reth-tracing = { path = "../../crates/tracing" } reth-node-api = { path = "../../crates/node/api" } + +[patch.crates-io] +alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } +alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } + +alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } + +revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } + +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } + +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } From 61cab3e3d287d31df95f8d7c3981b58e1a7de0f4 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 00:48:25 +0400 Subject: [PATCH 04/20] clean up --- crates/primitives/src/alloy_compat.rs | 51 +++------------------------ 1 file changed, 4 insertions(+), 47 deletions(-) diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index d2bf2eb9ca8a..5e6096cb8c00 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -11,63 +11,20 @@ use alloy_consensus::{ }; use alloy_primitives::{SignatureError, TxKind}; use alloy_rlp::Error as RlpError; +use alloy_rpc_types::AnyNetworkHeader; use alloy_serde::WithOtherFields; use op_alloy_rpc_types as _; -impl TryFrom>> for Block { - type Error = alloy_rpc_types::ConversionError; - - fn try_from( - block: alloy_rpc_types::Block>, - ) -> Result { - use alloy_rpc_types::ConversionError; - - let transactions = { - let transactions: Result, ConversionError> = match block - .transactions - { - alloy_rpc_types::BlockTransactions::Full(transactions) => { - transactions.into_iter().map(|tx| tx.try_into()).collect() - } - alloy_rpc_types::BlockTransactions::Hashes(_) | - alloy_rpc_types::BlockTransactions::Uncle => { - // alloy deserializes empty blocks into `BlockTransactions::Hashes`, if the tx - // root is the empty root then we can just return an empty vec. - if block.header.transactions_root == EMPTY_TRANSACTIONS { - Ok(Vec::new()) - } else { - Err(ConversionError::MissingFullTransactions) - } - } - }; - transactions? - }; - - Ok(Self { - header: block.header.inner, - body: BlockBody { - transactions, - ommers: Default::default(), - withdrawals: block.withdrawals.map(|w| w.into_inner().into()), - }, - }) - } -} - impl - TryFrom< - alloy_rpc_types::Block< - WithOtherFields, - alloy_rpc_types::Header, - >, - > for Block + TryFrom, AnyNetworkHeader>> + for Block { type Error = alloy_rpc_types::ConversionError; fn try_from( block: alloy_rpc_types::Block< WithOtherFields, - alloy_rpc_types::Header, + AnyNetworkHeader, >, ) -> Result { use alloy_rpc_types::ConversionError; From 945d19ec44228548bdad989a9a85690c609c7fba Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 01:22:01 +0400 Subject: [PATCH 05/20] update patch --- Cargo.lock | 54 ++++++++++++++--------------- Cargo.toml | 54 ++++++++++++++--------------- crates/rpc/rpc-eth-api/src/types.rs | 2 +- 3 files changed, 55 insertions(+), 55 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 02b27a649627..c1c160df4a9c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,7 +113,7 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-eips", "alloy-primitives", @@ -196,7 +196,7 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -216,7 +216,7 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-serde", @@ -249,7 +249,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -262,7 +262,7 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-consensus", "alloy-eips", @@ -282,7 +282,7 @@ dependencies = [ [[package]] name = "alloy-network-primitives" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-consensus", "alloy-eips", @@ -294,7 +294,7 @@ dependencies = [ [[package]] name = "alloy-node-bindings" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -341,7 +341,7 @@ dependencies = [ [[package]] name = "alloy-provider" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-chains", "alloy-consensus", @@ -381,7 +381,7 @@ dependencies = [ [[package]] name = "alloy-pubsub" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -421,7 +421,7 @@ dependencies = [ [[package]] name = "alloy-rpc-client" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -445,7 +445,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -457,7 +457,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -468,7 +468,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -479,7 +479,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-eips", "alloy-primitives", @@ -492,7 +492,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "serde", @@ -501,7 +501,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-consensus", "alloy-eips", @@ -521,7 +521,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-consensus", "alloy-eips", @@ -541,7 +541,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-eips", "alloy-primitives", @@ -553,7 +553,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -566,7 +566,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -577,7 +577,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "arbitrary", @@ -588,7 +588,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-primitives", "async-trait", @@ -601,7 +601,7 @@ dependencies = [ [[package]] name = "alloy-signer-local" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-consensus", "alloy-network", @@ -750,7 +750,7 @@ dependencies = [ [[package]] name = "alloy-transport" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -769,7 +769,7 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -783,7 +783,7 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -801,7 +801,7 @@ dependencies = [ [[package]] name = "alloy-transport-ws" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=215315bd#215315bd0037f164d070827df6c8921e0c0740f7" +source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" dependencies = [ "alloy-pubsub", "alloy-transport", diff --git a/Cargo.toml b/Cargo.toml index b692167ce671..5a30f05ff235 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -610,33 +610,33 @@ alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } diff --git a/crates/rpc/rpc-eth-api/src/types.rs b/crates/rpc/rpc-eth-api/src/types.rs index 93ba251939a8..a8dbb1eaab4a 100644 --- a/crates/rpc/rpc-eth-api/src/types.rs +++ b/crates/rpc/rpc-eth-api/src/types.rs @@ -45,7 +45,7 @@ pub trait EthApiTypes: Send + Sync + Clone { /// Adapter for network specific transaction type. pub type RpcTransaction = ::TransactionResponse; -/// Adapter for network specific block type. +/// Adapter for network specific header type. pub type RpcHeader = ::HeaderResponse; /// Adapter for network specific block type. From 0247a040c886ad9de81ba919d29edeb9511a96a6 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 01:22:31 +0400 Subject: [PATCH 06/20] update patch --- book/sources/Cargo.toml | 54 ++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index af3a8666d12b..7a8c195d15b2 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -20,33 +20,33 @@ alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "215315bd" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } From fc2366231d9b385664aeff0c8be051fae98ca09b Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Thu, 31 Oct 2024 03:52:18 +0400 Subject: [PATCH 07/20] update patch --- Cargo.lock | 12021 -------------------------------------- Cargo.toml | 54 +- book/sources/Cargo.toml | 54 +- 3 files changed, 54 insertions(+), 12075 deletions(-) delete mode 100644 Cargo.lock diff --git a/Cargo.lock b/Cargo.lock deleted file mode 100644 index c1c160df4a9c..000000000000 --- a/Cargo.lock +++ /dev/null @@ -1,12021 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "addr2line" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" -dependencies = [ - "gimli", -] - -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - -[[package]] -name = "aead" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" -dependencies = [ - "crypto-common", - "generic-array", -] - -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - -[[package]] -name = "aes-gcm" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" -dependencies = [ - "aead", - "aes", - "cipher", - "ctr", - "ghash", - "subtle", -] - -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "getrandom 0.2.15", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "aho-corasick" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" -dependencies = [ - "memchr", -] - -[[package]] -name = "alloc-no-stdlib" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" - -[[package]] -name = "alloc-stdlib" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" -dependencies = [ - "alloc-no-stdlib", -] - -[[package]] -name = "allocator-api2" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" - -[[package]] -name = "alloy-chains" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "836cf02383d9ebb35502d379bcd1ae803155094077eaab9c29131d888cd5fa3e" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "num_enum", - "proptest", - "serde", - "strum", -] - -[[package]] -name = "alloy-consensus" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "arbitrary", - "auto_impl", - "c-kzg", - "derive_more 1.0.0", - "serde", - "serde_with", -] - -[[package]] -name = "alloy-contract" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460ab80ce4bda1c80bcf96fe7460520476f2c7b734581c6567fac2708e2a60ef" -dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network", - "alloy-network-primitives", - "alloy-primitives", - "alloy-provider", - "alloy-rpc-types-eth", - "alloy-sol-types", - "alloy-transport", - "futures", - "futures-util", - "thiserror", -] - -[[package]] -name = "alloy-dyn-abi" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5228b189b18b85761340dc9eaac0141148a8503657b36f9bc3a869413d987ca" -dependencies = [ - "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-sol-types", - "const-hex", - "derive_more 1.0.0", - "itoa", - "serde", - "serde_json", - "winnow", -] - -[[package]] -name = "alloy-eip2930" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "rand 0.8.5", - "serde", -] - -[[package]] -name = "alloy-eip7702" -version = "0.3.2" -source = "git+https://github.com/alloy-rs/eips?rev=9e6fcee#9e6fcee13e7f72d32f136baf233108e567e1c51c" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "derive_more 1.0.0", - "k256", - "rand 0.8.5", - "serde", - "serde_with", -] - -[[package]] -name = "alloy-eips" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "arbitrary", - "c-kzg", - "derive_more 1.0.0", - "ethereum_ssz", - "ethereum_ssz_derive", - "once_cell", - "serde", - "sha2 0.10.8", -] - -[[package]] -name = "alloy-genesis" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-json-abi" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31a0f0d51db8a1a30a4d98a9f90e090a94c8f44cb4d9eafc7e03aa6d00aae984" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-abi" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-rpc" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "alloy-network" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-network-primitives", - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "alloy-signer", - "alloy-sol-types", - "async-trait", - "auto_impl", - "futures-utils-wasm", - "thiserror", -] - -[[package]] -name = "alloy-network-primitives" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-node-bindings" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "k256", - "rand 0.8.5", - "serde_json", - "tempfile", - "thiserror", - "tracing", - "url", -] - -[[package]] -name = "alloy-primitives" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "alloy-rlp", - "arbitrary", - "bytes", - "cfg-if", - "const-hex", - "derive_arbitrary", - "derive_more 1.0.0", - "foldhash", - "getrandom 0.2.15", - "hashbrown 0.15.0", - "hex-literal", - "indexmap 2.6.0", - "itoa", - "k256", - "keccak-asm", - "paste", - "proptest", - "proptest-derive", - "rand 0.8.5", - "ruint", - "rustc-hash 2.0.0", - "serde", - "sha3", - "tiny-keccak", -] - -[[package]] -name = "alloy-provider" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", - "alloy-network-primitives", - "alloy-primitives", - "alloy-pubsub", - "alloy-rpc-client", - "alloy-rpc-types-admin", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth", - "alloy-transport", - "alloy-transport-http", - "alloy-transport-ws", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru", - "parking_lot", - "pin-project", - "reqwest", - "schnellru", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "url", - "wasmtimer", -] - -[[package]] -name = "alloy-pubsub" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-json-rpc", - "alloy-primitives", - "alloy-transport", - "bimap", - "futures", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.5.1", - "tracing", -] - -[[package]] -name = "alloy-rlp" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0822426598f95e45dd1ea32a738dac057529a709ee645fcc516ffa4cbde08f" -dependencies = [ - "alloy-rlp-derive", - "arrayvec", - "bytes", -] - -[[package]] -name = "alloy-rlp-derive" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b09cae092c27b6f1bde952653a22708691802e57bfef4a2973b80bea21efd3f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "alloy-rpc-client" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-json-rpc", - "alloy-primitives", - "alloy-pubsub", - "alloy-transport", - "alloy-transport-http", - "alloy-transport-ws", - "futures", - "pin-project", - "reqwest", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.5.1", - "tracing", - "url", - "wasmtimer", -] - -[[package]] -name = "alloy-rpc-types" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-rpc-types-admin" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-rpc-types-anvil" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-rpc-types-beacon" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "serde", - "serde_with", - "thiserror", -] - -[[package]] -name = "alloy-rpc-types-debug" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "serde", -] - -[[package]] -name = "alloy-rpc-types-engine" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "derive_more 1.0.0", - "ethereum_ssz", - "ethereum_ssz_derive", - "jsonrpsee-types", - "jsonwebtoken", - "rand 0.8.5", - "serde", - "strum", -] - -[[package]] -name = "alloy-rpc-types-eth" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network-primitives", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "alloy-sol-types", - "arbitrary", - "derive_more 1.0.0", - "itertools 0.13.0", - "jsonrpsee-types", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-rpc-types-mev" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-serde", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-rpc-types-trace" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "alloy-rpc-types-txpool" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "serde", -] - -[[package]] -name = "alloy-serde" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "arbitrary", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-signer" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256", - "thiserror", -] - -[[package]] -name = "alloy-signer-local" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", - "async-trait", - "coins-bip32", - "coins-bip39", - "k256", - "rand 0.8.5", - "thiserror", -] - -[[package]] -name = "alloy-sol-macro" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841eabaa4710f719fddbc24c95d386eae313f07e6da4babc25830ee37945be0c" -dependencies = [ - "alloy-sol-macro-expander 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.86", -] - -[[package]] -name = "alloy-sol-macro" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "alloy-sol-macro-expander 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "alloy-sol-macro-expander" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6672337f19d837b9f7073c45853aeb528ed9f7dd6a4154ce683e9e5cb7794014" -dependencies = [ - "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "const-hex", - "heck", - "indexmap 2.6.0", - "proc-macro-error2", - "proc-macro2", - "quote", -<<<<<<< HEAD - "syn 2.0.87", - "syn-solidity", -======= - "syn 2.0.86", - "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tiny-keccak", -] - -[[package]] -name = "alloy-sol-macro-expander" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "const-hex", - "heck", - "indexmap 2.6.0", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.86", - "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", ->>>>>>> 66fadca3a (wip) - "tiny-keccak", -] - -[[package]] -name = "alloy-sol-macro-input" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dff37dd20bfb118b777c96eda83b2067f4226d2644c5cfa00187b3bc01770ba" -dependencies = [ - "const-hex", - "dunce", - "heck", - "proc-macro2", - "quote", -<<<<<<< HEAD - "syn 2.0.87", - "syn-solidity", -======= - "syn 2.0.86", - "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "alloy-sol-macro-input" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "const-hex", - "dunce", - "heck", - "proc-macro2", - "quote", - "syn 2.0.86", - "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", ->>>>>>> 66fadca3a (wip) -] - -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b853d42292dbb159671a3edae3b2750277ff130f32b726fe07dc2b17aa6f2b5" -dependencies = [ - "serde", - "winnow", -] - -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "serde", - "winnow", -] - -[[package]] -name = "alloy-sol-types" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "alloy-json-abi 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "alloy-primitives", - "alloy-sol-macro 0.8.10 (git+https://github.com/alloy-rs/core?rev=237cfc4)", - "const-hex", - "serde", -] - -[[package]] -name = "alloy-transport" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-json-rpc", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror", - "tokio", - "tower 0.5.1", - "tracing", - "url", - "wasmtimer", -] - -[[package]] -name = "alloy-transport-http" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-json-rpc", - "alloy-transport", - "reqwest", - "serde_json", - "tower 0.5.1", - "tracing", - "url", -] - -[[package]] -name = "alloy-transport-ipc" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-json-rpc", - "alloy-pubsub", - "alloy-transport", - "bytes", - "futures", - "interprocess", - "pin-project", - "serde_json", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "alloy-transport-ws" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=66365938#663659381cd824528a3b2ba8f0c0725b1acbcf78" -dependencies = [ - "alloy-pubsub", - "alloy-transport", - "futures", - "http", - "rustls", - "serde_json", - "tokio", - "tokio-tungstenite", - "tracing", - "ws_stream_wasm", -] - -[[package]] -name = "alloy-trie" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdd7f8b3a7c65ca09b3c7bdd7c7d72d7423d026f5247eda96af53d24e58315c1" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "arrayvec", - "derive_arbitrary", - "derive_more 1.0.0", - "nybbles", - "proptest", - "proptest-derive", - "serde", - "smallvec", - "tracing", -] - -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - -[[package]] -name = "anes" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" - -[[package]] -name = "anstream" -version = "0.6.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338" -dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "is_terminal_polyfill", - "utf8parse", -] - -[[package]] -name = "anstyle" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" - -[[package]] -name = "anstyle-parse" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" -dependencies = [ - "utf8parse", -] - -[[package]] -name = "anstyle-query" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "anstyle-wincon" -version = "3.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" -dependencies = [ - "anstyle", - "windows-sys 0.59.0", -] - -[[package]] -name = "anyhow" -version = "1.0.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" - -[[package]] -name = "aquamarine" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f50776554130342de4836ba542aa85a4ddb361690d7e8df13774d7284c3d5c2" -dependencies = [ - "include_dir", - "itertools 0.10.5", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "arbitrary" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" -dependencies = [ - "derive_arbitrary", -] - -[[package]] -name = "ark-ff" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" -dependencies = [ - "ark-ff-asm 0.3.0", - "ark-ff-macros 0.3.0", - "ark-serialize 0.3.0", - "ark-std 0.3.0", - "derivative", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.3.3", - "zeroize", -] - -[[package]] -name = "ark-ff" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" -dependencies = [ - "ark-ff-asm 0.4.2", - "ark-ff-macros 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", - "derivative", - "digest 0.10.7", - "itertools 0.10.5", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.4.1", - "zeroize", -] - -[[package]] -name = "ark-ff-asm" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-asm" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" -dependencies = [ - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-macros" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" -dependencies = [ - "num-bigint", - "num-traits", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-ff-macros" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" -dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ark-serialize" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" -dependencies = [ - "ark-std 0.3.0", - "digest 0.9.0", -] - -[[package]] -name = "ark-serialize" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" -dependencies = [ - "ark-std 0.4.0", - "digest 0.10.7", - "num-bigint", -] - -[[package]] -name = "ark-std" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" -dependencies = [ - "num-traits", - "rand 0.8.5", -] - -[[package]] -name = "ark-std" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" -dependencies = [ - "num-traits", - "rand 0.8.5", -] - -[[package]] -name = "arrayref" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" - -[[package]] -name = "arrayvec" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" -dependencies = [ - "serde", -] - -[[package]] -name = "asn1_der" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "155a5a185e42c6b77ac7b88a15143d930a9e9727a5b7b77eed417404ab15c247" - -[[package]] -name = "assert_matches" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" - -[[package]] -name = "async-channel" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" -dependencies = [ - "concurrent-queue", - "event-listener", - "futures-core", -] - -[[package]] -name = "async-compression" -version = "0.4.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0cb8f1d480b0ea3783ab015936d2a55c87e219676f0c0b7dec61494043f21857" -dependencies = [ - "brotli", - "flate2", - "futures-core", - "memchr", - "pin-project-lite", - "tokio", - "zstd", - "zstd-safe", -] - -[[package]] -name = "async-sse" -version = "5.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e6fa871e4334a622afd6bb2f611635e8083a6f5e2936c0f90f37c7ef9856298" -dependencies = [ - "async-channel", - "futures-lite", - "http-types", - "log", - "memchr", - "pin-project-lite", -] - -[[package]] -name = "async-stream" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "async-trait" -version = "0.1.83" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "async_io_stream" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" -dependencies = [ - "futures", - "pharos", - "rustc_version 0.4.1", -] - -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "aurora-engine-modexp" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" -dependencies = [ - "hex", - "num", -] - -[[package]] -name = "auto_impl" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "backon" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4fa97bb310c33c811334143cf64c5bb2b7b3c06e453db6b095d7061eff8f113" -dependencies = [ - "fastrand 2.1.1", - "tokio", -] - -[[package]] -name = "backtrace" -version = "0.3.74" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" -dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-targets 0.52.6", -] - -[[package]] -name = "base-x" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" - -[[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "base64" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" - -[[package]] -name = "base64ct" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" - -[[package]] -name = "bech32" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" - -[[package]] -name = "bimap" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.6.0", - "cexpr", - "clang-sys", - "itertools 0.13.0", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.87", -] - -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" -dependencies = [ - "arbitrary", - "serde", -] - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "serde", - "tap", - "wyz", -] - -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-padding" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" -dependencies = [ - "generic-array", -] - -[[package]] -name = "blst" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" -dependencies = [ - "cc", - "glob", - "threadpool", - "zeroize", -] - -[[package]] -name = "boa_ast" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a69ee3a749ea36d4e56d92941e7b25076b493d4917c3d155b6cf369e23547d9" -dependencies = [ - "bitflags 2.6.0", - "boa_interner", - "boa_macros", - "indexmap 2.6.0", - "num-bigint", - "rustc-hash 2.0.0", -] - -[[package]] -name = "boa_engine" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06e4559b35b80ceb2e6328481c0eca9a24506663ea33ee1e279be6b5b618b25c" -dependencies = [ - "arrayvec", - "bitflags 2.6.0", - "boa_ast", - "boa_gc", - "boa_interner", - "boa_macros", - "boa_parser", - "boa_profiler", - "boa_string", - "bytemuck", - "cfg-if", - "dashmap 5.5.3", - "fast-float", - "hashbrown 0.14.5", - "icu_normalizer", - "indexmap 2.6.0", - "intrusive-collections", - "itertools 0.13.0", - "num-bigint", - "num-integer", - "num-traits", - "num_enum", - "once_cell", - "pollster", - "portable-atomic", - "rand 0.8.5", - "regress", - "rustc-hash 2.0.0", - "ryu-js", - "serde", - "serde_json", - "sptr", - "static_assertions", - "tap", - "thin-vec", - "thiserror", - "time", -] - -[[package]] -name = "boa_gc" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "716406f57d67bc3ac7fd227d5513b42df401dff14a3be22cbd8ee29817225363" -dependencies = [ - "boa_macros", - "boa_profiler", - "boa_string", - "hashbrown 0.14.5", - "thin-vec", -] - -[[package]] -name = "boa_interner" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e18df2272616e1ba0322a69333d37dbb78797f1aa0595aad9dc41e8ecd06ad9" -dependencies = [ - "boa_gc", - "boa_macros", - "hashbrown 0.14.5", - "indexmap 2.6.0", - "once_cell", - "phf", - "rustc-hash 2.0.0", - "static_assertions", -] - -[[package]] -name = "boa_macros" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240f4126219a83519bad05c9a40bfc0303921eeb571fc2d7e44c17ffac99d3f1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure", -] - -[[package]] -name = "boa_parser" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b59dc05bf1dc019b11478a92986f590cff43fced4d20e866eefb913493e91c" -dependencies = [ - "bitflags 2.6.0", - "boa_ast", - "boa_interner", - "boa_macros", - "boa_profiler", - "fast-float", - "icu_properties", - "num-bigint", - "num-traits", - "regress", - "rustc-hash 2.0.0", -] - -[[package]] -name = "boa_profiler" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00ee0645509b3b91abd724f25072649d9e8e65653a78ff0b6e592788a58dd838" - -[[package]] -name = "boa_string" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae85205289bab1f2c7c8a30ddf0541cf89ba2ff7dbd144feef50bbfa664288d4" -dependencies = [ - "fast-float", - "paste", - "rustc-hash 2.0.0", - "sptr", - "static_assertions", -] - -[[package]] -name = "boyer-moore-magiclen" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95e6233f2d926b5b123caf9d58e3885885255567fbe7776a7fdcae2a4d7241c4" -dependencies = [ - "debug-helper", -] - -[[package]] -name = "brotli" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc97b8f16f944bba54f0433f07e30be199b6dc2bd25937444bbad560bcea29bd" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", - "brotli-decompressor", -] - -[[package]] -name = "brotli-decompressor" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", -] - -[[package]] -name = "bs58" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" -dependencies = [ - "sha2 0.10.8", - "tinyvec", -] - -[[package]] -name = "bstr" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" -dependencies = [ - "memchr", - "regex-automata 0.4.8", - "serde", -] - -[[package]] -name = "bumpalo" -version = "3.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" - -[[package]] -name = "byte-slice-cast" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" - -[[package]] -name = "bytemuck" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" -dependencies = [ - "serde", -] - -[[package]] -name = "c-kzg" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0307f72feab3300336fb803a57134159f6e20139af1357f36c54cb90d8e8928" -dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", - "once_cell", - "serde", -] - -[[package]] -name = "camino" -version = "1.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" -dependencies = [ - "camino", - "cargo-platform", - "semver 1.0.23", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "cassowary" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53" - -[[package]] -name = "cast" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" - -[[package]] -name = "castaway" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" -dependencies = [ - "rustversion", -] - -[[package]] -name = "cc" -version = "1.1.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" -dependencies = [ - "jobserver", - "libc", - "shlex", -] - -[[package]] -name = "cesu8" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" - -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - -[[package]] -name = "chrono" -version = "0.4.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" -dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits", - "serde", - "wasm-bindgen", - "windows-targets 0.52.6", -] - -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - -[[package]] -name = "cipher" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", -] - -[[package]] -name = "clang-sys" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading", -] - -[[package]] -name = "clap" -version = "4.5.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" -dependencies = [ - "clap_builder", - "clap_derive", -] - -[[package]] -name = "clap_builder" -version = "4.5.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" -dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim", -] - -[[package]] -name = "clap_derive" -version = "4.5.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "clap_lex" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" - -[[package]] -name = "coins-bip32" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2073678591747aed4000dd468b97b14d7007f7936851d3f2f01846899f5ebf08" -dependencies = [ - "bs58", - "coins-core", - "digest 0.10.7", - "hmac 0.12.1", - "k256", - "serde", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "coins-bip39" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74b169b26623ff17e9db37a539fe4f15342080df39f129ef7631df7683d6d9d4" -dependencies = [ - "bitvec", - "coins-bip32", - "hmac 0.12.1", - "once_cell", - "pbkdf2", - "rand 0.8.5", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "coins-core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b962ad8545e43a28e14e87377812ba9ae748dd4fd963f4c10e9fcc6d13475b" -dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "const-hex", - "digest 0.10.7", - "generic-array", - "ripemd", - "serde", - "sha2 0.10.8", - "sha3", - "thiserror", -] - -[[package]] -name = "colorchoice" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" - -[[package]] -name = "combine" -version = "4.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" -dependencies = [ - "bytes", - "memchr", -] - -[[package]] -name = "comfy-table" -version = "7.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" -dependencies = [ - "crossterm 0.27.0", - "strum", - "strum_macros", - "unicode-width", -] - -[[package]] -name = "compact_str" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6050c3a16ddab2e412160b31f2c871015704239bca62f72f6e5f0be631d3f644" -dependencies = [ - "castaway", - "cfg-if", - "itoa", - "rustversion", - "ryu", - "static_assertions", -] - -[[package]] -name = "concat-kdf" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d72c1252426a83be2092dd5884a5f6e3b8e7180f6891b6263d2c21b92ec8816" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "concurrent-queue" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "console" -version = "0.15.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" -dependencies = [ - "encode_unicode", - "lazy_static", - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "const-hex" -version = "1.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" -dependencies = [ - "cfg-if", - "cpufeatures", - "hex", - "proptest", - "serde", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "const_format" -version = "0.2.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50c655d81ff1114fb0dcdea9225ea9f0cc712a6f8d189378e82bdf62a473a64b" -dependencies = [ - "const_format_proc_macros", - "konst", -] - -[[package]] -name = "const_format_proc_macros" -version = "0.2.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eff1a44b93f47b1bac19a27932f5c591e43d1ba357ee4f61526c8a25603f0eb1" -dependencies = [ - "proc-macro2", - "quote", - "unicode-xid", -] - -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - -[[package]] -name = "core2" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" -dependencies = [ - "memchr", -] - -[[package]] -name = "cpp_demangle" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96e58d342ad113c2b878f16d5d034c03be492ae460cdbc02b7f0f2284d310c7d" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "cpufeatures" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" -dependencies = [ - "libc", -] - -[[package]] -name = "crc" -version = "3.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" -dependencies = [ - "crc-catalog", -] - -[[package]] -name = "crc-catalog" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" - -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "criterion" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" -dependencies = [ - "anes", - "cast", - "ciborium", - "clap", - "criterion-plot", - "futures", - "is-terminal", - "itertools 0.10.5", - "num-traits", - "once_cell", - "oorandom", - "plotters", - "rayon", - "regex", - "serde", - "serde_derive", - "serde_json", - "tinytemplate", - "tokio", - "walkdir", -] - -[[package]] -name = "criterion-plot" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" -dependencies = [ - "cast", - "itertools 0.10.5", -] - -[[package]] -name = "critical-section" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" - -[[package]] -name = "crossbeam-channel" -version = "0.5.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" - -[[package]] -name = "crossterm" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df" -dependencies = [ - "bitflags 2.6.0", - "crossterm_winapi", - "libc", - "parking_lot", - "winapi", -] - -[[package]] -name = "crossterm" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" -dependencies = [ - "bitflags 2.6.0", - "crossterm_winapi", - "mio 1.0.2", - "parking_lot", - "rustix", - "signal-hook", - "signal-hook-mio", - "winapi", -] - -[[package]] -name = "crossterm_winapi" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" -dependencies = [ - "winapi", -] - -[[package]] -name = "crunchy" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "subtle", - "zeroize", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "typenum", -] - -[[package]] -name = "crypto-mac" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" -dependencies = [ - "generic-array", - "subtle", -] - -[[package]] -name = "csv" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" -dependencies = [ - "csv-core", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "csv-core" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" -dependencies = [ - "memchr", -] - -[[package]] -name = "ctr" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" -dependencies = [ - "cipher", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "digest 0.10.7", - "fiat-crypto", - "rustc_version 0.4.1", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "darling" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.87", -] - -[[package]] -name = "darling_macro" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" -dependencies = [ - "darling_core", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "dashmap" -version = "5.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" -dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", -] - -[[package]] -name = "dashmap" -version = "6.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" -dependencies = [ - "cfg-if", - "crossbeam-utils", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", - "serde", -] - -[[package]] -name = "data-encoding" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" - -[[package]] -name = "data-encoding-macro" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1559b6cba622276d6d63706db152618eeb15b89b3e4041446b05876e352e639" -dependencies = [ - "data-encoding", - "data-encoding-macro-internal", -] - -[[package]] -name = "data-encoding-macro-internal" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "332d754c0af53bc87c108fed664d121ecf59207ec4196041f04d6ab9002ad33f" -dependencies = [ - "data-encoding", - "syn 1.0.109", -] - -[[package]] -name = "debug-helper" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f578e8e2c440e7297e008bb5486a3a8a194775224bbc23729b0dbdfaeebf162e" - -[[package]] -name = "debugid" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" -dependencies = [ - "uuid", -] - -[[package]] -name = "delay_map" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df941644b671f05f59433e481ba0d31ac10e3667de725236a4c0d587c496fba1" -dependencies = [ - "futures", - "tokio", - "tokio-util", -] - -[[package]] -name = "der" -version = "0.7.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" -dependencies = [ - "const-oid", - "zeroize", -] - -[[package]] -name = "deranged" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" -dependencies = [ - "powerfmt", - "serde", -] - -[[package]] -name = "derivative" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_arbitrary" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "derive_more" -version = "0.99.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "derive_more" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" -dependencies = [ - "derive_more-impl", -] - -[[package]] -name = "derive_more-impl" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" -dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "syn 2.0.87", - "unicode-xid", -] - -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer 0.10.4", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-next" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" -dependencies = [ - "cfg-if", - "dirs-sys-next", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - -[[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - -[[package]] -name = "discv5" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23e6b70634e26c909d1edbb3142b3eaf3b89da0e52f284f00ca7c80d9901ad9e" -dependencies = [ - "aes", - "aes-gcm", - "alloy-rlp", - "arrayvec", - "ctr", - "delay_map", - "enr", - "fnv", - "futures", - "hashlink", - "hex", - "hkdf", - "lazy_static", - "libp2p-identity", - "lru", - "more-asserts", - "multiaddr", - "parking_lot", - "rand 0.8.5", - "smallvec", - "socket2", - "tokio", - "tracing", - "uint 0.10.0", - "zeroize", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "doctest-file" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" - -[[package]] -name = "downcast" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" - -[[package]] -name = "dunce" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" - -[[package]] -name = "dyn-clone" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" - -[[package]] -name = "ecdsa" -version = "0.16.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" -dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature", - "spki", -] - -[[package]] -name = "ed25519" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" -dependencies = [ - "pkcs8", - "signature", -] - -[[package]] -name = "ed25519-dalek" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" -dependencies = [ - "curve25519-dalek", - "ed25519", - "rand_core 0.6.4", - "serde", - "sha2 0.10.8", - "subtle", - "zeroize", -] - -[[package]] -name = "ef-tests" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "rayon", - "reth-chainspec", - "reth-db", - "reth-db-api", - "reth-evm-ethereum", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-stages", - "revm", - "serde", - "serde_json", - "thiserror", - "walkdir", -] - -[[package]] -name = "either" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" - -[[package]] -name = "elliptic-curve" -version = "0.13.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" -dependencies = [ - "base16ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "pkcs8", - "rand_core 0.6.4", - "sec1", - "subtle", - "zeroize", -] - -[[package]] -name = "encode_unicode" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" - -[[package]] -name = "enr" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "972070166c68827e64bd1ebc8159dd8e32d9bc2da7ebe8f20b61308f7974ad30" -dependencies = [ - "alloy-rlp", - "base64 0.21.7", - "bytes", - "ed25519-dalek", - "hex", - "k256", - "log", - "rand 0.8.5", - "secp256k1", - "serde", - "sha3", - "zeroize", -] - -[[package]] -name = "enum-as-inner" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "enumn" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "errno" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "ethereum_serde_utils" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70cbccfccf81d67bff0ab36e591fa536c8a935b078a7b0e58c1d00d418332fc9" -dependencies = [ - "alloy-primitives", - "hex", - "serde", - "serde_derive", - "serde_json", -] - -[[package]] -name = "ethereum_ssz" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfbba28f4f3f32d92c06a64f5bf6c4537b5d4e21f28c689bd2bbaecfea4e0d3e" -dependencies = [ - "alloy-primitives", - "derivative", - "ethereum_serde_utils", - "itertools 0.13.0", - "serde", - "serde_derive", - "smallvec", - "typenum", -] - -[[package]] -name = "ethereum_ssz_derive" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d37845ba7c16bf4be8be4b5786f03a2ba5f2fda0d7f9e7cb2282f69cff420d7" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - -[[package]] -name = "example-beacon-api-sidecar-fetcher" -version = "0.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-beacon", - "clap", - "eyre", - "futures-util", - "reqwest", - "reth", - "reth-node-ethereum", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "example-beacon-api-sse" -version = "0.0.0" -dependencies = [ - "alloy-rpc-types-beacon", - "clap", - "futures-util", - "mev-share-sse", - "reth", - "reth-node-ethereum", - "tokio", - "tracing", -] - -[[package]] -name = "example-bsc-p2p" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "reth-chainspec", - "reth-discv4", - "reth-network", - "reth-network-api", - "reth-network-peers", - "reth-primitives", - "reth-tracing", - "secp256k1", - "serde_json", - "tokio", - "tokio-stream", -] - -[[package]] -name = "example-custom-beacon-withdrawals" -version = "0.0.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-sol-macro 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-sol-types", - "eyre", - "reth", - "reth-chainspec", - "reth-evm", - "reth-evm-ethereum", - "reth-node-ethereum", - "reth-primitives", -] - -[[package]] -name = "example-custom-dev-node" -version = "0.0.0" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "eyre", - "futures-util", - "reth", - "reth-chainspec", - "reth-node-core", - "reth-node-ethereum", - "serde_json", - "tokio", -] - -[[package]] -name = "example-custom-engine-types" -version = "0.0.0" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "alloy-rpc-types", - "eyre", - "reth", - "reth-basic-payload-builder", - "reth-chainspec", - "reth-ethereum-payload-builder", - "reth-node-api", - "reth-node-core", - "reth-node-ethereum", - "reth-payload-builder", - "reth-primitives", - "reth-tracing", - "reth-trie-db", - "serde", - "thiserror", - "tokio", -] - -[[package]] -name = "example-custom-evm" -version = "0.0.0" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "eyre", - "reth", - "reth-chainspec", - "reth-evm-ethereum", - "reth-node-api", - "reth-node-core", - "reth-node-ethereum", - "reth-primitives", - "reth-tracing", - "tokio", -] - -[[package]] -name = "example-custom-inspector" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types", - "clap", - "futures-util", - "reth", - "reth-node-ethereum", -] - -[[package]] -name = "example-custom-node-components" -version = "0.0.0" -dependencies = [ - "eyre", - "reth", - "reth-node-ethereum", - "reth-tracing", - "reth-transaction-pool", -] - -[[package]] -name = "example-custom-payload-builder" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "eyre", - "futures-util", - "reth", - "reth-basic-payload-builder", - "reth-chainspec", - "reth-ethereum-payload-builder", - "reth-node-api", - "reth-node-ethereum", - "reth-payload-builder", - "reth-primitives", - "tracing", -] - -[[package]] -name = "example-custom-rlpx-subprotocol" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "eyre", - "futures", - "rand 0.8.5", - "reth", - "reth-eth-wire", - "reth-network", - "reth-network-api", - "reth-node-ethereum", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "example-db-access" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types", - "eyre", - "reth-chainspec", - "reth-db", - "reth-node-ethereum", - "reth-node-types", - "reth-primitives", - "reth-provider", -] - -[[package]] -name = "example-manual-p2p" -version = "0.0.0" -dependencies = [ - "alloy-consensus", - "eyre", - "futures", - "reth-chainspec", - "reth-discv4", - "reth-ecies", - "reth-eth-wire", - "reth-network", - "reth-network-peers", - "reth-primitives", - "secp256k1", - "tokio", -] - -[[package]] -name = "example-network" -version = "0.0.0" -dependencies = [ - "eyre", - "futures", - "reth-network", - "reth-provider", - "tokio", -] - -[[package]] -name = "example-network-txpool" -version = "0.0.0" -dependencies = [ - "eyre", - "reth-network", - "reth-provider", - "reth-transaction-pool", - "tokio", -] - -[[package]] -name = "example-node-custom-rpc" -version = "0.0.0" -dependencies = [ - "clap", - "jsonrpsee", - "reth", - "reth-node-ethereum", - "reth-transaction-pool", - "tokio", -] - -[[package]] -name = "example-node-event-hooks" -version = "0.0.0" -dependencies = [ - "reth", - "reth-node-ethereum", -] - -[[package]] -name = "example-polygon-p2p" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "reth-chainspec", - "reth-discv4", - "reth-network", - "reth-primitives", - "reth-tracing", - "secp256k1", - "serde_json", - "tokio", - "tokio-stream", -] - -[[package]] -name = "example-rpc-db" -version = "0.0.0" -dependencies = [ - "eyre", - "futures", - "jsonrpsee", - "reth", - "reth-chainspec", - "reth-db", - "reth-node-ethereum", - "reth-provider", - "tokio", -] - -[[package]] -name = "example-stateful-precompile" -version = "0.0.0" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "eyre", - "parking_lot", - "reth", - "reth-chainspec", - "reth-node-api", - "reth-node-core", - "reth-node-ethereum", - "reth-primitives", - "reth-tracing", - "schnellru", - "tokio", -] - -[[package]] -name = "example-txpool-tracing" -version = "0.0.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-trace", - "clap", - "futures-util", - "reth", - "reth-node-ethereum", -] - -[[package]] -name = "eyre" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" -dependencies = [ - "indenter", - "once_cell", -] - -[[package]] -name = "fast-float" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95765f67b4b18863968b4a1bd5bb576f732b29a4a28c7cd84c09fa3e2875f33c" - -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - -[[package]] -name = "fastrand" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" - -[[package]] -name = "fastrlp" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" -dependencies = [ - "arrayvec", - "auto_impl", - "bytes", -] - -[[package]] -name = "fdlimit" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" -dependencies = [ - "libc", - "thiserror", -] - -[[package]] -name = "ff" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] -name = "filetime" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" -dependencies = [ - "cfg-if", - "libc", - "libredox", - "windows-sys 0.59.0", -] - -[[package]] -name = "findshlibs" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40b9e59cd0f7e0806cca4be089683ecb6434e602038df21fe6bf6711b2f07f64" -dependencies = [ - "cc", - "lazy_static", - "libc", - "winapi", -] - -[[package]] -name = "fixed-hash" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" -dependencies = [ - "byteorder", - "rand 0.8.5", - "rustc-hex", - "static_assertions", -] - -[[package]] -name = "flate2" -version = "1.0.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "foldhash" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "fragile" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" - -[[package]] -name = "fsevent-sys" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" -dependencies = [ - "libc", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "futures" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" - -[[package]] -name = "futures-executor" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" - -[[package]] -name = "futures-lite" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" -dependencies = [ - "fastrand 1.9.0", - "futures-core", - "futures-io", - "memchr", - "parking", - "pin-project-lite", - "waker-fn", -] - -[[package]] -name = "futures-macro" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "futures-sink" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" - -[[package]] -name = "futures-task" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" - -[[package]] -name = "futures-timer" -version = "3.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" -dependencies = [ - "gloo-timers", - "send_wrapper 0.4.0", -] - -[[package]] -name = "futures-util" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "futures-utils-wasm" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" - -[[package]] -name = "generator" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbb949699c3e4df3a183b1d2142cb24277057055ed23c68ed58894f76c517223" -dependencies = [ - "cfg-if", - "libc", - "log", - "rustversion", - "windows 0.58.0", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "serde", - "typenum", - "version_check", - "zeroize", -] - -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "wasm-bindgen", -] - -[[package]] -name = "ghash" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" -dependencies = [ - "opaque-debug", - "polyval", -] - -[[package]] -name = "gimli" -version = "0.31.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" - -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - -[[package]] -name = "gloo-net" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06f627b1a58ca3d42b45d6104bf1e1a03799df472df00988b6ba21accc10580" -dependencies = [ - "futures-channel", - "futures-core", - "futures-sink", - "gloo-utils", - "http", - "js-sys", - "pin-project", - "serde", - "serde_json", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "gloo-timers" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" -dependencies = [ - "futures-channel", - "futures-core", - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "gloo-utils" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa" -dependencies = [ - "js-sys", - "serde", - "serde_json", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "h2" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http", - "indexmap 2.6.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "half" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" -dependencies = [ - "cfg-if", - "crunchy", -] - -[[package]] -name = "hash-db" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash", - "allocator-api2", -] - -[[package]] -name = "hashbrown" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" -dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", - "serde", -] - -[[package]] -name = "hashlink" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" -dependencies = [ - "hashbrown 0.14.5", -] - -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "byteorder", - "num-traits", -] - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "hermit-abi" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -dependencies = [ - "serde", -] - -[[package]] -name = "hex-literal" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" - -[[package]] -name = "hkdf" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" -dependencies = [ - "hmac 0.12.1", -] - -[[package]] -name = "hmac" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" -dependencies = [ - "crypto-mac", - "digest 0.9.0", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "hmac-drbg" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" -dependencies = [ - "digest 0.9.0", - "generic-array", - "hmac 0.8.1", -] - -[[package]] -name = "hostname" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" -dependencies = [ - "libc", - "match_cfg", - "winapi", -] - -[[package]] -name = "http" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" -dependencies = [ - "bytes", - "http", -] - -[[package]] -name = "http-body-util" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" -dependencies = [ - "bytes", - "futures-util", - "http", - "http-body", - "pin-project-lite", -] - -[[package]] -name = "http-range-header" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08a397c49fec283e3d6211adbe480be95aae5f304cfb923e9970e08956d5168a" - -[[package]] -name = "http-types" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad" -dependencies = [ - "anyhow", - "async-channel", - "base64 0.13.1", - "futures-lite", - "infer", - "pin-project-lite", - "rand 0.7.3", - "serde", - "serde_json", - "serde_qs", - "serde_urlencoded", - "url", -] - -[[package]] -name = "httparse" -version = "1.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "human_bytes" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91f255a4535024abf7640cb288260811fc14794f62b063652ed349f9a6c2348e" - -[[package]] -name = "humantime" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" - -[[package]] -name = "humantime-serde" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c" -dependencies = [ - "humantime", - "serde", -] - -[[package]] -name = "hyper" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "h2", - "http", - "http-body", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.27.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" -dependencies = [ - "futures-util", - "http", - "hyper", - "hyper-util", - "log", - "rustls", - "rustls-native-certs 0.8.0", - "rustls-pki-types", - "tokio", - "tokio-rustls", - "tower-service", - "webpki-roots", -] - -[[package]] -name = "hyper-util" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http", - "http-body", - "hyper", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", -] - -[[package]] -name = "iai-callgrind" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd871e6374d5ca2d9b48dd23b3c7ef63a4201728621f6d75937dfcc66e91809" -dependencies = [ - "bincode", - "derive_more 0.99.18", - "iai-callgrind-macros", - "iai-callgrind-runner", -] - -[[package]] -name = "iai-callgrind-macros" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "397649417510422ded7033f86132f833cca8c2e5081d0dfbec939b2353da7021" -dependencies = [ - "derive_more 0.99.18", - "proc-macro-error2", - "proc-macro2", - "quote", - "serde", - "serde_json", - "syn 2.0.87", -] - -[[package]] -name = "iai-callgrind-runner" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3783c337f9e931af702b5d5835ff2a6824bf55e416461a4e042dfb4b8fdbbea" -dependencies = [ - "serde", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.61" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core 0.52.0", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "idna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "if-addrs" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a78a89907582615b19f6f0da1af18abf6ff08be259395669b834b057a7ee92d8" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "impl-codec" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" -dependencies = [ - "parity-scale-codec", -] - -[[package]] -name = "impl-trait-for-tuples" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "include_dir" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" -dependencies = [ - "include_dir_macros", -] - -[[package]] -name = "include_dir_macros" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "indenter" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - -[[package]] -name = "indexmap" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" -dependencies = [ - "arbitrary", - "equivalent", - "hashbrown 0.15.0", - "serde", -] - -[[package]] -name = "infer" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac" - -[[package]] -name = "inferno" -version = "0.11.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "232929e1d75fe899576a3d5c7416ad0d88dbfbb3c3d6aa00873a7408a50ddb88" -dependencies = [ - "ahash", - "indexmap 2.6.0", - "is-terminal", - "itoa", - "log", - "num-format", - "once_cell", - "quick-xml", - "rgb", - "str_stack", -] - -[[package]] -name = "inotify" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" -dependencies = [ - "bitflags 1.3.2", - "inotify-sys", - "libc", -] - -[[package]] -name = "inotify-sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" -dependencies = [ - "libc", -] - -[[package]] -name = "inout" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" -dependencies = [ - "block-padding", - "generic-array", -] - -[[package]] -name = "instability" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b23a0c8dfe501baac4adf6ebbfa6eddf8f0c07f56b058cc1288017e32397846c" -dependencies = [ - "quote", - "syn 2.0.87", -] - -[[package]] -name = "instant" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "interprocess" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f4e4a06d42fab3e85ab1b419ad32b09eab58b901d40c57935ff92db3287a13" -dependencies = [ - "doctest-file", - "futures-core", - "libc", - "recvmsg", - "tokio", - "widestring", - "windows-sys 0.52.0", -] - -[[package]] -name = "intrusive-collections" -version = "0.9.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "189d0897e4cbe8c75efedf3502c18c887b05046e59d28404d4d8e46cbc4d1e86" -dependencies = [ - "memoffset", -] - -[[package]] -name = "ipconfig" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" -dependencies = [ - "socket2", - "widestring", - "windows-sys 0.48.0", - "winreg", -] - -[[package]] -name = "ipnet" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" - -[[package]] -name = "iri-string" -version = "0.7.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc0f0a572e8ffe56e2ff4f769f32ffe919282c3916799f8b68688b6030063bea" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "is-terminal" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" -dependencies = [ - "hermit-abi 0.4.0", - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "is_terminal_polyfill" -version = "1.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" - -[[package]] -name = "jni" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" -dependencies = [ - "cesu8", - "combine", - "jni-sys", - "log", - "thiserror", - "walkdir", -] - -[[package]] -name = "jni-sys" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" - -[[package]] -name = "jobserver" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" -dependencies = [ - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.72" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "jsonrpsee" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-http-client", - "jsonrpsee-proc-macros", - "jsonrpsee-server", - "jsonrpsee-types", - "jsonrpsee-wasm-client", - "jsonrpsee-ws-client", - "tokio", - "tracing", -] - -[[package]] -name = "jsonrpsee-client-transport" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "548125b159ba1314104f5bb5f38519e03a41862786aa3925cf349aae9cdd546e" -dependencies = [ - "base64 0.22.1", - "futures-channel", - "futures-util", - "gloo-net", - "http", - "jsonrpsee-core", - "pin-project", - "rustls", - "rustls-pki-types", - "rustls-platform-verifier", - "soketto", - "thiserror", - "tokio", - "tokio-rustls", - "tokio-util", - "tracing", - "url", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280" -dependencies = [ - "async-trait", - "bytes", - "futures-timer", - "futures-util", - "http", - "http-body", - "http-body-util", - "jsonrpsee-types", - "parking_lot", - "pin-project", - "rand 0.8.5", - "rustc-hash 2.0.0", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-stream", - "tracing", - "wasm-bindgen-futures", -] - -[[package]] -name = "jsonrpsee-http-client" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3638bc4617f96675973253b3a45006933bde93c2fd8a6170b33c777cc389e5b" -dependencies = [ - "async-trait", - "base64 0.22.1", - "http-body", - "hyper", - "hyper-rustls", - "hyper-util", - "jsonrpsee-core", - "jsonrpsee-types", - "rustls", - "rustls-platform-verifier", - "serde", - "serde_json", - "thiserror", - "tokio", - "tower 0.4.13", - "tracing", - "url", -] - -[[package]] -name = "jsonrpsee-proc-macros" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d" -dependencies = [ - "heck", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "jsonrpsee-server" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c" -dependencies = [ - "futures-util", - "http", - "http-body", - "http-body-util", - "hyper", - "hyper-util", - "jsonrpsee-core", - "jsonrpsee-types", - "pin-project", - "route-recognizer", - "serde", - "serde_json", - "soketto", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tower 0.4.13", - "tracing", -] - -[[package]] -name = "jsonrpsee-types" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1" -dependencies = [ - "http", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "jsonrpsee-wasm-client" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a01cd500915d24ab28ca17527e23901ef1be6d659a2322451e1045532516c25" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", -] - -[[package]] -name = "jsonrpsee-ws-client" -version = "0.24.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fe322e0896d0955a3ebdd5bf813571c53fea29edd713bc315b76620b327e86d" -dependencies = [ - "http", - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", - "url", -] - -[[package]] -name = "jsonwebtoken" -version = "9.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" -dependencies = [ - "base64 0.21.7", - "js-sys", - "pem", - "ring", - "serde", - "serde_json", - "simple_asn1", -] - -[[package]] -name = "k256" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" -dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "once_cell", - "sha2 0.10.8", - "signature", -] - -[[package]] -name = "keccak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", -] - -[[package]] -name = "keccak-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" -dependencies = [ - "digest 0.10.7", - "sha3-asm", -] - -[[package]] -name = "konst" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330f0e13e6483b8c34885f7e6c9f19b1a7bd449c673fbb948a51c99d66ef74f4" -dependencies = [ - "konst_macro_rules", -] - -[[package]] -name = "konst_macro_rules" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" - -[[package]] -name = "kqueue" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" -dependencies = [ - "kqueue-sys", - "libc", -] - -[[package]] -name = "kqueue-sys" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" -dependencies = [ - "bitflags 1.3.2", - "libc", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -dependencies = [ - "spin", -] - -[[package]] -name = "libc" -version = "0.2.161" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" - -[[package]] -name = "libloading" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" -dependencies = [ - "cfg-if", - "windows-targets 0.52.6", -] - -[[package]] -name = "libm" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" - -[[package]] -name = "libp2p-identity" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cca1eb2bc1fd29f099f3daaab7effd01e1a54b7c577d0ed082521034d912e8" -dependencies = [ - "asn1_der", - "bs58", - "ed25519-dalek", - "hkdf", - "libsecp256k1", - "multihash", - "quick-protobuf", - "sha2 0.10.8", - "thiserror", - "tracing", - "zeroize", -] - -[[package]] -name = "libproc" -version = "0.14.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78a09b56be5adbcad5aa1197371688dc6bb249a26da3bca2011ee2fb987ebfb" -dependencies = [ - "bindgen", - "errno", - "libc", -] - -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.6.0", - "libc", - "redox_syscall", -] - -[[package]] -name = "libsecp256k1" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" -dependencies = [ - "arrayref", - "base64 0.13.1", - "digest 0.9.0", - "hmac-drbg", - "libsecp256k1-core", - "libsecp256k1-gen-ecmult", - "libsecp256k1-gen-genmult", - "rand 0.8.5", - "serde", - "sha2 0.9.9", - "typenum", -] - -[[package]] -name = "libsecp256k1-core" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" -dependencies = [ - "crunchy", - "digest 0.9.0", - "subtle", -] - -[[package]] -name = "libsecp256k1-gen-ecmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" -dependencies = [ - "libsecp256k1-core", -] - -[[package]] -name = "libsecp256k1-gen-genmult" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" -dependencies = [ - "libsecp256k1-core", -] - -[[package]] -name = "linked-hash-map" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" - -[[package]] -name = "linked_hash_set" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588" -dependencies = [ - "linked-hash-map", - "serde", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" - -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", - "serde", -] - -[[package]] -name = "log" -version = "0.4.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" - -[[package]] -name = "loom" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" -dependencies = [ - "cfg-if", - "generator", - "scoped-tls", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "lru" -version = "0.12.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" -dependencies = [ - "hashbrown 0.15.0", -] - -[[package]] -name = "lru-cache" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" -dependencies = [ - "linked-hash-map", -] - -[[package]] -name = "lz4_flex" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" - -[[package]] -name = "mach2" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" -dependencies = [ - "libc", -] - -[[package]] -name = "match_cfg" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" - -[[package]] -name = "matchers" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" -dependencies = [ - "regex-automata 0.1.10", -] - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "memmap2" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" -dependencies = [ - "libc", -] - -[[package]] -name = "memoffset" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" -dependencies = [ - "autocfg", -] - -[[package]] -name = "metrics" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae428771d17306715c5091d446327d1cfdedc82185c65ba8423ab404e45bf10" -dependencies = [ - "ahash", - "portable-atomic", -] - -[[package]] -name = "metrics-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.87", -] - -[[package]] -name = "metrics-exporter-prometheus" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b6f8152da6d7892ff1b7a1c0fa3f435e92b5918ad67035c3bb432111d9a29b" -dependencies = [ - "base64 0.22.1", - "indexmap 2.6.0", - "metrics", - "metrics-util", - "quanta", - "thiserror", -] - -[[package]] -name = "metrics-process" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ca8ecd85575fbb143b2678cb123bb818779391ec0f745b1c4a9dbabadde407" -dependencies = [ - "libc", - "libproc", - "mach2", - "metrics", - "once_cell", - "procfs 0.17.0", - "rlimit", - "windows 0.58.0", -] - -[[package]] -name = "metrics-util" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b482df36c13dd1869d73d14d28cd4855fbd6cfc32294bee109908a9f4a4ed7" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", - "hashbrown 0.15.0", - "metrics", - "quanta", - "sketches-ddsketch", -] - -[[package]] -name = "mev-share-sse" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc8342aaf4a3c2a1b2612bdf5cd1aa423918e0f1a0d9242aaeefbffd49457cad" -dependencies = [ - "alloy-primitives", - "async-sse", - "bytes", - "futures-util", - "http-types", - "pin-project-lite", - "reqwest", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "mime_guess" -version = "2.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" -dependencies = [ - "mime", - "unicase", -] - -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - -[[package]] -name = "miniz_oxide" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" -dependencies = [ - "adler2", -] - -[[package]] -name = "mio" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" -dependencies = [ - "libc", - "log", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.48.0", -] - -[[package]] -name = "mio" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" -dependencies = [ - "hermit-abi 0.3.9", - "libc", - "log", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", -] - -[[package]] -name = "mockall" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c28b3fb6d753d28c20e826cd46ee611fda1cf3cde03a443a974043247c065a" -dependencies = [ - "cfg-if", - "downcast", - "fragile", - "mockall_derive", - "predicates", - "predicates-tree", -] - -[[package]] -name = "mockall_derive" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "341014e7f530314e9a1fdbc7400b244efea7122662c96bfa248c31da5bfb2020" -dependencies = [ - "cfg-if", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "modular-bitfield" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" -dependencies = [ - "modular-bitfield-impl", - "static_assertions", -] - -[[package]] -name = "modular-bitfield-impl" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "more-asserts" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fafa6961cabd9c63bcd77a45d7e3b7f3b552b70417831fb0f56db717e72407e" - -[[package]] -name = "multiaddr" -version = "0.18.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe6351f60b488e04c1d21bc69e56b89cb3f5e8f5d22557d6e8031bdfd79b6961" -dependencies = [ - "arrayref", - "byteorder", - "data-encoding", - "libp2p-identity", - "multibase", - "multihash", - "percent-encoding", - "serde", - "static_assertions", - "unsigned-varint", - "url", -] - -[[package]] -name = "multibase" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404" -dependencies = [ - "base-x", - "data-encoding", - "data-encoding-macro", -] - -[[package]] -name = "multihash" -version = "0.19.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc41f430805af9d1cf4adae4ed2149c759b877b01d909a1f40256188d09345d2" -dependencies = [ - "core2", - "unsigned-varint", -] - -[[package]] -name = "nix" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", -] - -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - -[[package]] -name = "notify" -version = "6.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" -dependencies = [ - "bitflags 2.6.0", - "filetime", - "fsevent-sys", - "inotify", - "kqueue", - "libc", - "log", - "mio 0.8.11", - "serde", - "walkdir", - "windows-sys 0.48.0", -] - -[[package]] -name = "ntapi" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" -dependencies = [ - "winapi", -] - -[[package]] -name = "nu-ansi-term" -version = "0.46.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" -dependencies = [ - "overload", - "winapi", -] - -[[package]] -name = "num" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" -dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" -dependencies = [ - "num-integer", - "num-traits", - "serde", -] - -[[package]] -name = "num-complex" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - -[[package]] -name = "num-format" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" -dependencies = [ - "arrayvec", - "itoa", -] - -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" -dependencies = [ - "num-bigint", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "num_threads" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" -dependencies = [ - "libc", -] - -[[package]] -name = "nybbles" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" -dependencies = [ - "alloy-rlp", - "arbitrary", - "const-hex", - "proptest", - "serde", - "smallvec", -] - -[[package]] -name = "object" -version = "0.36.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" -dependencies = [ - "memchr", -] - -[[package]] -name = "once_cell" -version = "1.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" -dependencies = [ - "critical-section", - "portable-atomic", -] - -[[package]] -name = "oorandom" -version = "11.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" - -[[package]] -name = "op-alloy-consensus" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "arbitrary", - "derive_more 1.0.0", - "serde", - "serde_with", - "spin", -] - -[[package]] -name = "op-alloy-genesis" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_repr", -] - -[[package]] -name = "op-alloy-network" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-rpc-types-eth", - "op-alloy-consensus", - "op-alloy-rpc-types", -] - -[[package]] -name = "op-alloy-protocol" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "async-trait", - "derive_more 1.0.0", - "op-alloy-consensus", - "op-alloy-genesis", - "serde", - "tracing", - "unsigned-varint", -] - -[[package]] -name = "op-alloy-rpc-types" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network-primitives", - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "arbitrary", - "op-alloy-consensus", - "serde", - "serde_json", -] - -[[package]] -name = "op-alloy-rpc-types-engine" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=f8896d1#f8896d1b1c55d09b57389e8994e4ca81b34e41a9" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine", - "alloy-serde", - "derive_more 1.0.0", - "ethereum_ssz", - "op-alloy-protocol", - "serde", - "snap", -] - -[[package]] -name = "op-reth" -version = "1.1.0" -dependencies = [ - "clap", - "reth-cli-util", - "reth-node-builder", - "reth-optimism-chainspec", - "reth-optimism-cli", - "reth-optimism-consensus", - "reth-optimism-evm", - "reth-optimism-forks", - "reth-optimism-node", - "reth-optimism-payload-builder", - "reth-optimism-primitives", - "reth-optimism-rpc", - "reth-provider", - "tracing", -] - -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.8", -] - -[[package]] -name = "page_size" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "parity-scale-codec" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" -dependencies = [ - "arbitrary", - "arrayvec", - "bitvec", - "byte-slice-cast", - "bytes", - "impl-trait-for-tuples", - "parity-scale-codec-derive", - "serde", -] - -[[package]] -name = "parity-scale-codec-derive" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "parking" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" - -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pbkdf2" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" -dependencies = [ - "digest 0.10.7", - "hmac 0.12.1", -] - -[[package]] -name = "pem" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" -dependencies = [ - "base64 0.22.1", - "serde", -] - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "pest" -version = "2.7.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" -dependencies = [ - "memchr", - "thiserror", - "ucd-trie", -] - -[[package]] -name = "pharos" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" -dependencies = [ - "futures", - "rustc_version 0.4.1", -] - -[[package]] -name = "phf" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" -dependencies = [ - "phf_macros", - "phf_shared", -] - -[[package]] -name = "phf_generator" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" -dependencies = [ - "phf_shared", - "rand 0.8.5", -] - -[[package]] -name = "phf_macros" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" -dependencies = [ - "phf_generator", - "phf_shared", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "phf_shared" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" -dependencies = [ - "siphasher", -] - -[[package]] -name = "pin-project" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "pkg-config" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" - -[[package]] -name = "plain_hasher" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e19e6491bdde87c2c43d70f4c194bc8a758f2eb732df00f61e43f7362e3b4cc" -dependencies = [ - "crunchy", -] - -[[package]] -name = "plotters" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" -dependencies = [ - "num-traits", - "plotters-backend", - "plotters-svg", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "plotters-backend" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" - -[[package]] -name = "plotters-svg" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" -dependencies = [ - "plotters-backend", -] - -[[package]] -name = "pollster" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2" - -[[package]] -name = "polyval" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" -dependencies = [ - "cfg-if", - "cpufeatures", - "opaque-debug", - "universal-hash", -] - -[[package]] -name = "portable-atomic" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" - -[[package]] -name = "powerfmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" - -[[package]] -name = "pprof" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef5c97c51bd34c7e742402e216abdeb44d415fbe6ae41d56b114723e953711cb" -dependencies = [ - "backtrace", - "cfg-if", - "criterion", - "findshlibs", - "inferno", - "libc", - "log", - "nix", - "once_cell", - "parking_lot", - "smallvec", - "symbolic-demangle", - "tempfile", - "thiserror", -] - -[[package]] -name = "ppv-lite86" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "predicates" -version = "3.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" -dependencies = [ - "anstyle", - "predicates-core", -] - -[[package]] -name = "predicates-core" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" - -[[package]] -name = "predicates-tree" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" -dependencies = [ - "predicates-core", - "termtree", -] - -[[package]] -name = "pretty_assertions" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" -dependencies = [ - "diff", - "yansi", -] - -[[package]] -name = "prettyplease" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" -dependencies = [ - "proc-macro2", - "syn 2.0.87", -] - -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - -[[package]] -name = "primitive-types" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" -dependencies = [ - "fixed-hash", - "impl-codec", - "uint 0.9.5", -] - -[[package]] -name = "proc-macro-crate" -version = "3.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" -dependencies = [ - "toml_edit", -] - -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "proc-macro2" -version = "1.0.89" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "procfs" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" -dependencies = [ - "bitflags 2.6.0", - "chrono", - "flate2", - "hex", - "lazy_static", - "procfs-core 0.16.0", - "rustix", -] - -[[package]] -name = "procfs" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc5b72d8145275d844d4b5f6d4e1eef00c8cd889edb6035c21675d1bb1f45c9f" -dependencies = [ - "bitflags 2.6.0", - "hex", - "procfs-core 0.17.0", - "rustix", -] - -[[package]] -name = "procfs-core" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" -dependencies = [ - "bitflags 2.6.0", - "chrono", - "hex", -] - -[[package]] -name = "procfs-core" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239df02d8349b06fc07398a3a1697b06418223b1c7725085e801e7c0fc6a12ec" -dependencies = [ - "bitflags 2.6.0", - "hex", -] - -[[package]] -name = "proptest" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" -dependencies = [ - "bit-set", - "bit-vec", - "bitflags 2.6.0", - "lazy_static", - "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", - "rand_xorshift", - "regex-syntax 0.8.5", - "rusty-fork", - "tempfile", - "unarray", -] - -[[package]] -name = "proptest-arbitrary-interop" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1981e49bd2432249da8b0e11e5557099a8e74690d6b94e721f7dc0bb7f3555f" -dependencies = [ - "arbitrary", - "proptest", -] - -[[package]] -name = "proptest-derive" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff7ff745a347b87471d859a377a9a404361e7efc2a971d73424a6d183c0fc77" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "quanta" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" -dependencies = [ - "crossbeam-utils", - "libc", - "once_cell", - "raw-cpuid", - "wasi 0.11.0+wasi-snapshot-preview1", - "web-sys", - "winapi", -] - -[[package]] -name = "quick-error" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" - -[[package]] -name = "quick-protobuf" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d6da84cc204722a989e01ba2f6e1e276e190f22263d0cb6ce8526fcdb0d2e1f" -dependencies = [ - "byteorder", -] - -[[package]] -name = "quick-xml" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd" -dependencies = [ - "memchr", -] - -[[package]] -name = "quinn" -version = "0.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" -dependencies = [ - "bytes", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash 2.0.0", - "rustls", - "socket2", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "quinn-proto" -version = "0.11.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" -dependencies = [ - "bytes", - "rand 0.8.5", - "ring", - "rustc-hash 2.0.0", - "rustls", - "slab", - "thiserror", - "tinyvec", - "tracing", -] - -[[package]] -name = "quinn-udp" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e346e016eacfff12233c243718197ca12f148c84e1e84268a896699b41c71780" -dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.59.0", -] - -[[package]] -name = "quote" -version = "1.0.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", - "serde", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom 0.2.15", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", -] - -[[package]] -name = "rand_xorshift" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" -dependencies = [ - "rand_core 0.6.4", -] - -[[package]] -name = "ratatui" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdef7f9be5c0122f890d58bdf4d964349ba6a6161f705907526d891efabba57d" -dependencies = [ - "bitflags 2.6.0", - "cassowary", - "compact_str", - "crossterm 0.28.1", - "instability", - "itertools 0.13.0", - "lru", - "paste", - "strum", - "strum_macros", - "unicode-segmentation", - "unicode-truncate", - "unicode-width", -] - -[[package]] -name = "raw-cpuid" -version = "11.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0" -dependencies = [ - "bitflags 2.6.0", -] - -[[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "recvmsg" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" - -[[package]] -name = "redox_syscall" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" -dependencies = [ - "bitflags 2.6.0", -] - -[[package]] -name = "redox_users" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" -dependencies = [ - "getrandom 0.2.15", - "libredox", - "thiserror", -] - -[[package]] -name = "regex" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata 0.4.8", - "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", -] - -[[package]] -name = "regex-automata" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax 0.8.5", -] - -[[package]] -name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - -[[package]] -name = "regex-syntax" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" - -[[package]] -name = "regress" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1541daf4e4ed43a0922b7969bdc2170178bcacc5dabf7e39bc508a9fa3953a7a" -dependencies = [ - "hashbrown 0.14.5", - "memchr", -] - -[[package]] -name = "reqwest" -version = "0.12.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-core", - "futures-util", - "http", - "http-body", - "http-body-util", - "hyper", - "hyper-rustls", - "hyper-util", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls", - "rustls-native-certs 0.8.0", - "rustls-pemfile", - "rustls-pki-types", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 1.0.1", - "tokio", - "tokio-rustls", - "tokio-util", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm-streams", - "web-sys", - "webpki-roots", - "windows-registry", -] - -[[package]] -name = "resolv-conf" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" -dependencies = [ - "hostname", - "quick-error", -] - -[[package]] -name = "reth" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types", - "aquamarine", - "backon", - "clap", - "eyre", - "futures", - "reth-basic-payload-builder", - "reth-beacon-consensus", - "reth-blockchain-tree", - "reth-chainspec", - "reth-cli", - "reth-cli-commands", - "reth-cli-runner", - "reth-cli-util", - "reth-config", - "reth-consensus", - "reth-consensus-common", - "reth-db", - "reth-db-api", - "reth-downloaders", - "reth-engine-util", - "reth-errors", - "reth-ethereum-cli", - "reth-ethereum-payload-builder", - "reth-evm", - "reth-execution-types", - "reth-exex", - "reth-fs-util", - "reth-network", - "reth-network-api", - "reth-network-p2p", - "reth-node-api", - "reth-node-builder", - "reth-node-core", - "reth-node-ethereum", - "reth-node-events", - "reth-node-metrics", - "reth-payload-builder", - "reth-payload-primitives", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-revm", - "reth-rpc", - "reth-rpc-api", - "reth-rpc-builder", - "reth-rpc-eth-types", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-stages", - "reth-static-file", - "reth-tasks", - "reth-tracing", - "reth-transaction-pool", - "reth-trie", - "reth-trie-db", - "serde_json", - "similar-asserts", - "tempfile", - "tokio", - "tracing", -] - -[[package]] -name = "reth-auto-seal-consensus" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "futures-util", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-engine-primitives", - "reth-evm", - "reth-execution-errors", - "reth-execution-types", - "reth-network-p2p", - "reth-network-peers", - "reth-optimism-consensus", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-stages-api", - "reth-tokio-util", - "reth-transaction-pool", - "reth-trie", - "revm-primitives", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-basic-payload-builder" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "futures-core", - "futures-util", - "metrics", - "reth-chainspec", - "reth-evm", - "reth-metrics", - "reth-payload-builder", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-tasks", - "reth-transaction-pool", - "revm", - "tokio", - "tracing", -] - -[[package]] -name = "reth-beacon-consensus" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rpc-types-engine", - "assert_matches", - "futures", - "itertools 0.13.0", - "metrics", - "reth-blockchain-tree", - "reth-blockchain-tree-api", - "reth-chainspec", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-downloaders", - "reth-engine-primitives", - "reth-errors", - "reth-ethereum-consensus", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-evm-ethereum", - "reth-exex-types", - "reth-metrics", - "reth-network-p2p", - "reth-node-types", - "reth-payload-builder", - "reth-payload-primitives", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-prune-types", - "reth-rpc-types-compat", - "reth-stages", - "reth-stages-api", - "reth-static-file", - "reth-tasks", - "reth-testing-utils", - "reth-tokio-util", - "reth-tracing", - "schnellru", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-bench" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-json-rpc", - "alloy-primitives", - "alloy-provider", - "alloy-pubsub", - "alloy-rpc-client", - "alloy-rpc-types-engine", - "alloy-transport", - "alloy-transport-http", - "alloy-transport-ipc", - "alloy-transport-ws", - "async-trait", - "clap", - "csv", - "eyre", - "futures", - "reqwest", - "reth-cli-runner", - "reth-cli-util", - "reth-node-api", - "reth-node-core", - "reth-primitives", - "reth-rpc-types-compat", - "reth-tracing", - "serde", - "thiserror", - "tokio", - "tower 0.4.13", - "tracing", -] - -[[package]] -name = "reth-blockchain-tree" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "aquamarine", - "assert_matches", - "linked_hash_set", - "metrics", - "parking_lot", - "reth-blockchain-tree-api", - "reth-chainspec", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-evm", - "reth-evm-ethereum", - "reth-execution-errors", - "reth-execution-types", - "reth-metrics", - "reth-network", - "reth-node-types", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-stages-api", - "reth-storage-errors", - "reth-testing-utils", - "reth-trie", - "reth-trie-db", - "reth-trie-parallel", - "tokio", - "tracing", -] - -[[package]] -name = "reth-blockchain-tree-api" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "reth-consensus", - "reth-execution-errors", - "reth-primitives", - "reth-storage-errors", - "thiserror", -] - -[[package]] -name = "reth-chain-state" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-signer", - "alloy-signer-local", - "auto_impl", - "derive_more 1.0.0", - "metrics", - "parking_lot", - "pin-project", - "rand 0.8.5", - "reth-chainspec", - "reth-errors", - "reth-execution-types", - "reth-metrics", - "reth-primitives", - "reth-storage-api", - "reth-testing-utils", - "reth-trie", - "revm", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-chainspec" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "alloy-trie", - "auto_impl", - "derive_more 1.0.0", - "once_cell", - "reth-ethereum-forks", - "reth-network-peers", - "reth-primitives-traits", - "reth-trie-common", - "serde_json", -] - -[[package]] -name = "reth-cli" -version = "1.1.0" -dependencies = [ - "alloy-genesis", - "clap", - "eyre", - "reth-cli-runner", - "reth-db", - "serde_json", - "shellexpand", -] - -[[package]] -name = "reth-cli-commands" -version = "1.1.0" -dependencies = [ - "ahash", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "backon", - "clap", - "comfy-table", - "crossterm 0.28.1", - "eyre", - "fdlimit", - "futures", - "human_bytes", - "itertools 0.13.0", - "proptest", - "proptest-arbitrary-interop", - "ratatui", - "reth-beacon-consensus", - "reth-chainspec", - "reth-cli", - "reth-cli-runner", - "reth-cli-util", - "reth-codecs", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-db-common", - "reth-discv4", - "reth-downloaders", - "reth-ecies", - "reth-eth-wire", - "reth-ethereum-cli", - "reth-evm", - "reth-exex", - "reth-fs-util", - "reth-network", - "reth-network-p2p", - "reth-network-peers", - "reth-node-builder", - "reth-node-core", - "reth-node-events", - "reth-node-metrics", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-prune-types", - "reth-stages", - "reth-stages-types", - "reth-static-file", - "reth-static-file-types", - "reth-trie", - "reth-trie-common", - "reth-trie-db", - "secp256k1", - "serde", - "serde_json", - "tokio", - "toml", - "tracing", -] - -[[package]] -name = "reth-cli-runner" -version = "1.1.0" -dependencies = [ - "reth-tasks", - "tokio", - "tracing", -] - -[[package]] -name = "reth-cli-util" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "cfg-if", - "eyre", - "libc", - "rand 0.8.5", - "reth-fs-util", - "secp256k1", - "serde", - "thiserror", - "tikv-jemallocator", - "tracy-client", -] - -[[package]] -name = "reth-codecs" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-trie", - "arbitrary", - "bytes", - "modular-bitfield", - "op-alloy-consensus", - "proptest", - "proptest-arbitrary-interop", - "reth-codecs-derive", - "serde", - "serde_json", - "test-fuzz", - "visibility", -] - -[[package]] -name = "reth-codecs-derive" -version = "1.1.0" -dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "similar-asserts", - "syn 2.0.87", -] - -[[package]] -name = "reth-config" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "eyre", - "humantime-serde", - "reth-network-peers", - "reth-network-types", - "reth-prune-types", - "reth-stages-types", - "serde", - "tempfile", - "toml", -] - -[[package]] -name = "reth-consensus" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "auto_impl", - "derive_more 1.0.0", - "reth-primitives", -] - -[[package]] -name = "reth-consensus-common" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "mockall", - "rand 0.8.5", - "reth-chainspec", - "reth-consensus", - "reth-primitives", - "reth-storage-api", - "revm-primitives", -] - -[[package]] -name = "reth-consensus-debug-client" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-provider", - "alloy-rpc-types", - "alloy-rpc-types-engine", - "auto_impl", - "eyre", - "futures", - "reqwest", - "reth-node-api", - "reth-rpc-api", - "reth-rpc-builder", - "reth-tracing", - "ringbuffer", - "serde", - "tokio", -] - -[[package]] -name = "reth-db" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "arbitrary", - "assert_matches", - "bytes", - "criterion", - "derive_more 1.0.0", - "eyre", - "iai-callgrind", - "metrics", - "page_size", - "parking_lot", - "paste", - "pprof", - "proptest", - "reth-db-api", - "reth-fs-util", - "reth-libmdbx", - "reth-metrics", - "reth-nippy-jar", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-tracing", - "reth-trie-common", - "rustc-hash 2.0.0", - "serde", - "serde_json", - "strum", - "sysinfo", - "tempfile", - "test-fuzz", - "thiserror", -] - -[[package]] -name = "reth-db-api" -version = "1.1.0" -dependencies = [ - "alloy-genesis", - "alloy-primitives", - "arbitrary", - "bytes", - "derive_more 1.0.0", - "metrics", - "modular-bitfield", - "parity-scale-codec", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-codecs", - "reth-db-models", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-trie-common", - "serde", - "test-fuzz", -] - -[[package]] -name = "reth-db-common" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-genesis", - "alloy-primitives", - "boyer-moore-magiclen", - "eyre", - "reth-chainspec", - "reth-codecs", - "reth-config", - "reth-db", - "reth-db-api", - "reth-etl", - "reth-fs-util", - "reth-node-types", - "reth-primitives", - "reth-primitives-traits", - "reth-provider", - "reth-stages-types", - "reth-trie", - "reth-trie-db", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "reth-db-models" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "arbitrary", - "bytes", - "modular-bitfield", - "proptest", - "proptest-arbitrary-interop", - "reth-codecs", - "reth-primitives-traits", - "serde", - "test-fuzz", -] - -[[package]] -name = "reth-discv4" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "assert_matches", - "discv5", - "enr", - "generic-array", - "itertools 0.13.0", - "parking_lot", - "rand 0.8.5", - "reth-ethereum-forks", - "reth-net-banlist", - "reth-net-nat", - "reth-network-peers", - "reth-tracing", - "schnellru", - "secp256k1", - "serde", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-discv5" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "discv5", - "enr", - "futures", - "itertools 0.13.0", - "metrics", - "rand 0.8.5", - "reth-chainspec", - "reth-ethereum-forks", - "reth-metrics", - "reth-network-peers", - "reth-tracing", - "secp256k1", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-dns-discovery" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-primitives", - "alloy-rlp", - "data-encoding", - "enr", - "linked_hash_set", - "parking_lot", - "rand 0.8.5", - "reth-chainspec", - "reth-ethereum-forks", - "reth-network-peers", - "reth-tokio-util", - "reth-tracing", - "schnellru", - "secp256k1", - "serde", - "serde_with", - "thiserror", - "tokio", - "tokio-stream", - "tracing", - "trust-dns-resolver", -] - -[[package]] -name = "reth-downloaders" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "assert_matches", - "futures", - "futures-util", - "itertools 0.13.0", - "metrics", - "pin-project", - "rand 0.8.5", - "rayon", - "reth-chainspec", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-metrics", - "reth-network-p2p", - "reth-network-peers", - "reth-primitives", - "reth-provider", - "reth-storage-api", - "reth-tasks", - "reth-testing-utils", - "reth-tracing", - "tempfile", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", -] - -[[package]] -name = "reth-e2e-test-utils" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network", - "alloy-primitives", - "alloy-rpc-types", - "alloy-signer", - "alloy-signer-local", - "derive_more 1.0.0", - "eyre", - "futures-util", - "jsonrpsee", - "op-alloy-rpc-types-engine", - "reth", - "reth-chainspec", - "reth-db", - "reth-engine-local", - "reth-network-peers", - "reth-node-builder", - "reth-payload-builder", - "reth-payload-primitives", - "reth-provider", - "reth-rpc-layer", - "reth-stages-types", - "reth-tokio-util", - "reth-tracing", - "serde_json", - "tokio", - "tokio-stream", - "tracing", - "url", -] - -[[package]] -name = "reth-ecies" -version = "1.1.0" -dependencies = [ - "aes", - "alloy-primitives", - "alloy-rlp", - "block-padding", - "byteorder", - "cipher", - "concat-kdf", - "ctr", - "digest 0.10.7", - "futures", - "generic-array", - "hmac 0.12.1", - "pin-project", - "rand 0.8.5", - "reth-network-peers", - "secp256k1", - "sha2 0.10.8", - "sha3", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", - "typenum", -] - -[[package]] -name = "reth-engine-local" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine", - "eyre", - "futures-util", - "op-alloy-rpc-types-engine", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-engine-primitives", - "reth-engine-service", - "reth-engine-tree", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-payload-builder", - "reth-payload-primitives", - "reth-payload-validator", - "reth-provider", - "reth-prune", - "reth-rpc-types-compat", - "reth-stages-api", - "reth-transaction-pool", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-engine-primitives" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "reth-execution-types", - "reth-payload-primitives", - "reth-primitives", - "reth-trie", - "serde", -] - -[[package]] -name = "reth-engine-service" -version = "1.1.0" -dependencies = [ - "futures", - "pin-project", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-engine-tree", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-evm-ethereum", - "reth-exex-types", - "reth-network-p2p", - "reth-node-types", - "reth-payload-builder", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-stages-api", - "reth-tasks", - "thiserror", - "tokio", - "tokio-stream", -] - -[[package]] -name = "reth-engine-tree" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-engine", - "assert_matches", - "futures", - "metrics", - "reth-beacon-consensus", - "reth-blockchain-tree", - "reth-blockchain-tree-api", - "reth-chain-state", - "reth-chainspec", - "reth-consensus", - "reth-db", - "reth-engine-primitives", - "reth-errors", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-exex-types", - "reth-metrics", - "reth-network-p2p", - "reth-payload-builder", - "reth-payload-primitives", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-prune-types", - "reth-revm", - "reth-rpc-types-compat", - "reth-stages", - "reth-stages-api", - "reth-static-file", - "reth-tasks", - "reth-tracing", - "reth-trie", - "reth-trie-parallel", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-engine-util" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "eyre", - "futures", - "itertools 0.13.0", - "pin-project", - "reth-beacon-consensus", - "reth-engine-primitives", - "reth-errors", - "reth-ethereum-forks", - "reth-evm", - "reth-fs-util", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc-types-compat", - "reth-trie", - "revm-primitives", - "serde", - "serde_json", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "reth-errors" -version = "1.1.0" -dependencies = [ - "reth-blockchain-tree-api", - "reth-consensus", - "reth-execution-errors", - "reth-fs-util", - "reth-storage-errors", - "thiserror", -] - -[[package]] -name = "reth-eth-wire" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "async-stream", - "bytes", - "derive_more 1.0.0", - "futures", - "pin-project", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-chainspec", - "reth-codecs", - "reth-ecies", - "reth-eth-wire-types", - "reth-metrics", - "reth-network-peers", - "reth-primitives", - "reth-tracing", - "secp256k1", - "serde", - "snap", - "test-fuzz", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", -] - -[[package]] -name = "reth-eth-wire-types" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "bytes", - "derive_more 1.0.0", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-chainspec", - "reth-codecs-derive", - "reth-primitives", - "serde", - "thiserror", -] - -[[package]] -name = "reth-ethereum-cli" -version = "1.1.0" -dependencies = [ - "clap", - "eyre", - "reth-chainspec", - "reth-cli", - "reth-cli-commands", -] - -[[package]] -name = "reth-ethereum-consensus" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-primitives", - "tracing", -] - -[[package]] -name = "reth-ethereum-engine-primitives" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-engine", - "reth-chain-state", - "reth-chainspec", - "reth-engine-primitives", - "reth-payload-primitives", - "reth-primitives", - "reth-rpc-types-compat", - "serde", - "serde_json", - "sha2 0.10.8", -] - -[[package]] -name = "reth-ethereum-forks" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "auto_impl", - "crc", - "dyn-clone", - "once_cell", - "proptest", - "proptest-derive", - "rustc-hash 2.0.0", - "serde", - "thiserror-no-std", -] - -[[package]] -name = "reth-ethereum-payload-builder" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-basic-payload-builder", - "reth-chain-state", - "reth-chainspec", - "reth-errors", - "reth-evm", - "reth-evm-ethereum", - "reth-execution-types", - "reth-payload-builder", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-transaction-pool", - "reth-trie", - "revm", - "revm-primitives", - "tracing", -] - -[[package]] -name = "reth-etl" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "rayon", - "reth-db-api", - "tempfile", -] - -[[package]] -name = "reth-evm" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "auto_impl", - "futures-util", - "metrics", - "parking_lot", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-ethereum-forks", - "reth-execution-errors", - "reth-execution-types", - "reth-metrics", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-revm", - "reth-storage-errors", - "revm", - "revm-primitives", -] - -[[package]] -name = "reth-evm-ethereum" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-sol-types", - "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", - "reth-ethereum-forks", - "reth-evm", - "reth-execution-types", - "reth-primitives", - "reth-revm", - "reth-testing-utils", - "revm-primitives", - "secp256k1", - "serde_json", -] - -[[package]] -name = "reth-execution-errors" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "nybbles", - "reth-consensus", - "reth-prune-types", - "reth-storage-errors", - "revm-primitives", -] - -[[package]] -name = "reth-execution-types" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "arbitrary", - "bincode", - "rand 0.8.5", - "reth-execution-errors", - "reth-primitives", - "reth-trie", - "revm", - "serde", - "serde_with", -] - -[[package]] -name = "reth-exex" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "eyre", - "futures", - "itertools 0.13.0", - "metrics", - "parking_lot", - "rand 0.8.5", - "reth-blockchain-tree", - "reth-chain-state", - "reth-chainspec", - "reth-config", - "reth-db-common", - "reth-evm", - "reth-evm-ethereum", - "reth-exex-types", - "reth-fs-util", - "reth-metrics", - "reth-node-api", - "reth-node-core", - "reth-payload-builder", - "reth-primitives", - "reth-primitives-traits", - "reth-provider", - "reth-prune-types", - "reth-revm", - "reth-stages-api", - "reth-tasks", - "reth-testing-utils", - "reth-tracing", - "rmp-serde", - "secp256k1", - "tempfile", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "reth-exex-test-utils" -version = "1.1.0" -dependencies = [ - "eyre", - "futures-util", - "rand 0.8.5", - "reth-blockchain-tree", - "reth-chainspec", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-common", - "reth-evm", - "reth-execution-types", - "reth-exex", - "reth-network", - "reth-node-api", - "reth-node-builder", - "reth-node-core", - "reth-node-ethereum", - "reth-payload-builder", - "reth-primitives", - "reth-provider", - "reth-tasks", - "reth-transaction-pool", - "reth-trie-db", - "tempfile", - "thiserror", - "tokio", -] - -[[package]] -name = "reth-exex-types" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "arbitrary", - "bincode", - "rand 0.8.5", - "reth-chain-state", - "reth-execution-types", - "reth-primitives", - "serde", - "serde_with", -] - -[[package]] -name = "reth-fs-util" -version = "1.1.0" -dependencies = [ - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "reth-invalid-block-hooks" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-debug", - "eyre", - "futures", - "jsonrpsee", - "pretty_assertions", - "reth-chainspec", - "reth-engine-primitives", - "reth-evm", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc-api", - "reth-tracing", - "reth-trie", - "serde", - "serde_json", -] - -[[package]] -name = "reth-ipc" -version = "1.1.0" -dependencies = [ - "async-trait", - "bytes", - "futures", - "futures-util", - "interprocess", - "jsonrpsee", - "pin-project", - "rand 0.8.5", - "reth-tracing", - "serde_json", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tower 0.4.13", - "tracing", -] - -[[package]] -name = "reth-libmdbx" -version = "1.1.0" -dependencies = [ - "bitflags 2.6.0", - "byteorder", - "criterion", - "dashmap 6.1.0", - "derive_more 1.0.0", - "indexmap 2.6.0", - "parking_lot", - "pprof", - "rand 0.8.5", - "rand_xorshift", - "reth-mdbx-sys", - "smallvec", - "tempfile", - "thiserror", - "tracing", -] - -[[package]] -name = "reth-mdbx-sys" -version = "1.1.0" -dependencies = [ - "bindgen", - "cc", -] - -[[package]] -name = "reth-metrics" -version = "1.1.0" -dependencies = [ - "futures", - "metrics", - "metrics-derive", - "tokio", - "tokio-util", -] - -[[package]] -name = "reth-net-banlist" -version = "1.1.0" -dependencies = [ - "alloy-primitives", -] - -[[package]] -name = "reth-net-nat" -version = "1.1.0" -dependencies = [ - "futures-util", - "if-addrs", - "reqwest", - "reth-tracing", - "serde_with", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-network" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-node-bindings", - "alloy-primitives", - "alloy-provider", - "alloy-rlp", - "aquamarine", - "auto_impl", - "criterion", - "derive_more 1.0.0", - "discv5", - "enr", - "futures", - "itertools 0.13.0", - "metrics", - "parking_lot", - "pin-project", - "pprof", - "rand 0.8.5", - "reth-chainspec", - "reth-consensus", - "reth-discv4", - "reth-discv5", - "reth-dns-discovery", - "reth-ecies", - "reth-eth-wire", - "reth-fs-util", - "reth-metrics", - "reth-net-banlist", - "reth-network", - "reth-network-api", - "reth-network-p2p", - "reth-network-peers", - "reth-network-types", - "reth-primitives", - "reth-provider", - "reth-storage-api", - "reth-tasks", - "reth-tokio-util", - "reth-tracing", - "reth-transaction-pool", - "rustc-hash 2.0.0", - "schnellru", - "secp256k1", - "serde", - "serial_test", - "smallvec", - "tempfile", - "thiserror", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", - "url", -] - -[[package]] -name = "reth-network-api" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-admin", - "auto_impl", - "derive_more 1.0.0", - "enr", - "futures", - "reth-eth-wire-types", - "reth-ethereum-forks", - "reth-network-p2p", - "reth-network-peers", - "reth-network-types", - "reth-tokio-util", - "serde", - "thiserror", - "tokio", - "tokio-stream", -] - -[[package]] -name = "reth-network-p2p" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "auto_impl", - "derive_more 1.0.0", - "futures", - "parking_lot", - "reth-consensus", - "reth-eth-wire-types", - "reth-network-peers", - "reth-network-types", - "reth-primitives", - "reth-storage-errors", - "tokio", - "tracing", -] - -[[package]] -name = "reth-network-peers" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "enr", - "rand 0.8.5", - "secp256k1", - "serde_json", - "serde_with", - "thiserror", - "tokio", - "url", -] - -[[package]] -name = "reth-network-types" -version = "1.1.0" -dependencies = [ - "humantime-serde", - "reth-ethereum-forks", - "reth-net-banlist", - "reth-network-peers", - "serde", - "serde_json", - "tracing", -] - -[[package]] -name = "reth-nippy-jar" -version = "1.1.0" -dependencies = [ - "anyhow", - "bincode", - "derive_more 1.0.0", - "lz4_flex", - "memmap2", - "rand 0.8.5", - "reth-fs-util", - "serde", - "tempfile", - "thiserror", - "tracing", - "zstd", -] - -[[package]] -name = "reth-node-api" -version = "1.1.0" -dependencies = [ - "alloy-rpc-types-engine", - "eyre", - "reth-beacon-consensus", - "reth-consensus", - "reth-engine-primitives", - "reth-evm", - "reth-network-api", - "reth-node-core", - "reth-node-types", - "reth-payload-builder", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "reth-tasks", - "reth-transaction-pool", -] - -[[package]] -name = "reth-node-builder" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types", - "aquamarine", - "eyre", - "fdlimit", - "futures", - "jsonrpsee", - "rayon", - "reth-auto-seal-consensus", - "reth-beacon-consensus", - "reth-blockchain-tree", - "reth-chain-state", - "reth-chainspec", - "reth-cli-util", - "reth-config", - "reth-consensus", - "reth-consensus-debug-client", - "reth-db", - "reth-db-api", - "reth-db-common", - "reth-downloaders", - "reth-engine-local", - "reth-engine-service", - "reth-engine-tree", - "reth-engine-util", - "reth-evm", - "reth-exex", - "reth-fs-util", - "reth-invalid-block-hooks", - "reth-network", - "reth-network-api", - "reth-network-p2p", - "reth-node-api", - "reth-node-core", - "reth-node-events", - "reth-node-metrics", - "reth-payload-builder", - "reth-payload-primitives", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-rpc", - "reth-rpc-api", - "reth-rpc-builder", - "reth-rpc-engine-api", - "reth-rpc-eth-types", - "reth-rpc-layer", - "reth-stages", - "reth-static-file", - "reth-tasks", - "reth-tokio-util", - "reth-tracing", - "reth-transaction-pool", - "secp256k1", - "tempfile", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-node-core" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "clap", - "const_format", - "derive_more 1.0.0", - "dirs-next", - "eyre", - "futures", - "humantime", - "proptest", - "rand 0.8.5", - "reth-chainspec", - "reth-cli-util", - "reth-config", - "reth-consensus-common", - "reth-db", - "reth-discv4", - "reth-discv5", - "reth-net-nat", - "reth-network", - "reth-network-p2p", - "reth-network-peers", - "reth-primitives", - "reth-prune-types", - "reth-rpc-eth-types", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-stages-types", - "reth-storage-api", - "reth-storage-errors", - "reth-tracing", - "reth-transaction-pool", - "secp256k1", - "serde", - "shellexpand", - "strum", - "thiserror", - "tokio", - "toml", - "tracing", - "vergen", -] - -[[package]] -name = "reth-node-ethereum" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-contract", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-provider", - "alloy-rpc-types-beacon", - "alloy-signer", - "alloy-sol-types", - "eyre", - "futures", - "rand 0.8.5", - "reth", - "reth-auto-seal-consensus", - "reth-basic-payload-builder", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-db", - "reth-e2e-test-utils", - "reth-ethereum-engine-primitives", - "reth-ethereum-payload-builder", - "reth-evm", - "reth-evm-ethereum", - "reth-exex", - "reth-network", - "reth-node-api", - "reth-node-builder", - "reth-payload-builder", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc", - "reth-tasks", - "reth-tracing", - "reth-transaction-pool", - "reth-trie-db", - "revm", - "serde_json", - "tokio", -] - -[[package]] -name = "reth-node-events" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "futures", - "humantime", - "pin-project", - "reth-beacon-consensus", - "reth-network", - "reth-network-api", - "reth-primitives-traits", - "reth-provider", - "reth-prune", - "reth-stages", - "reth-static-file", - "tokio", - "tracing", -] - -[[package]] -name = "reth-node-metrics" -version = "1.1.0" -dependencies = [ - "eyre", - "http", - "jsonrpsee", - "metrics", - "metrics-exporter-prometheus", - "metrics-process", - "metrics-util", - "procfs 0.16.0", - "reqwest", - "reth-db-api", - "reth-metrics", - "reth-provider", - "reth-tasks", - "socket2", - "tikv-jemalloc-ctl", - "tokio", - "tower 0.4.13", - "tracing", - "vergen", -] - -[[package]] -name = "reth-node-types" -version = "1.1.0" -dependencies = [ - "reth-chainspec", - "reth-db-api", - "reth-engine-primitives", - "reth-primitives", - "reth-primitives-traits", - "reth-trie-db", -] - -[[package]] -name = "reth-optimism-chainspec" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "derive_more 1.0.0", - "once_cell", - "op-alloy-rpc-types", - "reth-chainspec", - "reth-ethereum-forks", - "reth-network-peers", - "reth-optimism-forks", - "reth-primitives-traits", - "serde_json", -] - -[[package]] -name = "reth-optimism-cli" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "clap", - "eyre", - "futures-util", - "op-alloy-consensus", - "proptest", - "reth-chainspec", - "reth-cli", - "reth-cli-commands", - "reth-cli-runner", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-db-common", - "reth-downloaders", - "reth-errors", - "reth-execution-types", - "reth-network-p2p", - "reth-node-builder", - "reth-node-core", - "reth-node-events", - "reth-node-metrics", - "reth-optimism-chainspec", - "reth-optimism-evm", - "reth-optimism-node", - "reth-optimism-primitives", - "reth-primitives", - "reth-provider", - "reth-prune", - "reth-stages", - "reth-stages-types", - "reth-static-file", - "reth-static-file-types", - "reth-tracing", - "tempfile", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "reth-optimism-consensus" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-optimism-chainspec", - "reth-optimism-forks", - "reth-primitives", - "reth-trie-common", - "tracing", -] - -[[package]] -name = "reth-optimism-evm" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "derive_more 1.0.0", - "op-alloy-consensus", - "reth-chainspec", - "reth-consensus", - "reth-ethereum-forks", - "reth-evm", - "reth-execution-errors", - "reth-execution-types", - "reth-optimism-chainspec", - "reth-optimism-consensus", - "reth-optimism-forks", - "reth-primitives", - "reth-prune-types", - "reth-revm", - "revm", - "revm-primitives", - "tracing", -] - -[[package]] -name = "reth-optimism-forks" -version = "1.1.0" -dependencies = [ - "alloy-chains", - "alloy-primitives", - "once_cell", - "reth-ethereum-forks", - "serde", -] - -[[package]] -name = "reth-optimism-node" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rpc-types-engine", - "clap", - "eyre", - "op-alloy-consensus", - "op-alloy-rpc-types-engine", - "parking_lot", - "reth", - "reth-auto-seal-consensus", - "reth-basic-payload-builder", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-db", - "reth-e2e-test-utils", - "reth-engine-local", - "reth-evm", - "reth-network", - "reth-node-api", - "reth-node-builder", - "reth-optimism-chainspec", - "reth-optimism-consensus", - "reth-optimism-evm", - "reth-optimism-forks", - "reth-optimism-payload-builder", - "reth-optimism-rpc", - "reth-payload-builder", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-tracing", - "reth-transaction-pool", - "reth-trie-db", - "revm", - "serde", - "serde_json", - "tokio", -] - -[[package]] -name = "reth-optimism-payload-builder" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-engine", - "op-alloy-consensus", - "op-alloy-rpc-types-engine", - "reth-basic-payload-builder", - "reth-chain-state", - "reth-chainspec", - "reth-evm", - "reth-execution-types", - "reth-optimism-chainspec", - "reth-optimism-consensus", - "reth-optimism-evm", - "reth-optimism-forks", - "reth-payload-builder", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc-types-compat", - "reth-transaction-pool", - "reth-trie", - "revm", - "sha2 0.10.8", - "thiserror", - "tracing", -] - -[[package]] -name = "reth-optimism-primitives" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "reth-primitives", -] - -[[package]] -name = "reth-optimism-rpc" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types", - "alloy-rpc-types-eth", - "derive_more 1.0.0", - "jsonrpsee-types", - "op-alloy-consensus", - "op-alloy-network", - "op-alloy-rpc-types", - "parking_lot", - "reqwest", - "reth-chainspec", - "reth-evm", - "reth-network-api", - "reth-node-api", - "reth-node-builder", - "reth-optimism-chainspec", - "reth-optimism-consensus", - "reth-optimism-evm", - "reth-optimism-forks", - "reth-primitives", - "reth-provider", - "reth-rpc", - "reth-rpc-eth-api", - "reth-rpc-eth-types", - "reth-rpc-server-types", - "reth-tasks", - "reth-transaction-pool", - "revm", - "serde_json", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-optimism-storage" -version = "1.1.0" -dependencies = [ - "reth-codecs", - "reth-db-api", - "reth-primitives", - "reth-prune-types", - "reth-stages-types", -] - -[[package]] -name = "reth-payload-builder" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types", - "async-trait", - "futures-util", - "metrics", - "reth-chain-state", - "reth-ethereum-engine-primitives", - "reth-metrics", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "revm", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-payload-primitives" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types", - "async-trait", - "op-alloy-rpc-types-engine", - "pin-project", - "reth-chain-state", - "reth-chainspec", - "reth-errors", - "reth-primitives", - "reth-transaction-pool", - "serde", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-payload-validator" -version = "1.1.0" -dependencies = [ - "alloy-rpc-types", - "reth-chainspec", - "reth-primitives", - "reth-rpc-types-compat", -] - -[[package]] -name = "reth-primitives" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types", - "alloy-serde", - "arbitrary", - "assert_matches", - "bincode", - "bytes", - "c-kzg", - "criterion", - "derive_more 1.0.0", - "k256", - "modular-bitfield", - "once_cell", - "op-alloy-consensus", - "op-alloy-rpc-types", - "pprof", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "rayon", - "reth-chainspec", - "reth-codecs", - "reth-ethereum-forks", - "reth-primitives-traits", - "reth-static-file-types", - "reth-testing-utils", - "reth-trie-common", - "revm-primitives", - "secp256k1", - "serde", - "serde_json", - "serde_with", - "test-fuzz", - "zstd", -] - -[[package]] -name = "reth-primitives-traits" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "arbitrary", - "bincode", - "byteorder", - "bytes", - "derive_more 1.0.0", - "modular-bitfield", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-codecs", - "reth-testing-utils", - "revm-primitives", - "roaring", - "serde", - "serde_json", - "serde_with", - "test-fuzz", -] - -[[package]] -name = "reth-provider" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "assert_matches", - "auto_impl", - "dashmap 6.1.0", - "eyre", - "itertools 0.13.0", - "metrics", - "notify", - "parking_lot", - "rand 0.8.5", - "rayon", - "reth-blockchain-tree-api", - "reth-chain-state", - "reth-chainspec", - "reth-codecs", - "reth-db", - "reth-db-api", - "reth-errors", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-execution-types", - "reth-fs-util", - "reth-metrics", - "reth-network-p2p", - "reth-nippy-jar", - "reth-node-types", - "reth-optimism-primitives", - "reth-primitives", - "reth-prune-types", - "reth-stages-types", - "reth-storage-api", - "reth-storage-errors", - "reth-testing-utils", - "reth-trie", - "reth-trie-db", - "revm", - "strum", - "tempfile", - "tokio", - "tracing", -] - -[[package]] -name = "reth-prune" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "assert_matches", - "itertools 0.13.0", - "metrics", - "rayon", - "reth-chainspec", - "reth-config", - "reth-db", - "reth-db-api", - "reth-errors", - "reth-exex-types", - "reth-metrics", - "reth-provider", - "reth-prune-types", - "reth-stages", - "reth-static-file-types", - "reth-testing-utils", - "reth-tokio-util", - "reth-tracing", - "rustc-hash 2.0.0", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-prune-types" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "arbitrary", - "assert_matches", - "bytes", - "derive_more 1.0.0", - "modular-bitfield", - "proptest", - "proptest-arbitrary-interop", - "reth-codecs", - "serde", - "serde_json", - "test-fuzz", - "thiserror", - "toml", -] - -[[package]] -name = "reth-revm" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-ethereum-forks", - "reth-execution-errors", - "reth-primitives", - "reth-prune-types", - "reth-storage-api", - "reth-storage-errors", - "reth-trie", - "revm", -] - -[[package]] -name = "reth-rpc" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-eips", - "alloy-genesis", - "alloy-network", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types", - "alloy-rpc-types-admin", - "alloy-rpc-types-beacon", - "alloy-rpc-types-debug", - "alloy-rpc-types-eth", - "alloy-rpc-types-mev", - "alloy-rpc-types-trace", - "alloy-rpc-types-txpool", - "alloy-serde", - "alloy-signer", - "alloy-signer-local", - "async-trait", - "derive_more 1.0.0", - "futures", - "http", - "http-body", - "hyper", - "jsonrpsee", - "jsonrpsee-types", - "jsonwebtoken", - "parking_lot", - "pin-project", - "rand 0.8.5", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-errors", - "reth-ethereum-consensus", - "reth-evm", - "reth-evm-ethereum", - "reth-network-api", - "reth-network-peers", - "reth-network-types", - "reth-payload-validator", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc-api", - "reth-rpc-engine-api", - "reth-rpc-eth-api", - "reth-rpc-eth-types", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-tasks", - "reth-testing-utils", - "reth-transaction-pool", - "reth-trie", - "revm", - "revm-inspectors", - "revm-primitives", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-stream", - "tower 0.4.13", - "tracing", - "tracing-futures", -] - -[[package]] -name = "reth-rpc-api" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-json-rpc", - "alloy-primitives", - "alloy-rpc-types", - "alloy-rpc-types-admin", - "alloy-rpc-types-anvil", - "alloy-rpc-types-beacon", - "alloy-rpc-types-debug", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth", - "alloy-rpc-types-mev", - "alloy-rpc-types-trace", - "alloy-rpc-types-txpool", - "alloy-serde", - "jsonrpsee", - "reth-engine-primitives", - "reth-network-peers", - "reth-primitives", - "reth-rpc-eth-api", - "serde", - "serde_with", -] - -[[package]] -name = "reth-rpc-api-testing-util" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types", - "alloy-rpc-types-eth", - "alloy-rpc-types-trace", - "futures", - "jsonrpsee", - "jsonrpsee-http-client", - "reth-primitives", - "reth-rpc-api", - "reth-rpc-eth-api", - "serde_json", - "similar-asserts", - "tokio", -] - -[[package]] -name = "reth-rpc-builder" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth", - "alloy-rpc-types-trace", - "clap", - "http", - "jsonrpsee", - "metrics", - "pin-project", - "reth-beacon-consensus", - "reth-chainspec", - "reth-consensus", - "reth-engine-primitives", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-evm-ethereum", - "reth-ipc", - "reth-metrics", - "reth-network-api", - "reth-network-peers", - "reth-node-core", - "reth-payload-builder", - "reth-primitives", - "reth-provider", - "reth-rpc", - "reth-rpc-api", - "reth-rpc-engine-api", - "reth-rpc-eth-api", - "reth-rpc-eth-types", - "reth-rpc-layer", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-tasks", - "reth-tracing", - "reth-transaction-pool", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-util", - "tower 0.4.13", - "tower-http", - "tracing", -] - -[[package]] -name = "reth-rpc-engine-api" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types-engine", - "assert_matches", - "async-trait", - "jsonrpsee-core", - "jsonrpsee-types", - "metrics", - "reth-beacon-consensus", - "reth-chainspec", - "reth-engine-primitives", - "reth-ethereum-engine-primitives", - "reth-evm", - "reth-metrics", - "reth-payload-builder", - "reth-payload-primitives", - "reth-primitives", - "reth-provider", - "reth-rpc-api", - "reth-rpc-types-compat", - "reth-storage-api", - "reth-tasks", - "reth-testing-utils", - "reth-tokio-util", - "reth-transaction-pool", - "serde", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-rpc-eth-api" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-dyn-abi", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", - "alloy-primitives", - "alloy-rpc-types", - "alloy-rpc-types-eth", - "alloy-rpc-types-mev", - "async-trait", - "auto_impl", - "dyn-clone", - "futures", - "jsonrpsee", - "jsonrpsee-types", - "parking_lot", - "reth-chainspec", - "reth-errors", - "reth-evm", - "reth-execution-types", - "reth-network-api", - "reth-node-api", - "reth-primitives", - "reth-provider", - "reth-revm", - "reth-rpc-eth-types", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-tasks", - "reth-transaction-pool", - "reth-trie", - "revm", - "revm-inspectors", - "revm-primitives", - "tokio", - "tracing", -] - -[[package]] -name = "reth-rpc-eth-types" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types", - "alloy-rpc-types-eth", - "alloy-sol-types", - "derive_more 1.0.0", - "futures", - "itertools 0.13.0", - "jsonrpsee-core", - "jsonrpsee-types", - "metrics", - "rand 0.8.5", - "reth-chain-state", - "reth-chainspec", - "reth-errors", - "reth-evm", - "reth-execution-types", - "reth-metrics", - "reth-primitives", - "reth-revm", - "reth-rpc-server-types", - "reth-rpc-types-compat", - "reth-storage-api", - "reth-tasks", - "reth-transaction-pool", - "reth-trie", - "revm", - "revm-inspectors", - "revm-primitives", - "schnellru", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-rpc-layer" -version = "1.1.0" -dependencies = [ - "alloy-rpc-types-engine", - "http", - "jsonrpsee", - "jsonrpsee-http-client", - "pin-project", - "reqwest", - "tokio", - "tower 0.4.13", - "tracing", -] - -[[package]] -name = "reth-rpc-server-types" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine", - "jsonrpsee-core", - "jsonrpsee-types", - "reth-errors", - "reth-network-api", - "reth-primitives", - "serde", - "strum", -] - -[[package]] -name = "reth-rpc-types-compat" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-rpc-types", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth", - "reth-primitives", - "reth-trie-common", - "serde", - "serde_json", -] - -[[package]] -name = "reth-stages" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "assert_matches", - "bincode", - "criterion", - "futures-util", - "itertools 0.13.0", - "num-traits", - "paste", - "pprof", - "rand 0.8.5", - "rayon", - "reth-chainspec", - "reth-codecs", - "reth-config", - "reth-consensus", - "reth-db", - "reth-db-api", - "reth-downloaders", - "reth-etl", - "reth-evm", - "reth-evm-ethereum", - "reth-execution-errors", - "reth-execution-types", - "reth-exex", - "reth-network-p2p", - "reth-network-peers", - "reth-primitives", - "reth-primitives-traits", - "reth-provider", - "reth-prune", - "reth-prune-types", - "reth-revm", - "reth-stages-api", - "reth-static-file", - "reth-storage-errors", - "reth-testing-utils", - "reth-trie", - "reth-trie-db", - "tempfile", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-stages-api" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "aquamarine", - "assert_matches", - "auto_impl", - "futures-util", - "metrics", - "reth-consensus", - "reth-errors", - "reth-metrics", - "reth-network-p2p", - "reth-primitives-traits", - "reth-provider", - "reth-prune", - "reth-stages-types", - "reth-static-file", - "reth-static-file-types", - "reth-testing-utils", - "reth-tokio-util", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-stages-types" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "arbitrary", - "bytes", - "modular-bitfield", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-codecs", - "reth-trie-common", - "serde", - "test-fuzz", -] - -[[package]] -name = "reth-static-file" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "assert_matches", - "parking_lot", - "rayon", - "reth-db", - "reth-db-api", - "reth-provider", - "reth-prune-types", - "reth-stages", - "reth-stages-types", - "reth-static-file-types", - "reth-storage-errors", - "reth-testing-utils", - "reth-tokio-util", - "tempfile", - "tracing", -] - -[[package]] -name = "reth-static-file-types" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "clap", - "derive_more 1.0.0", - "serde", - "strum", -] - -[[package]] -name = "reth-storage-api" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "auto_impl", - "reth-chainspec", - "reth-db-api", - "reth-db-models", - "reth-execution-types", - "reth-primitives", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-trie", -] - -[[package]] -name = "reth-storage-errors" -version = "1.1.0" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "reth-fs-util", - "reth-primitives", -] - -[[package]] -name = "reth-tasks" -version = "1.1.0" -dependencies = [ - "auto_impl", - "dyn-clone", - "futures-util", - "metrics", - "pin-project", - "rayon", - "reth-metrics", - "thiserror", - "tokio", - "tracing", - "tracing-futures", -] - -[[package]] -name = "reth-testing-utils" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "rand 0.8.5", - "reth-primitives", - "secp256k1", -] - -[[package]] -name = "reth-tokio-util" -version = "1.1.0" -dependencies = [ - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-tracing" -version = "1.1.0" -dependencies = [ - "clap", - "eyre", - "rolling-file", - "tracing", - "tracing-appender", - "tracing-journald", - "tracing-logfmt", - "tracing-subscriber", -] - -[[package]] -name = "reth-transaction-pool" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "aquamarine", - "assert_matches", - "auto_impl", - "bitflags 2.6.0", - "criterion", - "futures-util", - "metrics", - "parking_lot", - "paste", - "pprof", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "reth-chain-state", - "reth-chainspec", - "reth-eth-wire-types", - "reth-execution-types", - "reth-fs-util", - "reth-metrics", - "reth-primitives", - "reth-provider", - "reth-storage-api", - "reth-tasks", - "reth-tracing", - "revm", - "rustc-hash 2.0.0", - "schnellru", - "serde", - "serde_json", - "smallvec", - "tempfile", - "thiserror", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-trie" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "alloy-rlp", - "auto_impl", - "bincode", - "criterion", - "itertools 0.13.0", - "metrics", - "proptest", - "proptest-arbitrary-interop", - "rayon", - "reth-execution-errors", - "reth-metrics", - "reth-primitives", - "reth-stages-types", - "reth-storage-errors", - "reth-trie-common", - "revm", - "serde", - "serde_json", - "serde_with", - "tracing", - "triehash", -] - -[[package]] -name = "reth-trie-common" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "alloy-trie", - "arbitrary", - "bytes", - "derive_more 1.0.0", - "hash-db", - "itertools 0.13.0", - "nybbles", - "plain_hasher", - "proptest", - "proptest-arbitrary-interop", - "reth-codecs", - "reth-primitives-traits", - "revm-primitives", - "serde", -] - -[[package]] -name = "reth-trie-db" -version = "1.1.0" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "metrics", - "proptest", - "proptest-arbitrary-interop", - "reth-chainspec", - "reth-db", - "reth-db-api", - "reth-execution-errors", - "reth-metrics", - "reth-primitives", - "reth-provider", - "reth-storage-errors", - "reth-trie", - "reth-trie-common", - "revm", - "serde", - "serde_json", - "similar-asserts", - "tracing", - "triehash", -] - -[[package]] -name = "reth-trie-parallel" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "criterion", - "derive_more 1.0.0", - "itertools 0.13.0", - "metrics", - "proptest", - "proptest-arbitrary-interop", - "rand 0.8.5", - "rayon", - "reth-db", - "reth-execution-errors", - "reth-metrics", - "reth-primitives", - "reth-provider", - "reth-trie", - "reth-trie-db", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "reth-trie-sparse" -version = "1.1.0" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "assert_matches", - "criterion", - "itertools 0.13.0", - "pretty_assertions", - "proptest", - "rand 0.8.5", - "reth-testing-utils", - "reth-tracing", - "reth-trie", - "reth-trie-common", - "smallvec", - "thiserror", -] - -[[package]] -name = "revm" -version = "17.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "055bee6a81aaeee8c2389ae31f0d4de87f44df24f4444a1116f9755fd87a76ad" -dependencies = [ - "auto_impl", - "cfg-if", - "dyn-clone", - "revm-interpreter", - "revm-precompile", - "serde", - "serde_json", -] - -[[package]] -name = "revm-inspectors" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e29c662f7887f3b659d4b0fd234673419a8fcbeaa1ecc29bf7034c0a75cc8ea" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-rpc-types-trace", - "alloy-sol-types", - "anstyle", - "boa_engine", - "boa_gc", - "colorchoice", - "revm", - "serde_json", - "thiserror", -] - -[[package]] -name = "revm-interpreter" -version = "13.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fac2034454f8bc69dc7d3c94cdb1b57559e27f5ef0518771f1787de543d7d6a1" -dependencies = [ - "revm-primitives", - "serde", -] - -[[package]] -name = "revm-precompile" -version = "14.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a88c8c7c5f9b988a9e65fc0990c6ce859cdb74114db705bd118a96d22d08027" -dependencies = [ - "aurora-engine-modexp", - "blst", - "c-kzg", - "cfg-if", - "k256", - "once_cell", - "p256", - "revm-primitives", - "ripemd", - "secp256k1", - "sha2 0.10.8", - "substrate-bn", -] - -[[package]] -name = "revm-primitives" -version = "13.0.0" -source = "git+https://github.com/klkvr/revm?rev=e552b1d#e552b1d83c27fff70331c4a36da01709ebe77096" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "alloy-primitives", - "auto_impl", - "bitflags 2.6.0", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", - "enumn", - "hex", - "serde", -] - -[[package]] -name = "rfc6979" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" -dependencies = [ - "hmac 0.12.1", - "subtle", -] - -[[package]] -name = "rgb" -version = "0.8.50" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "ring" -version = "0.17.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" -dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.15", - "libc", - "spin", - "untrusted", - "windows-sys 0.52.0", -] - -[[package]] -name = "ringbuffer" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df6368f71f205ff9c33c076d170dd56ebf68e8161c733c0caa07a7a5509ed53" - -[[package]] -name = "ripemd" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "rlimit" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7043b63bd0cd1aaa628e476b80e6d4023a3b50eb32789f2728908107bd0c793a" -dependencies = [ - "libc", -] - -[[package]] -name = "rlp" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" -dependencies = [ - "bytes", - "rustc-hex", -] - -[[package]] -name = "rmp" -version = "0.8.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" -dependencies = [ - "byteorder", - "num-traits", - "paste", -] - -[[package]] -name = "rmp-serde" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" -dependencies = [ - "byteorder", - "rmp", - "serde", -] - -[[package]] -name = "roaring" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f4b84ba6e838ceb47b41de5194a60244fac43d9fe03b71dbe8c5a201081d6d1" -dependencies = [ - "bytemuck", - "byteorder", -] - -[[package]] -name = "rolling-file" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" -dependencies = [ - "chrono", -] - -[[package]] -name = "route-recognizer" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746" - -[[package]] -name = "ruint" -version = "1.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" -dependencies = [ - "alloy-rlp", - "arbitrary", - "ark-ff 0.3.0", - "ark-ff 0.4.2", - "bytes", - "fastrlp", - "num-bigint", - "num-traits", - "parity-scale-codec", - "primitive-types", - "proptest", - "rand 0.8.5", - "rlp", - "ruint-macro", - "serde", - "valuable", - "zeroize", -] - -[[package]] -name = "ruint-macro" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" - -[[package]] -name = "rustc-demangle" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" - -[[package]] -name = "rustc-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" - -[[package]] -name = "rustc-hash" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" -dependencies = [ - "rand 0.8.5", -] - -[[package]] -name = "rustc-hex" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" - -[[package]] -name = "rustc_version" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" -dependencies = [ - "semver 0.11.0", -] - -[[package]] -name = "rustc_version" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" -dependencies = [ - "semver 1.0.23", -] - -[[package]] -name = "rustix" -version = "0.38.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a" -dependencies = [ - "bitflags 2.6.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls" -version = "0.23.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e" -dependencies = [ - "log", - "once_cell", - "ring", - "rustls-pki-types", - "rustls-webpki", - "subtle", - "zeroize", -] - -[[package]] -name = "rustls-native-certs" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" -dependencies = [ - "openssl-probe", - "rustls-pemfile", - "rustls-pki-types", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-native-certs" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" -dependencies = [ - "openssl-probe", - "rustls-pemfile", - "rustls-pki-types", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "rustls-pki-types" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" - -[[package]] -name = "rustls-platform-verifier" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afbb878bdfdf63a336a5e63561b1835e7a8c91524f51621db870169eac84b490" -dependencies = [ - "core-foundation", - "core-foundation-sys", - "jni", - "log", - "once_cell", - "rustls", - "rustls-native-certs 0.7.3", - "rustls-platform-verifier-android", - "rustls-webpki", - "security-framework", - "security-framework-sys", - "webpki-roots", - "winapi", -] - -[[package]] -name = "rustls-platform-verifier-android" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" - -[[package]] -name = "rustls-webpki" -version = "0.102.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" -dependencies = [ - "ring", - "rustls-pki-types", - "untrusted", -] - -[[package]] -name = "rustversion" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" - -[[package]] -name = "rusty-fork" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" -dependencies = [ - "fnv", - "quick-error", - "tempfile", - "wait-timeout", -] - -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "ryu-js" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "scc" -version = "2.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8d25269dd3a12467afe2e510f69fb0b46b698e5afb296b59f2145259deaf8e8" -dependencies = [ - "sdd", -] - -[[package]] -name = "schannel" -version = "0.1.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "schnellru" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" -dependencies = [ - "ahash", - "cfg-if", - "hashbrown 0.13.2", -] - -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "sdd" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49c1eeaf4b6a87c7479688c6d52b9f1153cedd3c489300564f932b065c6eab95" - -[[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", -] - -[[package]] -name = "secp256k1" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" -dependencies = [ - "rand 0.8.5", - "secp256k1-sys", - "serde", -] - -[[package]] -name = "secp256k1-sys" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4387882333d3aa8cb20530a17c69a3752e97837832f34f6dccc760e715001d9" -dependencies = [ - "cc", -] - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.6.0", - "core-foundation", - "core-foundation-sys", - "libc", - "num-bigint", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser", -] - -[[package]] -name = "semver" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" -dependencies = [ - "serde", -] - -[[package]] -name = "semver-parser" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" -dependencies = [ - "pest", -] - -[[package]] -name = "send_wrapper" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" - -[[package]] -name = "send_wrapper" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" - -[[package]] -name = "serde" -version = "1.0.214" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.214" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "serde_json" -version = "1.0.132" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" -dependencies = [ - "indexmap 2.6.0", - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_qs" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" -dependencies = [ - "percent-encoding", - "serde", - "thiserror", -] - -[[package]] -name = "serde_repr" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "serde_spanned" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_with" -version = "3.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817" -dependencies = [ - "base64 0.22.1", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.6.0", - "serde", - "serde_derive", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "serial_test" -version = "3.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b4b487fe2acf240a021cf57c6b2b4903b1e78ca0ecd862a71b71d2a51fed77d" -dependencies = [ - "once_cell", - "parking_lot", - "scc", - "serial_test_derive", -] - -[[package]] -name = "serial_test_derive" -version = "3.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha3" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" -dependencies = [ - "digest 0.10.7", - "keccak", -] - -[[package]] -name = "sha3-asm" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" -dependencies = [ - "cc", - "cfg-if", -] - -[[package]] -name = "sharded-slab" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" -dependencies = [ - "lazy_static", -] - -[[package]] -name = "shellexpand" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da03fa3b94cc19e3ebfc88c4229c49d8f08cdbd1228870a45f0ffdf84988e14b" -dependencies = [ - "dirs", -] - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "signal-hook" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" -dependencies = [ - "libc", - "signal-hook-registry", -] - -[[package]] -name = "signal-hook-mio" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" -dependencies = [ - "libc", - "mio 1.0.2", - "signal-hook", -] - -[[package]] -name = "signal-hook-registry" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" -dependencies = [ - "libc", -] - -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "similar" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" -dependencies = [ - "bstr", - "unicode-segmentation", -] - -[[package]] -name = "similar-asserts" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe85670573cd6f0fa97940f26e7e6601213c3b0555246c24234131f88c5709e" -dependencies = [ - "console", - "serde", - "similar", -] - -[[package]] -name = "simple_asn1" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" -dependencies = [ - "num-bigint", - "num-traits", - "thiserror", - "time", -] - -[[package]] -name = "siphasher" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" - -[[package]] -name = "sketches-ddsketch" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1e9a774a6c28142ac54bb25d25562e6bcf957493a184f15ad4eebccb23e410a" - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" -dependencies = [ - "arbitrary", - "serde", -] - -[[package]] -name = "snap" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" - -[[package]] -name = "socket2" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "soketto" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37468c595637c10857701c990f93a40ce0e357cedb0953d1c26c8d8027f9bb53" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures", - "http", - "httparse", - "log", - "rand 0.8.5", - "sha1", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -dependencies = [ - "lock_api", -] - -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - -[[package]] -name = "sptr" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a" - -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "str_stack" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091b6114800a5f2141aee1d1b9d6ca3592ac062dc5decb3764ec5895a47b4eb" - -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros", -] - -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.87", -] - -[[package]] -name = "substrate-bn" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b5bbfa79abbae15dd642ea8176a21a635ff3c00059961d1ea27ad04e5b441c" -dependencies = [ - "byteorder", - "crunchy", - "lazy_static", - "rand 0.8.5", - "rustc-hex", -] - -[[package]] -name = "subtle" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" - -[[package]] -name = "symbolic-common" -version = "12.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "366f1b4c6baf6cfefc234bbd4899535fca0b06c74443039a73f6dfb2fad88d77" -dependencies = [ - "debugid", - "memmap2", - "stable_deref_trait", - "uuid", -] - -[[package]] -name = "symbolic-demangle" -version = "12.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aba05ba5b9962ea5617baf556293720a8b2d0a282aa14ee4bf10e22efc7da8c8" -dependencies = [ - "cpp_demangle", - "rustc-demangle", - "symbolic-common", -] - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.87" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn-solidity" -version = "0.8.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16320d4a2021ba1a32470b3759676114a918885e9800e68ad60f2c67969fba62" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "syn-solidity" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=237cfc4#237cfc43598d9d31bfbbd4a5ccebc83fd883d4a4" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.86", -] - -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - -[[package]] -name = "sync_wrapper" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" -dependencies = [ - "futures-core", -] - -[[package]] -name = "synstructure" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "sysinfo" -version = "0.31.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "355dbe4f8799b304b05e1b0f05fc59b2a18d36645cf169607da45bde2f69a1be" -dependencies = [ - "core-foundation-sys", - "libc", - "memchr", - "ntapi", - "windows 0.57.0", -] - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tempfile" -version = "3.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" -dependencies = [ - "cfg-if", - "fastrand 2.1.1", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "termtree" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" - -[[package]] -name = "test-fuzz" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ab7a9bb33d134e863862ab9dad2ac7e022ac89707914627f498fe0f29248d9b" -dependencies = [ - "serde", - "test-fuzz-internal", - "test-fuzz-macro", - "test-fuzz-runtime", -] - -[[package]] -name = "test-fuzz-internal" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0bef5dd380747bd7b6e636a8032a24aa34fcecaf843e59fc97d299681922e86" -dependencies = [ - "bincode", - "cargo_metadata", - "serde", -] - -[[package]] -name = "test-fuzz-macro" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7e6b4c7391a38f0f026972ec2200bcfd1ec45533aa266fdae5858d011afc500" -dependencies = [ - "darling", - "heck", - "itertools 0.13.0", - "once_cell", - "prettyplease", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "test-fuzz-runtime" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fbe6fb7481ec6d9bf64ae2c5d49cb1b40f8da624a91031482af7b08168c679" -dependencies = [ - "hex", - "num-traits", - "serde", - "sha1", - "test-fuzz-internal", -] - -[[package]] -name = "thin-vec" -version = "0.2.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b" - -[[package]] -name = "thiserror" -version = "1.0.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d171f59dbaa811dbbb1aee1e73db92ec2b122911a48e1390dfe327a821ddede" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.66" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b08be0f17bd307950653ce45db00cd31200d82b624b36e181337d9c7d92765b5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "thiserror-impl-no-std" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e6318948b519ba6dc2b442a6d0b904ebfb8d411a3ad3e07843615a72249758" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "thiserror-no-std" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ad459d94dd517257cc96add8a43190ee620011bb6e6cdc82dafd97dfafafea" -dependencies = [ - "thiserror-impl-no-std", -] - -[[package]] -name = "thread_local" -version = "1.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" -dependencies = [ - "cfg-if", - "once_cell", -] - -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - -[[package]] -name = "tikv-jemalloc-ctl" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f21f216790c8df74ce3ab25b534e0718da5a1916719771d3fec23315c99e468b" -dependencies = [ - "libc", - "paste", - "tikv-jemalloc-sys", -] - -[[package]] -name = "tikv-jemalloc-sys" -version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" -dependencies = [ - "cc", - "libc", -] - -[[package]] -name = "tikv-jemallocator" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" -dependencies = [ - "libc", - "tikv-jemalloc-sys", -] - -[[package]] -name = "time" -version = "0.3.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" -dependencies = [ - "deranged", - "itoa", - "js-sys", - "libc", - "num-conv", - "num_threads", - "powerfmt", - "serde", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" - -[[package]] -name = "time-macros" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - -[[package]] -name = "tinystr" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" -dependencies = [ - "displaydoc", - "zerovec", -] - -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - -[[package]] -name = "tinyvec" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.41.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio 1.0.2", - "parking_lot", - "pin-project-lite", - "signal-hook-registry", - "socket2", - "tokio-macros", - "windows-sys 0.52.0", -] - -[[package]] -name = "tokio-macros" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "tokio-rustls" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" -dependencies = [ - "rustls", - "rustls-pki-types", - "tokio", -] - -[[package]] -name = "tokio-stream" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", - "tokio-util", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" -dependencies = [ - "futures-util", - "log", - "rustls", - "rustls-pki-types", - "tokio", - "tokio-rustls", - "tungstenite", - "webpki-roots", -] - -[[package]] -name = "tokio-util" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" -dependencies = [ - "bytes", - "futures-core", - "futures-io", - "futures-sink", - "pin-project-lite", - "slab", - "tokio", -] - -[[package]] -name = "toml" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - -[[package]] -name = "toml_datetime" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_edit" -version = "0.22.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" -dependencies = [ - "indexmap 2.6.0", - "serde", - "serde_spanned", - "toml_datetime", - "winnow", -] - -[[package]] -name = "tower" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" -dependencies = [ - "futures-core", - "futures-util", - "hdrhistogram", - "indexmap 1.9.3", - "pin-project", - "pin-project-lite", - "rand 0.8.5", - "slab", - "tokio", - "tokio-util", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" -dependencies = [ - "futures-core", - "futures-util", - "pin-project-lite", - "sync_wrapper 0.1.2", - "tower-layer", - "tower-service", -] - -[[package]] -name = "tower-http" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" -dependencies = [ - "async-compression", - "base64 0.21.7", - "bitflags 2.6.0", - "bytes", - "futures-core", - "futures-util", - "http", - "http-body", - "http-body-util", - "http-range-header", - "httpdate", - "iri-string", - "mime", - "mime_guess", - "percent-encoding", - "pin-project-lite", - "tokio", - "tokio-util", - "tower 0.4.13", - "tower-layer", - "tower-service", - "tracing", - "uuid", -] - -[[package]] -name = "tower-layer" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" - -[[package]] -name = "tower-service" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" - -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-appender" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" -dependencies = [ - "crossbeam-channel", - "thiserror", - "time", - "tracing-subscriber", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-futures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" -dependencies = [ - "pin-project", - "tracing", -] - -[[package]] -name = "tracing-journald" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd" -dependencies = [ - "libc", - "tracing-core", - "tracing-subscriber", -] - -[[package]] -name = "tracing-log" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - -[[package]] -name = "tracing-logfmt" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b1f47d22deb79c3f59fcf2a1f00f60cbdc05462bf17d1cd356c1fefa3f444bd" -dependencies = [ - "time", - "tracing", - "tracing-core", - "tracing-subscriber", -] - -[[package]] -name = "tracing-serde" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" -dependencies = [ - "serde", - "tracing-core", -] - -[[package]] -name = "tracing-subscriber" -version = "0.3.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" -dependencies = [ - "matchers", - "nu-ansi-term", - "once_cell", - "regex", - "serde", - "serde_json", - "sharded-slab", - "smallvec", - "thread_local", - "tracing", - "tracing-core", - "tracing-log", - "tracing-serde", -] - -[[package]] -name = "tracy-client" -version = "0.17.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "746b078c6a09ebfd5594609049e07116735c304671eaab06ce749854d23435bc" -dependencies = [ - "loom", - "once_cell", - "rustc-demangle", - "tracy-client-sys", -] - -[[package]] -name = "tracy-client-sys" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68613466112302fdbeabc5fa55f7d57462a0b247d5a6b7d7e09401fb471a144d" -dependencies = [ - "cc", -] - -[[package]] -name = "triehash" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" -dependencies = [ - "hash-db", - "rlp", -] - -[[package]] -name = "trust-dns-proto" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374" -dependencies = [ - "async-trait", - "cfg-if", - "data-encoding", - "enum-as-inner", - "futures-channel", - "futures-io", - "futures-util", - "idna 0.4.0", - "ipnet", - "once_cell", - "rand 0.8.5", - "smallvec", - "thiserror", - "tinyvec", - "tokio", - "tracing", - "url", -] - -[[package]] -name = "trust-dns-resolver" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6" -dependencies = [ - "cfg-if", - "futures-util", - "ipconfig", - "lru-cache", - "once_cell", - "parking_lot", - "rand 0.8.5", - "resolv-conf", - "serde", - "smallvec", - "thiserror", - "tokio", - "tracing", - "trust-dns-proto", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "tungstenite" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" -dependencies = [ - "byteorder", - "bytes", - "data-encoding", - "http", - "httparse", - "log", - "rand 0.8.5", - "rustls", - "rustls-pki-types", - "sha1", - "thiserror", - "utf-8", -] - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "ucd-trie" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" - -[[package]] -name = "uint" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" -dependencies = [ - "byteorder", - "crunchy", - "hex", - "static_assertions", -] - -[[package]] -name = "uint" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "909988d098b2f738727b161a106cfc7cab00c539c2687a8836f8e565976fb53e" -dependencies = [ - "byteorder", - "crunchy", - "hex", - "static_assertions", -] - -[[package]] -name = "unarray" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" - -[[package]] -name = "unicase" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" - -[[package]] -name = "unicode-bidi" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" - -[[package]] -name = "unicode-ident" -version = "1.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" - -[[package]] -name = "unicode-normalization" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "unicode-segmentation" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" - -[[package]] -name = "unicode-truncate" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf" -dependencies = [ - "itertools 0.13.0", - "unicode-segmentation", - "unicode-width", -] - -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - -[[package]] -name = "unicode-xid" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" - -[[package]] -name = "universal-hash" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" -dependencies = [ - "crypto-common", - "subtle", -] - -[[package]] -name = "unsigned-varint" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb066959b24b5196ae73cb057f45598450d2c5f71460e98c49b738086eff9c06" - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" -dependencies = [ - "form_urlencoded", - "idna 0.5.0", - "percent-encoding", - "serde", -] - -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - -[[package]] -name = "utf8parse" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" - -[[package]] -name = "uuid" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" -dependencies = [ - "getrandom 0.2.15", -] - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "vergen" -version = "8.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" -dependencies = [ - "anyhow", - "cargo_metadata", - "cfg-if", - "regex", - "rustversion", - "time", -] - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "visibility" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - -[[package]] -name = "waker-fn" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasm-bindgen" -version = "0.2.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" -dependencies = [ - "cfg-if", - "once_cell", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" -dependencies = [ - "bumpalo", - "log", - "once_cell", - "proc-macro2", - "quote", - "syn 2.0.87", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" -dependencies = [ - "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" - -[[package]] -name = "wasm-streams" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "wasmtimer" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb4f099acbc1043cc752b91615b24b02d7f6fcd975bd781fed9f50b3c3e15bf7" -dependencies = [ - "futures", - "js-sys", - "parking_lot", - "pin-utils", - "slab", - "wasm-bindgen", -] - -[[package]] -name = "web-sys" -version = "0.3.72" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "0.26.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "widestring" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" -dependencies = [ - "windows-core 0.57.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" -dependencies = [ - "windows-core 0.58.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" -dependencies = [ - "windows-implement 0.57.0", - "windows-interface 0.57.0", - "windows-result 0.1.2", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" -dependencies = [ - "windows-implement 0.58.0", - "windows-interface 0.58.0", - "windows-result 0.2.0", - "windows-strings", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-implement" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "windows-implement" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "windows-interface" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "windows-interface" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "windows-registry" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" -dependencies = [ - "windows-result 0.2.0", - "windows-strings", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-strings" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" -dependencies = [ - "windows-result 0.2.0", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winnow" -version = "0.6.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" -dependencies = [ - "memchr", -] - -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - -[[package]] -name = "ws_stream_wasm" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" -dependencies = [ - "async_io_stream", - "futures", - "js-sys", - "log", - "pharos", - "rustc_version 0.4.1", - "send_wrapper 0.6.0", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - -[[package]] -name = "yoke" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure", -] - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", - "synstructure", -] - -[[package]] -name = "zeroize" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "zerovec" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "zstd" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "7.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" -dependencies = [ - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" -dependencies = [ - "cc", - "pkg-config", -] diff --git a/Cargo.toml b/Cargo.toml index 5a30f05ff235..8a86de92cda6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -610,33 +610,33 @@ alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index 7a8c195d15b2..e1803c756f88 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -20,33 +20,33 @@ alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "66365938" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } From d8a46b50c38662b5d49aa7cb8e9c67556aa4c4e1 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Sat, 2 Nov 2024 04:17:38 +0400 Subject: [PATCH 08/20] wip --- Cargo.lock | 12018 ++++++++++++++++ Cargo.toml | 76 +- book/sources/Cargo.toml | 2 +- crates/optimism/chainspec/src/lib.rs | 2 +- crates/optimism/evm/src/execute.rs | 2 +- crates/primitives/Cargo.toml | 1 + crates/primitives/src/alloy_compat.rs | 283 +- crates/primitives/src/transaction/mod.rs | 11 +- .../primitives/src/transaction/signature.rs | 2 +- .../rpc-types-compat/src/transaction/mod.rs | 6 +- .../src/transaction/signature.rs | 53 - .../codecs/src/alloy/authorization_list.rs | 2 +- crates/storage/codecs/src/alloy/signature.rs | 2 +- 13 files changed, 12129 insertions(+), 331 deletions(-) create mode 100644 Cargo.lock delete mode 100644 crates/rpc/rpc-types-compat/src/transaction/signature.rs diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 000000000000..d0ab9f9215c0 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,12018 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "addr2line" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + +[[package]] +name = "aead" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" +dependencies = [ + "crypto-common", + "generic-array", +] + +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + +[[package]] +name = "aes-gcm" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" +dependencies = [ + "aead", + "aes", + "cipher", + "ctr", + "ghash", + "subtle", +] + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom 0.2.15", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "allocator-api2" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" + +[[package]] +name = "alloy-chains" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "836cf02383d9ebb35502d379bcd1ae803155094077eaab9c29131d888cd5fa3e" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "num_enum", + "proptest", + "serde", + "strum", +] + +[[package]] +name = "alloy-consensus" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "arbitrary", + "auto_impl", + "c-kzg", + "derive_more 1.0.0", + "rand 0.8.5", + "serde", + "serde_with", +] + +[[package]] +name = "alloy-contract" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460ab80ce4bda1c80bcf96fe7460520476f2c7b734581c6567fac2708e2a60ef" +dependencies = [ + "alloy-dyn-abi", + "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-eth", + "alloy-sol-types", + "alloy-transport", + "futures", + "futures-util", + "thiserror", +] + +[[package]] +name = "alloy-dyn-abi" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5228b189b18b85761340dc9eaac0141148a8503657b36f9bc3a869413d987ca" +dependencies = [ + "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "const-hex", + "derive_more 1.0.0", + "itoa", + "serde", + "serde_json", + "winnow", +] + +[[package]] +name = "alloy-eip2930" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "rand 0.8.5", + "serde", +] + +[[package]] +name = "alloy-eip7702" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69fb9fd842fdf10a524bbf2c4de6942ad869c1c8c3d128a1b09e67ed5f7cedbd" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "derive_more 1.0.0", + "k256", + "rand 0.8.5", + "serde", + "serde_with", +] + +[[package]] +name = "alloy-eips" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "arbitrary", + "c-kzg", + "derive_more 1.0.0", + "ethereum_ssz", + "ethereum_ssz_derive", + "once_cell", + "serde", + "sha2 0.10.8", +] + +[[package]] +name = "alloy-genesis" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-json-abi" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31a0f0d51db8a1a30a4d98a9f90e090a94c8f44cb4d9eafc7e03aa6d00aae984" +dependencies = [ + "alloy-primitives", + "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-abi" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "alloy-primitives", + "alloy-sol-type-parser 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-sol-types", + "serde", + "serde_json", + "thiserror", + "tracing", +] + +[[package]] +name = "alloy-network" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-json-rpc", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "alloy-signer", + "alloy-sol-types", + "async-trait", + "auto_impl", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-network-primitives" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-node-bindings" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "k256", + "rand 0.8.5", + "serde_json", + "tempfile", + "thiserror", + "tracing", + "url", +] + +[[package]] +name = "alloy-primitives" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "alloy-rlp", + "arbitrary", + "bytes", + "cfg-if", + "const-hex", + "derive_arbitrary", + "derive_more 1.0.0", + "foldhash", + "getrandom 0.2.15", + "hashbrown 0.15.0", + "hex-literal", + "indexmap 2.6.0", + "itoa", + "k256", + "keccak-asm", + "paste", + "proptest", + "proptest-derive", + "rand 0.8.5", + "ruint", + "rustc-hash 2.0.0", + "serde", + "sha3", + "tiny-keccak", +] + +[[package]] +name = "alloy-provider" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-json-rpc", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives", + "alloy-pubsub", + "alloy-rpc-client", + "alloy-rpc-types-admin", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-transport", + "alloy-transport-http", + "alloy-transport-ws", + "async-stream", + "async-trait", + "auto_impl", + "dashmap 6.1.0", + "futures", + "futures-utils-wasm", + "lru", + "parking_lot", + "pin-project", + "reqwest", + "schnellru", + "serde", + "serde_json", + "thiserror", + "tokio", + "tracing", + "url", + "wasmtimer", +] + +[[package]] +name = "alloy-pubsub" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-json-rpc", + "alloy-primitives", + "alloy-transport", + "bimap", + "futures", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.5.1", + "tracing", +] + +[[package]] +name = "alloy-rlp" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0822426598f95e45dd1ea32a738dac057529a709ee645fcc516ffa4cbde08f" +dependencies = [ + "alloy-rlp-derive", + "arrayvec", + "bytes", +] + +[[package]] +name = "alloy-rlp-derive" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b09cae092c27b6f1bde952653a22708691802e57bfef4a2973b80bea21efd3f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "alloy-rpc-client" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-json-rpc", + "alloy-primitives", + "alloy-pubsub", + "alloy-transport", + "alloy-transport-http", + "alloy-transport-ws", + "futures", + "pin-project", + "reqwest", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.5.1", + "tracing", + "url", + "wasmtimer", +] + +[[package]] +name = "alloy-rpc-types" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-rpc-types-admin" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-rpc-types-anvil" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-rpc-types-beacon" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "serde", + "serde_with", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-debug" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "serde", +] + +[[package]] +name = "alloy-rpc-types-engine" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "derive_more 1.0.0", + "ethereum_ssz", + "ethereum_ssz_derive", + "jsonrpsee-types", + "jsonwebtoken", + "rand 0.8.5", + "serde", + "strum", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "alloy-sol-types", + "arbitrary", + "derive_more 1.0.0", + "itertools 0.13.0", + "jsonrpsee-types", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-rpc-types-mev" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-serde", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-rpc-types-trace" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-txpool" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-serde" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "arbitrary", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-signer" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-primitives", + "async-trait", + "auto_impl", + "elliptic-curve", + "k256", + "thiserror", +] + +[[package]] +name = "alloy-signer-local" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-consensus", + "alloy-network", + "alloy-primitives", + "alloy-signer", + "async-trait", + "coins-bip32", + "coins-bip39", + "k256", + "rand 0.8.5", + "thiserror", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841eabaa4710f719fddbc24c95d386eae313f07e6da4babc25830ee37945be0c" +dependencies = [ + "alloy-sol-macro-expander 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "alloy-sol-macro-expander 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6672337f19d837b9f7073c45853aeb528ed9f7dd6a4154ce683e9e5cb7794014" +dependencies = [ + "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "const-hex", + "heck", + "indexmap 2.6.0", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "const-hex", + "heck", + "indexmap 2.6.0", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro-input" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dff37dd20bfb118b777c96eda83b2067f4226d2644c5cfa00187b3bc01770ba" +dependencies = [ + "const-hex", + "dunce", + "heck", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "alloy-sol-macro-input" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "const-hex", + "dunce", + "heck", + "proc-macro2", + "quote", + "syn 2.0.86", + "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b853d42292dbb159671a3edae3b2750277ff130f32b726fe07dc2b17aa6f2b5" +dependencies = [ + "serde", + "winnow", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "serde", + "winnow", +] + +[[package]] +name = "alloy-sol-types" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "alloy-json-abi 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-primitives", + "alloy-sol-macro 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "const-hex", + "serde", +] + +[[package]] +name = "alloy-transport" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-json-rpc", + "base64 0.22.1", + "futures-util", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror", + "tokio", + "tower 0.5.1", + "tracing", + "url", + "wasmtimer", +] + +[[package]] +name = "alloy-transport-http" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-json-rpc", + "alloy-transport", + "reqwest", + "serde_json", + "tower 0.5.1", + "tracing", + "url", +] + +[[package]] +name = "alloy-transport-ipc" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-json-rpc", + "alloy-pubsub", + "alloy-transport", + "bytes", + "futures", + "interprocess", + "pin-project", + "serde_json", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "alloy-transport-ws" +version = "0.5.4" +source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +dependencies = [ + "alloy-pubsub", + "alloy-transport", + "futures", + "http", + "rustls", + "serde_json", + "tokio", + "tokio-tungstenite", + "tracing", + "ws_stream_wasm", +] + +[[package]] +name = "alloy-trie" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdd7f8b3a7c65ca09b3c7bdd7c7d72d7423d026f5247eda96af53d24e58315c1" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "arrayvec", + "derive_arbitrary", + "derive_more 1.0.0", + "nybbles", + "proptest", + "proptest-derive", + "serde", + "smallvec", + "tracing", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anes" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" + +[[package]] +name = "anstream" +version = "0.6.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23a1e53f0f5d86382dafe1cf314783b2044280f406e7e1506368220ad11b1338" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" + +[[package]] +name = "anstyle-parse" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125" +dependencies = [ + "anstyle", + "windows-sys 0.59.0", +] + +[[package]] +name = "anyhow" +version = "1.0.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" + +[[package]] +name = "aquamarine" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f50776554130342de4836ba542aa85a4ddb361690d7e8df13774d7284c3d5c2" +dependencies = [ + "include_dir", + "itertools 0.10.5", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "arbitrary" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" +dependencies = [ + "derive_arbitrary", +] + +[[package]] +name = "ark-ff" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" +dependencies = [ + "ark-ff-asm 0.3.0", + "ark-ff-macros 0.3.0", + "ark-serialize 0.3.0", + "ark-std 0.3.0", + "derivative", + "num-bigint", + "num-traits", + "paste", + "rustc_version 0.3.3", + "zeroize", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm 0.4.2", + "ark-ff-macros 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version 0.4.1", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" +dependencies = [ + "num-bigint", + "num-traits", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-serialize" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" +dependencies = [ + "ark-std 0.3.0", + "digest 0.9.0", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-std 0.4.0", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-std" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand 0.8.5", +] + +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +dependencies = [ + "serde", +] + +[[package]] +name = "asn1_der" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "155a5a185e42c6b77ac7b88a15143d930a9e9727a5b7b77eed417404ab15c247" + +[[package]] +name = "assert_matches" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" + +[[package]] +name = "async-channel" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" +dependencies = [ + "concurrent-queue", + "event-listener", + "futures-core", +] + +[[package]] +name = "async-compression" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cb8f1d480b0ea3783ab015936d2a55c87e219676f0c0b7dec61494043f21857" +dependencies = [ + "brotli", + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", + "zstd", + "zstd-safe", +] + +[[package]] +name = "async-sse" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e6fa871e4334a622afd6bb2f611635e8083a6f5e2936c0f90f37c7ef9856298" +dependencies = [ + "async-channel", + "futures-lite", + "http-types", + "log", + "memchr", + "pin-project-lite", +] + +[[package]] +name = "async-stream" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "async-trait" +version = "0.1.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "async_io_stream" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" +dependencies = [ + "futures", + "pharos", + "rustc_version 0.4.1", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "aurora-engine-modexp" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" +dependencies = [ + "hex", + "num", +] + +[[package]] +name = "auto_impl" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "backon" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4fa97bb310c33c811334143cf64c5bb2b7b3c06e453db6b095d7061eff8f113" +dependencies = [ + "fastrand 2.1.1", + "tokio", +] + +[[package]] +name = "backtrace" +version = "0.3.74" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +dependencies = [ + "addr2line", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", + "windows-targets 0.52.6", +] + +[[package]] +name = "base-x" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270" + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + +[[package]] +name = "bech32" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" + +[[package]] +name = "bimap" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "bindgen" +version = "0.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +dependencies = [ + "bitflags 2.6.0", + "cexpr", + "clang-sys", + "itertools 0.13.0", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.86", +] + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" +dependencies = [ + "arbitrary", + "serde", +] + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "serde", + "tap", + "wyz", +] + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block-padding" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" +dependencies = [ + "generic-array", +] + +[[package]] +name = "blst" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" +dependencies = [ + "cc", + "glob", + "threadpool", + "zeroize", +] + +[[package]] +name = "boa_ast" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a69ee3a749ea36d4e56d92941e7b25076b493d4917c3d155b6cf369e23547d9" +dependencies = [ + "bitflags 2.6.0", + "boa_interner", + "boa_macros", + "indexmap 2.6.0", + "num-bigint", + "rustc-hash 2.0.0", +] + +[[package]] +name = "boa_engine" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06e4559b35b80ceb2e6328481c0eca9a24506663ea33ee1e279be6b5b618b25c" +dependencies = [ + "arrayvec", + "bitflags 2.6.0", + "boa_ast", + "boa_gc", + "boa_interner", + "boa_macros", + "boa_parser", + "boa_profiler", + "boa_string", + "bytemuck", + "cfg-if", + "dashmap 5.5.3", + "fast-float", + "hashbrown 0.14.5", + "icu_normalizer", + "indexmap 2.6.0", + "intrusive-collections", + "itertools 0.13.0", + "num-bigint", + "num-integer", + "num-traits", + "num_enum", + "once_cell", + "pollster", + "portable-atomic", + "rand 0.8.5", + "regress", + "rustc-hash 2.0.0", + "ryu-js", + "serde", + "serde_json", + "sptr", + "static_assertions", + "tap", + "thin-vec", + "thiserror", + "time", +] + +[[package]] +name = "boa_gc" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "716406f57d67bc3ac7fd227d5513b42df401dff14a3be22cbd8ee29817225363" +dependencies = [ + "boa_macros", + "boa_profiler", + "boa_string", + "hashbrown 0.14.5", + "thin-vec", +] + +[[package]] +name = "boa_interner" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e18df2272616e1ba0322a69333d37dbb78797f1aa0595aad9dc41e8ecd06ad9" +dependencies = [ + "boa_gc", + "boa_macros", + "hashbrown 0.14.5", + "indexmap 2.6.0", + "once_cell", + "phf", + "rustc-hash 2.0.0", + "static_assertions", +] + +[[package]] +name = "boa_macros" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240f4126219a83519bad05c9a40bfc0303921eeb571fc2d7e44c17ffac99d3f1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", + "synstructure", +] + +[[package]] +name = "boa_parser" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b59dc05bf1dc019b11478a92986f590cff43fced4d20e866eefb913493e91c" +dependencies = [ + "bitflags 2.6.0", + "boa_ast", + "boa_interner", + "boa_macros", + "boa_profiler", + "fast-float", + "icu_properties", + "num-bigint", + "num-traits", + "regress", + "rustc-hash 2.0.0", +] + +[[package]] +name = "boa_profiler" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00ee0645509b3b91abd724f25072649d9e8e65653a78ff0b6e592788a58dd838" + +[[package]] +name = "boa_string" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae85205289bab1f2c7c8a30ddf0541cf89ba2ff7dbd144feef50bbfa664288d4" +dependencies = [ + "fast-float", + "paste", + "rustc-hash 2.0.0", + "sptr", + "static_assertions", +] + +[[package]] +name = "boyer-moore-magiclen" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95e6233f2d926b5b123caf9d58e3885885255567fbe7776a7fdcae2a4d7241c4" +dependencies = [ + "debug-helper", +] + +[[package]] +name = "brotli" +version = "7.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc97b8f16f944bba54f0433f07e30be199b6dc2bd25937444bbad560bcea29bd" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bs58" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +dependencies = [ + "sha2 0.10.8", + "tinyvec", +] + +[[package]] +name = "bstr" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" +dependencies = [ + "memchr", + "regex-automata 0.4.8", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "byte-slice-cast" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" + +[[package]] +name = "bytemuck" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" +dependencies = [ + "serde", +] + +[[package]] +name = "c-kzg" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0307f72feab3300336fb803a57134159f6e20139af1357f36c54cb90d8e8928" +dependencies = [ + "blst", + "cc", + "glob", + "hex", + "libc", + "once_cell", + "serde", +] + +[[package]] +name = "camino" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo-platform" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" +dependencies = [ + "camino", + "cargo-platform", + "semver 1.0.23", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "cassowary" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53" + +[[package]] +name = "cast" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" + +[[package]] +name = "castaway" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5" +dependencies = [ + "rustversion", +] + +[[package]] +name = "cc" +version = "1.1.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" +dependencies = [ + "jobserver", + "libc", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.52.6", +] + +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half", +] + +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "clap" +version = "4.5.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b97f376d85a664d5837dbae44bf546e6477a679ff6610010f17276f686d867e8" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19bc80abd44e4bed93ca373a0704ccbd1b710dc5749406201bb018272808dc54" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "clap_lex" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" + +[[package]] +name = "coins-bip32" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2073678591747aed4000dd468b97b14d7007f7936851d3f2f01846899f5ebf08" +dependencies = [ + "bs58", + "coins-core", + "digest 0.10.7", + "hmac 0.12.1", + "k256", + "serde", + "sha2 0.10.8", + "thiserror", +] + +[[package]] +name = "coins-bip39" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74b169b26623ff17e9db37a539fe4f15342080df39f129ef7631df7683d6d9d4" +dependencies = [ + "bitvec", + "coins-bip32", + "hmac 0.12.1", + "once_cell", + "pbkdf2", + "rand 0.8.5", + "sha2 0.10.8", + "thiserror", +] + +[[package]] +name = "coins-core" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b962ad8545e43a28e14e87377812ba9ae748dd4fd963f4c10e9fcc6d13475b" +dependencies = [ + "base64 0.21.7", + "bech32", + "bs58", + "const-hex", + "digest 0.10.7", + "generic-array", + "ripemd", + "serde", + "sha2 0.10.8", + "sha3", + "thiserror", +] + +[[package]] +name = "colorchoice" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "comfy-table" +version = "7.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" +dependencies = [ + "crossterm 0.27.0", + "strum", + "strum_macros", + "unicode-width", +] + +[[package]] +name = "compact_str" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6050c3a16ddab2e412160b31f2c871015704239bca62f72f6e5f0be631d3f644" +dependencies = [ + "castaway", + "cfg-if", + "itoa", + "rustversion", + "ryu", + "static_assertions", +] + +[[package]] +name = "concat-kdf" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d72c1252426a83be2092dd5884a5f6e3b8e7180f6891b6263d2c21b92ec8816" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "concurrent-queue" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "console" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" +dependencies = [ + "encode_unicode", + "lazy_static", + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "const-hex" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" +dependencies = [ + "cfg-if", + "cpufeatures", + "hex", + "proptest", + "serde", +] + +[[package]] +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] +name = "const_format" +version = "0.2.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50c655d81ff1114fb0dcdea9225ea9f0cc712a6f8d189378e82bdf62a473a64b" +dependencies = [ + "const_format_proc_macros", + "konst", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eff1a44b93f47b1bac19a27932f5c591e43d1ba357ee4f61526c8a25603f0eb1" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core2" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" +dependencies = [ + "memchr", +] + +[[package]] +name = "cpp_demangle" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96e58d342ad113c2b878f16d5d034c03be492ae460cdbc02b7f0f2284d310c7d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "cpufeatures" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +dependencies = [ + "libc", +] + +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "criterion" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" +dependencies = [ + "anes", + "cast", + "ciborium", + "clap", + "criterion-plot", + "futures", + "is-terminal", + "itertools 0.10.5", + "num-traits", + "once_cell", + "oorandom", + "plotters", + "rayon", + "regex", + "serde", + "serde_derive", + "serde_json", + "tinytemplate", + "tokio", + "walkdir", +] + +[[package]] +name = "criterion-plot" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" +dependencies = [ + "cast", + "itertools 0.10.5", +] + +[[package]] +name = "critical-section" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" + +[[package]] +name = "crossbeam-channel" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + +[[package]] +name = "crossterm" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df" +dependencies = [ + "bitflags 2.6.0", + "crossterm_winapi", + "libc", + "parking_lot", + "winapi", +] + +[[package]] +name = "crossterm" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" +dependencies = [ + "bitflags 2.6.0", + "crossterm_winapi", + "mio 1.0.2", + "parking_lot", + "rustix", + "signal-hook", + "signal-hook-mio", + "winapi", +] + +[[package]] +name = "crossterm_winapi" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" +dependencies = [ + "winapi", +] + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "typenum", +] + +[[package]] +name = "crypto-mac" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" +dependencies = [ + "generic-array", + "subtle", +] + +[[package]] +name = "csv" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" +dependencies = [ + "csv-core", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "csv-core" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" +dependencies = [ + "memchr", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", +] + +[[package]] +name = "curve25519-dalek" +version = "4.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" +dependencies = [ + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "rustc_version 0.4.1", + "subtle", + "zeroize", +] + +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "darling" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.86", +] + +[[package]] +name = "darling_macro" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", +] + +[[package]] +name = "dashmap" +version = "6.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" +dependencies = [ + "cfg-if", + "crossbeam-utils", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", + "serde", +] + +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + +[[package]] +name = "data-encoding-macro" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1559b6cba622276d6d63706db152618eeb15b89b3e4041446b05876e352e639" +dependencies = [ + "data-encoding", + "data-encoding-macro-internal", +] + +[[package]] +name = "data-encoding-macro-internal" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "332d754c0af53bc87c108fed664d121ecf59207ec4196041f04d6ab9002ad33f" +dependencies = [ + "data-encoding", + "syn 1.0.109", +] + +[[package]] +name = "debug-helper" +version = "0.3.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f578e8e2c440e7297e008bb5486a3a8a194775224bbc23729b0dbdfaeebf162e" + +[[package]] +name = "debugid" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef552e6f588e446098f6ba40d89ac146c8c7b64aade83c051ee00bb5d2bc18d" +dependencies = [ + "uuid", +] + +[[package]] +name = "delay_map" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df941644b671f05f59433e481ba0d31ac10e3667de725236a4c0d587c496fba1" +dependencies = [ + "futures", + "tokio", + "tokio-util", +] + +[[package]] +name = "der" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_arbitrary" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "derive_more" +version = "0.99.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "derive_more" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "syn 2.0.86", + "unicode-xid", +] + +[[package]] +name = "diff" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer 0.10.4", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "discv5" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23e6b70634e26c909d1edbb3142b3eaf3b89da0e52f284f00ca7c80d9901ad9e" +dependencies = [ + "aes", + "aes-gcm", + "alloy-rlp", + "arrayvec", + "ctr", + "delay_map", + "enr", + "fnv", + "futures", + "hashlink", + "hex", + "hkdf", + "lazy_static", + "libp2p-identity", + "lru", + "more-asserts", + "multiaddr", + "parking_lot", + "rand 0.8.5", + "smallvec", + "socket2", + "tokio", + "tracing", + "uint 0.10.0", + "zeroize", +] + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "doctest-file" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" + +[[package]] +name = "downcast" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "signature", + "spki", +] + +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8", + "signature", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +dependencies = [ + "curve25519-dalek", + "ed25519", + "rand_core 0.6.4", + "serde", + "sha2 0.10.8", + "subtle", + "zeroize", +] + +[[package]] +name = "ef-tests" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "rayon", + "reth-chainspec", + "reth-db", + "reth-db-api", + "reth-evm-ethereum", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-stages", + "revm", + "serde", + "serde_json", + "thiserror", + "walkdir", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pkcs8", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", +] + +[[package]] +name = "encode_unicode" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" + +[[package]] +name = "enr" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "972070166c68827e64bd1ebc8159dd8e32d9bc2da7ebe8f20b61308f7974ad30" +dependencies = [ + "alloy-rlp", + "base64 0.21.7", + "bytes", + "ed25519-dalek", + "hex", + "k256", + "log", + "rand 0.8.5", + "secp256k1", + "serde", + "sha3", + "zeroize", +] + +[[package]] +name = "enum-as-inner" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "enumn" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "ethereum_serde_utils" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70cbccfccf81d67bff0ab36e591fa536c8a935b078a7b0e58c1d00d418332fc9" +dependencies = [ + "alloy-primitives", + "hex", + "serde", + "serde_derive", + "serde_json", +] + +[[package]] +name = "ethereum_ssz" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfbba28f4f3f32d92c06a64f5bf6c4537b5d4e21f28c689bd2bbaecfea4e0d3e" +dependencies = [ + "alloy-primitives", + "derivative", + "ethereum_serde_utils", + "itertools 0.13.0", + "serde", + "serde_derive", + "smallvec", + "typenum", +] + +[[package]] +name = "ethereum_ssz_derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d37845ba7c16bf4be8be4b5786f03a2ba5f2fda0d7f9e7cb2282f69cff420d7" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "example-beacon-api-sidecar-fetcher" +version = "0.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-beacon", + "clap", + "eyre", + "futures-util", + "reqwest", + "reth", + "reth-node-ethereum", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "example-beacon-api-sse" +version = "0.0.0" +dependencies = [ + "alloy-rpc-types-beacon", + "clap", + "futures-util", + "mev-share-sse", + "reth", + "reth-node-ethereum", + "tokio", + "tracing", +] + +[[package]] +name = "example-bsc-p2p" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "reth-chainspec", + "reth-discv4", + "reth-network", + "reth-network-api", + "reth-network-peers", + "reth-primitives", + "reth-tracing", + "secp256k1", + "serde_json", + "tokio", + "tokio-stream", +] + +[[package]] +name = "example-custom-beacon-withdrawals" +version = "0.0.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-sol-macro 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "eyre", + "reth", + "reth-chainspec", + "reth-evm", + "reth-evm-ethereum", + "reth-node-ethereum", + "reth-primitives", +] + +[[package]] +name = "example-custom-dev-node" +version = "0.0.0" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "eyre", + "futures-util", + "reth", + "reth-chainspec", + "reth-node-core", + "reth-node-ethereum", + "serde_json", + "tokio", +] + +[[package]] +name = "example-custom-engine-types" +version = "0.0.0" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "alloy-rpc-types", + "eyre", + "reth", + "reth-basic-payload-builder", + "reth-chainspec", + "reth-ethereum-payload-builder", + "reth-node-api", + "reth-node-core", + "reth-node-ethereum", + "reth-payload-builder", + "reth-primitives", + "reth-tracing", + "reth-trie-db", + "serde", + "thiserror", + "tokio", +] + +[[package]] +name = "example-custom-evm" +version = "0.0.0" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "eyre", + "reth", + "reth-chainspec", + "reth-evm-ethereum", + "reth-node-api", + "reth-node-core", + "reth-node-ethereum", + "reth-primitives", + "reth-tracing", + "tokio", +] + +[[package]] +name = "example-custom-inspector" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "clap", + "futures-util", + "reth", + "reth-node-ethereum", +] + +[[package]] +name = "example-custom-node-components" +version = "0.0.0" +dependencies = [ + "eyre", + "reth", + "reth-node-ethereum", + "reth-tracing", + "reth-transaction-pool", +] + +[[package]] +name = "example-custom-payload-builder" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "eyre", + "futures-util", + "reth", + "reth-basic-payload-builder", + "reth-chainspec", + "reth-ethereum-payload-builder", + "reth-node-api", + "reth-node-ethereum", + "reth-payload-builder", + "reth-primitives", + "tracing", +] + +[[package]] +name = "example-custom-rlpx-subprotocol" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "eyre", + "futures", + "rand 0.8.5", + "reth", + "reth-eth-wire", + "reth-network", + "reth-network-api", + "reth-node-ethereum", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "example-db-access" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "eyre", + "reth-chainspec", + "reth-db", + "reth-node-ethereum", + "reth-node-types", + "reth-primitives", + "reth-provider", +] + +[[package]] +name = "example-manual-p2p" +version = "0.0.0" +dependencies = [ + "alloy-consensus", + "eyre", + "futures", + "reth-chainspec", + "reth-discv4", + "reth-ecies", + "reth-eth-wire", + "reth-network", + "reth-network-peers", + "reth-primitives", + "secp256k1", + "tokio", +] + +[[package]] +name = "example-network" +version = "0.0.0" +dependencies = [ + "eyre", + "futures", + "reth-network", + "reth-provider", + "tokio", +] + +[[package]] +name = "example-network-txpool" +version = "0.0.0" +dependencies = [ + "eyre", + "reth-network", + "reth-provider", + "reth-transaction-pool", + "tokio", +] + +[[package]] +name = "example-node-custom-rpc" +version = "0.0.0" +dependencies = [ + "clap", + "jsonrpsee", + "reth", + "reth-node-ethereum", + "reth-transaction-pool", + "tokio", +] + +[[package]] +name = "example-node-event-hooks" +version = "0.0.0" +dependencies = [ + "reth", + "reth-node-ethereum", +] + +[[package]] +name = "example-polygon-p2p" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "reth-chainspec", + "reth-discv4", + "reth-network", + "reth-primitives", + "reth-tracing", + "secp256k1", + "serde_json", + "tokio", + "tokio-stream", +] + +[[package]] +name = "example-rpc-db" +version = "0.0.0" +dependencies = [ + "eyre", + "futures", + "jsonrpsee", + "reth", + "reth-chainspec", + "reth-db", + "reth-node-ethereum", + "reth-provider", + "tokio", +] + +[[package]] +name = "example-stateful-precompile" +version = "0.0.0" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "eyre", + "parking_lot", + "reth", + "reth-chainspec", + "reth-node-api", + "reth-node-core", + "reth-node-ethereum", + "reth-primitives", + "reth-tracing", + "schnellru", + "tokio", +] + +[[package]] +name = "example-txpool-tracing" +version = "0.0.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-trace", + "clap", + "futures-util", + "reth", + "reth-node-ethereum", +] + +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fast-float" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95765f67b4b18863968b4a1bd5bb576f732b29a4a28c7cd84c09fa3e2875f33c" + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" + +[[package]] +name = "fastrlp" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + +[[package]] +name = "fdlimit" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" +dependencies = [ + "libc", + "thiserror", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "fiat-crypto" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" + +[[package]] +name = "filetime" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +dependencies = [ + "cfg-if", + "libc", + "libredox", + "windows-sys 0.59.0", +] + +[[package]] +name = "findshlibs" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40b9e59cd0f7e0806cca4be089683ecb6434e602038df21fe6bf6711b2f07f64" +dependencies = [ + "cc", + "lazy_static", + "libc", + "winapi", +] + +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "byteorder", + "rand 0.8.5", + "rustc-hex", + "static_assertions", +] + +[[package]] +name = "flate2" +version = "1.0.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foldhash" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fragile" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-executor" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-lite" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" +dependencies = [ + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + +[[package]] +name = "futures-macro" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + +[[package]] +name = "futures-task" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" + +[[package]] +name = "futures-timer" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" +dependencies = [ + "gloo-timers", + "send_wrapper 0.4.0", +] + +[[package]] +name = "futures-util" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "futures-utils-wasm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" + +[[package]] +name = "generator" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb949699c3e4df3a183b1d2142cb24277057055ed23c68ed58894f76c517223" +dependencies = [ + "cfg-if", + "libc", + "log", + "rustversion", + "windows 0.58.0", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "serde", + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "ghash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" +dependencies = [ + "opaque-debug", + "polyval", +] + +[[package]] +name = "gimli" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "gloo-net" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06f627b1a58ca3d42b45d6104bf1e1a03799df472df00988b6ba21accc10580" +dependencies = [ + "futures-channel", + "futures-core", + "futures-sink", + "gloo-utils", + "http", + "js-sys", + "pin-project", + "serde", + "serde_json", + "thiserror", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "gloo-timers" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" +dependencies = [ + "futures-channel", + "futures-core", + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "gloo-utils" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa" +dependencies = [ + "js-sys", + "serde", + "serde_json", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core 0.6.4", + "subtle", +] + +[[package]] +name = "h2" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "half" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" +dependencies = [ + "cfg-if", + "crunchy", +] + +[[package]] +name = "hash-db" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash", + "allocator-api2", +] + +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", + "serde", +] + +[[package]] +name = "hashlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af" +dependencies = [ + "hashbrown 0.14.5", +] + +[[package]] +name = "hdrhistogram" +version = "7.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" +dependencies = [ + "byteorder", + "num-traits", +] + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hermit-abi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + +[[package]] +name = "hkdf" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +dependencies = [ + "hmac 0.12.1", +] + +[[package]] +name = "hmac" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" +dependencies = [ + "crypto-mac", + "digest 0.9.0", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "hmac-drbg" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" +dependencies = [ + "digest 0.9.0", + "generic-array", + "hmac 0.8.1", +] + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http", +] + +[[package]] +name = "http-body-util" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +dependencies = [ + "bytes", + "futures-util", + "http", + "http-body", + "pin-project-lite", +] + +[[package]] +name = "http-range-header" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08a397c49fec283e3d6211adbe480be95aae5f304cfb923e9970e08956d5168a" + +[[package]] +name = "http-types" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e9b187a72d63adbfba487f48095306ac823049cb504ee195541e91c7775f5ad" +dependencies = [ + "anyhow", + "async-channel", + "base64 0.13.1", + "futures-lite", + "infer", + "pin-project-lite", + "rand 0.7.3", + "serde", + "serde_json", + "serde_qs", + "serde_urlencoded", + "url", +] + +[[package]] +name = "httparse" +version = "1.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "human_bytes" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91f255a4535024abf7640cb288260811fc14794f62b063652ed349f9a6c2348e" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "humantime-serde" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c" +dependencies = [ + "humantime", + "serde", +] + +[[package]] +name = "hyper" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2", + "http", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +dependencies = [ + "futures-util", + "http", + "hyper", + "hyper-util", + "log", + "rustls", + "rustls-native-certs 0.8.0", + "rustls-pki-types", + "tokio", + "tokio-rustls", + "tower-service", + "webpki-roots", +] + +[[package]] +name = "hyper-util" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http", + "http-body", + "hyper", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", +] + +[[package]] +name = "iai-callgrind" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bd871e6374d5ca2d9b48dd23b3c7ef63a4201728621f6d75937dfcc66e91809" +dependencies = [ + "bincode", + "derive_more 0.99.18", + "iai-callgrind-macros", + "iai-callgrind-runner", +] + +[[package]] +name = "iai-callgrind-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "397649417510422ded7033f86132f833cca8c2e5081d0dfbec939b2353da7021" +dependencies = [ + "derive_more 0.99.18", + "proc-macro-error2", + "proc-macro2", + "quote", + "serde", + "serde_json", + "syn 2.0.86", +] + +[[package]] +name = "iai-callgrind-runner" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3783c337f9e931af702b5d5835ff2a6824bf55e416461a4e042dfb4b8fdbbea" +dependencies = [ + "serde", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core 0.52.0", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "if-addrs" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a78a89907582615b19f6f0da1af18abf6ff08be259395669b834b057a7ee92d8" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "include_dir" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" +dependencies = [ + "include_dir_macros", +] + +[[package]] +name = "include_dir_macros" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +dependencies = [ + "arbitrary", + "equivalent", + "hashbrown 0.15.0", + "serde", +] + +[[package]] +name = "infer" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64e9829a50b42bb782c1df523f78d332fe371b10c661e78b7a3c34b0198e9fac" + +[[package]] +name = "inferno" +version = "0.11.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "232929e1d75fe899576a3d5c7416ad0d88dbfbb3c3d6aa00873a7408a50ddb88" +dependencies = [ + "ahash", + "indexmap 2.6.0", + "is-terminal", + "itoa", + "log", + "num-format", + "once_cell", + "quick-xml", + "rgb", + "str_stack", +] + +[[package]] +name = "inotify" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" +dependencies = [ + "bitflags 1.3.2", + "inotify-sys", + "libc", +] + +[[package]] +name = "inotify-sys" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] + +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "block-padding", + "generic-array", +] + +[[package]] +name = "instability" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b23a0c8dfe501baac4adf6ebbfa6eddf8f0c07f56b058cc1288017e32397846c" +dependencies = [ + "quote", + "syn 2.0.86", +] + +[[package]] +name = "instant" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "interprocess" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2f4e4a06d42fab3e85ab1b419ad32b09eab58b901d40c57935ff92db3287a13" +dependencies = [ + "doctest-file", + "futures-core", + "libc", + "recvmsg", + "tokio", + "widestring", + "windows-sys 0.52.0", +] + +[[package]] +name = "intrusive-collections" +version = "0.9.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "189d0897e4cbe8c75efedf3502c18c887b05046e59d28404d4d8e46cbc4d1e86" +dependencies = [ + "memoffset", +] + +[[package]] +name = "ipconfig" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2", + "widestring", + "windows-sys 0.48.0", + "winreg", +] + +[[package]] +name = "ipnet" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" + +[[package]] +name = "iri-string" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc0f0a572e8ffe56e2ff4f769f32ffe919282c3916799f8b68688b6030063bea" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "is-terminal" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" +dependencies = [ + "hermit-abi 0.4.0", + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "jni" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6df18c2e3db7e453d3c6ac5b3e9d5182664d28788126d39b91f2d1e22b017ec" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "jobserver" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" +dependencies = [ + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.72" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "jsonrpsee" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5c71d8c1a731cc4227c2f698d377e7848ca12c8a48866fc5e6951c43a4db843" +dependencies = [ + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-http-client", + "jsonrpsee-proc-macros", + "jsonrpsee-server", + "jsonrpsee-types", + "jsonrpsee-wasm-client", + "jsonrpsee-ws-client", + "tokio", + "tracing", +] + +[[package]] +name = "jsonrpsee-client-transport" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "548125b159ba1314104f5bb5f38519e03a41862786aa3925cf349aae9cdd546e" +dependencies = [ + "base64 0.22.1", + "futures-channel", + "futures-util", + "gloo-net", + "http", + "jsonrpsee-core", + "pin-project", + "rustls", + "rustls-pki-types", + "rustls-platform-verifier", + "soketto", + "thiserror", + "tokio", + "tokio-rustls", + "tokio-util", + "tracing", + "url", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2882f6f8acb9fdaec7cefc4fd607119a9bd709831df7d7672a1d3b644628280" +dependencies = [ + "async-trait", + "bytes", + "futures-timer", + "futures-util", + "http", + "http-body", + "http-body-util", + "jsonrpsee-types", + "parking_lot", + "pin-project", + "rand 0.8.5", + "rustc-hash 2.0.0", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-stream", + "tracing", + "wasm-bindgen-futures", +] + +[[package]] +name = "jsonrpsee-http-client" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3638bc4617f96675973253b3a45006933bde93c2fd8a6170b33c777cc389e5b" +dependencies = [ + "async-trait", + "base64 0.22.1", + "http-body", + "hyper", + "hyper-rustls", + "hyper-util", + "jsonrpsee-core", + "jsonrpsee-types", + "rustls", + "rustls-platform-verifier", + "serde", + "serde_json", + "thiserror", + "tokio", + "tower 0.4.13", + "tracing", + "url", +] + +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06c01ae0007548e73412c08e2285ffe5d723195bf268bce67b1b77c3bb2a14d" +dependencies = [ + "heck", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "jsonrpsee-server" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82ad8ddc14be1d4290cd68046e7d1d37acd408efed6d3ca08aefcc3ad6da069c" +dependencies = [ + "futures-util", + "http", + "http-body", + "http-body-util", + "hyper", + "hyper-util", + "jsonrpsee-core", + "jsonrpsee-types", + "pin-project", + "route-recognizer", + "serde", + "serde_json", + "soketto", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tower 0.4.13", + "tracing", +] + +[[package]] +name = "jsonrpsee-types" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a178c60086f24cc35bb82f57c651d0d25d99c4742b4d335de04e97fa1f08a8a1" +dependencies = [ + "http", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "jsonrpsee-wasm-client" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a01cd500915d24ab28ca17527e23901ef1be6d659a2322451e1045532516c25" +dependencies = [ + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-types", +] + +[[package]] +name = "jsonrpsee-ws-client" +version = "0.24.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fe322e0896d0955a3ebdd5bf813571c53fea29edd713bc315b76620b327e86d" +dependencies = [ + "http", + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-types", + "url", +] + +[[package]] +name = "jsonwebtoken" +version = "9.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +dependencies = [ + "base64 0.21.7", + "js-sys", + "pem", + "ring", + "serde", + "serde_json", + "simple_asn1", +] + +[[package]] +name = "k256" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +dependencies = [ + "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2 0.10.8", + "signature", +] + +[[package]] +name = "keccak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "keccak-asm" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" +dependencies = [ + "digest 0.10.7", + "sha3-asm", +] + +[[package]] +name = "konst" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "330f0e13e6483b8c34885f7e6c9f19b1a7bd449c673fbb948a51c99d66ef74f4" +dependencies = [ + "konst_macro_rules", +] + +[[package]] +name = "konst_macro_rules" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4933f3f57a8e9d9da04db23fb153356ecaf00cbd14aee46279c33dc80925c37" + +[[package]] +name = "kqueue" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" +dependencies = [ + "kqueue-sys", + "libc", +] + +[[package]] +name = "kqueue-sys" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" +dependencies = [ + "bitflags 1.3.2", + "libc", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +dependencies = [ + "spin", +] + +[[package]] +name = "libc" +version = "0.2.161" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" + +[[package]] +name = "libloading" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +dependencies = [ + "cfg-if", + "windows-targets 0.52.6", +] + +[[package]] +name = "libm" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" + +[[package]] +name = "libp2p-identity" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55cca1eb2bc1fd29f099f3daaab7effd01e1a54b7c577d0ed082521034d912e8" +dependencies = [ + "asn1_der", + "bs58", + "ed25519-dalek", + "hkdf", + "libsecp256k1", + "multihash", + "quick-protobuf", + "sha2 0.10.8", + "thiserror", + "tracing", + "zeroize", +] + +[[package]] +name = "libproc" +version = "0.14.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e78a09b56be5adbcad5aa1197371688dc6bb249a26da3bca2011ee2fb987ebfb" +dependencies = [ + "bindgen", + "errno", + "libc", +] + +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags 2.6.0", + "libc", + "redox_syscall", +] + +[[package]] +name = "libsecp256k1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" +dependencies = [ + "arrayref", + "base64 0.13.1", + "digest 0.9.0", + "hmac-drbg", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.8.5", + "serde", + "sha2 0.9.9", + "typenum", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linked_hash_set" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47186c6da4d81ca383c7c47c1bfc80f4b95f4720514d860a5407aaf4233f9588" +dependencies = [ + "linked-hash-map", + "serde", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "litemap" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" + +[[package]] +name = "lock_api" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +dependencies = [ + "autocfg", + "scopeguard", + "serde", +] + +[[package]] +name = "log" +version = "0.4.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + +[[package]] +name = "loom" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" +dependencies = [ + "cfg-if", + "generator", + "scoped-tls", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +dependencies = [ + "hashbrown 0.15.0", +] + +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "lz4_flex" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" + +[[package]] +name = "mach2" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709" +dependencies = [ + "libc", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "memmap2" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "metrics" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ae428771d17306715c5091d446327d1cfdedc82185c65ba8423ab404e45bf10" +dependencies = [ + "ahash", + "portable-atomic", +] + +[[package]] +name = "metrics-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" +dependencies = [ + "proc-macro2", + "quote", + "regex", + "syn 2.0.86", +] + +[[package]] +name = "metrics-exporter-prometheus" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85b6f8152da6d7892ff1b7a1c0fa3f435e92b5918ad67035c3bb432111d9a29b" +dependencies = [ + "base64 0.22.1", + "indexmap 2.6.0", + "metrics", + "metrics-util", + "quanta", + "thiserror", +] + +[[package]] +name = "metrics-process" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57ca8ecd85575fbb143b2678cb123bb818779391ec0f745b1c4a9dbabadde407" +dependencies = [ + "libc", + "libproc", + "mach2", + "metrics", + "once_cell", + "procfs 0.17.0", + "rlimit", + "windows 0.58.0", +] + +[[package]] +name = "metrics-util" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15b482df36c13dd1869d73d14d28cd4855fbd6cfc32294bee109908a9f4a4ed7" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", + "hashbrown 0.15.0", + "metrics", + "quanta", + "sketches-ddsketch", +] + +[[package]] +name = "mev-share-sse" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc8342aaf4a3c2a1b2612bdf5cd1aa423918e0f1a0d9242aaeefbffd49457cad" +dependencies = [ + "alloy-primitives", + "async-sse", + "bytes", + "futures-util", + "http-types", + "pin-project-lite", + "reqwest", + "serde", + "serde_json", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "mime_guess" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" +dependencies = [ + "mime", + "unicase", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + +[[package]] +name = "mio" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +dependencies = [ + "libc", + "log", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.48.0", +] + +[[package]] +name = "mio" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +dependencies = [ + "hermit-abi 0.3.9", + "libc", + "log", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.52.0", +] + +[[package]] +name = "mockall" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c28b3fb6d753d28c20e826cd46ee611fda1cf3cde03a443a974043247c065a" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "mockall_derive", + "predicates", + "predicates-tree", +] + +[[package]] +name = "mockall_derive" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "341014e7f530314e9a1fdbc7400b244efea7122662c96bfa248c31da5bfb2020" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "modular-bitfield" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +dependencies = [ + "modular-bitfield-impl", + "static_assertions", +] + +[[package]] +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "more-asserts" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fafa6961cabd9c63bcd77a45d7e3b7f3b552b70417831fb0f56db717e72407e" + +[[package]] +name = "multiaddr" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe6351f60b488e04c1d21bc69e56b89cb3f5e8f5d22557d6e8031bdfd79b6961" +dependencies = [ + "arrayref", + "byteorder", + "data-encoding", + "libp2p-identity", + "multibase", + "multihash", + "percent-encoding", + "serde", + "static_assertions", + "unsigned-varint", + "url", +] + +[[package]] +name = "multibase" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404" +dependencies = [ + "base-x", + "data-encoding", + "data-encoding-macro", +] + +[[package]] +name = "multihash" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc41f430805af9d1cf4adae4ed2149c759b877b01d909a1f40256188d09345d2" +dependencies = [ + "core2", + "unsigned-varint", +] + +[[package]] +name = "nix" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" +dependencies = [ + "bitflags 1.3.2", + "cfg-if", + "libc", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "notify" +version = "6.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" +dependencies = [ + "bitflags 2.6.0", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "log", + "mio 0.8.11", + "serde", + "walkdir", + "windows-sys 0.48.0", +] + +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", + "serde", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-format" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3" +dependencies = [ + "arrayvec", + "itoa", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi 0.3.9", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "num_threads" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" +dependencies = [ + "libc", +] + +[[package]] +name = "nybbles" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" +dependencies = [ + "alloy-rlp", + "arbitrary", + "const-hex", + "proptest", + "serde", + "smallvec", +] + +[[package]] +name = "object" +version = "0.36.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +dependencies = [ + "memchr", +] + +[[package]] +name = "once_cell" +version = "1.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +dependencies = [ + "critical-section", + "portable-atomic", +] + +[[package]] +name = "oorandom" +version = "11.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" + +[[package]] +name = "op-alloy-consensus" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "arbitrary", + "derive_more 1.0.0", + "serde", + "serde_with", + "spin", +] + +[[package]] +name = "op-alloy-genesis" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-sol-types", + "serde", + "serde_repr", +] + +[[package]] +name = "op-alloy-network" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-consensus", + "alloy-network", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-signer", + "op-alloy-consensus", + "op-alloy-rpc-types", +] + +[[package]] +name = "op-alloy-protocol" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "async-trait", + "derive_more 1.0.0", + "op-alloy-consensus", + "op-alloy-genesis", + "serde", + "tracing", + "unsigned-varint", +] + +[[package]] +name = "op-alloy-rpc-types" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "arbitrary", + "derive_more 1.0.0", + "op-alloy-consensus", + "serde", + "serde_json", +] + +[[package]] +name = "op-alloy-rpc-types-engine" +version = "0.5.2" +source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-engine", + "alloy-serde", + "derive_more 1.0.0", + "ethereum_ssz", + "op-alloy-protocol", + "serde", + "snap", +] + +[[package]] +name = "op-reth" +version = "1.1.0" +dependencies = [ + "clap", + "reth-cli-util", + "reth-node-builder", + "reth-optimism-chainspec", + "reth-optimism-cli", + "reth-optimism-consensus", + "reth-optimism-evm", + "reth-optimism-forks", + "reth-optimism-node", + "reth-optimism-payload-builder", + "reth-optimism-primitives", + "reth-optimism-rpc", + "reth-provider", + "tracing", +] + +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + +[[package]] +name = "page_size" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "parity-scale-codec" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +dependencies = [ + "arbitrary", + "arrayvec", + "bitvec", + "byte-slice-cast", + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "parking" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest 0.10.7", + "hmac 0.12.1", +] + +[[package]] +name = "pem" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +dependencies = [ + "base64 0.22.1", + "serde", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pest" +version = "2.7.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "879952a81a83930934cbf1786752d6dedc3b1f29e8f8fb2ad1d0a36f377cf442" +dependencies = [ + "memchr", + "thiserror", + "ucd-trie", +] + +[[package]] +name = "pharos" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" +dependencies = [ + "futures", + "rustc_version 0.4.1", +] + +[[package]] +name = "phf" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +dependencies = [ + "phf_macros", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +dependencies = [ + "phf_shared", + "rand 0.8.5", +] + +[[package]] +name = "phf_macros" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" +dependencies = [ + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "phf_shared" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +dependencies = [ + "siphasher", +] + +[[package]] +name = "pin-project" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + +[[package]] +name = "pkg-config" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" + +[[package]] +name = "plain_hasher" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e19e6491bdde87c2c43d70f4c194bc8a758f2eb732df00f61e43f7362e3b4cc" +dependencies = [ + "crunchy", +] + +[[package]] +name = "plotters" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" +dependencies = [ + "num-traits", + "plotters-backend", + "plotters-svg", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "plotters-backend" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" + +[[package]] +name = "plotters-svg" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" +dependencies = [ + "plotters-backend", +] + +[[package]] +name = "pollster" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22686f4785f02a4fcc856d3b3bb19bf6c8160d103f7a99cc258bddd0251dc7f2" + +[[package]] +name = "polyval" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] + +[[package]] +name = "portable-atomic" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "pprof" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef5c97c51bd34c7e742402e216abdeb44d415fbe6ae41d56b114723e953711cb" +dependencies = [ + "backtrace", + "cfg-if", + "criterion", + "findshlibs", + "inferno", + "libc", + "log", + "nix", + "once_cell", + "parking_lot", + "smallvec", + "symbolic-demangle", + "tempfile", + "thiserror", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "predicates" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" +dependencies = [ + "anstyle", + "predicates-core", +] + +[[package]] +name = "predicates-core" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" + +[[package]] +name = "predicates-tree" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" +dependencies = [ + "predicates-core", + "termtree", +] + +[[package]] +name = "pretty_assertions" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" +dependencies = [ + "diff", + "yansi", +] + +[[package]] +name = "prettyplease" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" +dependencies = [ + "proc-macro2", + "syn 2.0.86", +] + +[[package]] +name = "primeorder" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +dependencies = [ + "elliptic-curve", +] + +[[package]] +name = "primitive-types" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-codec", + "uint 0.9.5", +] + +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + +[[package]] +name = "proc-macro-error-attr2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "proc-macro-error2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +dependencies = [ + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "proc-macro2" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "procfs" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" +dependencies = [ + "bitflags 2.6.0", + "chrono", + "flate2", + "hex", + "lazy_static", + "procfs-core 0.16.0", + "rustix", +] + +[[package]] +name = "procfs" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc5b72d8145275d844d4b5f6d4e1eef00c8cd889edb6035c21675d1bb1f45c9f" +dependencies = [ + "bitflags 2.6.0", + "hex", + "procfs-core 0.17.0", + "rustix", +] + +[[package]] +name = "procfs-core" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" +dependencies = [ + "bitflags 2.6.0", + "chrono", + "hex", +] + +[[package]] +name = "procfs-core" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "239df02d8349b06fc07398a3a1697b06418223b1c7725085e801e7c0fc6a12ec" +dependencies = [ + "bitflags 2.6.0", + "hex", +] + +[[package]] +name = "proptest" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +dependencies = [ + "bit-set", + "bit-vec", + "bitflags 2.6.0", + "lazy_static", + "num-traits", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_xorshift", + "regex-syntax 0.8.5", + "rusty-fork", + "tempfile", + "unarray", +] + +[[package]] +name = "proptest-arbitrary-interop" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1981e49bd2432249da8b0e11e5557099a8e74690d6b94e721f7dc0bb7f3555f" +dependencies = [ + "arbitrary", + "proptest", +] + +[[package]] +name = "proptest-derive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff7ff745a347b87471d859a377a9a404361e7efc2a971d73424a6d183c0fc77" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "quanta" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5167a477619228a0b284fac2674e3c388cba90631d7b7de620e6f1fcd08da5" +dependencies = [ + "crossbeam-utils", + "libc", + "once_cell", + "raw-cpuid", + "wasi 0.11.0+wasi-snapshot-preview1", + "web-sys", + "winapi", +] + +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quick-protobuf" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d6da84cc204722a989e01ba2f6e1e276e190f22263d0cb6ce8526fcdb0d2e1f" +dependencies = [ + "byteorder", +] + +[[package]] +name = "quick-xml" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd" +dependencies = [ + "memchr", +] + +[[package]] +name = "quinn" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.0.0", + "rustls", + "socket2", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" +dependencies = [ + "bytes", + "rand 0.8.5", + "ring", + "rustc-hash 2.0.0", + "rustls", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "quinn-udp" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e346e016eacfff12233c243718197ca12f148c84e1e84268a896699b41c71780" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.59.0", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "serde", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.15", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core 0.6.4", +] + +[[package]] +name = "ratatui" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdef7f9be5c0122f890d58bdf4d964349ba6a6161f705907526d891efabba57d" +dependencies = [ + "bitflags 2.6.0", + "cassowary", + "compact_str", + "crossterm 0.28.1", + "instability", + "itertools 0.13.0", + "lru", + "paste", + "strum", + "strum_macros", + "unicode-segmentation", + "unicode-truncate", + "unicode-width", +] + +[[package]] +name = "raw-cpuid" +version = "11.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ab240315c661615f2ee9f0f2cd32d5a7343a84d5ebcccb99d46e6637565e7b0" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "recvmsg" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" + +[[package]] +name = "redox_syscall" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "redox_users" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +dependencies = [ + "getrandom 0.2.15", + "libredox", + "thiserror", +] + +[[package]] +name = "regex" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.8", + "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", +] + +[[package]] +name = "regex-automata" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.5", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "regress" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1541daf4e4ed43a0922b7969bdc2170178bcacc5dabf7e39bc508a9fa3953a7a" +dependencies = [ + "hashbrown 0.14.5", + "memchr", +] + +[[package]] +name = "reqwest" +version = "0.12.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-body-util", + "hyper", + "hyper-rustls", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls", + "rustls-native-certs 0.8.0", + "rustls-pemfile", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tokio-rustls", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "webpki-roots", + "windows-registry", +] + +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + +[[package]] +name = "reth" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "aquamarine", + "backon", + "clap", + "eyre", + "futures", + "reth-basic-payload-builder", + "reth-beacon-consensus", + "reth-blockchain-tree", + "reth-chainspec", + "reth-cli", + "reth-cli-commands", + "reth-cli-runner", + "reth-cli-util", + "reth-config", + "reth-consensus", + "reth-consensus-common", + "reth-db", + "reth-db-api", + "reth-downloaders", + "reth-engine-util", + "reth-errors", + "reth-ethereum-cli", + "reth-ethereum-payload-builder", + "reth-evm", + "reth-execution-types", + "reth-exex", + "reth-fs-util", + "reth-network", + "reth-network-api", + "reth-network-p2p", + "reth-node-api", + "reth-node-builder", + "reth-node-core", + "reth-node-ethereum", + "reth-node-events", + "reth-node-metrics", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-revm", + "reth-rpc", + "reth-rpc-api", + "reth-rpc-builder", + "reth-rpc-eth-types", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-stages", + "reth-static-file", + "reth-tasks", + "reth-tracing", + "reth-transaction-pool", + "reth-trie", + "reth-trie-db", + "serde_json", + "similar-asserts", + "tempfile", + "tokio", + "tracing", +] + +[[package]] +name = "reth-auto-seal-consensus" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "futures-util", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-engine-primitives", + "reth-evm", + "reth-execution-errors", + "reth-execution-types", + "reth-network-p2p", + "reth-network-peers", + "reth-optimism-consensus", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-stages-api", + "reth-tokio-util", + "reth-transaction-pool", + "reth-trie", + "revm-primitives", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-basic-payload-builder" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "futures-core", + "futures-util", + "metrics", + "reth-chainspec", + "reth-evm", + "reth-metrics", + "reth-payload-builder", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-tasks", + "reth-transaction-pool", + "revm", + "tokio", + "tracing", +] + +[[package]] +name = "reth-beacon-consensus" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rpc-types-engine", + "assert_matches", + "futures", + "itertools 0.13.0", + "metrics", + "reth-blockchain-tree", + "reth-blockchain-tree-api", + "reth-chainspec", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-downloaders", + "reth-engine-primitives", + "reth-errors", + "reth-ethereum-consensus", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-evm-ethereum", + "reth-exex-types", + "reth-metrics", + "reth-network-p2p", + "reth-node-types", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-prune-types", + "reth-rpc-types-compat", + "reth-stages", + "reth-stages-api", + "reth-static-file", + "reth-tasks", + "reth-testing-utils", + "reth-tokio-util", + "reth-tracing", + "schnellru", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-bench" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-json-rpc", + "alloy-primitives", + "alloy-provider", + "alloy-pubsub", + "alloy-rpc-client", + "alloy-rpc-types-engine", + "alloy-transport", + "alloy-transport-http", + "alloy-transport-ipc", + "alloy-transport-ws", + "async-trait", + "clap", + "csv", + "eyre", + "futures", + "reqwest", + "reth-cli-runner", + "reth-cli-util", + "reth-node-api", + "reth-node-core", + "reth-primitives", + "reth-rpc-types-compat", + "reth-tracing", + "serde", + "thiserror", + "tokio", + "tower 0.4.13", + "tracing", +] + +[[package]] +name = "reth-blockchain-tree" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "aquamarine", + "assert_matches", + "linked_hash_set", + "metrics", + "parking_lot", + "reth-blockchain-tree-api", + "reth-chainspec", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-evm", + "reth-evm-ethereum", + "reth-execution-errors", + "reth-execution-types", + "reth-metrics", + "reth-network", + "reth-node-types", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-stages-api", + "reth-storage-errors", + "reth-testing-utils", + "reth-trie", + "reth-trie-db", + "reth-trie-parallel", + "tokio", + "tracing", +] + +[[package]] +name = "reth-blockchain-tree-api" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "reth-consensus", + "reth-execution-errors", + "reth-primitives", + "reth-storage-errors", + "thiserror", +] + +[[package]] +name = "reth-chain-state" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-signer", + "alloy-signer-local", + "auto_impl", + "derive_more 1.0.0", + "metrics", + "parking_lot", + "pin-project", + "rand 0.8.5", + "reth-chainspec", + "reth-errors", + "reth-execution-types", + "reth-metrics", + "reth-primitives", + "reth-storage-api", + "reth-testing-utils", + "reth-trie", + "revm", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-chainspec" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "auto_impl", + "derive_more 1.0.0", + "once_cell", + "reth-ethereum-forks", + "reth-network-peers", + "reth-primitives-traits", + "reth-trie-common", + "serde_json", +] + +[[package]] +name = "reth-cli" +version = "1.1.0" +dependencies = [ + "alloy-genesis", + "clap", + "eyre", + "reth-cli-runner", + "reth-db", + "serde_json", + "shellexpand", +] + +[[package]] +name = "reth-cli-commands" +version = "1.1.0" +dependencies = [ + "ahash", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "backon", + "clap", + "comfy-table", + "crossterm 0.28.1", + "eyre", + "fdlimit", + "futures", + "human_bytes", + "itertools 0.13.0", + "proptest", + "proptest-arbitrary-interop", + "ratatui", + "reth-beacon-consensus", + "reth-chainspec", + "reth-cli", + "reth-cli-runner", + "reth-cli-util", + "reth-codecs", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-db-common", + "reth-discv4", + "reth-downloaders", + "reth-ecies", + "reth-eth-wire", + "reth-ethereum-cli", + "reth-evm", + "reth-exex", + "reth-fs-util", + "reth-network", + "reth-network-p2p", + "reth-network-peers", + "reth-node-builder", + "reth-node-core", + "reth-node-events", + "reth-node-metrics", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-prune-types", + "reth-stages", + "reth-stages-types", + "reth-static-file", + "reth-static-file-types", + "reth-trie", + "reth-trie-common", + "reth-trie-db", + "secp256k1", + "serde", + "serde_json", + "tokio", + "toml", + "tracing", +] + +[[package]] +name = "reth-cli-runner" +version = "1.1.0" +dependencies = [ + "reth-tasks", + "tokio", + "tracing", +] + +[[package]] +name = "reth-cli-util" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "cfg-if", + "eyre", + "libc", + "rand 0.8.5", + "reth-fs-util", + "secp256k1", + "serde", + "thiserror", + "tikv-jemallocator", + "tracy-client", +] + +[[package]] +name = "reth-codecs" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-trie", + "arbitrary", + "bytes", + "modular-bitfield", + "op-alloy-consensus", + "proptest", + "proptest-arbitrary-interop", + "reth-codecs-derive", + "serde", + "serde_json", + "test-fuzz", + "visibility", +] + +[[package]] +name = "reth-codecs-derive" +version = "1.1.0" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "similar-asserts", + "syn 2.0.86", +] + +[[package]] +name = "reth-config" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "eyre", + "humantime-serde", + "reth-network-peers", + "reth-network-types", + "reth-prune-types", + "reth-stages-types", + "serde", + "tempfile", + "toml", +] + +[[package]] +name = "reth-consensus" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "auto_impl", + "derive_more 1.0.0", + "reth-primitives", +] + +[[package]] +name = "reth-consensus-common" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "mockall", + "rand 0.8.5", + "reth-chainspec", + "reth-consensus", + "reth-primitives", + "reth-storage-api", + "revm-primitives", +] + +[[package]] +name = "reth-consensus-debug-client" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types", + "alloy-rpc-types-engine", + "auto_impl", + "eyre", + "futures", + "reqwest", + "reth-node-api", + "reth-rpc-api", + "reth-rpc-builder", + "reth-tracing", + "ringbuffer", + "serde", + "tokio", +] + +[[package]] +name = "reth-db" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "arbitrary", + "assert_matches", + "bytes", + "criterion", + "derive_more 1.0.0", + "eyre", + "iai-callgrind", + "metrics", + "page_size", + "parking_lot", + "paste", + "pprof", + "proptest", + "reth-db-api", + "reth-fs-util", + "reth-libmdbx", + "reth-metrics", + "reth-nippy-jar", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-tracing", + "reth-trie-common", + "rustc-hash 2.0.0", + "serde", + "serde_json", + "strum", + "sysinfo", + "tempfile", + "test-fuzz", + "thiserror", +] + +[[package]] +name = "reth-db-api" +version = "1.1.0" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "arbitrary", + "bytes", + "derive_more 1.0.0", + "metrics", + "modular-bitfield", + "parity-scale-codec", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-codecs", + "reth-db-models", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "serde", + "test-fuzz", +] + +[[package]] +name = "reth-db-common" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "boyer-moore-magiclen", + "eyre", + "reth-chainspec", + "reth-codecs", + "reth-config", + "reth-db", + "reth-db-api", + "reth-etl", + "reth-fs-util", + "reth-node-types", + "reth-primitives", + "reth-primitives-traits", + "reth-provider", + "reth-stages-types", + "reth-trie", + "reth-trie-db", + "serde", + "serde_json", + "thiserror", + "tracing", +] + +[[package]] +name = "reth-db-models" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "arbitrary", + "bytes", + "modular-bitfield", + "proptest", + "proptest-arbitrary-interop", + "reth-codecs", + "reth-primitives-traits", + "serde", + "test-fuzz", +] + +[[package]] +name = "reth-discv4" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "assert_matches", + "discv5", + "enr", + "generic-array", + "itertools 0.13.0", + "parking_lot", + "rand 0.8.5", + "reth-ethereum-forks", + "reth-net-banlist", + "reth-net-nat", + "reth-network-peers", + "reth-tracing", + "schnellru", + "secp256k1", + "serde", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-discv5" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "discv5", + "enr", + "futures", + "itertools 0.13.0", + "metrics", + "rand 0.8.5", + "reth-chainspec", + "reth-ethereum-forks", + "reth-metrics", + "reth-network-peers", + "reth-tracing", + "secp256k1", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-dns-discovery" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-primitives", + "alloy-rlp", + "data-encoding", + "enr", + "linked_hash_set", + "parking_lot", + "rand 0.8.5", + "reth-chainspec", + "reth-ethereum-forks", + "reth-network-peers", + "reth-tokio-util", + "reth-tracing", + "schnellru", + "secp256k1", + "serde", + "serde_with", + "thiserror", + "tokio", + "tokio-stream", + "tracing", + "trust-dns-resolver", +] + +[[package]] +name = "reth-downloaders" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "assert_matches", + "futures", + "futures-util", + "itertools 0.13.0", + "metrics", + "pin-project", + "rand 0.8.5", + "rayon", + "reth-chainspec", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-metrics", + "reth-network-p2p", + "reth-network-peers", + "reth-primitives", + "reth-provider", + "reth-storage-api", + "reth-tasks", + "reth-testing-utils", + "reth-tracing", + "tempfile", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-e2e-test-utils" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-network", + "alloy-primitives", + "alloy-rpc-types", + "alloy-signer", + "alloy-signer-local", + "derive_more 1.0.0", + "eyre", + "futures-util", + "jsonrpsee", + "op-alloy-rpc-types-engine", + "reth", + "reth-chainspec", + "reth-db", + "reth-engine-local", + "reth-network-peers", + "reth-node-builder", + "reth-payload-builder", + "reth-payload-primitives", + "reth-provider", + "reth-rpc-layer", + "reth-stages-types", + "reth-tokio-util", + "reth-tracing", + "serde_json", + "tokio", + "tokio-stream", + "tracing", + "url", +] + +[[package]] +name = "reth-ecies" +version = "1.1.0" +dependencies = [ + "aes", + "alloy-primitives", + "alloy-rlp", + "block-padding", + "byteorder", + "cipher", + "concat-kdf", + "ctr", + "digest 0.10.7", + "futures", + "generic-array", + "hmac 0.12.1", + "pin-project", + "rand 0.8.5", + "reth-network-peers", + "secp256k1", + "sha2 0.10.8", + "sha3", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", + "typenum", +] + +[[package]] +name = "reth-engine-local" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-engine", + "eyre", + "futures-util", + "op-alloy-rpc-types-engine", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-engine-primitives", + "reth-engine-service", + "reth-engine-tree", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-provider", + "reth-prune", + "reth-rpc-types-compat", + "reth-stages-api", + "reth-transaction-pool", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-engine-primitives" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "reth-execution-types", + "reth-payload-primitives", + "reth-primitives", + "reth-trie", + "serde", +] + +[[package]] +name = "reth-engine-service" +version = "1.1.0" +dependencies = [ + "futures", + "pin-project", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-engine-tree", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-evm-ethereum", + "reth-exex-types", + "reth-network-p2p", + "reth-node-types", + "reth-payload-builder", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-stages-api", + "reth-tasks", + "thiserror", + "tokio", + "tokio-stream", +] + +[[package]] +name = "reth-engine-tree" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-engine", + "assert_matches", + "futures", + "metrics", + "reth-beacon-consensus", + "reth-blockchain-tree", + "reth-blockchain-tree-api", + "reth-chain-state", + "reth-chainspec", + "reth-consensus", + "reth-db", + "reth-engine-primitives", + "reth-errors", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-exex-types", + "reth-metrics", + "reth-network-p2p", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-prune-types", + "reth-revm", + "reth-rpc-types-compat", + "reth-stages", + "reth-stages-api", + "reth-static-file", + "reth-tasks", + "reth-tracing", + "reth-trie", + "reth-trie-parallel", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-engine-util" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "eyre", + "futures", + "itertools 0.13.0", + "pin-project", + "reth-beacon-consensus", + "reth-engine-primitives", + "reth-errors", + "reth-ethereum-forks", + "reth-evm", + "reth-fs-util", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc-types-compat", + "reth-trie", + "revm-primitives", + "serde", + "serde_json", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-errors" +version = "1.1.0" +dependencies = [ + "reth-blockchain-tree-api", + "reth-consensus", + "reth-execution-errors", + "reth-fs-util", + "reth-storage-errors", + "thiserror", +] + +[[package]] +name = "reth-eth-wire" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "async-stream", + "bytes", + "derive_more 1.0.0", + "futures", + "pin-project", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-chainspec", + "reth-codecs", + "reth-ecies", + "reth-eth-wire-types", + "reth-metrics", + "reth-network-peers", + "reth-primitives", + "reth-tracing", + "secp256k1", + "serde", + "snap", + "test-fuzz", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-eth-wire-types" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "bytes", + "derive_more 1.0.0", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-chainspec", + "reth-codecs-derive", + "reth-primitives", + "serde", + "thiserror", +] + +[[package]] +name = "reth-ethereum-cli" +version = "1.1.0" +dependencies = [ + "clap", + "eyre", + "reth-chainspec", + "reth-cli", + "reth-cli-commands", +] + +[[package]] +name = "reth-ethereum-consensus" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-primitives", + "tracing", +] + +[[package]] +name = "reth-ethereum-engine-primitives" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-engine", + "reth-chain-state", + "reth-chainspec", + "reth-engine-primitives", + "reth-payload-primitives", + "reth-primitives", + "reth-rpc-types-compat", + "serde", + "serde_json", + "sha2 0.10.8", +] + +[[package]] +name = "reth-ethereum-forks" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "auto_impl", + "crc", + "dyn-clone", + "once_cell", + "proptest", + "proptest-derive", + "rustc-hash 2.0.0", + "serde", + "thiserror-no-std", +] + +[[package]] +name = "reth-ethereum-payload-builder" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-basic-payload-builder", + "reth-chain-state", + "reth-chainspec", + "reth-errors", + "reth-evm", + "reth-evm-ethereum", + "reth-execution-types", + "reth-payload-builder", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-transaction-pool", + "reth-trie", + "revm", + "revm-primitives", + "tracing", +] + +[[package]] +name = "reth-etl" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "rayon", + "reth-db-api", + "tempfile", +] + +[[package]] +name = "reth-evm" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "auto_impl", + "futures-util", + "metrics", + "parking_lot", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-ethereum-forks", + "reth-execution-errors", + "reth-execution-types", + "reth-metrics", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-revm", + "reth-storage-errors", + "revm", + "revm-primitives", +] + +[[package]] +name = "reth-evm-ethereum" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-sol-types", + "reth-chainspec", + "reth-consensus", + "reth-ethereum-consensus", + "reth-ethereum-forks", + "reth-evm", + "reth-execution-types", + "reth-primitives", + "reth-revm", + "reth-testing-utils", + "revm-primitives", + "secp256k1", + "serde_json", +] + +[[package]] +name = "reth-execution-errors" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "nybbles", + "reth-consensus", + "reth-prune-types", + "reth-storage-errors", + "revm-primitives", +] + +[[package]] +name = "reth-execution-types" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "arbitrary", + "bincode", + "rand 0.8.5", + "reth-execution-errors", + "reth-primitives", + "reth-trie", + "revm", + "serde", + "serde_with", +] + +[[package]] +name = "reth-exex" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "eyre", + "futures", + "itertools 0.13.0", + "metrics", + "parking_lot", + "rand 0.8.5", + "reth-blockchain-tree", + "reth-chain-state", + "reth-chainspec", + "reth-config", + "reth-db-common", + "reth-evm", + "reth-evm-ethereum", + "reth-exex-types", + "reth-fs-util", + "reth-metrics", + "reth-node-api", + "reth-node-core", + "reth-payload-builder", + "reth-primitives", + "reth-primitives-traits", + "reth-provider", + "reth-prune-types", + "reth-revm", + "reth-stages-api", + "reth-tasks", + "reth-testing-utils", + "reth-tracing", + "rmp-serde", + "secp256k1", + "tempfile", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-exex-test-utils" +version = "1.1.0" +dependencies = [ + "eyre", + "futures-util", + "rand 0.8.5", + "reth-blockchain-tree", + "reth-chainspec", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-common", + "reth-evm", + "reth-execution-types", + "reth-exex", + "reth-network", + "reth-node-api", + "reth-node-builder", + "reth-node-core", + "reth-node-ethereum", + "reth-payload-builder", + "reth-primitives", + "reth-provider", + "reth-tasks", + "reth-transaction-pool", + "reth-trie-db", + "tempfile", + "thiserror", + "tokio", +] + +[[package]] +name = "reth-exex-types" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "arbitrary", + "bincode", + "rand 0.8.5", + "reth-chain-state", + "reth-execution-types", + "reth-primitives", + "serde", + "serde_with", +] + +[[package]] +name = "reth-fs-util" +version = "1.1.0" +dependencies = [ + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "reth-invalid-block-hooks" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-debug", + "eyre", + "futures", + "jsonrpsee", + "pretty_assertions", + "reth-chainspec", + "reth-engine-primitives", + "reth-evm", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc-api", + "reth-tracing", + "reth-trie", + "serde", + "serde_json", +] + +[[package]] +name = "reth-ipc" +version = "1.1.0" +dependencies = [ + "async-trait", + "bytes", + "futures", + "futures-util", + "interprocess", + "jsonrpsee", + "pin-project", + "rand 0.8.5", + "reth-tracing", + "serde_json", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tower 0.4.13", + "tracing", +] + +[[package]] +name = "reth-libmdbx" +version = "1.1.0" +dependencies = [ + "bitflags 2.6.0", + "byteorder", + "criterion", + "dashmap 6.1.0", + "derive_more 1.0.0", + "indexmap 2.6.0", + "parking_lot", + "pprof", + "rand 0.8.5", + "rand_xorshift", + "reth-mdbx-sys", + "smallvec", + "tempfile", + "thiserror", + "tracing", +] + +[[package]] +name = "reth-mdbx-sys" +version = "1.1.0" +dependencies = [ + "bindgen", + "cc", +] + +[[package]] +name = "reth-metrics" +version = "1.1.0" +dependencies = [ + "futures", + "metrics", + "metrics-derive", + "tokio", + "tokio-util", +] + +[[package]] +name = "reth-net-banlist" +version = "1.1.0" +dependencies = [ + "alloy-primitives", +] + +[[package]] +name = "reth-net-nat" +version = "1.1.0" +dependencies = [ + "futures-util", + "if-addrs", + "reqwest", + "reth-tracing", + "serde_with", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-network" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-node-bindings", + "alloy-primitives", + "alloy-provider", + "alloy-rlp", + "aquamarine", + "auto_impl", + "criterion", + "derive_more 1.0.0", + "discv5", + "enr", + "futures", + "itertools 0.13.0", + "metrics", + "parking_lot", + "pin-project", + "pprof", + "rand 0.8.5", + "reth-chainspec", + "reth-consensus", + "reth-discv4", + "reth-discv5", + "reth-dns-discovery", + "reth-ecies", + "reth-eth-wire", + "reth-fs-util", + "reth-metrics", + "reth-net-banlist", + "reth-network", + "reth-network-api", + "reth-network-p2p", + "reth-network-peers", + "reth-network-types", + "reth-primitives", + "reth-provider", + "reth-storage-api", + "reth-tasks", + "reth-tokio-util", + "reth-tracing", + "reth-transaction-pool", + "rustc-hash 2.0.0", + "schnellru", + "secp256k1", + "serde", + "serial_test", + "smallvec", + "tempfile", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", + "url", +] + +[[package]] +name = "reth-network-api" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-admin", + "auto_impl", + "derive_more 1.0.0", + "enr", + "futures", + "reth-eth-wire-types", + "reth-ethereum-forks", + "reth-network-p2p", + "reth-network-peers", + "reth-network-types", + "reth-tokio-util", + "serde", + "thiserror", + "tokio", + "tokio-stream", +] + +[[package]] +name = "reth-network-p2p" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "auto_impl", + "derive_more 1.0.0", + "futures", + "parking_lot", + "reth-consensus", + "reth-eth-wire-types", + "reth-network-peers", + "reth-network-types", + "reth-primitives", + "reth-storage-errors", + "tokio", + "tracing", +] + +[[package]] +name = "reth-network-peers" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "enr", + "rand 0.8.5", + "secp256k1", + "serde_json", + "serde_with", + "thiserror", + "tokio", + "url", +] + +[[package]] +name = "reth-network-types" +version = "1.1.0" +dependencies = [ + "humantime-serde", + "reth-ethereum-forks", + "reth-net-banlist", + "reth-network-peers", + "serde", + "serde_json", + "tracing", +] + +[[package]] +name = "reth-nippy-jar" +version = "1.1.0" +dependencies = [ + "anyhow", + "bincode", + "derive_more 1.0.0", + "lz4_flex", + "memmap2", + "rand 0.8.5", + "reth-fs-util", + "serde", + "tempfile", + "thiserror", + "tracing", + "zstd", +] + +[[package]] +name = "reth-node-api" +version = "1.1.0" +dependencies = [ + "alloy-rpc-types-engine", + "eyre", + "reth-beacon-consensus", + "reth-consensus", + "reth-engine-primitives", + "reth-evm", + "reth-network-api", + "reth-node-core", + "reth-node-types", + "reth-payload-builder", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "reth-tasks", + "reth-transaction-pool", +] + +[[package]] +name = "reth-node-builder" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "aquamarine", + "eyre", + "fdlimit", + "futures", + "jsonrpsee", + "rayon", + "reth-auto-seal-consensus", + "reth-beacon-consensus", + "reth-blockchain-tree", + "reth-chain-state", + "reth-chainspec", + "reth-cli-util", + "reth-config", + "reth-consensus", + "reth-consensus-debug-client", + "reth-db", + "reth-db-api", + "reth-db-common", + "reth-downloaders", + "reth-engine-local", + "reth-engine-service", + "reth-engine-tree", + "reth-engine-util", + "reth-evm", + "reth-exex", + "reth-fs-util", + "reth-invalid-block-hooks", + "reth-network", + "reth-network-api", + "reth-network-p2p", + "reth-node-api", + "reth-node-core", + "reth-node-events", + "reth-node-metrics", + "reth-payload-builder", + "reth-payload-primitives", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-rpc", + "reth-rpc-api", + "reth-rpc-builder", + "reth-rpc-engine-api", + "reth-rpc-eth-types", + "reth-rpc-layer", + "reth-stages", + "reth-static-file", + "reth-tasks", + "reth-tokio-util", + "reth-tracing", + "reth-transaction-pool", + "secp256k1", + "tempfile", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-node-core" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "clap", + "const_format", + "derive_more 1.0.0", + "dirs-next", + "eyre", + "futures", + "humantime", + "proptest", + "rand 0.8.5", + "reth-chainspec", + "reth-cli-util", + "reth-config", + "reth-consensus-common", + "reth-db", + "reth-discv4", + "reth-discv5", + "reth-net-nat", + "reth-network", + "reth-network-p2p", + "reth-network-peers", + "reth-primitives", + "reth-prune-types", + "reth-rpc-eth-types", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-stages-types", + "reth-storage-api", + "reth-storage-errors", + "reth-tracing", + "reth-transaction-pool", + "secp256k1", + "serde", + "shellexpand", + "strum", + "thiserror", + "tokio", + "toml", + "tracing", + "vergen", +] + +[[package]] +name = "reth-node-ethereum" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-contract", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-beacon", + "alloy-signer", + "alloy-sol-types", + "eyre", + "futures", + "rand 0.8.5", + "reth", + "reth-auto-seal-consensus", + "reth-basic-payload-builder", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-db", + "reth-e2e-test-utils", + "reth-ethereum-engine-primitives", + "reth-ethereum-payload-builder", + "reth-evm", + "reth-evm-ethereum", + "reth-exex", + "reth-network", + "reth-node-api", + "reth-node-builder", + "reth-payload-builder", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc", + "reth-tasks", + "reth-tracing", + "reth-transaction-pool", + "reth-trie-db", + "revm", + "serde_json", + "tokio", +] + +[[package]] +name = "reth-node-events" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "futures", + "humantime", + "pin-project", + "reth-beacon-consensus", + "reth-network", + "reth-network-api", + "reth-primitives-traits", + "reth-provider", + "reth-prune", + "reth-stages", + "reth-static-file", + "tokio", + "tracing", +] + +[[package]] +name = "reth-node-metrics" +version = "1.1.0" +dependencies = [ + "eyre", + "http", + "jsonrpsee", + "metrics", + "metrics-exporter-prometheus", + "metrics-process", + "metrics-util", + "procfs 0.16.0", + "reqwest", + "reth-db-api", + "reth-metrics", + "reth-provider", + "reth-tasks", + "socket2", + "tikv-jemalloc-ctl", + "tokio", + "tower 0.4.13", + "tracing", + "vergen", +] + +[[package]] +name = "reth-node-types" +version = "1.1.0" +dependencies = [ + "reth-chainspec", + "reth-db-api", + "reth-engine-primitives", + "reth-primitives", + "reth-primitives-traits", + "reth-trie-db", +] + +[[package]] +name = "reth-optimism-chainspec" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "derive_more 1.0.0", + "once_cell", + "op-alloy-rpc-types", + "reth-chainspec", + "reth-ethereum-forks", + "reth-network-peers", + "reth-optimism-forks", + "reth-primitives-traits", + "serde_json", +] + +[[package]] +name = "reth-optimism-cli" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "clap", + "eyre", + "futures-util", + "op-alloy-consensus", + "proptest", + "reth-chainspec", + "reth-cli", + "reth-cli-commands", + "reth-cli-runner", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-db-common", + "reth-downloaders", + "reth-errors", + "reth-execution-types", + "reth-network-p2p", + "reth-node-builder", + "reth-node-core", + "reth-node-events", + "reth-node-metrics", + "reth-optimism-chainspec", + "reth-optimism-evm", + "reth-optimism-node", + "reth-optimism-primitives", + "reth-primitives", + "reth-provider", + "reth-prune", + "reth-stages", + "reth-stages-types", + "reth-static-file", + "reth-static-file-types", + "reth-tracing", + "tempfile", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-optimism-consensus" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-optimism-chainspec", + "reth-optimism-forks", + "reth-primitives", + "reth-trie-common", + "tracing", +] + +[[package]] +name = "reth-optimism-evm" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "derive_more 1.0.0", + "op-alloy-consensus", + "reth-chainspec", + "reth-consensus", + "reth-ethereum-forks", + "reth-evm", + "reth-execution-errors", + "reth-execution-types", + "reth-optimism-chainspec", + "reth-optimism-consensus", + "reth-optimism-forks", + "reth-primitives", + "reth-prune-types", + "reth-revm", + "revm", + "revm-primitives", + "tracing", +] + +[[package]] +name = "reth-optimism-forks" +version = "1.1.0" +dependencies = [ + "alloy-chains", + "alloy-primitives", + "once_cell", + "reth-ethereum-forks", + "serde", +] + +[[package]] +name = "reth-optimism-node" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rpc-types-engine", + "clap", + "eyre", + "op-alloy-consensus", + "op-alloy-rpc-types-engine", + "parking_lot", + "reth", + "reth-auto-seal-consensus", + "reth-basic-payload-builder", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-db", + "reth-e2e-test-utils", + "reth-engine-local", + "reth-evm", + "reth-network", + "reth-node-api", + "reth-node-builder", + "reth-optimism-chainspec", + "reth-optimism-consensus", + "reth-optimism-evm", + "reth-optimism-forks", + "reth-optimism-payload-builder", + "reth-optimism-rpc", + "reth-payload-builder", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-tracing", + "reth-transaction-pool", + "reth-trie-db", + "revm", + "serde", + "serde_json", + "tokio", +] + +[[package]] +name = "reth-optimism-payload-builder" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-engine", + "op-alloy-consensus", + "op-alloy-rpc-types-engine", + "reth-basic-payload-builder", + "reth-chain-state", + "reth-chainspec", + "reth-evm", + "reth-execution-types", + "reth-optimism-chainspec", + "reth-optimism-consensus", + "reth-optimism-evm", + "reth-optimism-forks", + "reth-payload-builder", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc-types-compat", + "reth-transaction-pool", + "reth-trie", + "revm", + "sha2 0.10.8", + "thiserror", + "tracing", +] + +[[package]] +name = "reth-optimism-primitives" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "reth-primitives", +] + +[[package]] +name = "reth-optimism-rpc" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-eth", + "derive_more 1.0.0", + "jsonrpsee-types", + "op-alloy-consensus", + "op-alloy-network", + "op-alloy-rpc-types", + "parking_lot", + "reqwest", + "reth-chainspec", + "reth-evm", + "reth-network-api", + "reth-node-api", + "reth-node-builder", + "reth-optimism-chainspec", + "reth-optimism-consensus", + "reth-optimism-evm", + "reth-optimism-forks", + "reth-primitives", + "reth-provider", + "reth-rpc", + "reth-rpc-eth-api", + "reth-rpc-eth-types", + "reth-rpc-server-types", + "reth-tasks", + "reth-transaction-pool", + "revm", + "serde_json", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-optimism-storage" +version = "1.1.0" +dependencies = [ + "reth-codecs", + "reth-db-api", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", +] + +[[package]] +name = "reth-payload-builder" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "async-trait", + "futures-util", + "metrics", + "reth-chain-state", + "reth-ethereum-engine-primitives", + "reth-metrics", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "revm", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-payload-primitives" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types", + "async-trait", + "op-alloy-rpc-types-engine", + "pin-project", + "reth-chain-state", + "reth-chainspec", + "reth-errors", + "reth-primitives", + "reth-transaction-pool", + "serde", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-payload-validator" +version = "1.1.0" +dependencies = [ + "alloy-rpc-types", + "reth-chainspec", + "reth-primitives", + "reth-rpc-types-compat", +] + +[[package]] +name = "reth-primitives" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-network", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "alloy-serde", + "arbitrary", + "assert_matches", + "bincode", + "bytes", + "c-kzg", + "criterion", + "derive_more 1.0.0", + "k256", + "modular-bitfield", + "once_cell", + "op-alloy-consensus", + "op-alloy-rpc-types", + "pprof", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "rayon", + "reth-chainspec", + "reth-codecs", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-static-file-types", + "reth-testing-utils", + "reth-trie-common", + "revm-primitives", + "secp256k1", + "serde", + "serde_json", + "serde_with", + "test-fuzz", + "zstd", +] + +[[package]] +name = "reth-primitives-traits" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "arbitrary", + "bincode", + "byteorder", + "bytes", + "derive_more 1.0.0", + "modular-bitfield", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-codecs", + "reth-testing-utils", + "revm-primitives", + "roaring", + "serde", + "serde_json", + "serde_with", + "test-fuzz", +] + +[[package]] +name = "reth-provider" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "assert_matches", + "auto_impl", + "dashmap 6.1.0", + "eyre", + "itertools 0.13.0", + "metrics", + "notify", + "parking_lot", + "rand 0.8.5", + "rayon", + "reth-blockchain-tree-api", + "reth-chain-state", + "reth-chainspec", + "reth-codecs", + "reth-db", + "reth-db-api", + "reth-errors", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-execution-types", + "reth-fs-util", + "reth-metrics", + "reth-network-p2p", + "reth-nippy-jar", + "reth-node-types", + "reth-optimism-primitives", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-api", + "reth-storage-errors", + "reth-testing-utils", + "reth-trie", + "reth-trie-db", + "revm", + "strum", + "tempfile", + "tokio", + "tracing", +] + +[[package]] +name = "reth-prune" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "assert_matches", + "itertools 0.13.0", + "metrics", + "rayon", + "reth-chainspec", + "reth-config", + "reth-db", + "reth-db-api", + "reth-errors", + "reth-exex-types", + "reth-metrics", + "reth-provider", + "reth-prune-types", + "reth-stages", + "reth-static-file-types", + "reth-testing-utils", + "reth-tokio-util", + "reth-tracing", + "rustc-hash 2.0.0", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-prune-types" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "arbitrary", + "assert_matches", + "bytes", + "derive_more 1.0.0", + "modular-bitfield", + "proptest", + "proptest-arbitrary-interop", + "reth-codecs", + "serde", + "serde_json", + "test-fuzz", + "thiserror", + "toml", +] + +[[package]] +name = "reth-revm" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-ethereum-forks", + "reth-execution-errors", + "reth-primitives", + "reth-prune-types", + "reth-storage-api", + "reth-storage-errors", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-rpc" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-dyn-abi", + "alloy-eips", + "alloy-genesis", + "alloy-network", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "alloy-rpc-types-admin", + "alloy-rpc-types-beacon", + "alloy-rpc-types-debug", + "alloy-rpc-types-eth", + "alloy-rpc-types-mev", + "alloy-rpc-types-trace", + "alloy-rpc-types-txpool", + "alloy-serde", + "alloy-signer", + "alloy-signer-local", + "async-trait", + "derive_more 1.0.0", + "futures", + "http", + "http-body", + "hyper", + "jsonrpsee", + "jsonrpsee-types", + "jsonwebtoken", + "parking_lot", + "pin-project", + "rand 0.8.5", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-errors", + "reth-ethereum-consensus", + "reth-evm", + "reth-evm-ethereum", + "reth-network-api", + "reth-network-peers", + "reth-network-types", + "reth-payload-validator", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc-api", + "reth-rpc-engine-api", + "reth-rpc-eth-api", + "reth-rpc-eth-types", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-tasks", + "reth-testing-utils", + "reth-transaction-pool", + "reth-trie", + "revm", + "revm-inspectors", + "revm-primitives", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-stream", + "tower 0.4.13", + "tracing", + "tracing-futures", +] + +[[package]] +name = "reth-rpc-api" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-json-rpc", + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-admin", + "alloy-rpc-types-anvil", + "alloy-rpc-types-beacon", + "alloy-rpc-types-debug", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-rpc-types-mev", + "alloy-rpc-types-trace", + "alloy-rpc-types-txpool", + "alloy-serde", + "jsonrpsee", + "reth-engine-primitives", + "reth-network-peers", + "reth-primitives", + "reth-rpc-eth-api", + "serde", + "serde_with", +] + +[[package]] +name = "reth-rpc-api-testing-util" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-eth", + "alloy-rpc-types-trace", + "futures", + "jsonrpsee", + "jsonrpsee-http-client", + "reth-primitives", + "reth-rpc-api", + "reth-rpc-eth-api", + "serde_json", + "similar-asserts", + "tokio", +] + +[[package]] +name = "reth-rpc-builder" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-rpc-types-trace", + "clap", + "http", + "jsonrpsee", + "metrics", + "pin-project", + "reth-beacon-consensus", + "reth-chainspec", + "reth-consensus", + "reth-engine-primitives", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-evm-ethereum", + "reth-ipc", + "reth-metrics", + "reth-network-api", + "reth-network-peers", + "reth-node-core", + "reth-payload-builder", + "reth-primitives", + "reth-provider", + "reth-rpc", + "reth-rpc-api", + "reth-rpc-engine-api", + "reth-rpc-eth-api", + "reth-rpc-eth-types", + "reth-rpc-layer", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-tasks", + "reth-tracing", + "reth-transaction-pool", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-util", + "tower 0.4.13", + "tower-http", + "tracing", +] + +[[package]] +name = "reth-rpc-engine-api" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-engine", + "assert_matches", + "async-trait", + "jsonrpsee-core", + "jsonrpsee-types", + "metrics", + "reth-beacon-consensus", + "reth-chainspec", + "reth-engine-primitives", + "reth-ethereum-engine-primitives", + "reth-evm", + "reth-metrics", + "reth-payload-builder", + "reth-payload-primitives", + "reth-primitives", + "reth-provider", + "reth-rpc-api", + "reth-rpc-types-compat", + "reth-storage-api", + "reth-tasks", + "reth-testing-utils", + "reth-tokio-util", + "reth-transaction-pool", + "serde", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-rpc-eth-api" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-dyn-abi", + "alloy-eips", + "alloy-json-rpc", + "alloy-network", + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-eth", + "alloy-rpc-types-mev", + "async-trait", + "auto_impl", + "dyn-clone", + "futures", + "jsonrpsee", + "jsonrpsee-types", + "parking_lot", + "reth-chainspec", + "reth-errors", + "reth-evm", + "reth-execution-types", + "reth-network-api", + "reth-node-api", + "reth-primitives", + "reth-provider", + "reth-revm", + "reth-rpc-eth-types", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-tasks", + "reth-transaction-pool", + "reth-trie", + "revm", + "revm-inspectors", + "revm-primitives", + "tokio", + "tracing", +] + +[[package]] +name = "reth-rpc-eth-types" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-eth", + "alloy-sol-types", + "derive_more 1.0.0", + "futures", + "itertools 0.13.0", + "jsonrpsee-core", + "jsonrpsee-types", + "metrics", + "rand 0.8.5", + "reth-chain-state", + "reth-chainspec", + "reth-errors", + "reth-evm", + "reth-execution-types", + "reth-metrics", + "reth-primitives", + "reth-revm", + "reth-rpc-server-types", + "reth-rpc-types-compat", + "reth-storage-api", + "reth-tasks", + "reth-transaction-pool", + "reth-trie", + "revm", + "revm-inspectors", + "revm-primitives", + "schnellru", + "serde", + "serde_json", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-rpc-layer" +version = "1.1.0" +dependencies = [ + "alloy-rpc-types-engine", + "http", + "jsonrpsee", + "jsonrpsee-http-client", + "pin-project", + "reqwest", + "tokio", + "tower 0.4.13", + "tracing", +] + +[[package]] +name = "reth-rpc-server-types" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-engine", + "jsonrpsee-core", + "jsonrpsee-types", + "reth-errors", + "reth-network-api", + "reth-primitives", + "serde", + "strum", +] + +[[package]] +name = "reth-rpc-types-compat" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "reth-primitives", + "reth-trie-common", + "serde", + "serde_json", +] + +[[package]] +name = "reth-stages" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "assert_matches", + "bincode", + "criterion", + "futures-util", + "itertools 0.13.0", + "num-traits", + "paste", + "pprof", + "rand 0.8.5", + "rayon", + "reth-chainspec", + "reth-codecs", + "reth-config", + "reth-consensus", + "reth-db", + "reth-db-api", + "reth-downloaders", + "reth-etl", + "reth-evm", + "reth-evm-ethereum", + "reth-execution-errors", + "reth-execution-types", + "reth-exex", + "reth-network-p2p", + "reth-network-peers", + "reth-primitives", + "reth-primitives-traits", + "reth-provider", + "reth-prune", + "reth-prune-types", + "reth-revm", + "reth-stages-api", + "reth-static-file", + "reth-storage-errors", + "reth-testing-utils", + "reth-trie", + "reth-trie-db", + "tempfile", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-stages-api" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "aquamarine", + "assert_matches", + "auto_impl", + "futures-util", + "metrics", + "reth-consensus", + "reth-errors", + "reth-metrics", + "reth-network-p2p", + "reth-primitives-traits", + "reth-provider", + "reth-prune", + "reth-stages-types", + "reth-static-file", + "reth-static-file-types", + "reth-testing-utils", + "reth-tokio-util", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-stages-types" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "arbitrary", + "bytes", + "modular-bitfield", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-codecs", + "reth-trie-common", + "serde", + "test-fuzz", +] + +[[package]] +name = "reth-static-file" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "assert_matches", + "parking_lot", + "rayon", + "reth-db", + "reth-db-api", + "reth-provider", + "reth-prune-types", + "reth-stages", + "reth-stages-types", + "reth-static-file-types", + "reth-storage-errors", + "reth-testing-utils", + "reth-tokio-util", + "tempfile", + "tracing", +] + +[[package]] +name = "reth-static-file-types" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "clap", + "derive_more 1.0.0", + "serde", + "strum", +] + +[[package]] +name = "reth-storage-api" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "auto_impl", + "reth-chainspec", + "reth-db-api", + "reth-db-models", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie", +] + +[[package]] +name = "reth-storage-errors" +version = "1.1.0" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "reth-fs-util", + "reth-primitives", +] + +[[package]] +name = "reth-tasks" +version = "1.1.0" +dependencies = [ + "auto_impl", + "dyn-clone", + "futures-util", + "metrics", + "pin-project", + "rayon", + "reth-metrics", + "thiserror", + "tokio", + "tracing", + "tracing-futures", +] + +[[package]] +name = "reth-testing-utils" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "rand 0.8.5", + "reth-primitives", + "secp256k1", +] + +[[package]] +name = "reth-tokio-util" +version = "1.1.0" +dependencies = [ + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-tracing" +version = "1.1.0" +dependencies = [ + "clap", + "eyre", + "rolling-file", + "tracing", + "tracing-appender", + "tracing-journald", + "tracing-logfmt", + "tracing-subscriber", +] + +[[package]] +name = "reth-transaction-pool" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "aquamarine", + "assert_matches", + "auto_impl", + "bitflags 2.6.0", + "criterion", + "futures-util", + "metrics", + "parking_lot", + "paste", + "pprof", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "reth-chain-state", + "reth-chainspec", + "reth-eth-wire-types", + "reth-execution-types", + "reth-fs-util", + "reth-metrics", + "reth-primitives", + "reth-provider", + "reth-storage-api", + "reth-tasks", + "reth-tracing", + "revm", + "rustc-hash 2.0.0", + "schnellru", + "serde", + "serde_json", + "smallvec", + "tempfile", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-trie" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "alloy-rlp", + "auto_impl", + "bincode", + "criterion", + "itertools 0.13.0", + "metrics", + "proptest", + "proptest-arbitrary-interop", + "rayon", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "revm", + "serde", + "serde_json", + "serde_with", + "tracing", + "triehash", +] + +[[package]] +name = "reth-trie-common" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "arbitrary", + "bytes", + "derive_more 1.0.0", + "hash-db", + "itertools 0.13.0", + "nybbles", + "plain_hasher", + "proptest", + "proptest-arbitrary-interop", + "reth-codecs", + "reth-primitives-traits", + "revm-primitives", + "serde", +] + +[[package]] +name = "reth-trie-db" +version = "1.1.0" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "metrics", + "proptest", + "proptest-arbitrary-interop", + "reth-chainspec", + "reth-db", + "reth-db-api", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-provider", + "reth-storage-errors", + "reth-trie", + "reth-trie-common", + "revm", + "serde", + "serde_json", + "similar-asserts", + "tracing", + "triehash", +] + +[[package]] +name = "reth-trie-parallel" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "criterion", + "derive_more 1.0.0", + "itertools 0.13.0", + "metrics", + "proptest", + "proptest-arbitrary-interop", + "rand 0.8.5", + "rayon", + "reth-db", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-provider", + "reth-trie", + "reth-trie-db", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-trie-sparse" +version = "1.1.0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "assert_matches", + "criterion", + "itertools 0.13.0", + "pretty_assertions", + "proptest", + "rand 0.8.5", + "reth-testing-utils", + "reth-tracing", + "reth-trie", + "reth-trie-common", + "smallvec", + "thiserror", +] + +[[package]] +name = "revm" +version = "17.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "055bee6a81aaeee8c2389ae31f0d4de87f44df24f4444a1116f9755fd87a76ad" +dependencies = [ + "auto_impl", + "cfg-if", + "dyn-clone", + "revm-interpreter", + "revm-precompile", + "serde", + "serde_json", +] + +[[package]] +name = "revm-inspectors" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e29c662f7887f3b659d4b0fd234673419a8fcbeaa1ecc29bf7034c0a75cc8ea" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-rpc-types-trace", + "alloy-sol-types", + "anstyle", + "boa_engine", + "boa_gc", + "colorchoice", + "revm", + "serde_json", + "thiserror", +] + +[[package]] +name = "revm-interpreter" +version = "13.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fac2034454f8bc69dc7d3c94cdb1b57559e27f5ef0518771f1787de543d7d6a1" +dependencies = [ + "revm-primitives", + "serde", +] + +[[package]] +name = "revm-precompile" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a88c8c7c5f9b988a9e65fc0990c6ce859cdb74114db705bd118a96d22d08027" +dependencies = [ + "aurora-engine-modexp", + "blst", + "c-kzg", + "cfg-if", + "k256", + "once_cell", + "p256", + "revm-primitives", + "ripemd", + "secp256k1", + "sha2 0.10.8", + "substrate-bn", +] + +[[package]] +name = "revm-primitives" +version = "13.0.0" +source = "git+https://github.com/klkvr/revm?rev=82b99a0#82b99a06125b4b802bcf6b30e9eaa00b529e4661" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "auto_impl", + "bitflags 2.6.0", + "bitvec", + "c-kzg", + "cfg-if", + "dyn-clone", + "enumn", + "hex", + "serde", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac 0.12.1", + "subtle", +] + +[[package]] +name = "rgb" +version = "0.8.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57397d16646700483b67d2dd6511d79318f9d057fdbd21a4066aeac8b41d310a" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "ring" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.15", + "libc", + "spin", + "untrusted", + "windows-sys 0.52.0", +] + +[[package]] +name = "ringbuffer" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3df6368f71f205ff9c33c076d170dd56ebf68e8161c733c0caa07a7a5509ed53" + +[[package]] +name = "ripemd" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "rlimit" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7043b63bd0cd1aaa628e476b80e6d4023a3b50eb32789f2728908107bd0c793a" +dependencies = [ + "libc", +] + +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rustc-hex", +] + +[[package]] +name = "rmp" +version = "0.8.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" +dependencies = [ + "byteorder", + "num-traits", + "paste", +] + +[[package]] +name = "rmp-serde" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" +dependencies = [ + "byteorder", + "rmp", + "serde", +] + +[[package]] +name = "roaring" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f4b84ba6e838ceb47b41de5194a60244fac43d9fe03b71dbe8c5a201081d6d1" +dependencies = [ + "bytemuck", + "byteorder", +] + +[[package]] +name = "rolling-file" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" +dependencies = [ + "chrono", +] + +[[package]] +name = "route-recognizer" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746" + +[[package]] +name = "ruint" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" +dependencies = [ + "alloy-rlp", + "arbitrary", + "ark-ff 0.3.0", + "ark-ff 0.4.2", + "bytes", + "fastrlp", + "num-bigint", + "num-traits", + "parity-scale-codec", + "primitive-types", + "proptest", + "rand 0.8.5", + "rlp", + "ruint-macro", + "serde", + "valuable", + "zeroize", +] + +[[package]] +name = "ruint-macro" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" + +[[package]] +name = "rustc-demangle" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc-hash" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" +dependencies = [ + "rand 0.8.5", +] + +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + +[[package]] +name = "rustc_version" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +dependencies = [ + "semver 0.11.0", +] + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver 1.0.23", +] + +[[package]] +name = "rustix" +version = "0.38.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a" +dependencies = [ + "bitflags 2.6.0", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls" +version = "0.23.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e" +dependencies = [ + "log", + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-native-certs" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-native-certs" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" + +[[package]] +name = "rustls-platform-verifier" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afbb878bdfdf63a336a5e63561b1835e7a8c91524f51621db870169eac84b490" +dependencies = [ + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls", + "rustls-native-certs 0.7.3", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-roots", + "winapi", +] + +[[package]] +name = "rustls-platform-verifier-android" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" + +[[package]] +name = "rustls-webpki" +version = "0.102.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" +dependencies = [ + "ring", + "rustls-pki-types", + "untrusted", +] + +[[package]] +name = "rustversion" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e819f2bc632f285be6d7cd36e25940d45b2391dd6d9b939e79de557f7014248" + +[[package]] +name = "rusty-fork" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +dependencies = [ + "fnv", + "quick-error", + "tempfile", + "wait-timeout", +] + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "ryu-js" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad97d4ce1560a5e27cec89519dc8300d1aa6035b099821261c651486a19e44d5" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scc" +version = "2.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8d25269dd3a12467afe2e510f69fb0b46b698e5afb296b59f2145259deaf8e8" +dependencies = [ + "sdd", +] + +[[package]] +name = "schannel" +version = "0.1.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "schnellru" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" +dependencies = [ + "ahash", + "cfg-if", + "hashbrown 0.13.2", +] + +[[package]] +name = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "sdd" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49c1eeaf4b6a87c7479688c6d52b9f1153cedd3c489300564f932b065c6eab95" + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", +] + +[[package]] +name = "secp256k1" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" +dependencies = [ + "rand 0.8.5", + "secp256k1-sys", + "serde", +] + +[[package]] +name = "secp256k1-sys" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4387882333d3aa8cb20530a17c69a3752e97837832f34f6dccc760e715001d9" +dependencies = [ + "cc", +] + +[[package]] +name = "security-framework" +version = "2.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +dependencies = [ + "bitflags 2.6.0", + "core-foundation", + "core-foundation-sys", + "libc", + "num-bigint", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +dependencies = [ + "serde", +] + +[[package]] +name = "semver-parser" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +dependencies = [ + "pest", +] + +[[package]] +name = "send_wrapper" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" + +[[package]] +name = "send_wrapper" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" + +[[package]] +name = "serde" +version = "1.0.214" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55c3193aca71c12ad7890f1785d2b73e1b9f63a0bbc353c08ef26fe03fc56b5" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.214" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "serde_json" +version = "1.0.132" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "serde_qs" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" +dependencies = [ + "percent-encoding", + "serde", + "thiserror", +] + +[[package]] +name = "serde_repr" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "serde_spanned" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_with" +version = "3.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e28bdad6db2b8340e449f7108f020b3b092e8583a9e3fb82713e1d4e71fe817" +dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.6.0", + "serde", + "serde_derive", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d846214a9854ef724f3da161b426242d8de7c1fc7de2f89bb1efcb154dca79d" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "serial_test" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b4b487fe2acf240a021cf57c6b2b4903b1e78ca0ecd862a71b71d2a51fed77d" +dependencies = [ + "once_cell", + "parking_lot", + "scc", + "serial_test_derive", +] + +[[package]] +name = "serial_test_derive" +version = "3.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] + +[[package]] +name = "sha3-asm" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" +dependencies = [ + "cc", + "cfg-if", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shellexpand" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da03fa3b94cc19e3ebfc88c4229c49d8f08cdbd1228870a45f0ffdf84988e14b" +dependencies = [ + "dirs", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "signal-hook" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" +dependencies = [ + "libc", + "signal-hook-registry", +] + +[[package]] +name = "signal-hook-mio" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" +dependencies = [ + "libc", + "mio 1.0.2", + "signal-hook", +] + +[[package]] +name = "signal-hook-registry" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest 0.10.7", + "rand_core 0.6.4", +] + +[[package]] +name = "similar" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +dependencies = [ + "bstr", + "unicode-segmentation", +] + +[[package]] +name = "similar-asserts" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe85670573cd6f0fa97940f26e7e6601213c3b0555246c24234131f88c5709e" +dependencies = [ + "console", + "serde", + "similar", +] + +[[package]] +name = "simple_asn1" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" +dependencies = [ + "num-bigint", + "num-traits", + "thiserror", + "time", +] + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "sketches-ddsketch" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1e9a774a6c28142ac54bb25d25562e6bcf957493a184f15ad4eebccb23e410a" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +dependencies = [ + "arbitrary", + "serde", +] + +[[package]] +name = "snap" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" + +[[package]] +name = "socket2" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "soketto" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37468c595637c10857701c990f93a40ce0e357cedb0953d1c26c8d8027f9bb53" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures", + "http", + "httparse", + "log", + "rand 0.8.5", + "sha1", +] + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der", +] + +[[package]] +name = "sptr" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b9b39299b249ad65f3b7e96443bad61c02ca5cd3589f46cb6d610a0fd6c0d6a" + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "str_stack" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091b6114800a5f2141aee1d1b9d6ca3592ac062dc5decb3764ec5895a47b4eb" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.86", +] + +[[package]] +name = "substrate-bn" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b5bbfa79abbae15dd642ea8176a21a635ff3c00059961d1ea27ad04e5b441c" +dependencies = [ + "byteorder", + "crunchy", + "lazy_static", + "rand 0.8.5", + "rustc-hex", +] + +[[package]] +name = "subtle" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" + +[[package]] +name = "symbolic-common" +version = "12.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "366f1b4c6baf6cfefc234bbd4899535fca0b06c74443039a73f6dfb2fad88d77" +dependencies = [ + "debugid", + "memmap2", + "stable_deref_trait", + "uuid", +] + +[[package]] +name = "symbolic-demangle" +version = "12.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aba05ba5b9962ea5617baf556293720a8b2d0a282aa14ee4bf10e22efc7da8c8" +dependencies = [ + "cpp_demangle", + "rustc-demangle", + "symbolic-common", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89275301d38033efb81a6e60e3497e734dfcc62571f2854bf4b16690398824c" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn-solidity" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16320d4a2021ba1a32470b3759676114a918885e9800e68ad60f2c67969fba62" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "syn-solidity" +version = "0.8.10" +source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "sysinfo" +version = "0.31.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "355dbe4f8799b304b05e1b0f05fc59b2a18d36645cf169607da45bde2f69a1be" +dependencies = [ + "core-foundation-sys", + "libc", + "memchr", + "ntapi", + "windows 0.57.0", +] + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tempfile" +version = "3.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +dependencies = [ + "cfg-if", + "fastrand 2.1.1", + "once_cell", + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "termtree" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" + +[[package]] +name = "test-fuzz" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab7a9bb33d134e863862ab9dad2ac7e022ac89707914627f498fe0f29248d9b" +dependencies = [ + "serde", + "test-fuzz-internal", + "test-fuzz-macro", + "test-fuzz-runtime", +] + +[[package]] +name = "test-fuzz-internal" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0bef5dd380747bd7b6e636a8032a24aa34fcecaf843e59fc97d299681922e86" +dependencies = [ + "bincode", + "cargo_metadata", + "serde", +] + +[[package]] +name = "test-fuzz-macro" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7e6b4c7391a38f0f026972ec2200bcfd1ec45533aa266fdae5858d011afc500" +dependencies = [ + "darling", + "heck", + "itertools 0.13.0", + "once_cell", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "test-fuzz-runtime" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9fbe6fb7481ec6d9bf64ae2c5d49cb1b40f8da624a91031482af7b08168c679" +dependencies = [ + "hex", + "num-traits", + "serde", + "sha1", + "test-fuzz-internal", +] + +[[package]] +name = "thin-vec" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b" + +[[package]] +name = "thiserror" +version = "1.0.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d171f59dbaa811dbbb1aee1e73db92ec2b122911a48e1390dfe327a821ddede" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b08be0f17bd307950653ce45db00cd31200d82b624b36e181337d9c7d92765b5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "thiserror-impl-no-std" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58e6318948b519ba6dc2b442a6d0b904ebfb8d411a3ad3e07843615a72249758" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "thiserror-no-std" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3ad459d94dd517257cc96add8a43190ee620011bb6e6cdc82dafd97dfafafea" +dependencies = [ + "thiserror-impl-no-std", +] + +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "threadpool" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +dependencies = [ + "num_cpus", +] + +[[package]] +name = "tikv-jemalloc-ctl" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f21f216790c8df74ce3ab25b534e0718da5a1916719771d3fec23315c99e468b" +dependencies = [ + "libc", + "paste", + "tikv-jemalloc-sys", +] + +[[package]] +name = "tikv-jemalloc-sys" +version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "tikv-jemallocator" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865" +dependencies = [ + "libc", + "tikv-jemalloc-sys", +] + +[[package]] +name = "time" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +dependencies = [ + "deranged", + "itoa", + "js-sys", + "libc", + "num-conv", + "num_threads", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] + +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinytemplate" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "tinyvec" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "145f3413504347a2be84393cc8a7d2fb4d863b375909ea59f2158261aa258bbb" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio 1.0.2", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2", + "tokio-macros", + "windows-sys 0.52.0", +] + +[[package]] +name = "tokio-macros" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", + "tokio-util", +] + +[[package]] +name = "tokio-tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" +dependencies = [ + "futures-util", + "log", + "rustls", + "rustls-pki-types", + "tokio", + "tokio-rustls", + "tungstenite", + "webpki-roots", +] + +[[package]] +name = "tokio-util" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +dependencies = [ + "bytes", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite", + "slab", + "tokio", +] + +[[package]] +name = "toml" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.22.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +dependencies = [ + "indexmap 2.6.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "hdrhistogram", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand 0.8.5", + "slab", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper 0.1.2", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-http" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" +dependencies = [ + "async-compression", + "base64 0.21.7", + "bitflags 2.6.0", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-body-util", + "http-range-header", + "httpdate", + "iri-string", + "mime", + "mime_guess", + "percent-encoding", + "pin-project-lite", + "tokio", + "tokio-util", + "tower 0.4.13", + "tower-layer", + "tower-service", + "tracing", + "uuid", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + +[[package]] +name = "tower-service" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "log", + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-appender" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +dependencies = [ + "crossbeam-channel", + "thiserror", + "time", + "tracing-subscriber", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-futures" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" +dependencies = [ + "pin-project", + "tracing", +] + +[[package]] +name = "tracing-journald" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd" +dependencies = [ + "libc", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-logfmt" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b1f47d22deb79c3f59fcf2a1f00f60cbdc05462bf17d1cd356c1fefa3f444bd" +dependencies = [ + "time", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", +] + +[[package]] +name = "tracy-client" +version = "0.17.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "746b078c6a09ebfd5594609049e07116735c304671eaab06ce749854d23435bc" +dependencies = [ + "loom", + "once_cell", + "rustc-demangle", + "tracy-client-sys", +] + +[[package]] +name = "tracy-client-sys" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68613466112302fdbeabc5fa55f7d57462a0b247d5a6b7d7e09401fb471a144d" +dependencies = [ + "cc", +] + +[[package]] +name = "triehash" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" +dependencies = [ + "hash-db", + "rlp", +] + +[[package]] +name = "trust-dns-proto" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3119112651c157f4488931a01e586aa459736e9d6046d3bd9105ffb69352d374" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.4.0", + "ipnet", + "once_cell", + "rand 0.8.5", + "smallvec", + "thiserror", + "tinyvec", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.23.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10a3e6c3aff1718b3c73e395d1f35202ba2ffa847c6a62eea0db8fb4cfe30be6" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lru-cache", + "once_cell", + "parking_lot", + "rand 0.8.5", + "resolv-conf", + "serde", + "smallvec", + "thiserror", + "tokio", + "tracing", + "trust-dns-proto", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" +dependencies = [ + "byteorder", + "bytes", + "data-encoding", + "http", + "httparse", + "log", + "rand 0.8.5", + "rustls", + "rustls-pki-types", + "sha1", + "thiserror", + "utf-8", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "ucd-trie" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" + +[[package]] +name = "uint" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" +dependencies = [ + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + +[[package]] +name = "uint" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "909988d098b2f738727b161a106cfc7cab00c539c2687a8836f8e565976fb53e" +dependencies = [ + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + +[[package]] +name = "unarray" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" + +[[package]] +name = "unicase" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" + +[[package]] +name = "unicode-bidi" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" + +[[package]] +name = "unicode-normalization" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "unicode-truncate" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf" +dependencies = [ + "itertools 0.13.0", + "unicode-segmentation", + "unicode-width", +] + +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + +[[package]] +name = "unicode-xid" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" + +[[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle", +] + +[[package]] +name = "unsigned-varint" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb066959b24b5196ae73cb057f45598450d2c5f71460e98c49b738086eff9c06" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +dependencies = [ + "form_urlencoded", + "idna 0.5.0", + "percent-encoding", + "serde", +] + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "uuid" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +dependencies = [ + "getrandom 0.2.15", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "vergen" +version = "8.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" +dependencies = [ + "anyhow", + "cargo_metadata", + "cfg-if", + "regex", + "rustversion", + "time", +] + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "visibility" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "wait-timeout" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +dependencies = [ + "libc", +] + +[[package]] +name = "waker-fn" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +dependencies = [ + "cfg-if", + "once_cell", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.86", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" + +[[package]] +name = "wasm-streams" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wasmtimer" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb4f099acbc1043cc752b91615b24b02d7f6fcd975bd781fed9f50b3c3e15bf7" +dependencies = [ + "futures", + "js-sys", + "parking_lot", + "pin-utils", + "slab", + "wasm-bindgen", +] + +[[package]] +name = "web-sys" +version = "0.3.72" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-roots" +version = "0.26.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "widestring" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" +dependencies = [ + "windows-core 0.57.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" +dependencies = [ + "windows-core 0.58.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" +dependencies = [ + "windows-implement 0.57.0", + "windows-interface 0.57.0", + "windows-result 0.1.2", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" +dependencies = [ + "windows-implement 0.58.0", + "windows-interface 0.58.0", + "windows-result 0.2.0", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-implement" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "windows-implement" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "windows-interface" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "windows-interface" +version = "0.58.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result 0.2.0", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result 0.2.0", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winnow" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + +[[package]] +name = "ws_stream_wasm" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" +dependencies = [ + "async_io_stream", + "futures", + "js-sys", + "log", + "pharos", + "rustc_version 0.4.1", + "send_wrapper 0.6.0", + "thiserror", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + +[[package]] +name = "yoke" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "zerofrom" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", + "synstructure", +] + +[[package]] +name = "zeroize" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.86", +] + +[[package]] +name = "zstd" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "7.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +dependencies = [ + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.13+zstd.1.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/Cargo.toml b/Cargo.toml index 8a86de92cda6..9fd15d2f3250 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -603,42 +603,40 @@ tikv-jemallocator = "0.6" tracy-client = "0.17.3" [patch.crates-io] -alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } -alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } - -alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } - -revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } - -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } - -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } +alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } + +revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } + +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } + +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index e1803c756f88..ad19ad950bd9 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -18,7 +18,7 @@ alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } -revm-primitives = { git = "https://github.com/klkvr/revm", rev = "e552b1d" } +revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } diff --git a/crates/optimism/chainspec/src/lib.rs b/crates/optimism/chainspec/src/lib.rs index ae6f2d823621..4b116a8d7b9f 100644 --- a/crates/optimism/chainspec/src/lib.rs +++ b/crates/optimism/chainspec/src/lib.rs @@ -20,7 +20,7 @@ mod op_sepolia; use alloc::{boxed::Box, vec, vec::Vec}; use alloy_chains::Chain; use alloy_genesis::Genesis; -use alloy_primitives::{Bytes, Signature, B256, U256}; +use alloy_primitives::{Bytes, PrimitiveSignature as Signature, B256, U256}; pub use base::BASE_MAINNET; pub use base_sepolia::BASE_SEPOLIA; use derive_more::{Constructor, Deref, Display, From, Into}; diff --git a/crates/optimism/evm/src/execute.rs b/crates/optimism/evm/src/execute.rs index 69934b1f5735..90065aba2433 100644 --- a/crates/optimism/evm/src/execute.rs +++ b/crates/optimism/evm/src/execute.rs @@ -467,7 +467,7 @@ mod tests { gas_limit: MIN_TRANSACTION_GAS, ..Default::default() }), - optimism_deposit_tx_signature(), + TxDeposit::signature(), ); let provider = executor_provider(chain_spec); diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index 5e761f41fe22..07f67fc7cf94 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -22,6 +22,7 @@ reth-codecs = { workspace = true, optional = true } # ethereum alloy-consensus.workspace = true +alloy-network.workspace = true alloy-primitives = { workspace = true, features = ["rand", "rlp"] } alloy-rlp = { workspace = true, features = ["arrayvec"] } alloy-rpc-types = { workspace = true, optional = true } diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index 5e6096cb8c00..f3d196517cc2 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -1,34 +1,20 @@ //! Common conversions from alloy types. -use crate::{ - Block, BlockBody, Signature, Transaction, TransactionSigned, TransactionSignedEcRecovered, - TransactionSignedNoHash, TxType, -}; +use crate::{Block, BlockBody, Transaction, TransactionSigned}; use alloc::{string::ToString, vec::Vec}; -use alloy_consensus::{ - constants::EMPTY_TRANSACTIONS, transaction::from_eip155_value, AnyHeader, Header, TxEip1559, - TxEip2930, TxEip4844, TxLegacy, -}; -use alloy_primitives::{SignatureError, TxKind}; -use alloy_rlp::Error as RlpError; -use alloy_rpc_types::AnyNetworkHeader; +use alloy_consensus::{constants::EMPTY_TRANSACTIONS, AnyHeader, Header, TxEnvelope}; +use alloy_network::{AnyRpcBlock, AnyTxEnvelope}; use alloy_serde::WithOtherFields; use op_alloy_rpc_types as _; -impl - TryFrom, AnyNetworkHeader>> - for Block -{ +impl TryFrom for Block { type Error = alloy_rpc_types::ConversionError; - fn try_from( - block: alloy_rpc_types::Block< - WithOtherFields, - AnyNetworkHeader, - >, - ) -> Result { + fn try_from(block: AnyRpcBlock) -> Result { use alloy_rpc_types::ConversionError; + let block = block.inner; + let transactions = { let transactions: Result, ConversionError> = match block .transactions @@ -43,7 +29,7 @@ impl if block.header.transactions_root == EMPTY_TRANSACTIONS { Ok(Vec::new()) } else { - Err(ConversionError::MissingFullTransactions) + Err(ConversionError::Custom("missing transactions".to_string())) } } }; @@ -89,8 +75,9 @@ impl gas_used, timestamp, extra_data, - mix_hash: mix_hash.ok_or(ConversionError::Custom("missing mixHash".to_string()))?, - nonce: nonce.ok_or(ConversionError::Custom("missing nonce".to_string()))?, + mix_hash: mix_hash + .ok_or_else(|| ConversionError::Custom("missing mixHash".to_string()))?, + nonce: nonce.ok_or_else(|| ConversionError::Custom("missing nonce".to_string()))?, base_fee_per_gas, withdrawals_root, blob_gas_used, @@ -107,11 +94,12 @@ impl } } -impl TryFrom> for Transaction { +impl TryFrom>> for TransactionSigned { type Error = alloy_rpc_types::ConversionError; - fn try_from(tx: WithOtherFields) -> Result { - use alloy_eips::eip2718::Eip2718Error; + fn try_from( + tx: WithOtherFields>, + ) -> Result { use alloy_rpc_types::ConversionError; #[cfg(feature = "optimism")] @@ -119,211 +107,62 @@ impl TryFrom> for Transaction { #[cfg(not(feature = "optimism"))] let WithOtherFields { inner: tx, other: _ } = tx; - match tx.transaction_type.map(TryInto::try_into).transpose().map_err(|_| { - ConversionError::Eip2718Error(Eip2718Error::UnexpectedType( - tx.transaction_type.unwrap(), - )) - })? { - None | Some(TxType::Legacy) => { - // legacy - if tx.max_fee_per_gas.is_some() || tx.max_priority_fee_per_gas.is_some() { - return Err(ConversionError::Eip2718Error( - RlpError::Custom("EIP-1559 fields are present in a legacy transaction") - .into(), - )) - } - - // extract the chain id if possible - let chain_id = match tx.chain_id { - Some(chain_id) => Some(chain_id), - None => { - if let Some(signature) = tx.signature { - // TODO: make this error conversion better. This is needed because - // sometimes rpc providers return legacy transactions without a chain id - // explicitly in the response, however those transactions may also have - // a chain id in the signature from eip155 - from_eip155_value(signature.v.to()) - .ok_or_else(|| { - ConversionError::SignatureError(SignatureError::InvalidParity( - signature.v.to(), - )) - })? - .1 - } else { - return Err(ConversionError::MissingChainId) - } - } - }; - - Ok(Self::Legacy(TxLegacy { - chain_id, - nonce: tx.nonce, - gas_price: tx.gas_price.ok_or(ConversionError::MissingGasPrice)?, - gas_limit: tx.gas, - to: tx.to.map_or(TxKind::Create, TxKind::Call), - value: tx.value, - input: tx.input, - })) + let (transaction, signature, hash) = match tx.inner { + AnyTxEnvelope::Ethereum(TxEnvelope::Legacy(tx)) => { + let (tx, signature, hash) = tx.into_parts(); + (Transaction::Legacy(tx), signature, hash) } - Some(TxType::Eip2930) => { - // eip2930 - Ok(Self::Eip2930(TxEip2930 { - chain_id: tx.chain_id.ok_or(ConversionError::MissingChainId)?, - nonce: tx.nonce, - gas_limit: tx.gas, - to: tx.to.map_or(TxKind::Create, TxKind::Call), - value: tx.value, - input: tx.input, - access_list: tx.access_list.ok_or(ConversionError::MissingAccessList)?, - gas_price: tx.gas_price.ok_or(ConversionError::MissingGasPrice)?, - })) + AnyTxEnvelope::Ethereum(TxEnvelope::Eip2930(tx)) => { + let (tx, signature, hash) = tx.into_parts(); + (Transaction::Eip2930(tx), signature, hash) } - Some(TxType::Eip1559) => { - // EIP-1559 - Ok(Self::Eip1559(TxEip1559 { - chain_id: tx.chain_id.ok_or(ConversionError::MissingChainId)?, - nonce: tx.nonce, - max_priority_fee_per_gas: tx - .max_priority_fee_per_gas - .ok_or(ConversionError::MissingMaxPriorityFeePerGas)?, - max_fee_per_gas: tx - .max_fee_per_gas - .ok_or(ConversionError::MissingMaxFeePerGas)?, - gas_limit: tx.gas, - to: tx.to.map_or(TxKind::Create, TxKind::Call), - value: tx.value, - access_list: tx.access_list.ok_or(ConversionError::MissingAccessList)?, - input: tx.input, - })) + AnyTxEnvelope::Ethereum(TxEnvelope::Eip1559(tx)) => { + let (tx, signature, hash) = tx.into_parts(); + (Transaction::Eip1559(tx), signature, hash) } - Some(TxType::Eip4844) => { - // EIP-4844 - Ok(Self::Eip4844(TxEip4844 { - chain_id: tx.chain_id.ok_or(ConversionError::MissingChainId)?, - nonce: tx.nonce, - max_priority_fee_per_gas: tx - .max_priority_fee_per_gas - .ok_or(ConversionError::MissingMaxPriorityFeePerGas)?, - max_fee_per_gas: tx - .max_fee_per_gas - .ok_or(ConversionError::MissingMaxFeePerGas)?, - gas_limit: tx.gas, - to: tx.to.unwrap_or_default(), - value: tx.value, - access_list: tx.access_list.ok_or(ConversionError::MissingAccessList)?, - input: tx.input, - blob_versioned_hashes: tx - .blob_versioned_hashes - .ok_or(ConversionError::MissingBlobVersionedHashes)?, - max_fee_per_blob_gas: tx - .max_fee_per_blob_gas - .ok_or(ConversionError::MissingMaxFeePerBlobGas)?, - })) + AnyTxEnvelope::Ethereum(TxEnvelope::Eip4844(tx)) => { + let (tx, signature, hash) = tx.into_parts(); + (Transaction::Eip4844(tx.into()), signature, hash) } - Some(TxType::Eip7702) => { - // this is currently unsupported as it is not present in alloy due to missing rpc - // specs - Err(ConversionError::Custom("Unimplemented".to_string())) - /* - // EIP-7702 - Ok(Transaction::Eip7702(TxEip7702 { - chain_id: tx.chain_id.ok_or(ConversionError::MissingChainId)?, - nonce: tx.nonce, - max_priority_fee_per_gas: tx - .max_priority_fee_per_gas - .ok_or(ConversionError::MissingMaxPriorityFeePerGas)?, - max_fee_per_gas: tx - .max_fee_per_gas - .ok_or(ConversionError::MissingMaxFeePerGas)?, - gas_limit: tx - .gas - .try_into() - .map_err(|_| ConversionError::Eip2718Error(RlpError::Overflow.into()))?, - to: tx.to.map_or(TxKind::Create, TxKind::Call), - value: tx.value, - access_list: tx.access_list.ok_or(ConversionError::MissingAccessList)?, - authorization_list: tx - .authorization_list - .ok_or(ConversionError::MissingAuthorizationList)?, - input: tx.input, - }))*/ + AnyTxEnvelope::Ethereum(TxEnvelope::Eip7702(tx)) => { + let (tx, signature, hash) = tx.into_parts(); + (Transaction::Eip7702(tx), signature, hash) } - #[cfg(feature = "optimism")] - Some(TxType::Deposit) => { - let fields = other - .deserialize_into::() - .map_err(|e| ConversionError::Custom(e.to_string()))?; - Ok(Self::Deposit(op_alloy_consensus::TxDeposit { - source_hash: fields - .source_hash - .ok_or_else(|| ConversionError::Custom("MissingSourceHash".to_string()))?, - from: tx.from, - to: TxKind::from(tx.to), - mint: fields.mint.filter(|n| *n != 0), - value: tx.value, - gas_limit: tx.gas, - is_system_transaction: fields.is_system_tx.unwrap_or(false), - input: tx.input, - })) + AnyTxEnvelope::Ethereum(_) => { + return Err(ConversionError::Custom("unknown transaction type".to_string())) } - } - } -} - -impl TryFrom> for TransactionSigned { - type Error = alloy_rpc_types::ConversionError; - - fn try_from(tx: WithOtherFields) -> Result { - use alloy_rpc_types::ConversionError; - - let signature = tx.signature.ok_or(ConversionError::MissingSignature)?; - let transaction: Transaction = tx.try_into()?; - let y_parity = if let Some(y_parity) = signature.y_parity { - y_parity.0 - } else { - match transaction.tx_type() { - // If the transaction type is Legacy, adjust the v component of the - // signature according to the Ethereum specification - TxType::Legacy => { - from_eip155_value(signature.v.to()) - .ok_or_else(|| { - ConversionError::SignatureError(SignatureError::InvalidParity( - signature.v.to(), - )) - })? - .0 + #[cfg(not(feature = "optimism"))] + AnyTxEnvelope::Unknown(_) => { + return Err(ConversionError::Custom("unknown transaction type".to_string())) + } + #[cfg(feature = "optimism")] + AnyTxEnvelope::Unknown(tx) => { + if tx.inner.ty.0 == TxType::Deposit { + Ok(Self::Deposit(op_alloy_consensus::TxDeposit { + source_hash: tx.inner.deser_by_key("sourceHash").ok_or_else(|| { + ConversionError::Custom("missing `sourceHash`".to_string()) + })?, + from: tx + .inner + .deser_by_key("from") + .ok_or_else(|| ConversionError::Custom("missing `from`".to_string()))?, + to: tx.to(), + mint: fields.mint.filter(|n| *n != 0), + value: tx.value(), + gas_limit: tx.gas_limit(), + is_system_transaction: tx + .inner + .deser_by_key("isSystemTx") + .unwrap_or(Ok(0))?, + input: tx.input().clone(), + })) + } else { + return Err(ConversionError::Custom("unknown transaction type".to_string())) } - _ => !signature.v.is_zero(), } }; - Ok(Self::from_transaction_and_signature( - transaction, - Signature::new(signature.r, signature.s, y_parity), - )) - } -} - -impl TryFrom> for TransactionSignedEcRecovered { - type Error = alloy_rpc_types::ConversionError; - - fn try_from(tx: WithOtherFields) -> Result { - use alloy_rpc_types::ConversionError; - - let transaction: TransactionSigned = tx.try_into()?; - - transaction.try_into_ecrecovered().map_err(|_| ConversionError::InvalidSignature) - } -} - -impl TryFrom> for TransactionSignedNoHash { - type Error = alloy_rpc_types::ConversionError; - - fn try_from(tx: WithOtherFields) -> Result { - Ok(Self { - signature: tx.signature.ok_or(Self::Error::MissingSignature)?.try_into()?, - transaction: tx.try_into()?, - }) + Ok(Self { transaction, signature, hash }) } } diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index 41259d57741e..3788740b0632 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -20,7 +20,7 @@ use once_cell as _; #[cfg(not(feature = "std"))] use once_cell::sync::Lazy as LazyLock; #[cfg(feature = "optimism")] -use op_alloy_consensus::{optimism_deposit_tx_signature, DepositTransaction}; +use op_alloy_consensus::DepositTransaction; use rayon::prelude::{IntoParallelIterator, ParallelIterator}; use serde::{Deserialize, Serialize}; use signature::decode_with_eip155_chain_id; @@ -899,7 +899,7 @@ impl TransactionSignedNoHash { // transactions with an empty signature // // NOTE: this is very hacky and only relevant for op-mainnet pre bedrock - if self.is_legacy() && self.signature == optimism_deposit_tx_signature() { + if self.is_legacy() && self.signature == TxDeposit::signature() { return Some(Address::ZERO) } } @@ -1478,7 +1478,7 @@ impl Decodable2718 for TransactionSigned { #[cfg(feature = "optimism")] TxType::Deposit => Ok(Self::from_transaction_and_signature( Transaction::Deposit(TxDeposit::rlp_decode(buf)?), - optimism_deposit_tx_signature(), + TxDeposit::signature(), )), } } @@ -1513,8 +1513,7 @@ impl<'a> arbitrary::Arbitrary<'a> for TransactionSigned { } #[cfg(feature = "optimism")] - let signature = - if transaction.is_deposit() { optimism_deposit_tx_signature() } else { signature }; + let signature = if transaction.is_deposit() { TxDeposit::signature() } else { signature }; Ok(Self::from_transaction_and_signature(transaction, signature)) } @@ -1650,7 +1649,7 @@ pub mod serde_bincode_compat { transaction::serde_bincode_compat::{TxEip1559, TxEip2930, TxEip7702, TxLegacy}, TxEip4844, }; - use alloy_primitives::{Signature, TxHash}; + use alloy_primitives::{PrimitiveSignature as Signature, TxHash}; #[cfg(feature = "optimism")] use op_alloy_consensus::serde_bincode_compat::TxDeposit; use serde::{Deserialize, Deserializer, Serialize, Serializer}; diff --git a/crates/primitives/src/transaction/signature.rs b/crates/primitives/src/transaction/signature.rs index ec1753b199ef..a2bda67d9b83 100644 --- a/crates/primitives/src/transaction/signature.rs +++ b/crates/primitives/src/transaction/signature.rs @@ -3,7 +3,7 @@ use alloy_consensus::transaction::from_eip155_value; use alloy_primitives::{Address, B256, U256}; use alloy_rlp::Decodable; -pub use alloy_primitives::Signature; +pub use alloy_primitives::PrimitiveSignature as Signature; /// The order of the secp256k1 curve, divided by two. Signatures that should be checked according /// to EIP-2 should have an S value less than or equal to this. diff --git a/crates/rpc/rpc-types-compat/src/transaction/mod.rs b/crates/rpc/rpc-types-compat/src/transaction/mod.rs index 16742144f25a..35e6295f4be3 100644 --- a/crates/rpc/rpc-types-compat/src/transaction/mod.rs +++ b/crates/rpc/rpc-types-compat/src/transaction/mod.rs @@ -1,11 +1,8 @@ //! Compatibility functions for rpc `Transaction` type. -mod signature; - -pub use signature::*; use std::fmt; -use alloy_consensus::Transaction as _; +use alloy_consensus::{Transaction as _, TxEip4844Variant, TxEnvelope}; use alloy_rpc_types::{ request::{TransactionInput, TransactionRequest}, TransactionInfo, @@ -44,7 +41,6 @@ pub trait TransactionCompat: Send + Sync + Unpin + Clone + fmt::Debug { + Sync + Unpin + Clone - + Default + fmt::Debug; /// diff --git a/crates/rpc/rpc-types-compat/src/transaction/signature.rs b/crates/rpc/rpc-types-compat/src/transaction/signature.rs deleted file mode 100644 index 02b3d54dcefa..000000000000 --- a/crates/rpc/rpc-types-compat/src/transaction/signature.rs +++ /dev/null @@ -1,53 +0,0 @@ -use alloy_consensus::transaction::to_eip155_value; -use alloy_primitives::U256; -use alloy_rpc_types::{Parity, Signature}; -use reth_primitives::{Signature as PrimitiveSignature, TxType}; - -/// Creates a new rpc signature from a legacy [primitive -/// signature](reth_primitives::Signature), using the give chain id to compute the signature's -/// recovery id. -/// -/// If the chain id is `Some`, the recovery id is computed according to [EIP-155](https://eips.ethereum.org/EIPS/eip-155). -pub fn from_legacy_primitive_signature( - signature: PrimitiveSignature, - chain_id: Option, -) -> Signature { - Signature { - r: signature.r(), - s: signature.s(), - v: U256::from(to_eip155_value(signature.v(), chain_id)), - y_parity: None, - } -} - -/// Creates a new rpc signature from a non-legacy [primitive -/// signature](reth_primitives::Signature). This sets the `v` value to `0` or `1` depending on -/// the signature's `odd_y_parity`. -pub fn from_typed_primitive_signature(signature: PrimitiveSignature) -> Signature { - Signature { - r: signature.r(), - s: signature.s(), - v: U256::from(signature.v() as u8), - y_parity: Some(Parity(signature.v())), - } -} - -/// Creates a new rpc signature from a legacy [primitive -/// signature](reth_primitives::Signature). -/// -/// The tx type is used to determine whether or not to use the `chain_id` to compute the -/// signature's recovery id. -/// -/// If the transaction is a legacy transaction, it will use the `chain_id` to compute the -/// signature's recovery id. If the transaction is a typed transaction, it will set the `v` -/// value to `0` or `1` depending on the signature's `odd_y_parity`. -pub fn from_primitive_signature( - signature: PrimitiveSignature, - tx_type: TxType, - chain_id: Option, -) -> Signature { - match tx_type { - TxType::Legacy => from_legacy_primitive_signature(signature, chain_id), - _ => from_typed_primitive_signature(signature), - } -} diff --git a/crates/storage/codecs/src/alloy/authorization_list.rs b/crates/storage/codecs/src/alloy/authorization_list.rs index e9135b2f5e65..15285f360473 100644 --- a/crates/storage/codecs/src/alloy/authorization_list.rs +++ b/crates/storage/codecs/src/alloy/authorization_list.rs @@ -85,7 +85,7 @@ mod tests { nonce: 1, } .into_signed( - alloy_primitives::Signature::new( + alloy_primitives::PrimitiveSignature::new( b256!("1fd474b1f9404c0c5df43b7620119ffbc3a1c3f942c73b6e14e9f55255ed9b1d").into(), b256!("29aca24813279a901ec13b5f7bb53385fa1fc627b946592221417ff74a49600d").into(), false, diff --git a/crates/storage/codecs/src/alloy/signature.rs b/crates/storage/codecs/src/alloy/signature.rs index a7a4614c3cfd..b8fd19cf35a3 100644 --- a/crates/storage/codecs/src/alloy/signature.rs +++ b/crates/storage/codecs/src/alloy/signature.rs @@ -1,7 +1,7 @@ //! Compact implementation for [`Signature`] use crate::Compact; -use alloy_primitives::{Signature, U256}; +use alloy_primitives::{PrimitiveSignature as Signature, U256}; impl Compact for Signature { fn to_compact(&self, buf: &mut B) -> usize From 0ad835ad179df9e915cfe28c4d01ea086b21451b Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Sat, 2 Nov 2024 05:17:14 +0400 Subject: [PATCH 09/20] wip --- bin/reth-bench/src/bench/new_payload_fcu.rs | 2 +- bin/reth-bench/src/bench/new_payload_only.rs | 2 +- crates/consensus/debug-client/src/client.rs | 8 +- crates/primitives/src/alloy_compat.rs | 2 +- .../rpc-types-compat/src/transaction/mod.rs | 2 +- crates/rpc/rpc/src/eth/helpers/types.rs | 93 +++++++------------ 6 files changed, 44 insertions(+), 65 deletions(-) diff --git a/bin/reth-bench/src/bench/new_payload_fcu.rs b/bin/reth-bench/src/bench/new_payload_fcu.rs index 2fc58ab68556..dd2f863e2c94 100644 --- a/bin/reth-bench/src/bench/new_payload_fcu.rs +++ b/bin/reth-bench/src/bench/new_payload_fcu.rs @@ -47,7 +47,7 @@ impl Command { block_provider.get_block_by_number(next_block.into(), true.into()).await; let block = block_res.unwrap().unwrap(); let block_hash = block.header.hash; - let block = Block::try_from(block.inner).unwrap().seal(block_hash); + let block = Block::try_from(block).unwrap().seal(block_hash); let head_block_hash = block.hash(); let safe_block_hash = block_provider .get_block_by_number(block.number.saturating_sub(32).into(), false.into()); diff --git a/bin/reth-bench/src/bench/new_payload_only.rs b/bin/reth-bench/src/bench/new_payload_only.rs index 26dc8f3f4acf..68b2f76527df 100644 --- a/bin/reth-bench/src/bench/new_payload_only.rs +++ b/bin/reth-bench/src/bench/new_payload_only.rs @@ -47,7 +47,7 @@ impl Command { block_provider.get_block_by_number(next_block.into(), true.into()).await; let block = block_res.unwrap().unwrap(); let block_hash = block.header.hash; - let block = Block::try_from(block.inner).unwrap().seal(block_hash); + let block = Block::try_from(block).unwrap().seal(block_hash); next_block += 1; sender.send(block).await.unwrap(); diff --git a/crates/consensus/debug-client/src/client.rs b/crates/consensus/debug-client/src/client.rs index 5a46a0ab342b..7ef79d515809 100644 --- a/crates/consensus/debug-client/src/client.rs +++ b/crates/consensus/debug-client/src/client.rs @@ -1,4 +1,4 @@ -use alloy_consensus::TxEnvelope; +use alloy_consensus::Transaction; use alloy_eips::eip2718::Encodable2718; use alloy_primitives::B256; use alloy_rpc_types::{Block, BlockTransactions}; @@ -184,7 +184,8 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { // https://github.com/ethereum/execution-apis/blob/main/src/engine/cancun.md#specification let versioned_hashes = transactions .iter() - .flat_map(|tx| tx.blob_versioned_hashes.clone().unwrap_or_default()) + .flat_map(|tx| tx.blob_versioned_hashes().unwrap_or_default()) + .copied() .collect(); let payload: ExecutionPayloadV3 = ExecutionPayloadV3 { @@ -206,9 +207,8 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { transactions: transactions .into_iter() .map(|tx| { - let envelope: TxEnvelope = tx.try_into().unwrap(); let mut buffer: Vec = vec![]; - envelope.encode_2718(&mut buffer); + tx.inner.encode_2718(&mut buffer); buffer.into() }) .collect(), diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index f3d196517cc2..7730bd2e0f19 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -137,7 +137,7 @@ impl TryFrom>> for T } #[cfg(feature = "optimism")] AnyTxEnvelope::Unknown(tx) => { - if tx.inner.ty.0 == TxType::Deposit { + if tx.inner.ty.0 == crate::TxType::Deposit { Ok(Self::Deposit(op_alloy_consensus::TxDeposit { source_hash: tx.inner.deser_by_key("sourceHash").ok_or_else(|| { ConversionError::Custom("missing `sourceHash`".to_string()) diff --git a/crates/rpc/rpc-types-compat/src/transaction/mod.rs b/crates/rpc/rpc-types-compat/src/transaction/mod.rs index 35e6295f4be3..c22bda6f2384 100644 --- a/crates/rpc/rpc-types-compat/src/transaction/mod.rs +++ b/crates/rpc/rpc-types-compat/src/transaction/mod.rs @@ -2,7 +2,7 @@ use std::fmt; -use alloy_consensus::{Transaction as _, TxEip4844Variant, TxEnvelope}; +use alloy_consensus::Transaction as _; use alloy_rpc_types::{ request::{TransactionInput, TransactionRequest}, TransactionInfo, diff --git a/crates/rpc/rpc/src/eth/helpers/types.rs b/crates/rpc/rpc/src/eth/helpers/types.rs index 0998c057e29c..55d06e4c5a44 100644 --- a/crates/rpc/rpc/src/eth/helpers/types.rs +++ b/crates/rpc/rpc/src/eth/helpers/types.rs @@ -1,14 +1,10 @@ //! L1 `eth` API types. -use alloy_consensus::Transaction as _; +use alloy_consensus::{Signed, Transaction as _, TxEip4844Variant, TxEnvelope}; use alloy_network::{Ethereum, Network}; -use alloy_primitives::{Address, TxKind}; use alloy_rpc_types::{Transaction, TransactionInfo}; -use reth_primitives::TransactionSignedEcRecovered; -use reth_rpc_types_compat::{ - transaction::{from_primitive_signature, GasPrice}, - TransactionCompat, -}; +use reth_primitives::{TransactionSigned, TransactionSignedEcRecovered}; +use reth_rpc_types_compat::TransactionCompat; /// Builds RPC transaction response for l1. #[derive(Debug, Clone, Copy)] @@ -25,65 +21,48 @@ where tx: TransactionSignedEcRecovered, tx_info: TransactionInfo, ) -> Self::Transaction { - let signer = tx.signer(); - let signed_tx = tx.into_signed(); + let from = tx.signer(); + let TransactionSigned { transaction, signature, hash } = tx.into_signed(); - let to: Option
= match signed_tx.kind() { - TxKind::Create => None, - TxKind::Call(to) => Some(Address(*to)), + let inner = match transaction { + reth_primitives::Transaction::Legacy(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip2930(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip1559(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip4844(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip7702(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } }; - let TransactionInfo { - base_fee, block_hash, block_number, index: transaction_index, .. - } = tx_info; + let TransactionInfo { block_hash, block_number, index: transaction_index, .. } = tx_info; - let GasPrice { gas_price, max_fee_per_gas } = - Self::gas_price(&signed_tx, base_fee.map(|fee| fee as u64)); - - let input = signed_tx.input().to_vec().into(); - let chain_id = signed_tx.chain_id(); - let blob_versioned_hashes = signed_tx.blob_versioned_hashes().map(|hs| hs.to_vec()); - let access_list = signed_tx.access_list().cloned(); - let authorization_list = signed_tx.authorization_list().map(|l| l.to_vec()); - - let signature = from_primitive_signature( - *signed_tx.signature(), - signed_tx.tx_type(), - signed_tx.chain_id(), - ); - - Transaction { - hash: signed_tx.hash(), - nonce: signed_tx.nonce(), - from: signer, - to, - value: signed_tx.value(), - gas_price, - max_fee_per_gas, - max_priority_fee_per_gas: signed_tx.max_priority_fee_per_gas(), - signature: Some(signature), - gas: signed_tx.gas_limit(), - input, - chain_id, - access_list, - transaction_type: Some(signed_tx.tx_type() as u8), - // These fields are set to None because they are not stored as part of the - // transaction - block_hash, - block_number, - transaction_index, - // EIP-4844 fields - max_fee_per_blob_gas: signed_tx.max_fee_per_blob_gas(), - blob_versioned_hashes, - authorization_list, - } + Transaction { inner, block_hash, block_number, transaction_index, from } } fn otterscan_api_truncate_input(tx: &mut Self::Transaction) { - tx.input = tx.input.slice(..4); + let input = match &mut tx.inner { + TxEnvelope::Eip1559(tx) => &mut tx.tx_mut().input, + TxEnvelope::Eip2930(tx) => &mut tx.tx_mut().input, + TxEnvelope::Legacy(tx) => &mut tx.tx_mut().input, + TxEnvelope::Eip4844(tx) => match tx.tx_mut() { + TxEip4844Variant::TxEip4844(tx) => &mut tx.input, + TxEip4844Variant::TxEip4844WithSidecar(tx) => &mut tx.tx.input, + }, + TxEnvelope::Eip7702(tx) => &mut tx.tx_mut().input, + _ => return, + }; + *input = input.slice(..4); } fn tx_type(tx: &Self::Transaction) -> u8 { - tx.transaction_type.unwrap_or(0) + tx.ty() } } From c7bb25d17992095ee9493b33018262355153401d Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Sun, 3 Nov 2024 23:31:17 +0400 Subject: [PATCH 10/20] wip --- Cargo.lock | 54 +++++++-------- Cargo.toml | 54 +++++++-------- crates/optimism/evm/src/execute.rs | 2 +- crates/optimism/rpc/src/eth/transaction.rs | 63 ++++++++++------- crates/primitives/src/alloy_compat.rs | 68 +++++++++---------- .../rpc-types-compat/src/transaction/mod.rs | 42 +----------- crates/rpc/rpc/src/eth/helpers/types.rs | 8 +-- crates/rpc/rpc/src/otterscan.rs | 2 +- 8 files changed, 133 insertions(+), 160 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d0ab9f9215c0..3769032cb6ce 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,7 +113,7 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-eips", "alloy-primitives", @@ -198,7 +198,7 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-serde", @@ -251,7 +251,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -264,7 +264,7 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-consensus", "alloy-eips", @@ -286,7 +286,7 @@ dependencies = [ [[package]] name = "alloy-network-primitives" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-consensus", "alloy-eips", @@ -298,7 +298,7 @@ dependencies = [ [[package]] name = "alloy-node-bindings" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -345,7 +345,7 @@ dependencies = [ [[package]] name = "alloy-provider" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-chains", "alloy-consensus", @@ -385,7 +385,7 @@ dependencies = [ [[package]] name = "alloy-pubsub" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -425,7 +425,7 @@ dependencies = [ [[package]] name = "alloy-rpc-client" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -449,7 +449,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -461,7 +461,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -472,7 +472,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -483,7 +483,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-eips", "alloy-primitives", @@ -496,7 +496,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "serde", @@ -505,7 +505,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-consensus", "alloy-eips", @@ -525,7 +525,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-consensus", "alloy-eips", @@ -545,7 +545,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-eips", "alloy-primitives", @@ -557,7 +557,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -570,7 +570,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -581,7 +581,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "arbitrary", @@ -592,7 +592,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-primitives", "async-trait", @@ -605,7 +605,7 @@ dependencies = [ [[package]] name = "alloy-signer-local" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-consensus", "alloy-network", @@ -744,7 +744,7 @@ dependencies = [ [[package]] name = "alloy-transport" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -763,7 +763,7 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -777,7 +777,7 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -795,7 +795,7 @@ dependencies = [ [[package]] name = "alloy-transport-ws" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=7483eb82#7483eb82eab696c5c67eda96ada228dfe5297012" +source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" dependencies = [ "alloy-pubsub", "alloy-transport", diff --git a/Cargo.toml b/Cargo.toml index 9fd15d2f3250..fe0c0f0c8a97 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -608,33 +608,33 @@ alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "7483eb82" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } diff --git a/crates/optimism/evm/src/execute.rs b/crates/optimism/evm/src/execute.rs index 90065aba2433..91cdb1bd2c50 100644 --- a/crates/optimism/evm/src/execute.rs +++ b/crates/optimism/evm/src/execute.rs @@ -298,7 +298,7 @@ mod tests { use crate::OpChainSpec; use alloy_consensus::TxEip1559; use alloy_primitives::{b256, Address, StorageKey, StorageValue}; - use op_alloy_consensus::optimism_deposit_tx_signature; + use op_alloy_consensus::TxDeposit; use reth_chainspec::MIN_TRANSACTION_GAS; use reth_evm::execute::{BasicBlockExecutorProvider, BatchExecutor, BlockExecutorProvider}; use reth_optimism_chainspec::OpChainSpecBuilder; diff --git a/crates/optimism/rpc/src/eth/transaction.rs b/crates/optimism/rpc/src/eth/transaction.rs index 6b5954391d9f..b019ce0e97fa 100644 --- a/crates/optimism/rpc/src/eth/transaction.rs +++ b/crates/optimism/rpc/src/eth/transaction.rs @@ -1,14 +1,13 @@ //! Loads and formats OP transaction RPC response. -use alloy_consensus::Transaction as _; +use alloy_consensus::Signed; use alloy_primitives::{Bytes, B256}; use alloy_rpc_types::TransactionInfo; -use op_alloy_consensus::DepositTransaction; +use op_alloy_consensus::OpTxEnvelope; use op_alloy_rpc_types::Transaction; use reth_node_api::FullNodeComponents; -use reth_primitives::TransactionSignedEcRecovered; +use reth_primitives::{TransactionSigned, TransactionSignedEcRecovered}; use reth_provider::{BlockReaderIdExt, ReceiptProvider, TransactionsProvider}; -use reth_rpc::eth::EthTxBuilder; use reth_rpc_eth_api::{ helpers::{EthSigner, EthTransactions, LoadTransaction, SpawnBlocking}, FromEthApiError, FullEthApiTypes, RpcNodeCore, TransactionCompat, @@ -83,14 +82,25 @@ where tx: TransactionSignedEcRecovered, tx_info: TransactionInfo, ) -> Self::Transaction { - let signed_tx = tx.clone().into_signed(); - let hash = tx.hash; - - let mut inner = EthTxBuilder.fill(tx, tx_info); - - if signed_tx.is_deposit() { - inner.gas_price = Some(signed_tx.max_fee_per_gas()) - } + let from = tx.signer(); + let TransactionSigned { transaction, signature, hash } = tx.into_signed(); + + let inner = match transaction { + reth_primitives::Transaction::Legacy(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip2930(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip1559(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Eip4844(_) => unreachable!(), + reth_primitives::Transaction::Eip7702(tx) => { + Signed::new_unchecked(tx, signature, hash).into() + } + reth_primitives::Transaction::Deposit(tx) => OpTxEnvelope::Deposit(tx), + }; let deposit_receipt_version = self .inner @@ -100,22 +110,29 @@ where .flatten() .and_then(|receipt| receipt.deposit_receipt_version); + let TransactionInfo { block_hash, block_number, index: transaction_index, .. } = tx_info; + Transaction { - inner, - source_hash: signed_tx.source_hash(), - mint: signed_tx.mint(), - // only include is_system_tx if true: - is_system_tx: (signed_tx.is_deposit() && signed_tx.is_system_transaction()) - .then_some(true), + inner: alloy_rpc_types::Transaction { + inner, + block_hash, + block_number, + transaction_index, + from, + }, deposit_receipt_version, } } fn otterscan_api_truncate_input(tx: &mut Self::Transaction) { - tx.inner.input = tx.inner.input.slice(..4); - } - - fn tx_type(tx: &Self::Transaction) -> u8 { - tx.inner.transaction_type.unwrap_or_default() + let input = match &mut tx.inner.inner { + OpTxEnvelope::Eip1559(tx) => &mut tx.tx_mut().input, + OpTxEnvelope::Eip2930(tx) => &mut tx.tx_mut().input, + OpTxEnvelope::Legacy(tx) => &mut tx.tx_mut().input, + OpTxEnvelope::Eip7702(tx) => &mut tx.tx_mut().input, + OpTxEnvelope::Deposit(tx) => &mut tx.input, + _ => return, + }; + *input = input.slice(..4); } } diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index 7730bd2e0f19..bbc76421ab52 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -102,9 +102,6 @@ impl TryFrom>> for T ) -> Result { use alloy_rpc_types::ConversionError; - #[cfg(feature = "optimism")] - let WithOtherFields { inner: tx, other } = tx; - #[cfg(not(feature = "optimism"))] let WithOtherFields { inner: tx, other: _ } = tx; let (transaction, signature, hash) = match tx.inner { @@ -128,38 +125,37 @@ impl TryFrom>> for T let (tx, signature, hash) = tx.into_parts(); (Transaction::Eip7702(tx), signature, hash) } - AnyTxEnvelope::Ethereum(_) => { - return Err(ConversionError::Custom("unknown transaction type".to_string())) - } - #[cfg(not(feature = "optimism"))] - AnyTxEnvelope::Unknown(_) => { - return Err(ConversionError::Custom("unknown transaction type".to_string())) - } #[cfg(feature = "optimism")] - AnyTxEnvelope::Unknown(tx) => { - if tx.inner.ty.0 == crate::TxType::Deposit { - Ok(Self::Deposit(op_alloy_consensus::TxDeposit { - source_hash: tx.inner.deser_by_key("sourceHash").ok_or_else(|| { - ConversionError::Custom("missing `sourceHash`".to_string()) - })?, - from: tx - .inner - .deser_by_key("from") - .ok_or_else(|| ConversionError::Custom("missing `from`".to_string()))?, - to: tx.to(), - mint: fields.mint.filter(|n| *n != 0), - value: tx.value(), - gas_limit: tx.gas_limit(), - is_system_transaction: tx - .inner - .deser_by_key("isSystemTx") - .unwrap_or(Ok(0))?, - input: tx.input().clone(), - })) + AnyTxEnvelope::Unknown(alloy_network::UnknownTxEnvelope { hash, inner }) => { + use alloy_consensus::Transaction as _; + + if inner.ty() == crate::TxType::Deposit { + let fields: op_alloy_rpc_types::OpTransactionFields = inner + .fields + .clone() + .deserialize_into::() + .map_err(|e| ConversionError::Custom(e.to_string()))?; + ( + Transaction::Deposit(op_alloy_consensus::TxDeposit { + source_hash: fields.source_hash.ok_or_else(|| { + ConversionError::Custom("MissingSourceHash".to_string()) + })?, + from: tx.from, + to: revm_primitives::TxKind::from(inner.to()), + mint: fields.mint.filter(|n| *n != 0), + value: inner.value(), + gas_limit: inner.gas_limit(), + is_system_transaction: fields.is_system_tx.unwrap_or(false), + input: inner.input().clone(), + }), + op_alloy_consensus::TxDeposit::signature(), + hash, + ) } else { return Err(ConversionError::Custom("unknown transaction type".to_string())) } } + _ => return Err(ConversionError::Custom("unknown transaction type".to_string())), }; Ok(Self { transaction, signature, hash }) @@ -171,7 +167,7 @@ impl TryFrom>> for T mod tests { use super::*; use alloy_primitives::{address, Address, B256, U256}; - use alloy_rpc_types::Transaction as AlloyTransaction; + use revm_primitives::TxKind; #[test] fn optimism_deposit_tx_conversion_no_mint() { @@ -195,10 +191,11 @@ mod tests { "v": "0x0", "value": "0x0" }"#; - let alloy_tx: WithOtherFields = + let alloy_tx: WithOtherFields> = serde_json::from_str(input).expect("failed to deserialize"); - let reth_tx: Transaction = alloy_tx.try_into().expect("failed to convert"); + let TransactionSigned { transaction: reth_tx, .. } = + alloy_tx.try_into().expect("failed to convert"); if let Transaction::Deposit(deposit_tx) = reth_tx { assert_eq!( deposit_tx.source_hash, @@ -245,10 +242,11 @@ mod tests { "v": "0x0", "value": "0x239c2e16a5ca590000" }"#; - let alloy_tx: WithOtherFields = + let alloy_tx: WithOtherFields> = serde_json::from_str(input).expect("failed to deserialize"); - let reth_tx: Transaction = alloy_tx.try_into().expect("failed to convert"); + let TransactionSigned { transaction: reth_tx, .. } = + alloy_tx.try_into().expect("failed to convert"); if let Transaction::Deposit(deposit_tx) = reth_tx { assert_eq!( diff --git a/crates/rpc/rpc-types-compat/src/transaction/mod.rs b/crates/rpc/rpc-types-compat/src/transaction/mod.rs index c22bda6f2384..27f0b0288d5c 100644 --- a/crates/rpc/rpc-types-compat/src/transaction/mod.rs +++ b/crates/rpc/rpc-types-compat/src/transaction/mod.rs @@ -7,7 +7,7 @@ use alloy_rpc_types::{ request::{TransactionInput, TransactionRequest}, TransactionInfo, }; -use reth_primitives::{TransactionSigned, TransactionSignedEcRecovered, TxType}; +use reth_primitives::TransactionSignedEcRecovered; use serde::{Deserialize, Serialize}; /// Create a new rpc transaction result for a mined transaction, using the given block hash, @@ -43,33 +43,6 @@ pub trait TransactionCompat: Send + Sync + Unpin + Clone + fmt::Debug { + Clone + fmt::Debug; - /// - /// Formats gas price and max fee per gas for RPC transaction response w.r.t. network specific - /// transaction type. - fn gas_price(signed_tx: &TransactionSigned, base_fee: Option) -> GasPrice { - #[allow(unreachable_patterns)] - match signed_tx.tx_type() { - TxType::Legacy | TxType::Eip2930 => { - GasPrice { gas_price: Some(signed_tx.max_fee_per_gas()), max_fee_per_gas: None } - } - TxType::Eip1559 | TxType::Eip4844 | TxType::Eip7702 => { - // the gas price field for EIP1559 is set to `min(tip, gasFeeCap - baseFee) + - // baseFee` - let gas_price = base_fee - .and_then(|base_fee| { - signed_tx.effective_tip_per_gas(base_fee).map(|tip| tip + base_fee as u128) - }) - .unwrap_or_else(|| signed_tx.max_fee_per_gas()); - - GasPrice { - gas_price: Some(gas_price), - max_fee_per_gas: Some(signed_tx.max_fee_per_gas()), - } - } - _ => GasPrice::default(), - } - } - /// Create a new rpc transaction result for a _pending_ signed transaction, setting block /// environment related fields to `None`. fn fill(&self, tx: TransactionSignedEcRecovered, tx_inf: TransactionInfo) -> Self::Transaction; @@ -78,19 +51,6 @@ pub trait TransactionCompat: Send + Sync + Unpin + Clone + fmt::Debug { // todo: remove in favour of using constructor on `TransactionResponse` or similar // . fn otterscan_api_truncate_input(tx: &mut Self::Transaction); - - /// Returns the transaction type. - // todo: remove when alloy TransactionResponse trait it updated. - fn tx_type(tx: &Self::Transaction) -> u8; -} - -/// Gas price and max fee per gas for a transaction. Helper type to format transaction RPC response. -#[derive(Debug, Default)] -pub struct GasPrice { - /// Gas price for transaction. - pub gas_price: Option, - /// Max fee per gas for transaction. - pub max_fee_per_gas: Option, } /// Convert [`TransactionSignedEcRecovered`] to [`TransactionRequest`] diff --git a/crates/rpc/rpc/src/eth/helpers/types.rs b/crates/rpc/rpc/src/eth/helpers/types.rs index 55d06e4c5a44..b86e32f046ff 100644 --- a/crates/rpc/rpc/src/eth/helpers/types.rs +++ b/crates/rpc/rpc/src/eth/helpers/types.rs @@ -1,6 +1,6 @@ //! L1 `eth` API types. -use alloy_consensus::{Signed, Transaction as _, TxEip4844Variant, TxEnvelope}; +use alloy_consensus::{Signed, TxEip4844Variant, TxEnvelope}; use alloy_network::{Ethereum, Network}; use alloy_rpc_types::{Transaction, TransactionInfo}; use reth_primitives::{TransactionSigned, TransactionSignedEcRecovered}; @@ -40,6 +40,8 @@ where reth_primitives::Transaction::Eip7702(tx) => { Signed::new_unchecked(tx, signature, hash).into() } + #[allow(unreachable_patterns)] + _ => unreachable!(), }; let TransactionInfo { block_hash, block_number, index: transaction_index, .. } = tx_info; @@ -61,8 +63,4 @@ where }; *input = input.slice(..4); } - - fn tx_type(tx: &Self::Transaction) -> u8 { - tx.ty() - } } diff --git a/crates/rpc/rpc/src/otterscan.rs b/crates/rpc/rpc/src/otterscan.rs index 7ea91477add8..8806ab803bfe 100644 --- a/crates/rpc/rpc/src/otterscan.rs +++ b/crates/rpc/rpc/src/otterscan.rs @@ -253,7 +253,7 @@ where let timestamp = Some(block.header.timestamp()); let receipts = receipts .drain(page_start..page_end) - .zip(transactions.iter().map(Eth::TransactionCompat::tx_type)) + .zip(transactions.iter().map(Transaction::ty)) .map(|(receipt, tx_ty)| { let inner = OtsReceipt { status: receipt.status(), From dc6f62e9ed2bc6243d2b4467be6119cef07c8cdb Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Sun, 3 Nov 2024 23:47:15 +0400 Subject: [PATCH 11/20] rollback header changes --- crates/node/builder/src/launch/common.rs | 1 - crates/rpc/rpc-builder/src/lib.rs | 2 - crates/rpc/rpc-builder/tests/it/http.rs | 135 +++++++----------- crates/rpc/rpc-builder/tests/it/middleware.rs | 4 +- crates/rpc/rpc-eth-api/src/core.rs | 21 +-- crates/rpc/rpc-eth-api/src/helpers/block.rs | 8 +- crates/rpc/rpc-eth-api/src/types.rs | 21 +-- crates/rpc/rpc-eth-types/src/simulate.rs | 10 +- crates/rpc/rpc-testing-util/src/debug.rs | 4 +- crates/rpc/rpc-testing-util/tests/it/trace.rs | 4 +- crates/rpc/rpc-types-compat/src/block.rs | 24 ++-- crates/rpc/rpc/src/engine.rs | 3 +- crates/rpc/rpc/src/eth/core.rs | 8 +- crates/rpc/rpc/src/otterscan.rs | 28 +--- 14 files changed, 100 insertions(+), 173 deletions(-) diff --git a/crates/node/builder/src/launch/common.rs b/crates/node/builder/src/launch/common.rs index 83ba10e21304..ac2339fa6cfc 100644 --- a/crates/node/builder/src/launch/common.rs +++ b/crates/node/builder/src/launch/common.rs @@ -939,7 +939,6 @@ where EthApiClient::< alloy_rpc_types::Transaction, alloy_rpc_types::Block, - alloy_rpc_types::Header, alloy_rpc_types::Receipt, >::chain_id(&client) .await diff --git a/crates/rpc/rpc-builder/src/lib.rs b/crates/rpc/rpc-builder/src/lib.rs index 6ee3f9fd0c85..385b92af3d0b 100644 --- a/crates/rpc/rpc-builder/src/lib.rs +++ b/crates/rpc/rpc-builder/src/lib.rs @@ -194,7 +194,6 @@ use reth_rpc::{ use reth_rpc_api::servers::*; use reth_rpc_eth_api::{ helpers::{Call, EthApiSpec, EthTransactions, LoadPendingBlock, TraceExt}, - types::RpcHeader, EthApiServer, EthApiTypes, FullEthApiServer, RpcBlock, RpcReceipt, RpcTransaction, }; use reth_rpc_eth_types::{EthConfig, EthStateCache, EthSubscriptionIdProvider}; @@ -1073,7 +1072,6 @@ where EthApi: EthApiServer< RpcTransaction, RpcBlock, - RpcHeader, RpcReceipt, > + EthApiTypes, BlockExecutor: BlockExecutorProvider, diff --git a/crates/rpc/rpc-builder/tests/it/http.rs b/crates/rpc/rpc-builder/tests/it/http.rs index a5e2e61f236e..89aafce9f36f 100644 --- a/crates/rpc/rpc-builder/tests/it/http.rs +++ b/crates/rpc/rpc-builder/tests/it/http.rs @@ -173,24 +173,16 @@ where .unwrap(); // Implemented - EthApiClient::::protocol_version(client).await.unwrap(); - EthApiClient::::chain_id(client).await.unwrap(); - EthApiClient::::accounts(client).await.unwrap(); - EthApiClient::::get_account( - client, - address, - block_number.into(), - ) - .await - .unwrap(); - EthApiClient::::block_number(client).await.unwrap(); - EthApiClient::::get_code(client, address, None) - .await - .unwrap(); - EthApiClient::::send_raw_transaction(client, tx) + EthApiClient::::protocol_version(client).await.unwrap(); + EthApiClient::::chain_id(client).await.unwrap(); + EthApiClient::::accounts(client).await.unwrap(); + EthApiClient::::get_account(client, address, block_number.into()) .await .unwrap(); - EthApiClient::::fee_history( + EthApiClient::::block_number(client).await.unwrap(); + EthApiClient::::get_code(client, address, None).await.unwrap(); + EthApiClient::::send_raw_transaction(client, tx).await.unwrap(); + EthApiClient::::fee_history( client, U64::from(0), block_number, @@ -198,13 +190,11 @@ where ) .await .unwrap(); - EthApiClient::::balance(client, address, None) - .await - .unwrap(); - EthApiClient::::transaction_count(client, address, None) + EthApiClient::::balance(client, address, None).await.unwrap(); + EthApiClient::::transaction_count(client, address, None) .await .unwrap(); - EthApiClient::::storage_at( + EthApiClient::::storage_at( client, address, U256::default().into(), @@ -212,79 +202,64 @@ where ) .await .unwrap(); - EthApiClient::::block_by_hash(client, hash, false) + EthApiClient::::block_by_hash(client, hash, false).await.unwrap(); + EthApiClient::::block_by_number(client, block_number, false) .await .unwrap(); - EthApiClient::::block_by_number( + EthApiClient::::block_transaction_count_by_number( client, block_number, - false, ) .await .unwrap(); - EthApiClient::::block_transaction_count_by_number( - client, - block_number, - ) - .await - .unwrap(); - EthApiClient::::block_transaction_count_by_hash( - client, hash, - ) - .await - .unwrap(); - EthApiClient::::block_uncles_count_by_hash(client, hash) + EthApiClient::::block_transaction_count_by_hash(client, hash) .await .unwrap(); - EthApiClient::::block_uncles_count_by_number( - client, - block_number, - ) - .await - .unwrap(); - EthApiClient::::uncle_by_block_hash_and_index( - client, hash, index, - ) - .await - .unwrap(); - EthApiClient::::uncle_by_block_number_and_index( + EthApiClient::::block_uncles_count_by_hash(client, hash) + .await + .unwrap(); + EthApiClient::::block_uncles_count_by_number(client, block_number) + .await + .unwrap(); + EthApiClient::::uncle_by_block_hash_and_index(client, hash, index) + .await + .unwrap(); + EthApiClient::::uncle_by_block_number_and_index( client, block_number, index, ) .await .unwrap(); - EthApiClient::::sign(client, address, bytes.clone()) + EthApiClient::::sign(client, address, bytes.clone()) .await .unwrap_err(); - EthApiClient::::sign_typed_data( - client, address, typed_data, - ) - .await - .unwrap_err(); - EthApiClient::::transaction_by_hash(client, tx_hash) + EthApiClient::::sign_typed_data(client, address, typed_data) + .await + .unwrap_err(); + EthApiClient::::transaction_by_hash(client, tx_hash) .await .unwrap(); - EthApiClient::::transaction_by_block_hash_and_index( + EthApiClient::::transaction_by_block_hash_and_index( client, hash, index, ) .await .unwrap(); - EthApiClient::::transaction_by_block_number_and_index( + EthApiClient::::transaction_by_block_number_and_index( client, block_number, index, ) .await .unwrap(); - EthApiClient::::create_access_list( + EthApiClient::::create_access_list( client, call_request.clone(), Some(block_number.into()), ) .await .unwrap(); - EthApiClient::::estimate_gas( + EthApiClient::::estimate_gas( client, call_request.clone(), Some(block_number.into()), @@ -292,7 +267,7 @@ where ) .await .unwrap(); - EthApiClient::::call( + EthApiClient::::call( client, call_request.clone(), Some(block_number.into()), @@ -301,41 +276,38 @@ where ) .await .unwrap(); - EthApiClient::::syncing(client).await.unwrap(); - EthApiClient::::send_transaction( - client, - transaction_request, - ) - .await - .unwrap_err(); - EthApiClient::::hashrate(client).await.unwrap(); - EthApiClient::::submit_hashrate( + EthApiClient::::syncing(client).await.unwrap(); + EthApiClient::::send_transaction(client, transaction_request) + .await + .unwrap_err(); + EthApiClient::::hashrate(client).await.unwrap(); + EthApiClient::::submit_hashrate( client, U256::default(), B256::default(), ) .await .unwrap(); - EthApiClient::::gas_price(client).await.unwrap_err(); - EthApiClient::::max_priority_fee_per_gas(client) + EthApiClient::::gas_price(client).await.unwrap_err(); + EthApiClient::::max_priority_fee_per_gas(client) .await .unwrap_err(); - EthApiClient::::get_proof(client, address, vec![], None) + EthApiClient::::get_proof(client, address, vec![], None) .await .unwrap(); // Unimplemented assert!(is_unimplemented( - EthApiClient::::author(client).await.err().unwrap() + EthApiClient::::author(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::is_mining(client).await.err().unwrap() + EthApiClient::::is_mining(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::get_work(client).await.err().unwrap() + EthApiClient::::get_work(client).await.err().unwrap() )); assert!(is_unimplemented( - EthApiClient::::submit_work( + EthApiClient::::submit_work( client, B64::default(), B256::default(), @@ -346,13 +318,10 @@ where .unwrap() )); assert!(is_unimplemented( - EthApiClient::::sign_transaction( - client, - call_request.clone() - ) - .await - .err() - .unwrap() + EthApiClient::::sign_transaction(client, call_request.clone()) + .await + .err() + .unwrap() )); } diff --git a/crates/rpc/rpc-builder/tests/it/middleware.rs b/crates/rpc/rpc-builder/tests/it/middleware.rs index 780daf4de170..0e2186e56eeb 100644 --- a/crates/rpc/rpc-builder/tests/it/middleware.rs +++ b/crates/rpc/rpc-builder/tests/it/middleware.rs @@ -1,5 +1,5 @@ use crate::utils::{test_address, test_rpc_builder}; -use alloy_rpc_types_eth::{Block, Header, Receipt, Transaction}; +use alloy_rpc_types_eth::{Block, Receipt, Transaction}; use jsonrpsee::{ server::{middleware::rpc::RpcServiceT, RpcServiceBuilder}, types::Request, @@ -75,7 +75,7 @@ async fn test_rpc_middleware() { .unwrap(); let client = handle.http_client().unwrap(); - EthApiClient::::protocol_version(&client).await.unwrap(); + EthApiClient::::protocol_version(&client).await.unwrap(); let count = mylayer.count.load(Ordering::Relaxed); assert_eq!(count, 1); } diff --git a/crates/rpc/rpc-eth-api/src/core.rs b/crates/rpc/rpc-eth-api/src/core.rs index 38d9b3ae97ee..66bc5a44d2db 100644 --- a/crates/rpc/rpc-eth-api/src/core.rs +++ b/crates/rpc/rpc-eth-api/src/core.rs @@ -8,8 +8,8 @@ use alloy_rpc_types::{ serde_helpers::JsonStorageKey, simulate::{SimulatePayload, SimulatedBlock}, state::{EvmOverrides, StateOverride}, - BlockOverrides, Bundle, EIP1186AccountProofResponse, EthCallResponse, FeeHistory, Index, - StateContext, SyncStatus, Work, + BlockOverrides, Bundle, EIP1186AccountProofResponse, EthCallResponse, FeeHistory, Header, + Index, StateContext, SyncStatus, Work, }; use alloy_rpc_types_eth::transaction::TransactionRequest; use jsonrpsee::{core::RpcResult, proc_macros::rpc}; @@ -19,7 +19,6 @@ use tracing::trace; use crate::{ helpers::{EthApiSpec, EthBlocks, EthCall, EthFees, EthState, EthTransactions, FullEthApi}, - types::RpcHeader, RpcBlock, RpcReceipt, RpcTransaction, }; @@ -29,7 +28,6 @@ pub trait FullEthApiServer: EthApiServer< RpcTransaction, RpcBlock, - RpcHeader, RpcReceipt, > + FullEthApi + Clone @@ -40,7 +38,6 @@ impl FullEthApiServer for T where T: EthApiServer< RpcTransaction, RpcBlock, - RpcHeader, RpcReceipt, > + FullEthApi + Clone @@ -50,7 +47,7 @@ impl FullEthApiServer for T where /// Eth rpc interface: #[cfg_attr(not(feature = "client"), rpc(server, namespace = "eth"))] #[cfg_attr(feature = "client", rpc(server, client, namespace = "eth"))] -pub trait EthApi { +pub trait EthApi { /// Returns the protocol version encoded as a string. #[method(name = "protocolVersion")] async fn protocol_version(&self) -> RpcResult; @@ -204,11 +201,11 @@ pub trait EthApi { /// Returns the block's header at given number. #[method(name = "getHeaderByNumber")] - async fn header_by_number(&self, hash: BlockNumberOrTag) -> RpcResult>; + async fn header_by_number(&self, hash: BlockNumberOrTag) -> RpcResult>; /// Returns the block's header at given hash. #[method(name = "getHeaderByHash")] - async fn header_by_hash(&self, hash: B256) -> RpcResult>; + async fn header_by_hash(&self, hash: B256) -> RpcResult>; /// `eth_simulateV1` executes an arbitrary number of transactions on top of the requested state. /// The transactions are packed into individual blocks. Overrides can be provided. @@ -369,7 +366,6 @@ impl EthApiServer< RpcTransaction, RpcBlock, - RpcHeader, RpcReceipt, > for T where @@ -611,16 +607,13 @@ where } /// Handler for: `eth_getHeaderByNumber` - async fn header_by_number( - &self, - block_number: BlockNumberOrTag, - ) -> RpcResult>> { + async fn header_by_number(&self, block_number: BlockNumberOrTag) -> RpcResult> { trace!(target: "rpc::eth", ?block_number, "Serving eth_getHeaderByNumber"); Ok(EthBlocks::rpc_block_header(self, block_number.into()).await?) } /// Handler for: `eth_getHeaderByHash` - async fn header_by_hash(&self, hash: B256) -> RpcResult>> { + async fn header_by_hash(&self, hash: B256) -> RpcResult> { trace!(target: "rpc::eth", ?hash, "Serving eth_getHeaderByHash"); Ok(EthBlocks::rpc_block_header(self, hash.into()).await?) } diff --git a/crates/rpc/rpc-eth-api/src/helpers/block.rs b/crates/rpc/rpc-eth-api/src/helpers/block.rs index 3cf46b7fea7c..090f2ab0d562 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/block.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/block.rs @@ -8,9 +8,7 @@ use reth_primitives::{BlockId, Receipt, SealedBlock, SealedBlockWithSenders}; use reth_provider::{BlockIdReader, BlockReader, BlockReaderIdExt, HeaderProvider}; use reth_rpc_types_compat::block::from_block; -use crate::{ - node::RpcNodeCoreExt, types::RpcHeader, FromEthApiError, FullEthApiTypes, RpcBlock, RpcReceipt, -}; +use crate::{node::RpcNodeCoreExt, FromEthApiError, FullEthApiTypes, RpcBlock, RpcReceipt}; use super::{LoadPendingBlock, LoadReceipt, SpawnBlocking}; @@ -26,7 +24,7 @@ pub trait EthBlocks: LoadBlock { fn rpc_block_header( &self, block_id: BlockId, - ) -> impl Future>, Self::Error>> + Send + ) -> impl Future, Self::Error>> + Send where Self: FullEthApiTypes, { @@ -194,7 +192,7 @@ pub trait EthBlocks: LoadBlock { let block = Block::uncle_from_header(uncle); Block { header: Header { - inner: block.header.inner.into(), + inner: block.header.inner, size: block.header.size, total_difficulty: block.header.total_difficulty, hash: block.header.hash, diff --git a/crates/rpc/rpc-eth-api/src/types.rs b/crates/rpc/rpc-eth-api/src/types.rs index a8dbb1eaab4a..620f4523d21a 100644 --- a/crates/rpc/rpc-eth-api/src/types.rs +++ b/crates/rpc/rpc-eth-api/src/types.rs @@ -2,12 +2,11 @@ use std::{ error::Error, - fmt::{self, Debug}, + fmt::{self}, }; use alloy_network::Network; use alloy_rpc_types::Block; -use jsonrpsee::core::{DeserializeOwned, Serialize}; use reth_rpc_types_compat::TransactionCompat; use crate::{AsEthApiError, FromEthApiError, FromEvmError}; @@ -23,18 +22,7 @@ pub trait EthApiTypes: Send + Sync + Clone { + Send + Sync; /// Blockchain primitive types, specific to network, e.g. block and transaction. - type NetworkTypes: Network< - Header: Send - + Sync - + Clone - + Debug - + Unpin - + From - + Serialize - + DeserializeOwned - + 'static, - HeaderResponse = alloy_rpc_types::Header<::Header>, - >; + type NetworkTypes: Network; /// Conversion methods for transaction RPC type. type TransactionCompat: Send + Sync + Clone + fmt::Debug; @@ -45,11 +33,8 @@ pub trait EthApiTypes: Send + Sync + Clone { /// Adapter for network specific transaction type. pub type RpcTransaction = ::TransactionResponse; -/// Adapter for network specific header type. -pub type RpcHeader = ::HeaderResponse; - /// Adapter for network specific block type. -pub type RpcBlock = Block, RpcHeader>; +pub type RpcBlock = Block, ::HeaderResponse>; /// Adapter for network specific receipt type. pub type RpcReceipt = ::ReceiptResponse; diff --git a/crates/rpc/rpc-eth-types/src/simulate.rs b/crates/rpc/rpc-eth-types/src/simulate.rs index 95cce2af7461..95111931619d 100644 --- a/crates/rpc/rpc-eth-types/src/simulate.rs +++ b/crates/rpc/rpc-eth-types/src/simulate.rs @@ -1,9 +1,9 @@ //! Utilities for serving `eth_simulateV1` -use alloy_consensus::{BlockHeader, Transaction as _, TxEip4844Variant, TxType, TypedTransaction}; +use alloy_consensus::{Transaction as _, TxEip4844Variant, TxType, TypedTransaction}; use alloy_rpc_types::{ simulate::{SimCallResult, SimulateError, SimulatedBlock}, - Block, BlockTransactionsKind, Header, + Block, BlockTransactionsKind, }; use alloy_rpc_types_eth::transaction::TransactionRequest; use jsonrpsee_types::ErrorObject; @@ -170,7 +170,7 @@ where /// Handles outputs of the calls execution and builds a [`SimulatedBlock`]. #[expect(clippy::complexity)] -pub fn build_block>( +pub fn build_block( results: Vec<(Address, ExecutionResult)>, transactions: Vec, block_env: &BlockEnv, @@ -179,7 +179,7 @@ pub fn build_block>>, tx_resp_builder: &T, -) -> Result>>, EthApiError> { +) -> Result>, EthApiError> { let mut calls: Vec = Vec::with_capacity(results.len()); let mut senders = Vec::with_capacity(results.len()); let mut receipts = Vec::with_capacity(results.len()); @@ -305,6 +305,6 @@ pub fn build_block(block, total_difficulty, txs_kind, None, tx_resp_builder)?; + let block = from_block::(block, total_difficulty, txs_kind, None, tx_resp_builder)?; Ok(SimulatedBlock { inner: block, calls }) } diff --git a/crates/rpc/rpc-testing-util/src/debug.rs b/crates/rpc/rpc-testing-util/src/debug.rs index e1574552699d..97fe008fa97c 100644 --- a/crates/rpc/rpc-testing-util/src/debug.rs +++ b/crates/rpc/rpc-testing-util/src/debug.rs @@ -7,7 +7,7 @@ use std::{ }; use alloy_primitives::{TxHash, B256}; -use alloy_rpc_types::{Block, Header, Transaction}; +use alloy_rpc_types::{Block, Transaction}; use alloy_rpc_types_eth::transaction::TransactionRequest; use alloy_rpc_types_trace::{ common::TraceResult, @@ -77,7 +77,7 @@ pub trait DebugApiExt { impl DebugApiExt for T where - T: EthApiClient + DebugApiClient + Sync, + T: EthApiClient + DebugApiClient + Sync, { type Provider = T; diff --git a/crates/rpc/rpc-testing-util/tests/it/trace.rs b/crates/rpc/rpc-testing-util/tests/it/trace.rs index 6077d773839e..b0fccefbb464 100644 --- a/crates/rpc/rpc-testing-util/tests/it/trace.rs +++ b/crates/rpc/rpc-testing-util/tests/it/trace.rs @@ -1,7 +1,7 @@ //! Integration tests for the trace API. use alloy_primitives::map::HashSet; -use alloy_rpc_types::{Block, Header, Transaction}; +use alloy_rpc_types::{Block, Transaction}; use alloy_rpc_types_trace::{ filter::TraceFilter, parity::TraceType, tracerequest::TraceCallRequest, }; @@ -113,7 +113,7 @@ async fn debug_trace_block_entire_chain() { let client = HttpClientBuilder::default().build(url).unwrap(); let current_block: u64 = - >::block_number(&client) + >::block_number(&client) .await .unwrap() .try_into() diff --git a/crates/rpc/rpc-types-compat/src/block.rs b/crates/rpc/rpc-types-compat/src/block.rs index 17133ada9c53..c56c51f5ad2c 100644 --- a/crates/rpc/rpc-types-compat/src/block.rs +++ b/crates/rpc/rpc-types-compat/src/block.rs @@ -1,6 +1,6 @@ //! Compatibility functions for rpc `Block` type. -use alloy_consensus::{BlockHeader, Sealed}; +use alloy_consensus::Sealed; use alloy_primitives::{B256, U256}; use alloy_rlp::Encodable; use alloy_rpc_types::{ @@ -14,19 +14,19 @@ use crate::{transaction::from_recovered_with_block_context, TransactionCompat}; /// [`BlockTransactionsKind`] /// /// If a `block_hash` is provided, then this is used, otherwise the block hash is computed. -pub fn from_block>( +pub fn from_block( block: BlockWithSenders, total_difficulty: U256, kind: BlockTransactionsKind, block_hash: Option, tx_resp_builder: &T, -) -> Result>, BlockError> { +) -> Result, BlockError> { match kind { BlockTransactionsKind::Hashes => { - Ok(from_block_with_tx_hashes::(block, total_difficulty, block_hash)) + Ok(from_block_with_tx_hashes::(block, total_difficulty, block_hash)) } BlockTransactionsKind::Full => { - from_block_full::(block, total_difficulty, block_hash, tx_resp_builder) + from_block_full::(block, total_difficulty, block_hash, tx_resp_builder) } } } @@ -36,11 +36,11 @@ pub fn from_block>( +pub fn from_block_with_tx_hashes( block: BlockWithSenders, total_difficulty: U256, block_hash: Option, -) -> Block> { +) -> Block { let block_hash = block_hash.unwrap_or_else(|| block.header.hash_slow()); let transactions = block.body.transactions().map(|tx| tx.hash()).collect(); @@ -58,12 +58,12 @@ pub fn from_block_with_tx_hashes>( +pub fn from_block_full( mut block: BlockWithSenders, total_difficulty: U256, block_hash: Option, tx_resp_builder: &T, -) -> Result>, BlockError> { +) -> Result, BlockError> { let block_hash = block_hash.unwrap_or_else(|| block.block.header.hash_slow()); let block_number = block.block.number; let base_fee_per_gas = block.block.base_fee_per_gas; @@ -111,13 +111,13 @@ pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader) } #[inline] -fn from_block_with_transactions>( +fn from_block_with_transactions( block_length: usize, block_hash: B256, block: PrimitiveBlock, total_difficulty: U256, transactions: BlockTransactions, -) -> Block> { +) -> Block { let withdrawals = block .header .withdrawals_root @@ -127,7 +127,7 @@ fn from_block_with_transactions, RpcBlock, - RpcHeader, RpcReceipt, > + FullEthApiTypes, EthFilter: EthFilterApiServer>, diff --git a/crates/rpc/rpc/src/eth/core.rs b/crates/rpc/rpc/src/eth/core.rs index 9ad655bf6851..98ac9e9f4094 100644 --- a/crates/rpc/rpc/src/eth/core.rs +++ b/crates/rpc/rpc/src/eth/core.rs @@ -549,7 +549,7 @@ mod tests { /// Invalid block range #[tokio::test] async fn test_fee_history_empty() { - let response = as EthApiServer<_, _, _, _>>::fee_history( + let response = as EthApiServer<_, _, _>>::fee_history( &build_test_eth_api(NoopProvider::default()), U64::from(1), BlockNumberOrTag::Latest, @@ -571,7 +571,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _, _>>::fee_history( + let response = as EthApiServer<_, _, _>>::fee_history( ð_api, U64::from(newest_block + 1), newest_block.into(), @@ -594,7 +594,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _, _>>::fee_history( + let response = as EthApiServer<_, _, _>>::fee_history( ð_api, U64::from(1), (newest_block + 1000).into(), @@ -617,7 +617,7 @@ mod tests { let (eth_api, _, _) = prepare_eth_api(newest_block, oldest_block, block_count, MockEthProvider::default()); - let response = as EthApiServer<_, _, _, _>>::fee_history( + let response = as EthApiServer<_, _, _>>::fee_history( ð_api, U64::from(0), newest_block.into(), diff --git a/crates/rpc/rpc/src/otterscan.rs b/crates/rpc/rpc/src/otterscan.rs index 8806ab803bfe..7a7ac8923bdb 100644 --- a/crates/rpc/rpc/src/otterscan.rs +++ b/crates/rpc/rpc/src/otterscan.rs @@ -1,7 +1,7 @@ use alloy_consensus::{BlockHeader, Transaction}; use alloy_network::{ReceiptResponse, TransactionResponse}; use alloy_primitives::{Address, Bytes, TxHash, B256, U256}; -use alloy_rpc_types::{BlockTransactions, TransactionReceipt}; +use alloy_rpc_types::{BlockTransactions, Header, TransactionReceipt}; use alloy_rpc_types_trace::{ otterscan::{ BlockDetails, ContractCreator, InternalOperation, OperationType, OtsBlockTransactions, @@ -15,7 +15,6 @@ use reth_primitives::{BlockId, BlockNumberOrTag}; use reth_rpc_api::{EthApiServer, OtterscanServer}; use reth_rpc_eth_api::{ helpers::{EthTransactions, TraceExt}, - types::RpcHeader, FullEthApiTypes, RpcBlock, RpcReceipt, RpcTransaction, TransactionCompat, }; use reth_rpc_eth_types::{utils::binary_search, EthApiError}; @@ -50,7 +49,7 @@ where &self, block: RpcBlock, receipts: Vec>, - ) -> RpcResult>> { + ) -> RpcResult { // blob fee is burnt, so we don't need to calculate it let total_fees = receipts .iter() @@ -62,23 +61,18 @@ where } #[async_trait] -impl OtterscanServer, RpcHeader> - for OtterscanApi +impl OtterscanServer, Header> for OtterscanApi where Eth: EthApiServer< RpcTransaction, RpcBlock, - RpcHeader, RpcReceipt, > + EthTransactions + TraceExt + 'static, { /// Handler for `{ots,erigon}_getHeaderByNumber` - async fn get_header_by_number( - &self, - block_number: u64, - ) -> RpcResult>> { + async fn get_header_by_number(&self, block_number: u64) -> RpcResult> { self.eth.header_by_number(BlockNumberOrTag::Number(block_number)).await } @@ -171,10 +165,7 @@ where } /// Handler for `ots_getBlockDetails` - async fn get_block_details( - &self, - block_number: u64, - ) -> RpcResult>> { + async fn get_block_details(&self, block_number: u64) -> RpcResult> { let block_id = block_number.into(); let block = self.eth.block_by_number(block_id, true); let block_id = block_id.into(); @@ -187,10 +178,7 @@ where } /// Handler for `getBlockDetailsByHash` - async fn get_block_details_by_hash( - &self, - block_hash: B256, - ) -> RpcResult>> { + async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult> { let block = self.eth.block_by_hash(block_hash, true); let block_id = block_hash.into(); let receipts = self.eth.block_receipts(block_id); @@ -207,9 +195,7 @@ where block_number: u64, page_number: usize, page_size: usize, - ) -> RpcResult< - OtsBlockTransactions, RpcHeader>, - > { + ) -> RpcResult, Header>> { let block_id = block_number.into(); // retrieve full block and its receipts let block = self.eth.block_by_number(block_id, true); From 521c4c066367be9a59f21f83a7f8502900d75977 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 01:06:04 +0400 Subject: [PATCH 12/20] clean up --- crates/consensus/debug-client/src/client.rs | 6 +--- crates/optimism/chainspec/src/lib.rs | 8 +---- crates/primitives-traits/src/header/sealed.rs | 7 ++++ crates/primitives/src/transaction/mod.rs | 14 +------- crates/primitives/src/transaction/pooled.rs | 5 --- crates/rpc/rpc-api/src/otterscan.rs | 11 +++--- crates/rpc/rpc-builder/tests/it/http.rs | 34 ++++++++----------- crates/rpc/rpc-eth-api/src/helpers/block.rs | 15 +------- crates/rpc/rpc-types-compat/src/block.rs | 11 ------ crates/rpc/rpc/src/eth/pubsub.rs | 2 +- crates/rpc/rpc/src/otterscan.rs | 2 +- 11 files changed, 34 insertions(+), 81 deletions(-) diff --git a/crates/consensus/debug-client/src/client.rs b/crates/consensus/debug-client/src/client.rs index 7ef79d515809..a237ba084f14 100644 --- a/crates/consensus/debug-client/src/client.rs +++ b/crates/consensus/debug-client/src/client.rs @@ -206,11 +206,7 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { block_hash: block.header.hash, transactions: transactions .into_iter() - .map(|tx| { - let mut buffer: Vec = vec![]; - tx.inner.encode_2718(&mut buffer); - buffer.into() - }) + .map(|tx| tx.inner.encoded_2718().into()) .collect(), }, withdrawals: block.withdrawals.clone().unwrap_or_default().to_vec(), diff --git a/crates/optimism/chainspec/src/lib.rs b/crates/optimism/chainspec/src/lib.rs index 4b116a8d7b9f..a60a9a22abc2 100644 --- a/crates/optimism/chainspec/src/lib.rs +++ b/crates/optimism/chainspec/src/lib.rs @@ -20,7 +20,7 @@ mod op_sepolia; use alloc::{boxed::Box, vec, vec::Vec}; use alloy_chains::Chain; use alloy_genesis::Genesis; -use alloy_primitives::{Bytes, PrimitiveSignature as Signature, B256, U256}; +use alloy_primitives::{Bytes, B256, U256}; pub use base::BASE_MAINNET; pub use base_sepolia::BASE_SEPOLIA; use derive_more::{Constructor, Deref, Display, From, Into}; @@ -256,12 +256,6 @@ pub fn decode_holocene_1559_params(extra_data: Bytes) -> Result<(u32, u32), Deco Ok((u32::from_be_bytes(denominator), u32::from_be_bytes(elasticity))) } -/// Returns the signature for the optimism deposit transactions, which don't include a -/// signature. -pub fn optimism_deposit_tx_signature() -> Signature { - Signature::new(U256::ZERO, U256::ZERO, false) -} - impl EthChainSpec for OpChainSpec { fn chain(&self) -> alloy_chains::Chain { self.inner.chain() diff --git a/crates/primitives-traits/src/header/sealed.rs b/crates/primitives-traits/src/header/sealed.rs index 7119a37e742a..7552ece31f10 100644 --- a/crates/primitives-traits/src/header/sealed.rs +++ b/crates/primitives-traits/src/header/sealed.rs @@ -1,4 +1,5 @@ use super::Header; +use alloy_consensus::Sealed; use alloy_eips::BlockNumHash; use alloy_primitives::{keccak256, BlockHash, Sealable}; #[cfg(any(test, feature = "test-utils"))] @@ -132,6 +133,12 @@ impl SealedHeader { } } +impl From> for Sealed { + fn from(value: SealedHeader) -> Self { + Self::new_unchecked(value.header, value.hash) + } +} + #[cfg(any(test, feature = "arbitrary"))] impl<'a> arbitrary::Arbitrary<'a> for SealedHeader { fn arbitrary(u: &mut arbitrary::Unstructured<'a>) -> arbitrary::Result { diff --git a/crates/primitives/src/transaction/mod.rs b/crates/primitives/src/transaction/mod.rs index 3788740b0632..02eb45a7cb22 100644 --- a/crates/primitives/src/transaction/mod.rs +++ b/crates/primitives/src/transaction/mod.rs @@ -1439,19 +1439,7 @@ impl Encodable2718 for TransactionSigned { } fn encode_2718(&self, out: &mut dyn alloy_rlp::BufMut) { - match &self.transaction { - Transaction::Legacy(legacy_tx) => legacy_tx.eip2718_encode(&self.signature, out), - Transaction::Eip2930(access_list_tx) => { - access_list_tx.eip2718_encode(&self.signature, out) - } - Transaction::Eip1559(dynamic_fee_tx) => { - dynamic_fee_tx.eip2718_encode(&self.signature, out) - } - Transaction::Eip4844(blob_tx) => blob_tx.eip2718_encode(&self.signature, out), - Transaction::Eip7702(set_code_tx) => set_code_tx.eip2718_encode(&self.signature, out), - #[cfg(feature = "optimism")] - Transaction::Deposit(deposit_tx) => deposit_tx.eip2718_encode(out), - } + self.transaction.eip2718_encode(&self.signature, out) } } diff --git a/crates/primitives/src/transaction/pooled.rs b/crates/primitives/src/transaction/pooled.rs index d41e703265c1..9bf40cd45157 100644 --- a/crates/primitives/src/transaction/pooled.rs +++ b/crates/primitives/src/transaction/pooled.rs @@ -399,23 +399,18 @@ impl Encodable2718 for PooledTransactionsElement { fn encode_2718_len(&self) -> usize { match self { Self::Legacy { transaction, signature, .. } => { - // method computes the payload len with a RLP header transaction.eip2718_encoded_length(signature) } Self::Eip2930 { transaction, signature, .. } => { - // method computes the payload len without a RLP header transaction.eip2718_encoded_length(signature) } Self::Eip1559 { transaction, signature, .. } => { - // method computes the payload len without a RLP header transaction.eip2718_encoded_length(signature) } Self::Eip7702 { transaction, signature, .. } => { - // method computes the payload len without a RLP header transaction.eip2718_encoded_length(signature) } Self::BlobTransaction(BlobTransaction { transaction, signature, .. }) => { - // the encoding does not use a header, so we set `with_header` to false transaction.eip2718_encoded_length(signature) } } diff --git a/crates/rpc/rpc-api/src/otterscan.rs b/crates/rpc/rpc-api/src/otterscan.rs index 62e5676fe508..ee805b482c34 100644 --- a/crates/rpc/rpc-api/src/otterscan.rs +++ b/crates/rpc/rpc-api/src/otterscan.rs @@ -1,5 +1,6 @@ use alloy_json_rpc::RpcObject; use alloy_primitives::{Address, Bytes, TxHash, B256}; +use alloy_rpc_types::Header; use alloy_rpc_types_trace::otterscan::{ BlockDetails, ContractCreator, InternalOperation, OtsBlockTransactions, TraceEntry, TransactionsWithReceipts, @@ -10,7 +11,7 @@ use reth_primitives::BlockId; /// Otterscan rpc interface. #[cfg_attr(not(feature = "client"), rpc(server, namespace = "ots"))] #[cfg_attr(feature = "client", rpc(server, client, namespace = "ots"))] -pub trait Otterscan { +pub trait Otterscan { /// Get the block header by block number, required by otterscan. /// Otterscan currently requires this endpoint, used as: /// @@ -19,7 +20,7 @@ pub trait Otterscan { /// /// Ref: #[method(name = "getHeaderByNumber", aliases = ["erigon_getHeaderByNumber"])] - async fn get_header_by_number(&self, block_number: u64) -> RpcResult>; + async fn get_header_by_number(&self, block_number: u64) -> RpcResult>; /// Check if a certain address contains a deployed code. #[method(name = "hasCode")] @@ -47,11 +48,11 @@ pub trait Otterscan { /// Tailor-made and expanded version of eth_getBlockByNumber for block details page in /// Otterscan. #[method(name = "getBlockDetails")] - async fn get_block_details(&self, block_number: u64) -> RpcResult>; + async fn get_block_details(&self, block_number: u64) -> RpcResult; /// Tailor-made and expanded version of eth_getBlockByHash for block details page in Otterscan. #[method(name = "getBlockDetailsByHash")] - async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult>; + async fn get_block_details_by_hash(&self, block_hash: B256) -> RpcResult; /// Get paginated transactions for a certain block. Also remove some verbose fields like logs. #[method(name = "getBlockTransactions")] @@ -60,7 +61,7 @@ pub trait Otterscan { block_number: u64, page_number: usize, page_size: usize, - ) -> RpcResult>; + ) -> RpcResult>; /// Gets paginated inbound/outbound transaction calls for a certain address. #[method(name = "searchTransactionsBefore")] diff --git a/crates/rpc/rpc-builder/tests/it/http.rs b/crates/rpc/rpc-builder/tests/it/http.rs index 89aafce9f36f..ed9ef56d62bf 100644 --- a/crates/rpc/rpc-builder/tests/it/http.rs +++ b/crates/rpc/rpc-builder/tests/it/http.rs @@ -4,7 +4,7 @@ use crate::utils::{launch_http, launch_http_ws, launch_ws}; use alloy_primitives::{hex_literal::hex, Address, Bytes, TxHash, B256, B64, U256, U64}; use alloy_rpc_types_eth::{ - transaction::TransactionRequest, Block, FeeHistory, Filter, Header, Index, Log, + transaction::TransactionRequest, Block, FeeHistory, Filter, Index, Log, PendingTransactionFilterKind, SyncStatus, Transaction, TransactionReceipt, }; use alloy_rpc_types_trace::filter::TraceFilter; @@ -399,32 +399,28 @@ where let nonce = 1; let block_hash = B256::default(); - OtterscanClient::::get_header_by_number(client, block_number) - .await - .unwrap(); + OtterscanClient::::get_header_by_number(client, block_number).await.unwrap(); - OtterscanClient::::has_code(client, address, None).await.unwrap(); - OtterscanClient::::has_code(client, address, Some(block_number.into())) + OtterscanClient::::has_code(client, address, None).await.unwrap(); + OtterscanClient::::has_code(client, address, Some(block_number.into())) .await .unwrap(); - OtterscanClient::::get_api_level(client).await.unwrap(); + OtterscanClient::::get_api_level(client).await.unwrap(); - OtterscanClient::::get_internal_operations(client, tx_hash).await.unwrap(); + OtterscanClient::::get_internal_operations(client, tx_hash).await.unwrap(); - OtterscanClient::::get_transaction_error(client, tx_hash).await.unwrap(); + OtterscanClient::::get_transaction_error(client, tx_hash).await.unwrap(); - OtterscanClient::::trace_transaction(client, tx_hash).await.unwrap(); + OtterscanClient::::trace_transaction(client, tx_hash).await.unwrap(); - OtterscanClient::::get_block_details(client, block_number) - .await - .unwrap_err(); + OtterscanClient::::get_block_details(client, block_number).await.unwrap_err(); - OtterscanClient::::get_block_details_by_hash(client, block_hash) + OtterscanClient::::get_block_details_by_hash(client, block_hash) .await .unwrap_err(); - OtterscanClient::::get_block_transactions( + OtterscanClient::::get_block_transactions( client, block_number, page_number, @@ -435,7 +431,7 @@ where .unwrap(); assert!(is_unimplemented( - OtterscanClient::::search_transactions_before( + OtterscanClient::::search_transactions_before( client, address, block_number, @@ -446,7 +442,7 @@ where .unwrap() )); assert!(is_unimplemented( - OtterscanClient::::search_transactions_after( + OtterscanClient::::search_transactions_after( client, address, block_number, @@ -456,13 +452,13 @@ where .err() .unwrap() )); - assert!(OtterscanClient::::get_transaction_by_sender_and_nonce( + assert!(OtterscanClient::::get_transaction_by_sender_and_nonce( client, sender, nonce ) .await .err() .is_none()); - assert!(OtterscanClient::::get_contract_creator(client, address) + assert!(OtterscanClient::::get_contract_creator(client, address) .await .unwrap() .is_none()); diff --git a/crates/rpc/rpc-eth-api/src/helpers/block.rs b/crates/rpc/rpc-eth-api/src/helpers/block.rs index 090f2ab0d562..288f5dfc0f19 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/block.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/block.rs @@ -188,20 +188,7 @@ pub trait EthBlocks: LoadBlock { } .unwrap_or_default(); - Ok(uncles.into_iter().nth(index.into()).map(|uncle| { - let block = Block::uncle_from_header(uncle); - Block { - header: Header { - inner: block.header.inner, - size: block.header.size, - total_difficulty: block.header.total_difficulty, - hash: block.header.hash, - }, - uncles: block.uncles, - transactions: block.transactions, - withdrawals: block.withdrawals, - } - })) + Ok(uncles.into_iter().nth(index.into()).map(Block::uncle_from_header)) } } } diff --git a/crates/rpc/rpc-types-compat/src/block.rs b/crates/rpc/rpc-types-compat/src/block.rs index c56c51f5ad2c..3b297ba0bc36 100644 --- a/crates/rpc/rpc-types-compat/src/block.rs +++ b/crates/rpc/rpc-types-compat/src/block.rs @@ -99,17 +99,6 @@ pub fn from_block_full( )) } -/// Converts from a [`reth_primitives::SealedHeader`] to a [`alloy-rpc-types::Header`] -/// -/// # Note -/// -/// This does not set the `totalDifficulty` field. -pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader) -> Header { - let (inner, hash) = primitive_header.split(); - - Header { hash, inner, total_difficulty: None, size: None } -} - #[inline] fn from_block_with_transactions( block_length: usize, diff --git a/crates/rpc/rpc/src/eth/pubsub.rs b/crates/rpc/rpc/src/eth/pubsub.rs index 663ec0b99d6d..922694cdba63 100644 --- a/crates/rpc/rpc/src/eth/pubsub.rs +++ b/crates/rpc/rpc/src/eth/pubsub.rs @@ -329,7 +329,7 @@ where self.chain_events.canonical_state_stream().flat_map(|new_chain| { let headers = new_chain.committed().headers().collect::>(); futures::stream::iter( - headers.into_iter().map(reth_rpc_types_compat::block::from_primitive_with_hash), + headers.into_iter().map(|h| Header::from_consensus(h.into(), None, None)), ) }) } diff --git a/crates/rpc/rpc/src/otterscan.rs b/crates/rpc/rpc/src/otterscan.rs index 7a7ac8923bdb..133240516ac7 100644 --- a/crates/rpc/rpc/src/otterscan.rs +++ b/crates/rpc/rpc/src/otterscan.rs @@ -61,7 +61,7 @@ where } #[async_trait] -impl OtterscanServer, Header> for OtterscanApi +impl OtterscanServer> for OtterscanApi where Eth: EthApiServer< RpcTransaction, From 7644d32e0a15e8ce14d5de0c5f453387c5ccf291 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 01:19:02 +0400 Subject: [PATCH 13/20] Cargo.lock --- Cargo.lock | 142 ++++++++++++++++++++++++++--------------------------- 1 file changed, 71 insertions(+), 71 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3769032cb6ce..2330334e57ad 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -419,7 +419,7 @@ checksum = "2b09cae092c27b6f1bde952653a22708691802e57bfef4a2973b80bea21efd3f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -630,7 +630,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -643,7 +643,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -659,7 +659,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", "tiny-keccak", ] @@ -676,7 +676,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", "tiny-keccak", ] @@ -692,7 +692,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -706,7 +706,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", ] @@ -916,7 +916,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1139,7 +1139,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1150,7 +1150,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1188,7 +1188,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1294,7 +1294,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1476,7 +1476,7 @@ checksum = "240f4126219a83519bad05c9a40bfc0303921eeb571fc2d7e44c17ffac99d3f1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "synstructure", ] @@ -1598,7 +1598,7 @@ checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -1686,9 +1686,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.31" +version = "1.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" +checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" dependencies = [ "jobserver", "libc", @@ -1816,7 +1816,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2273,7 +2273,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2297,7 +2297,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2308,7 +2308,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2430,7 +2430,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2441,7 +2441,7 @@ checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2462,7 +2462,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "unicode-xid", ] @@ -2576,7 +2576,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2724,7 +2724,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2735,7 +2735,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -2792,7 +2792,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -3348,7 +3348,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -3874,7 +3874,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -4024,7 +4024,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -4192,7 +4192,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b23a0c8dfe501baac4adf6ebbfa6eddf8f0c07f56b058cc1288017e32397846c" dependencies = [ "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -4440,7 +4440,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -4858,7 +4858,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5004,7 +5004,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5252,7 +5252,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5605,7 +5605,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5634,7 +5634,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5806,7 +5806,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" dependencies = [ "proc-macro2", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5857,7 +5857,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -5955,7 +5955,7 @@ checksum = "6ff7ff745a347b87471d859a377a9a404361e7efc2a971d73424a6d183c0fc77" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -6779,7 +6779,7 @@ dependencies = [ "proc-macro2", "quote", "similar-asserts", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -9939,7 +9939,7 @@ checksum = "de523f781f095e28fa605cdce0f8307e451cc0fd14e2eb4cd2e98a355b147766" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -9974,7 +9974,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10025,7 +10025,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10048,7 +10048,7 @@ checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10334,7 +10334,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10392,9 +10392,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.86" +version = "2.0.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89275301d38033efb81a6e60e3497e734dfcc62571f2854bf4b16690398824c" +checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" dependencies = [ "proc-macro2", "quote", @@ -10410,7 +10410,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10421,7 +10421,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10447,7 +10447,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10524,7 +10524,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10548,22 +10548,22 @@ checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b" [[package]] name = "thiserror" -version = "1.0.66" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d171f59dbaa811dbbb1aee1e73db92ec2b122911a48e1390dfe327a821ddede" +checksum = "3b3c6efbfc763e64eb85c11c25320f0737cb7364c4b6336db90aa9ebe27a0bbd" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.66" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b08be0f17bd307950653ce45db00cd31200d82b624b36e181337d9c7d92765b5" +checksum = "b607164372e89797d78b8e23a6d67d5d1038c1c65efd52e1389ef8b77caba2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10740,7 +10740,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -10941,7 +10941,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11332,7 +11332,7 @@ checksum = "d674d135b4a8c1d7e813e2f8d1c9a58308aee4a680323066025e53132218bd91" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11403,7 +11403,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "wasm-bindgen-shared", ] @@ -11437,7 +11437,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -11593,7 +11593,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11604,7 +11604,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11615,7 +11615,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11626,7 +11626,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11901,7 +11901,7 @@ checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "synstructure", ] @@ -11923,7 +11923,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11943,7 +11943,7 @@ checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", "synstructure", ] @@ -11964,7 +11964,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] @@ -11986,7 +11986,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.86", + "syn 2.0.87", ] [[package]] From 433a8296b2774a69a61ac147990be0489eb28335 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 01:26:37 +0400 Subject: [PATCH 14/20] fixes --- book/sources/Cargo.toml | 68 +++++++++++++++++------------------- crates/primitives/Cargo.toml | 3 +- 2 files changed, 35 insertions(+), 36 deletions(-) diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index ad19ad950bd9..68650c18e101 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -13,42 +13,40 @@ reth-tracing = { path = "../../crates/tracing" } reth-node-api = { path = "../../crates/node/api" } [patch.crates-io] -alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } -alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "237cfc4" } - -alloy-eip7702 = { git = "https://github.com/alloy-rs/eips", rev = "9e6fcee" } +alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } +alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "4ad89186" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "f8896d1" } +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index 07f67fc7cf94..04d96aa369a2 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -22,7 +22,7 @@ reth-codecs = { workspace = true, optional = true } # ethereum alloy-consensus.workspace = true -alloy-network.workspace = true +alloy-network = { workspace = true, optional = true } alloy-primitives = { workspace = true, features = ["rand", "rlp"] } alloy-rlp = { workspace = true, features = ["arrayvec"] } alloy-rpc-types = { workspace = true, optional = true } @@ -139,6 +139,7 @@ alloy-compat = [ "dep:alloy-rpc-types", "dep:alloy-serde", "dep:op-alloy-rpc-types", + "dep:alloy-network", ] test-utils = [ "reth-primitives-traits/test-utils", From 7dca40da0017dba95f533d84f1866e68a2b0ad6f Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 01:33:03 +0400 Subject: [PATCH 15/20] update patches --- Cargo.toml | 8 ++++---- book/sources/Cargo.toml | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index fe0c0f0c8a97..68704a4b387b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -636,7 +636,7 @@ alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f0 alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index 68650c18e101..862257e40dce 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -46,7 +46,7 @@ alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f0 alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a85614" } +op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } +op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } From 7dd1285cfb7b31841b4849a03531257ba70a6dbb Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 01:35:50 +0400 Subject: [PATCH 16/20] Cargo.lock --- Cargo.lock | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 2330334e57ad..ccf6367645c8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5306,7 +5306,7 @@ checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" [[package]] name = "op-alloy-consensus" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5323,7 +5323,7 @@ dependencies = [ [[package]] name = "op-alloy-genesis" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5336,7 +5336,7 @@ dependencies = [ [[package]] name = "op-alloy-network" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-consensus", "alloy-network", @@ -5350,7 +5350,7 @@ dependencies = [ [[package]] name = "op-alloy-protocol" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5369,7 +5369,7 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5387,7 +5387,7 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=6a85614#6a8561484528437ae70e0fc16121871aaac65197" +source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", From b6006f5b04923b03e1b807d3248ebc676a1d4ee9 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Mon, 4 Nov 2024 07:12:32 +0400 Subject: [PATCH 17/20] update patch --- Cargo.lock | 54 +++++++++++++-------------- Cargo.toml | 54 +++++++++++++-------------- book/sources/Cargo.toml | 54 +++++++++++++-------------- crates/primitives/src/alloy_compat.rs | 6 +-- 4 files changed, 84 insertions(+), 84 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ccf6367645c8..33a63de8c290 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,7 +113,7 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-eips", "alloy-primitives", @@ -198,7 +198,7 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-serde", @@ -251,7 +251,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -264,7 +264,7 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -286,7 +286,7 @@ dependencies = [ [[package]] name = "alloy-network-primitives" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -298,7 +298,7 @@ dependencies = [ [[package]] name = "alloy-node-bindings" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -345,7 +345,7 @@ dependencies = [ [[package]] name = "alloy-provider" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-chains", "alloy-consensus", @@ -385,7 +385,7 @@ dependencies = [ [[package]] name = "alloy-pubsub" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -425,7 +425,7 @@ dependencies = [ [[package]] name = "alloy-rpc-client" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -449,7 +449,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -461,7 +461,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -472,7 +472,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -483,7 +483,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-eips", "alloy-primitives", @@ -496,7 +496,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "serde", @@ -505,7 +505,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -525,7 +525,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-consensus", "alloy-eips", @@ -545,7 +545,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-eips", "alloy-primitives", @@ -557,7 +557,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -570,7 +570,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -581,7 +581,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "arbitrary", @@ -592,7 +592,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-primitives", "async-trait", @@ -605,7 +605,7 @@ dependencies = [ [[package]] name = "alloy-signer-local" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-consensus", "alloy-network", @@ -744,7 +744,7 @@ dependencies = [ [[package]] name = "alloy-transport" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -763,7 +763,7 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -777,7 +777,7 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -795,7 +795,7 @@ dependencies = [ [[package]] name = "alloy-transport-ws" version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=d99f09c#d99f09c53f5052efa12fd0a989e13e36bbfb98b4" +source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" dependencies = [ "alloy-pubsub", "alloy-transport", diff --git a/Cargo.toml b/Cargo.toml index 68704a4b387b..41a81774b9ff 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -608,33 +608,33 @@ alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index 862257e40dce..ae19586ab6a4 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -18,33 +18,33 @@ alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "d99f09c" } +alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } +alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index bbc76421ab52..007ea00f7a76 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -3,7 +3,7 @@ use crate::{Block, BlockBody, Transaction, TransactionSigned}; use alloc::{string::ToString, vec::Vec}; use alloy_consensus::{constants::EMPTY_TRANSACTIONS, AnyHeader, Header, TxEnvelope}; -use alloy_network::{AnyRpcBlock, AnyTxEnvelope}; +use alloy_network::{AnyRpcBlock, AnyRpcTransaction, AnyTxEnvelope}; use alloy_serde::WithOtherFields; use op_alloy_rpc_types as _; @@ -94,11 +94,11 @@ impl TryFrom for Block { } } -impl TryFrom>> for TransactionSigned { +impl TryFrom for TransactionSigned { type Error = alloy_rpc_types::ConversionError; fn try_from( - tx: WithOtherFields>, + tx: AnyRpcTransaction, ) -> Result { use alloy_rpc_types::ConversionError; From ac423261eadf071d5cc39c05f670de88b9a141dc Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Wed, 6 Nov 2024 17:09:39 +0400 Subject: [PATCH 18/20] rm patches --- Cargo.lock | 328 ++++++++---------- Cargo.toml | 115 ++---- book/sources/Cargo.toml | 39 --- crates/primitives/src/alloy_compat.rs | 4 +- crates/rpc/rpc-eth-api/src/helpers/state.rs | 4 +- crates/rpc/rpc-types-compat/src/proof.rs | 6 +- .../provider/src/providers/consistent.rs | 4 +- crates/storage/provider/src/writer/mod.rs | 10 +- 8 files changed, 198 insertions(+), 312 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 33a63de8c290..7075227673f4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -112,8 +112,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7109d565c7157ee2c10beea7911a71130aa6c3cb6dfeaf66905a98f69b96a754" dependencies = [ "alloy-eips", "alloy-primitives", @@ -130,12 +131,12 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "0.5.4" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460ab80ce4bda1c80bcf96fe7460520476f2c7b734581c6567fac2708e2a60ef" +checksum = "08f16c29a39afa238e35ee4ba06ca2e1c3a4764c2096e94c66730688a0471be7" dependencies = [ "alloy-dyn-abi", - "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-abi", "alloy-network", "alloy-network-primitives", "alloy-primitives", @@ -150,13 +151,13 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5228b189b18b85761340dc9eaac0141148a8503657b36f9bc3a869413d987ca" +checksum = "85132f2698b520fab3f54beed55a44389f7006a7b557a0261e1e69439dcc1572" dependencies = [ - "alloy-json-abi 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-abi", "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-type-parser", "alloy-sol-types", "const-hex", "derive_more 1.0.0", @@ -197,8 +198,9 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711de3f04cf728259ff149f725df12a8595b6b10baefafb0a0447201c72d76de" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -217,8 +219,9 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76b8fa6253466bd6f4b5ba3d725d350f7a05de494dd1b8d01537eafe934667e9" dependencies = [ "alloy-primitives", "alloy-serde", @@ -227,31 +230,21 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31a0f0d51db8a1a30a4d98a9f90e090a94c8f44cb4d9eafc7e03aa6d00aae984" +checksum = "ded610181f3dad5810f6ff12d1a99994cf9b42d2fcb7709029352398a5da5ae6" dependencies = [ "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-abi" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-sol-type-parser", "serde", "serde_json", ] [[package]] name = "alloy-json-rpc" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9278d6d554510136d9e0e4e51de4f5a9a4baffc8975f29e9acd01e12b2e045c" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -263,8 +256,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85d356983dea86089b05674d5ef88a7168a5c34a523ef62e2e3c8a9847ce0822" dependencies = [ "alloy-consensus", "alloy-eips", @@ -285,8 +279,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18fbc9778e7989877465888383a7533c7318a9200d7229336bcc2b0277df36ba" dependencies = [ "alloy-consensus", "alloy-eips", @@ -297,8 +292,9 @@ dependencies = [ [[package]] name = "alloy-node-bindings" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe5fd811738d37c56318378802b7bc3cc44e4d12b532641374309a10a04c515" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -313,8 +309,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd58d377699e6cfeab52c4a9d28bdc4ef37e2bd235ff2db525071fe37a2e9af5" dependencies = [ "alloy-rlp", "arbitrary", @@ -344,8 +341,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe3189c8cf3c3e9185862ac0d0b2a9d6bf00e4395746c7ec36307a4db0d5d486" dependencies = [ "alloy-chains", "alloy-consensus", @@ -384,8 +382,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51358f866bcb93b8440c08086557e415c455cdc8d63754fa339611a3e215b038" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -424,8 +423,9 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d847913cea3fcd64fb1fe1247fafe15aab4060a2d24e535bbffcaa4670de9a79" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -448,8 +448,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37ef8fd215cf81ddb0565815e1592a87377fa1e259db8ca4e683e6659fdf5c08" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -460,8 +461,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "647f703e27edad1f9c97455a6434378ea70b4ca9ae95f5e1559acf354c69bc14" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -471,8 +473,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6805b1626b084c231b2ec70c05090d45ce914d22e47f6cd4e8426f43098bbdf1" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -482,8 +485,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ed50d4f427bcb5bc561b3e6f45238158db6592deabcfbecb03c7ca9dadafe98" dependencies = [ "alloy-eips", "alloy-primitives", @@ -495,8 +499,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e00a212581221f03d18c4239a1b985d695205a9518468a0b11ef64a143dd0724" dependencies = [ "alloy-primitives", "serde", @@ -504,8 +509,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7312fb85ef76428f8e20f50d1505494be9d081ffdb5cbf6a25c153c7b530994c" dependencies = [ "alloy-consensus", "alloy-eips", @@ -524,8 +530,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eba7afa617e7942ba5df88ca063a99e9f51e67df2de816fd52513e64926145a3" dependencies = [ "alloy-consensus", "alloy-eips", @@ -544,8 +551,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b479e525a57388821d05c99732b3f6195128d8b74c9372329287f5e0d47d0aa" dependencies = [ "alloy-eips", "alloy-primitives", @@ -556,8 +564,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "563105a7fb420d44bd30bfe043f5bba8b6fe78432d8da99f4148aa7226d90d69" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -569,8 +578,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0da9410a730ced6e30cd349e6d9f39bc9e37ca1bb58a39691e276d7a4061631" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -580,8 +590,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c9f13d8c9180dcced875f91f1876e428941cec151fc501637f68ad30d088d89" dependencies = [ "alloy-primitives", "arbitrary", @@ -591,8 +602,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "796f951bcd6a00f9fb53265676eed9fab6feb37d1eb912b70fc2654be5e5a560" dependencies = [ "alloy-primitives", "async-trait", @@ -604,8 +616,9 @@ dependencies = [ [[package]] name = "alloy-signer-local" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e2a3fb629bbe89cfba73699a4be64d6dc3bd73691f2e43f2a35448294ffbf9" dependencies = [ "alloy-consensus", "alloy-network", @@ -621,25 +634,12 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841eabaa4710f719fddbc24c95d386eae313f07e6da4babc25830ee37945be0c" -dependencies = [ - "alloy-sol-macro-expander 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "alloy-sol-macro" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +checksum = "8a1b42ac8f45e2f49f4bcdd72cbfde0bb148f5481d403774ffa546e48b83efc1" dependencies = [ - "alloy-sol-macro-expander 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", - "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-sol-macro-expander", + "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", @@ -648,28 +648,11 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6672337f19d837b9f7073c45853aeb528ed9f7dd6a4154ce683e9e5cb7794014" -dependencies = [ - "alloy-sol-macro-input 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "const-hex", - "heck", - "indexmap 2.6.0", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.87", - "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", - "tiny-keccak", -] - -[[package]] -name = "alloy-sol-macro-expander" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +checksum = "06318f1778e57f36333e850aa71bd1bb5e560c10279e236622faae0470c50412" dependencies = [ - "alloy-sol-macro-input 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-sol-macro-input", "const-hex", "heck", "indexmap 2.6.0", @@ -677,15 +660,15 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.87", - "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dff37dd20bfb118b777c96eda83b2067f4226d2644c5cfa00187b3bc01770ba" +checksum = "eaebb9b0ad61a41345a22c9279975c0cdd231b97947b10d7aad1cf0a7181e4a5" dependencies = [ "const-hex", "dunce", @@ -693,37 +676,14 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.87", - "syn-solidity 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "alloy-sol-macro-input" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" -dependencies = [ - "const-hex", - "dunce", - "heck", - "proc-macro2", - "quote", - "syn 2.0.87", - "syn-solidity 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b853d42292dbb159671a3edae3b2750277ff130f32b726fe07dc2b17aa6f2b5" -dependencies = [ - "serde", - "winnow", -] - -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +checksum = "12c71028bfbfec210e24106a542aad3def7caf1a70e2c05710e92a98481980d3" dependencies = [ "serde", "winnow", @@ -731,20 +691,22 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374d7fb042d68ddfe79ccb23359de3007f6d4d53c13f703b64fb0db422132111" dependencies = [ - "alloy-json-abi 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-json-abi", "alloy-primitives", - "alloy-sol-macro 0.8.10 (git+https://github.com/alloy-rs/core?rev=17ae00a)", + "alloy-sol-macro", "const-hex", "serde", ] [[package]] name = "alloy-transport" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d315ab988e06f6b12038a3d7811957da28a8b378ff0d084b0819ebae1746ead" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -762,8 +724,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "166449a8d8867be0978d6fa85aa56b89a27988b09e57bfd1f3b9962a9c8d5bae" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -776,8 +739,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "716b21dce8e7ea29a5d459ed4b6d29a13a71d2b766fd84ac15e68623662b5d87" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -794,8 +758,9 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "0.5.4" -source = "git+https://github.com/alloy-rs/alloy?rev=ede61733#ede617337f5fc164a874434d5237612614f1a73d" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b577974182a4e6d9b1a1ecd5a7fd48da9d239a1e214e2368d37b3179e86cd8c3" dependencies = [ "alloy-pubsub", "alloy-transport", @@ -2856,7 +2821,7 @@ version = "0.0.0" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-sol-macro 0.8.10 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-macro", "alloy-sol-types", "eyre", "reth", @@ -5305,8 +5270,9 @@ checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" [[package]] name = "op-alloy-consensus" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae4582945fa96ae0ed78babcac6e41f025460e30ed0c9781aaeedf878fc2b527" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5322,8 +5288,9 @@ dependencies = [ [[package]] name = "op-alloy-genesis" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1ece4a037c56536d8b517d045cef9cc07364c578709c184d33817108309c31e" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5335,8 +5302,9 @@ dependencies = [ [[package]] name = "op-alloy-network" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05e9b64d15a7bf27a06c16eb286349aa2d4e3173260a8ab1fe73bd2c13c89769" dependencies = [ "alloy-consensus", "alloy-network", @@ -5349,8 +5317,9 @@ dependencies = [ [[package]] name = "op-alloy-protocol" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa989d1ea8deced466b0edd7a447264b1f934fd740ab895d32b8544dcce3b151" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5368,8 +5337,9 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca6e53039829ff0b3482d8dd02cb2de45d5c7b889023c7e4588a43ea7451664a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5386,9 +5356,11 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" -version = "0.5.2" -source = "git+https://github.com/alloy-rs/op-alloy?rev=1f4aa2a#1f4aa2a53775cb96da8b98d2bc39758012f163ac" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "283b19e1e7fef1ca9078df39f45a48609cacf856b7b441ed6cf19301ed162cca" dependencies = [ + "alloy-eips", "alloy-primitives", "alloy-rpc-types-engine", "alloy-serde", @@ -9360,9 +9332,9 @@ dependencies = [ [[package]] name = "revm" -version = "17.1.0" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "055bee6a81aaeee8c2389ae31f0d4de87f44df24f4444a1116f9755fd87a76ad" +checksum = "15689a3c6a8d14b647b4666f2e236ef47b5a5133cdfd423f545947986fff7013" dependencies = [ "auto_impl", "cfg-if", @@ -9375,9 +9347,9 @@ dependencies = [ [[package]] name = "revm-inspectors" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e29c662f7887f3b659d4b0fd234673419a8fcbeaa1ecc29bf7034c0a75cc8ea" +checksum = "747291a18ad6726a08dd73f8b6a6b3a844db582ecae2063ccf0a04880c44f482" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -9394,9 +9366,9 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "13.0.0" +version = "14.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fac2034454f8bc69dc7d3c94cdb1b57559e27f5ef0518771f1787de543d7d6a1" +checksum = "74e3f11d0fed049a4a10f79820c59113a79b38aed4ebec786a79d5c667bfeb51" dependencies = [ "revm-primitives", "serde", @@ -9404,9 +9376,9 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "14.0.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a88c8c7c5f9b988a9e65fc0990c6ce859cdb74114db705bd118a96d22d08027" +checksum = "e381060af24b750069a2b2d2c54bba273d84e8f5f9e8026fc9262298e26cc336" dependencies = [ "aurora-engine-modexp", "blst", @@ -9424,8 +9396,9 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "13.0.0" -source = "git+https://github.com/klkvr/revm?rev=82b99a0#82b99a06125b4b802bcf6b30e9eaa00b529e4661" +version = "14.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3702f132bb484f4f0d0ca4f6fbde3c82cfd745041abbedd6eda67730e1868ef0" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -10403,20 +10376,9 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.10" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16320d4a2021ba1a32470b3759676114a918885e9800e68ad60f2c67969fba62" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.87", -] - -[[package]] -name = "syn-solidity" -version = "0.8.10" -source = "git+https://github.com/alloy-rs/core?rev=17ae00a#17ae00a41ae7198dcc9f66a3a7d98a3cbdd44c9e" +checksum = "edf42e81491fb8871b74df3d222c64ae8cbc1269ea509fa768a3ed3e1b0ac8cb" dependencies = [ "paste", "proc-macro2", diff --git a/Cargo.toml b/Cargo.toml index 41a81774b9ff..c4e17fe59458 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -418,60 +418,60 @@ reth-trie-db = { path = "crates/trie/db" } reth-trie-parallel = { path = "crates/trie/parallel" } # revm -revm = { version = "17.0.0", features = ["std"], default-features = false } -revm-inspectors = "0.10.0" -revm-primitives = { version = "13.0.0", features = [ +revm = { version = "18.0.0", features = ["std"], default-features = false } +revm-inspectors = "0.11.0" +revm-primitives = { version = "14.0.0", features = [ "std", ], default-features = false } # eth alloy-chains = "0.1.32" -alloy-dyn-abi = "0.8.0" -alloy-primitives = { version = "0.8.10", default-features = false } +alloy-dyn-abi = "0.8.11" +alloy-primitives = { version = "0.8.11", default-features = false } alloy-rlp = "0.3.4" -alloy-sol-types = "0.8.0" +alloy-sol-types = "0.8.11" alloy-trie = { version = "0.7", default-features = false } -alloy-consensus = { version = "0.5.4", default-features = false } -alloy-contract = { version = "0.5.4", default-features = false } -alloy-eips = { version = "0.5.4", default-features = false } -alloy-genesis = { version = "0.5.4", default-features = false } -alloy-json-rpc = { version = "0.5.4", default-features = false } -alloy-network = { version = "0.5.4", default-features = false } -alloy-network-primitives = { version = "0.5.4", default-features = false } -alloy-node-bindings = { version = "0.5.4", default-features = false } -alloy-provider = { version = "0.5.4", features = [ +alloy-consensus = { version = "0.6.0", default-features = false } +alloy-contract = { version = "0.6.0", default-features = false } +alloy-eips = { version = "0.6.0", default-features = false } +alloy-genesis = { version = "0.6.0", default-features = false } +alloy-json-rpc = { version = "0.6.0", default-features = false } +alloy-network = { version = "0.6.0", default-features = false } +alloy-network-primitives = { version = "0.6.0", default-features = false } +alloy-node-bindings = { version = "0.6.0", default-features = false } +alloy-provider = { version = "0.6.0", features = [ "reqwest", ], default-features = false } -alloy-pubsub = { version = "0.5.4", default-features = false } -alloy-rpc-client = { version = "0.5.4", default-features = false } -alloy-rpc-types = { version = "0.5.4", features = [ +alloy-pubsub = { version = "0.6.0", default-features = false } +alloy-rpc-client = { version = "0.6.0", default-features = false } +alloy-rpc-types = { version = "0.6.0", features = [ "eth", ], default-features = false } -alloy-rpc-types-admin = { version = "0.5.4", default-features = false } -alloy-rpc-types-anvil = { version = "0.5.4", default-features = false } -alloy-rpc-types-beacon = { version = "0.5.4", default-features = false } -alloy-rpc-types-debug = { version = "0.5.4", default-features = false } -alloy-rpc-types-engine = { version = "0.5.4", default-features = false } -alloy-rpc-types-eth = { version = "0.5.4", default-features = false } -alloy-rpc-types-mev = { version = "0.5.4", default-features = false } -alloy-rpc-types-trace = { version = "0.5.4", default-features = false } -alloy-rpc-types-txpool = { version = "0.5.4", default-features = false } -alloy-serde = { version = "0.5.4", default-features = false } -alloy-signer = { version = "0.5.4", default-features = false } -alloy-signer-local = { version = "0.5.4", default-features = false } -alloy-transport = { version = "0.5.4" } -alloy-transport-http = { version = "0.5.4", features = [ +alloy-rpc-types-admin = { version = "0.6.0", default-features = false } +alloy-rpc-types-anvil = { version = "0.6.0", default-features = false } +alloy-rpc-types-beacon = { version = "0.6.0", default-features = false } +alloy-rpc-types-debug = { version = "0.6.0", default-features = false } +alloy-rpc-types-engine = { version = "0.6.0", default-features = false } +alloy-rpc-types-eth = { version = "0.6.0", default-features = false } +alloy-rpc-types-mev = { version = "0.6.0", default-features = false } +alloy-rpc-types-trace = { version = "0.6.0", default-features = false } +alloy-rpc-types-txpool = { version = "0.6.0", default-features = false } +alloy-serde = { version = "0.6.0", default-features = false } +alloy-signer = { version = "0.6.0", default-features = false } +alloy-signer-local = { version = "0.6.0", default-features = false } +alloy-transport = { version = "0.6.0" } +alloy-transport-http = { version = "0.6.0", features = [ "reqwest-rustls-tls", ], default-features = false } -alloy-transport-ipc = { version = "0.5.4", default-features = false } -alloy-transport-ws = { version = "0.5.4", default-features = false } +alloy-transport-ipc = { version = "0.6.0", default-features = false } +alloy-transport-ws = { version = "0.6.0", default-features = false } # op -op-alloy-rpc-types = "0.5" -op-alloy-rpc-types-engine = "0.5" -op-alloy-network = "0.5" -op-alloy-consensus = "0.5" +op-alloy-rpc-types = "0.6" +op-alloy-rpc-types-engine = "0.6" +op-alloy-network = "0.6" +op-alloy-consensus = "0.6" # misc aquamarine = "0.6" @@ -601,42 +601,3 @@ test-fuzz = "6" tikv-jemalloc-ctl = "0.6" tikv-jemallocator = "0.6" tracy-client = "0.17.3" - -[patch.crates-io] -alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } -alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } - -revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } - -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } - -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } diff --git a/book/sources/Cargo.toml b/book/sources/Cargo.toml index ae19586ab6a4..b374ad798b5d 100644 --- a/book/sources/Cargo.toml +++ b/book/sources/Cargo.toml @@ -11,42 +11,3 @@ reth-exex = { path = "../../crates/exex/exex" } reth-node-ethereum = { path = "../../crates/ethereum/node" } reth-tracing = { path = "../../crates/tracing" } reth-node-api = { path = "../../crates/node/api" } - -[patch.crates-io] -alloy-sol-types = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } -alloy-primitives = { git = "https://github.com/alloy-rs/core", rev = "17ae00a" } - -revm-primitives = { git = "https://github.com/klkvr/revm", rev = "82b99a0" } - -alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-network-primitives = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } -alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "ede61733" } - -op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } -op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "1f4aa2a" } diff --git a/crates/primitives/src/alloy_compat.rs b/crates/primitives/src/alloy_compat.rs index 007ea00f7a76..673430d9595a 100644 --- a/crates/primitives/src/alloy_compat.rs +++ b/crates/primitives/src/alloy_compat.rs @@ -97,9 +97,7 @@ impl TryFrom for Block { impl TryFrom for TransactionSigned { type Error = alloy_rpc_types::ConversionError; - fn try_from( - tx: AnyRpcTransaction, - ) -> Result { + fn try_from(tx: AnyRpcTransaction) -> Result { use alloy_rpc_types::ConversionError; let WithOtherFields { inner: tx, other: _ } = tx; diff --git a/crates/rpc/rpc-eth-api/src/helpers/state.rs b/crates/rpc/rpc-eth-api/src/helpers/state.rs index 97c94b949323..c60c00e63205 100644 --- a/crates/rpc/rpc-eth-api/src/helpers/state.rs +++ b/crates/rpc/rpc-eth-api/src/helpers/state.rs @@ -73,7 +73,7 @@ pub trait EthState: LoadState + SpawnBlocking { self.spawn_blocking_io(move |this| { Ok(B256::new( this.state_at_block_id_or_latest(block_id)? - .storage(address, index.0) + .storage(address, index.as_b256()) .map_err(Self::Error::from_eth_err)? .unwrap_or_default() .to_be_bytes(), @@ -117,7 +117,7 @@ pub trait EthState: LoadState + SpawnBlocking { self.spawn_blocking_io(move |this| { let state = this.state_at_block_id(block_id)?; - let storage_keys = keys.iter().map(|key| key.0).collect::>(); + let storage_keys = keys.iter().map(|key| key.as_b256()).collect::>(); let proof = state .proof(Default::default(), address, &storage_keys) .map_err(Self::Error::from_eth_err)?; diff --git a/crates/rpc/rpc-types-compat/src/proof.rs b/crates/rpc/rpc-types-compat/src/proof.rs index 19bc76f3d7bc..7bdf629e96a6 100644 --- a/crates/rpc/rpc-types-compat/src/proof.rs +++ b/crates/rpc/rpc-types-compat/src/proof.rs @@ -6,7 +6,11 @@ use reth_trie_common::{AccountProof, StorageProof}; /// Creates a new rpc storage proof from a primitive storage proof type. pub fn from_primitive_storage_proof(proof: StorageProof) -> EIP1186StorageProof { - EIP1186StorageProof { key: JsonStorageKey(proof.key), value: proof.value, proof: proof.proof } + EIP1186StorageProof { + key: JsonStorageKey::Hash(proof.key), + value: proof.value, + proof: proof.proof, + } } /// Creates a new rpc account proof from a primitive account proof type. diff --git a/crates/storage/provider/src/providers/consistent.rs b/crates/storage/provider/src/providers/consistent.rs index e6ca1a919324..6b15d7e53382 100644 --- a/crates/storage/provider/src/providers/consistent.rs +++ b/crates/storage/provider/src/providers/consistent.rs @@ -1386,7 +1386,7 @@ impl StorageChangeSetReader for ConsistentProvider { .bundle .reverts .clone() - .into_plain_state_reverts() + .to_plain_state_reverts() .storage .into_iter() .flatten() @@ -1439,7 +1439,7 @@ impl ChangeSetReader for ConsistentProvider { .bundle .reverts .clone() - .into_plain_state_reverts() + .to_plain_state_reverts() .accounts .into_iter() .flatten() diff --git a/crates/storage/provider/src/writer/mod.rs b/crates/storage/provider/src/writer/mod.rs index 5b16b2da4e5a..37092a5dd51e 100644 --- a/crates/storage/provider/src/writer/mod.rs +++ b/crates/storage/provider/src/writer/mod.rs @@ -523,7 +523,7 @@ where is_value_known: OriginalValuesKnown, ) -> ProviderResult<()> { let (plain_state, reverts) = - execution_outcome.bundle.into_plain_state_and_reverts(is_value_known); + execution_outcome.bundle.to_plain_state_and_reverts(is_value_known); self.database().write_state_reverts(reverts, execution_outcome.first_block)?; @@ -664,8 +664,8 @@ mod tests { let mut revm_bundle_state = state.take_bundle(); // Write plain state and reverts separately. - let reverts = revm_bundle_state.take_all_reverts().into_plain_state_reverts(); - let plain_state = revm_bundle_state.into_plain_state(OriginalValuesKnown::Yes); + let reverts = revm_bundle_state.take_all_reverts().to_plain_state_reverts(); + let plain_state = revm_bundle_state.to_plain_state(OriginalValuesKnown::Yes); assert!(plain_state.storage.is_empty()); assert!(plain_state.contracts.is_empty()); provider.write_state_changes(plain_state).expect("Could not write plain state to DB"); @@ -722,8 +722,8 @@ mod tests { let mut revm_bundle_state = state.take_bundle(); // Write plain state and reverts separately. - let reverts = revm_bundle_state.take_all_reverts().into_plain_state_reverts(); - let plain_state = revm_bundle_state.into_plain_state(OriginalValuesKnown::Yes); + let reverts = revm_bundle_state.take_all_reverts().to_plain_state_reverts(); + let plain_state = revm_bundle_state.to_plain_state(OriginalValuesKnown::Yes); // Account B selfdestructed so flag for it should be present. assert_eq!( plain_state.storage, From 74736bdb95941cd28b89725b681789a0bf95c003 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Wed, 6 Nov 2024 17:45:31 +0400 Subject: [PATCH 19/20] fix --- Cargo.toml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/Cargo.toml b/Cargo.toml index b1626951be83..b8734afe6641 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -601,3 +601,36 @@ test-fuzz = "6" tikv-jemalloc-ctl = "0.6" tikv-jemallocator = "0.6" tracy-client = "0.17.3" + +#[patch.crates-io] +#alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-debug = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-mev = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } +#alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "a971b3a" } + +#op-alloy-rpc-types = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } +#op-alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } +#op-alloy-network = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } +#op-alloy-consensus = { git = "https://github.com/alloy-rs/op-alloy", rev = "6a042e7681b1" } From 9dfe14fb0fdcde9961819c463e1017514861be85 Mon Sep 17 00:00:00 2001 From: Arsenii Kulikov Date: Wed, 6 Nov 2024 18:34:07 +0400 Subject: [PATCH 20/20] Update crates/consensus/debug-client/src/client.rs Co-authored-by: Matthias Seitz --- crates/consensus/debug-client/src/client.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/consensus/debug-client/src/client.rs b/crates/consensus/debug-client/src/client.rs index a237ba084f14..b6993a41b90e 100644 --- a/crates/consensus/debug-client/src/client.rs +++ b/crates/consensus/debug-client/src/client.rs @@ -209,7 +209,7 @@ pub fn block_to_execution_payload_v3(block: Block) -> ExecutionNewPayload { .map(|tx| tx.inner.encoded_2718().into()) .collect(), }, - withdrawals: block.withdrawals.clone().unwrap_or_default().to_vec(), + withdrawals: block.withdrawals.clone().unwrap_or_default().into_inner(), }, blob_gas_used: block.header.blob_gas_used.unwrap(), excess_blob_gas: block.header.excess_blob_gas.unwrap(),