mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 10:59:55 +00:00
chore: bump alloy and rm EvmOverrides (#8875)
This commit is contained in:
85
Cargo.lock
generated
85
Cargo.lock
generated
@ -124,7 +124,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-consensus"
|
name = "alloy-consensus"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-eips 0.1.0",
|
"alloy-eips 0.1.0",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -171,7 +171,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-eips"
|
name = "alloy-eips"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rlp",
|
"alloy-rlp",
|
||||||
@ -203,7 +203,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-genesis"
|
name = "alloy-genesis"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-serde 0.1.0",
|
"alloy-serde 0.1.0",
|
||||||
@ -226,7 +226,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-json-rpc"
|
name = "alloy-json-rpc"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"serde",
|
"serde",
|
||||||
@ -238,13 +238,14 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-network"
|
name = "alloy-network"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-consensus 0.1.0",
|
"alloy-consensus 0.1.0",
|
||||||
"alloy-eips 0.1.0",
|
"alloy-eips 0.1.0",
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types-eth 0.1.0",
|
"alloy-rpc-types-eth 0.1.0",
|
||||||
|
"alloy-serde 0.1.0",
|
||||||
"alloy-signer",
|
"alloy-signer",
|
||||||
"alloy-sol-types",
|
"alloy-sol-types",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
@ -256,7 +257,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-node-bindings"
|
name = "alloy-node-bindings"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-genesis",
|
"alloy-genesis",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -298,7 +299,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-provider"
|
name = "alloy-provider"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-chains",
|
"alloy-chains",
|
||||||
"alloy-consensus 0.1.0",
|
"alloy-consensus 0.1.0",
|
||||||
@ -308,9 +309,9 @@ dependencies = [
|
|||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-pubsub",
|
"alloy-pubsub",
|
||||||
"alloy-rpc-client",
|
"alloy-rpc-client",
|
||||||
|
"alloy-rpc-types-admin",
|
||||||
"alloy-rpc-types-engine",
|
"alloy-rpc-types-engine",
|
||||||
"alloy-rpc-types-eth 0.1.0",
|
"alloy-rpc-types-eth 0.1.0",
|
||||||
"alloy-rpc-types-trace",
|
|
||||||
"alloy-transport",
|
"alloy-transport",
|
||||||
"alloy-transport-http",
|
"alloy-transport-http",
|
||||||
"alloy-transport-ws",
|
"alloy-transport-ws",
|
||||||
@ -333,7 +334,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-pubsub"
|
name = "alloy-pubsub"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -373,7 +374,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-client"
|
name = "alloy-rpc-client"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -396,7 +397,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types"
|
name = "alloy-rpc-types"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-rpc-types-engine",
|
"alloy-rpc-types-engine",
|
||||||
"alloy-rpc-types-eth 0.1.0",
|
"alloy-rpc-types-eth 0.1.0",
|
||||||
@ -413,10 +414,21 @@ dependencies = [
|
|||||||
"alloy-serde 0.1.1",
|
"alloy-serde 0.1.1",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "alloy-rpc-types-admin"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
|
dependencies = [
|
||||||
|
"alloy-genesis",
|
||||||
|
"alloy-primitives",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types-anvil"
|
name = "alloy-rpc-types-anvil"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-serde 0.1.0",
|
"alloy-serde 0.1.0",
|
||||||
@ -426,7 +438,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types-beacon"
|
name = "alloy-rpc-types-beacon"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-eips 0.1.0",
|
"alloy-eips 0.1.0",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -439,7 +451,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types-engine"
|
name = "alloy-rpc-types-engine"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-consensus 0.1.0",
|
"alloy-consensus 0.1.0",
|
||||||
"alloy-eips 0.1.0",
|
"alloy-eips 0.1.0",
|
||||||
@ -457,11 +469,10 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types-eth"
|
name = "alloy-rpc-types-eth"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-consensus 0.1.0",
|
"alloy-consensus 0.1.0",
|
||||||
"alloy-eips 0.1.0",
|
"alloy-eips 0.1.0",
|
||||||
"alloy-genesis",
|
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rlp",
|
"alloy-rlp",
|
||||||
"alloy-serde 0.1.0",
|
"alloy-serde 0.1.0",
|
||||||
@ -496,7 +507,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-types-trace"
|
name = "alloy-rpc-types-trace"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types-eth 0.1.0",
|
"alloy-rpc-types-eth 0.1.0",
|
||||||
@ -506,11 +517,25 @@ dependencies = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-serde"
|
name = "alloy-rpc-types-txpool"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
|
"alloy-rpc-types-eth 0.1.0",
|
||||||
|
"alloy-serde 0.1.0",
|
||||||
|
"serde",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "alloy-serde"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
|
dependencies = [
|
||||||
|
"alloy-primitives",
|
||||||
|
"arbitrary",
|
||||||
|
"proptest",
|
||||||
|
"proptest-derive",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
]
|
]
|
||||||
@ -528,7 +553,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-signer"
|
name = "alloy-signer"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
@ -539,9 +564,9 @@ dependencies = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-signer-wallet"
|
name = "alloy-signer-local"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-consensus 0.1.0",
|
"alloy-consensus 0.1.0",
|
||||||
"alloy-network",
|
"alloy-network",
|
||||||
@ -630,7 +655,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-transport"
|
name = "alloy-transport"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"base64 0.22.1",
|
"base64 0.22.1",
|
||||||
@ -647,7 +672,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-transport-http"
|
name = "alloy-transport-http"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"alloy-transport",
|
"alloy-transport",
|
||||||
@ -661,7 +686,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-transport-ipc"
|
name = "alloy-transport-ipc"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-json-rpc",
|
"alloy-json-rpc",
|
||||||
"alloy-pubsub",
|
"alloy-pubsub",
|
||||||
@ -679,7 +704,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-transport-ws"
|
name = "alloy-transport-ws"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=00d81d7#00d81d7882a0bee4720d6d6a1db4c8f164ebb9d0"
|
source = "git+https://github.com/alloy-rs/alloy?rev=6cb3713#6cb3713a14c047cd5fcf17b99d27055341c41aaf"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-pubsub",
|
"alloy-pubsub",
|
||||||
"alloy-transport",
|
"alloy-transport",
|
||||||
@ -2323,6 +2348,7 @@ dependencies = [
|
|||||||
"futures-util",
|
"futures-util",
|
||||||
"reth",
|
"reth",
|
||||||
"reth-node-ethereum",
|
"reth-node-ethereum",
|
||||||
|
"reth-rpc-types",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@ -6777,7 +6803,7 @@ dependencies = [
|
|||||||
"alloy-network",
|
"alloy-network",
|
||||||
"alloy-rpc-types 0.1.0",
|
"alloy-rpc-types 0.1.0",
|
||||||
"alloy-signer",
|
"alloy-signer",
|
||||||
"alloy-signer-wallet",
|
"alloy-signer-local",
|
||||||
"eyre",
|
"eyre",
|
||||||
"futures-util",
|
"futures-util",
|
||||||
"jsonrpsee",
|
"jsonrpsee",
|
||||||
@ -8000,10 +8026,13 @@ version = "1.0.0-rc.1"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types 0.1.0",
|
"alloy-rpc-types 0.1.0",
|
||||||
|
"alloy-rpc-types-admin",
|
||||||
"alloy-rpc-types-anvil",
|
"alloy-rpc-types-anvil",
|
||||||
"alloy-rpc-types-beacon",
|
"alloy-rpc-types-beacon",
|
||||||
"alloy-rpc-types-engine",
|
"alloy-rpc-types-engine",
|
||||||
"alloy-rpc-types-trace",
|
"alloy-rpc-types-trace",
|
||||||
|
"alloy-rpc-types-txpool",
|
||||||
|
"alloy-serde 0.1.0",
|
||||||
"arbitrary",
|
"arbitrary",
|
||||||
"bytes",
|
"bytes",
|
||||||
"jsonrpsee-types",
|
"jsonrpsee-types",
|
||||||
@ -8356,7 +8385,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "revm-inspectors"
|
name = "revm-inspectors"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=52f632e#52f632e66404b9d6bfd474eeef3ff65d58167f2e"
|
source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=6bbf303#6bbf3033ba0119531de69cbddad1f4b89dfa2c4a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types 0.1.0",
|
"alloy-rpc-types 0.1.0",
|
||||||
|
|||||||
47
Cargo.toml
47
Cargo.toml
@ -344,7 +344,7 @@ revm = { version = "9.0.0", features = [
|
|||||||
revm-primitives = { version = "4.0.0", features = [
|
revm-primitives = { version = "4.0.0", features = [
|
||||||
"std",
|
"std",
|
||||||
], default-features = false }
|
], default-features = false }
|
||||||
revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "52f632e" }
|
revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "6bbf303" }
|
||||||
|
|
||||||
# eth
|
# eth
|
||||||
alloy-chains = "0.1.15"
|
alloy-chains = "0.1.15"
|
||||||
@ -353,33 +353,36 @@ alloy-dyn-abi = "0.7.2"
|
|||||||
alloy-sol-types = "0.7.2"
|
alloy-sol-types = "0.7.2"
|
||||||
alloy-rlp = "0.3.4"
|
alloy-rlp = "0.3.4"
|
||||||
alloy-trie = "0.4"
|
alloy-trie = "0.4"
|
||||||
alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false, features = [
|
alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false, features = [
|
||||||
"eth",
|
"eth",
|
||||||
] }
|
] }
|
||||||
alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-anvil = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-beacon = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-admin = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-txpool = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-serde = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-engine = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-types-eth = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false, features = [
|
alloy-rpc-types-trace = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
|
alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
|
alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
|
alloy-provider = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false, features = [
|
||||||
"reqwest",
|
"reqwest",
|
||||||
] }
|
] }
|
||||||
alloy-eips = { git = "https://github.com/alloy-rs/alloy", default-features = false, rev = "00d81d7" }
|
alloy-eips = { git = "https://github.com/alloy-rs/alloy", default-features = false, rev = "6cb3713" }
|
||||||
alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-signer = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-signer-wallet = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-signer-local = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-network = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7" }
|
alloy-transport = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713" }
|
||||||
alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", features = [
|
alloy-transport-http = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", features = [
|
||||||
"reqwest-rustls-tls",
|
"reqwest-rustls-tls",
|
||||||
], default-features = false }
|
], default-features = false }
|
||||||
alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-transport-ws = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-transport-ipc = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-pubsub = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-json-rpc = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "00d81d7", default-features = false }
|
alloy-rpc-client = { git = "https://github.com/alloy-rs/alloy", rev = "6cb3713", default-features = false }
|
||||||
|
|
||||||
# misc
|
# misc
|
||||||
auto_impl = "1"
|
auto_impl = "1"
|
||||||
|
|||||||
@ -29,7 +29,7 @@ tokio.workspace = true
|
|||||||
tokio-stream.workspace = true
|
tokio-stream.workspace = true
|
||||||
serde_json.workspace = true
|
serde_json.workspace = true
|
||||||
alloy-signer.workspace = true
|
alloy-signer.workspace = true
|
||||||
alloy-signer-wallet = { workspace = true, features = ["mnemonic"] }
|
alloy-signer-local = { workspace = true, features = ["mnemonic"] }
|
||||||
alloy-rpc-types.workspace = true
|
alloy-rpc-types.workspace = true
|
||||||
alloy-network.workspace = true
|
alloy-network.workspace = true
|
||||||
alloy-consensus = { workspace = true, features = ["kzg"] }
|
alloy-consensus = { workspace = true, features = ["kzg"] }
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
use alloy_consensus::{
|
use alloy_consensus::{
|
||||||
BlobTransactionSidecar, SidecarBuilder, SimpleCoder, TxEip4844Variant, TxEnvelope,
|
BlobTransactionSidecar, SidecarBuilder, SimpleCoder, TxEip4844Variant, TxEnvelope,
|
||||||
};
|
};
|
||||||
use alloy_network::{eip2718::Encodable2718, EthereumSigner, TransactionBuilder};
|
use alloy_network::{eip2718::Encodable2718, EthereumWallet, TransactionBuilder};
|
||||||
use alloy_rpc_types::{TransactionInput, TransactionRequest};
|
use alloy_rpc_types::{TransactionInput, TransactionRequest};
|
||||||
use alloy_signer_wallet::LocalWallet;
|
use alloy_signer_local::PrivateKeySigner;
|
||||||
use eyre::Ok;
|
use eyre::Ok;
|
||||||
use reth_primitives::{hex, Address, Bytes, U256};
|
use reth_primitives::{hex, Address, Bytes, U256};
|
||||||
|
|
||||||
@ -13,19 +13,22 @@ pub struct TransactionTestContext;
|
|||||||
|
|
||||||
impl TransactionTestContext {
|
impl TransactionTestContext {
|
||||||
/// Creates a static transfer and signs it, returning bytes
|
/// Creates a static transfer and signs it, returning bytes
|
||||||
pub async fn transfer_tx(chain_id: u64, wallet: LocalWallet) -> TxEnvelope {
|
pub async fn transfer_tx(chain_id: u64, wallet: PrivateKeySigner) -> TxEnvelope {
|
||||||
let tx = tx(chain_id, None, 0);
|
let tx = tx(chain_id, None, 0);
|
||||||
Self::sign_tx(wallet, tx).await
|
Self::sign_tx(wallet, tx).await
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates a static transfer and signs it, returning bytes
|
/// Creates a static transfer and signs it, returning bytes
|
||||||
pub async fn transfer_tx_bytes(chain_id: u64, wallet: LocalWallet) -> Bytes {
|
pub async fn transfer_tx_bytes(chain_id: u64, wallet: PrivateKeySigner) -> Bytes {
|
||||||
let signed = Self::transfer_tx(chain_id, wallet).await;
|
let signed = Self::transfer_tx(chain_id, wallet).await;
|
||||||
signed.encoded_2718().into()
|
signed.encoded_2718().into()
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates a tx with blob sidecar and sign it
|
/// Creates a tx with blob sidecar and sign it
|
||||||
pub async fn tx_with_blobs(chain_id: u64, wallet: LocalWallet) -> eyre::Result<TxEnvelope> {
|
pub async fn tx_with_blobs(
|
||||||
|
chain_id: u64,
|
||||||
|
wallet: PrivateKeySigner,
|
||||||
|
) -> eyre::Result<TxEnvelope> {
|
||||||
let mut tx = tx(chain_id, None, 0);
|
let mut tx = tx(chain_id, None, 0);
|
||||||
|
|
||||||
let mut builder = SidecarBuilder::<SimpleCoder>::new();
|
let mut builder = SidecarBuilder::<SimpleCoder>::new();
|
||||||
@ -40,13 +43,16 @@ impl TransactionTestContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Signs an arbitrary TransactionRequest using the provided wallet
|
/// Signs an arbitrary TransactionRequest using the provided wallet
|
||||||
pub async fn sign_tx(wallet: LocalWallet, tx: TransactionRequest) -> TxEnvelope {
|
pub async fn sign_tx(wallet: PrivateKeySigner, tx: TransactionRequest) -> TxEnvelope {
|
||||||
let signer = EthereumSigner::from(wallet);
|
let signer = EthereumWallet::from(wallet);
|
||||||
tx.build(&signer).await.unwrap()
|
tx.build(&signer).await.unwrap()
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Creates a tx with blob sidecar and sign it, returning bytes
|
/// Creates a tx with blob sidecar and sign it, returning bytes
|
||||||
pub async fn tx_with_blobs_bytes(chain_id: u64, wallet: LocalWallet) -> eyre::Result<Bytes> {
|
pub async fn tx_with_blobs_bytes(
|
||||||
|
chain_id: u64,
|
||||||
|
wallet: PrivateKeySigner,
|
||||||
|
) -> eyre::Result<Bytes> {
|
||||||
let signed = Self::tx_with_blobs(chain_id, wallet).await?;
|
let signed = Self::tx_with_blobs(chain_id, wallet).await?;
|
||||||
|
|
||||||
Ok(signed.encoded_2718().into())
|
Ok(signed.encoded_2718().into())
|
||||||
@ -54,12 +60,12 @@ impl TransactionTestContext {
|
|||||||
|
|
||||||
pub async fn optimism_l1_block_info_tx(
|
pub async fn optimism_l1_block_info_tx(
|
||||||
chain_id: u64,
|
chain_id: u64,
|
||||||
wallet: LocalWallet,
|
wallet: PrivateKeySigner,
|
||||||
nonce: u64,
|
nonce: u64,
|
||||||
) -> Bytes {
|
) -> Bytes {
|
||||||
let l1_block_info = Bytes::from_static(&hex!("7ef9015aa044bae9d41b8380d781187b426c6fe43df5fb2fb57bd4466ef6a701e1f01e015694deaddeaddeaddeaddeaddeaddeaddeaddead000194420000000000000000000000000000000000001580808408f0d18001b90104015d8eb900000000000000000000000000000000000000000000000000000000008057650000000000000000000000000000000000000000000000000000000063d96d10000000000000000000000000000000000000000000000000000000000009f35273d89754a1e0387b89520d989d3be9c37c1f32495a88faf1ea05c61121ab0d1900000000000000000000000000000000000000000000000000000000000000010000000000000000000000002d679b567db6187c0c8323fa982cfb88b74dbcc7000000000000000000000000000000000000000000000000000000000000083400000000000000000000000000000000000000000000000000000000000f4240"));
|
let l1_block_info = Bytes::from_static(&hex!("7ef9015aa044bae9d41b8380d781187b426c6fe43df5fb2fb57bd4466ef6a701e1f01e015694deaddeaddeaddeaddeaddeaddeaddeaddead000194420000000000000000000000000000000000001580808408f0d18001b90104015d8eb900000000000000000000000000000000000000000000000000000000008057650000000000000000000000000000000000000000000000000000000063d96d10000000000000000000000000000000000000000000000000000000000009f35273d89754a1e0387b89520d989d3be9c37c1f32495a88faf1ea05c61121ab0d1900000000000000000000000000000000000000000000000000000000000000010000000000000000000000002d679b567db6187c0c8323fa982cfb88b74dbcc7000000000000000000000000000000000000000000000000000000000000083400000000000000000000000000000000000000000000000000000000000f4240"));
|
||||||
let tx = tx(chain_id, Some(l1_block_info), nonce);
|
let tx = tx(chain_id, Some(l1_block_info), nonce);
|
||||||
let signer = EthereumSigner::from(wallet);
|
let signer = EthereumWallet::from(wallet);
|
||||||
tx.build(&signer).await.unwrap().encoded_2718().into()
|
tx.build(&signer).await.unwrap().encoded_2718().into()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,9 @@
|
|||||||
use alloy_signer::Signer;
|
use alloy_signer::Signer;
|
||||||
use alloy_signer_wallet::{coins_bip39::English, LocalWallet, MnemonicBuilder};
|
use alloy_signer_local::{coins_bip39::English, MnemonicBuilder, PrivateKeySigner};
|
||||||
|
|
||||||
/// One of the accounts of the genesis allocations.
|
/// One of the accounts of the genesis allocations.
|
||||||
pub struct Wallet {
|
pub struct Wallet {
|
||||||
pub inner: LocalWallet,
|
pub inner: PrivateKeySigner,
|
||||||
pub inner_nonce: u64,
|
pub inner_nonce: u64,
|
||||||
pub chain_id: u64,
|
pub chain_id: u64,
|
||||||
amount: usize,
|
amount: usize,
|
||||||
@ -27,7 +27,7 @@ impl Wallet {
|
|||||||
self.derivation_path.as_deref().unwrap_or("m/44'/60'/0'/0/")
|
self.derivation_path.as_deref().unwrap_or("m/44'/60'/0'/0/")
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn gen(&self) -> Vec<LocalWallet> {
|
pub fn gen(&self) -> Vec<PrivateKeySigner> {
|
||||||
let builder = MnemonicBuilder::<English>::default().phrase(TEST_MNEMONIC);
|
let builder = MnemonicBuilder::<English>::default().phrase(TEST_MNEMONIC);
|
||||||
|
|
||||||
// use the derivation path
|
// use the derivation path
|
||||||
|
|||||||
@ -1312,7 +1312,7 @@ mod tests {
|
|||||||
let request = requests.first().unwrap();
|
let request = requests.first().unwrap();
|
||||||
let withdrawal_request = request.as_withdrawal_request().unwrap();
|
let withdrawal_request = request.as_withdrawal_request().unwrap();
|
||||||
assert_eq!(withdrawal_request.source_address, sender_address);
|
assert_eq!(withdrawal_request.source_address, sender_address);
|
||||||
assert_eq!(withdrawal_request.validator_public_key, validator_public_key);
|
assert_eq!(withdrawal_request.validator_pubkey, validator_public_key);
|
||||||
assert_eq!(withdrawal_request.amount, u64::from_be_bytes(withdrawal_amount.into()));
|
assert_eq!(withdrawal_request.amount, u64::from_be_bytes(withdrawal_amount.into()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -377,7 +377,7 @@ mod tests {
|
|||||||
}),
|
}),
|
||||||
Request::WithdrawalRequest(WithdrawalRequest {
|
Request::WithdrawalRequest(WithdrawalRequest {
|
||||||
source_address: Address::from([1; 20]),
|
source_address: Address::from([1; 20]),
|
||||||
validator_public_key: FixedBytes::<48>::from([10; 48]),
|
validator_pubkey: FixedBytes::<48>::from([10; 48]),
|
||||||
amount: 72,
|
amount: 72,
|
||||||
}),
|
}),
|
||||||
])];
|
])];
|
||||||
|
|||||||
@ -82,7 +82,7 @@ reth-transaction-pool = { workspace = true, features = ["test-utils"] }
|
|||||||
|
|
||||||
# alloy deps for testing against nodes
|
# alloy deps for testing against nodes
|
||||||
alloy-node-bindings.workspace = true
|
alloy-node-bindings.workspace = true
|
||||||
alloy-provider.workspace = true
|
alloy-provider= { workspace = true, features = ["admin-api"] }
|
||||||
|
|
||||||
# misc
|
# misc
|
||||||
serial_test.workspace = true
|
serial_test.workspace = true
|
||||||
|
|||||||
@ -319,14 +319,14 @@ where
|
|||||||
let mut source_address = Address::ZERO;
|
let mut source_address = Address::ZERO;
|
||||||
data.copy_to_slice(source_address.as_mut_slice());
|
data.copy_to_slice(source_address.as_mut_slice());
|
||||||
|
|
||||||
let mut validator_public_key = FixedBytes::<48>::ZERO;
|
let mut validator_pubkey = FixedBytes::<48>::ZERO;
|
||||||
data.copy_to_slice(validator_public_key.as_mut_slice());
|
data.copy_to_slice(validator_pubkey.as_mut_slice());
|
||||||
|
|
||||||
let amount = data.get_u64();
|
let amount = data.get_u64();
|
||||||
|
|
||||||
withdrawal_requests.push(Request::WithdrawalRequest(WithdrawalRequest {
|
withdrawal_requests.push(Request::WithdrawalRequest(WithdrawalRequest {
|
||||||
source_address,
|
source_address,
|
||||||
validator_public_key,
|
validator_pubkey,
|
||||||
amount,
|
amount,
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -19,6 +19,9 @@ alloy-rpc-types = { workspace = true, features = ["jsonrpsee-types"] }
|
|||||||
alloy-rpc-types-anvil.workspace = true
|
alloy-rpc-types-anvil.workspace = true
|
||||||
alloy-rpc-types-trace.workspace = true
|
alloy-rpc-types-trace.workspace = true
|
||||||
alloy-rpc-types-beacon.workspace = true
|
alloy-rpc-types-beacon.workspace = true
|
||||||
|
alloy-rpc-types-admin.workspace = true
|
||||||
|
alloy-rpc-types-txpool.workspace = true
|
||||||
|
alloy-serde.workspace = true
|
||||||
alloy-rpc-types-engine = { workspace = true, features = ["jsonrpsee-types"] }
|
alloy-rpc-types-engine = { workspace = true, features = ["jsonrpsee-types"] }
|
||||||
|
|
||||||
# misc
|
# misc
|
||||||
|
|||||||
@ -22,6 +22,9 @@ pub use alloy_rpc_types::serde_helpers;
|
|||||||
// Ethereum specific rpc types coming from alloy.
|
// Ethereum specific rpc types coming from alloy.
|
||||||
pub use alloy_rpc_types::*;
|
pub use alloy_rpc_types::*;
|
||||||
|
|
||||||
|
// Ethereum specific serde types coming from alloy.
|
||||||
|
pub use alloy_serde::*;
|
||||||
|
|
||||||
pub mod trace {
|
pub mod trace {
|
||||||
//! RPC types for trace endpoints and inspectors.
|
//! RPC types for trace endpoints and inspectors.
|
||||||
pub use alloy_rpc_types_trace::*;
|
pub use alloy_rpc_types_trace::*;
|
||||||
@ -33,6 +36,12 @@ pub use alloy_rpc_types_anvil as anvil;
|
|||||||
// re-export beacon
|
// re-export beacon
|
||||||
pub use alloy_rpc_types_beacon as beacon;
|
pub use alloy_rpc_types_beacon as beacon;
|
||||||
|
|
||||||
|
// re-export admin
|
||||||
|
pub use alloy_rpc_types_admin as admin;
|
||||||
|
|
||||||
|
// re-export txpool
|
||||||
|
pub use alloy_rpc_types_txpool as txpool;
|
||||||
|
|
||||||
// Ethereum specific rpc types related to typed transaction requests and the engine API.
|
// Ethereum specific rpc types related to typed transaction requests and the engine API.
|
||||||
pub use eth::{
|
pub use eth::{
|
||||||
engine,
|
engine,
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
use alloy_rpc_types::admin::EthProtocolInfo;
|
use alloy_rpc_types_admin::EthProtocolInfo;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
/// The status of the network being ran by the local node.
|
/// The status of the network being ran by the local node.
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
use crate::{
|
use crate::{
|
||||||
eth::{
|
eth::{
|
||||||
error::{EthApiError, EthResult},
|
error::{EthApiError, EthResult},
|
||||||
revm_utils::{prepare_call_env, EvmOverrides},
|
revm_utils::prepare_call_env,
|
||||||
EthTransactions,
|
EthTransactions,
|
||||||
},
|
},
|
||||||
result::{internal_rpc_err, ToRpcResult},
|
result::{internal_rpc_err, ToRpcResult},
|
||||||
@ -20,6 +20,7 @@ use reth_provider::{
|
|||||||
use reth_revm::database::StateProviderDatabase;
|
use reth_revm::database::StateProviderDatabase;
|
||||||
use reth_rpc_api::DebugApiServer;
|
use reth_rpc_api::DebugApiServer;
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
|
state::EvmOverrides,
|
||||||
trace::geth::{
|
trace::geth::{
|
||||||
BlockTraceResult, FourByteFrame, GethDebugBuiltInTracerType, GethDebugTracerType,
|
BlockTraceResult, FourByteFrame, GethDebugBuiltInTracerType, GethDebugTracerType,
|
||||||
GethDebugTracingCallOptions, GethDebugTracingOptions, GethTrace, NoopFrame, TraceResult,
|
GethDebugTracingCallOptions, GethDebugTracingOptions, GethTrace, NoopFrame, TraceResult,
|
||||||
|
|||||||
@ -6,7 +6,6 @@ use crate::{
|
|||||||
revm_utils::{
|
revm_utils::{
|
||||||
apply_state_overrides, build_call_evm_env, caller_gas_allowance,
|
apply_state_overrides, build_call_evm_env, caller_gas_allowance,
|
||||||
cap_tx_gas_limit_with_caller_allowance, get_precompiles, prepare_call_env,
|
cap_tx_gas_limit_with_caller_allowance, get_precompiles, prepare_call_env,
|
||||||
EvmOverrides,
|
|
||||||
},
|
},
|
||||||
EthTransactions,
|
EthTransactions,
|
||||||
},
|
},
|
||||||
@ -20,8 +19,8 @@ use reth_provider::{
|
|||||||
};
|
};
|
||||||
use reth_revm::database::StateProviderDatabase;
|
use reth_revm::database::StateProviderDatabase;
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
state::StateOverride, AccessListWithGasUsed, Bundle, EthCallResponse, StateContext,
|
state::{EvmOverrides, StateOverride},
|
||||||
TransactionRequest,
|
AccessListWithGasUsed, Bundle, EthCallResponse, StateContext, TransactionRequest,
|
||||||
};
|
};
|
||||||
use reth_transaction_pool::TransactionPool;
|
use reth_transaction_pool::TransactionPool;
|
||||||
use revm::{
|
use revm::{
|
||||||
|
|||||||
@ -6,7 +6,6 @@ use crate::{
|
|||||||
eth::{
|
eth::{
|
||||||
api::{EthApi, EthTransactions},
|
api::{EthApi, EthTransactions},
|
||||||
error::EthApiError,
|
error::EthApiError,
|
||||||
revm_utils::EvmOverrides,
|
|
||||||
},
|
},
|
||||||
result::{internal_rpc_err, ToRpcResult},
|
result::{internal_rpc_err, ToRpcResult},
|
||||||
};
|
};
|
||||||
@ -21,9 +20,11 @@ use reth_provider::{
|
|||||||
};
|
};
|
||||||
use reth_rpc_api::EthApiServer;
|
use reth_rpc_api::EthApiServer;
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
serde_helpers::JsonStorageKey, state::StateOverride, AccessListWithGasUsed,
|
serde_helpers::JsonStorageKey,
|
||||||
AnyTransactionReceipt, BlockOverrides, Bundle, EIP1186AccountProofResponse, EthCallResponse,
|
state::{EvmOverrides, StateOverride},
|
||||||
FeeHistory, Header, Index, RichBlock, StateContext, SyncStatus, TransactionRequest, Work,
|
AccessListWithGasUsed, AnyTransactionReceipt, BlockOverrides, Bundle,
|
||||||
|
EIP1186AccountProofResponse, EthCallResponse, FeeHistory, Header, Index, RichBlock,
|
||||||
|
StateContext, SyncStatus, TransactionRequest, Work,
|
||||||
};
|
};
|
||||||
use reth_transaction_pool::TransactionPool;
|
use reth_transaction_pool::TransactionPool;
|
||||||
use tracing::trace;
|
use tracing::trace;
|
||||||
|
|||||||
@ -3,7 +3,7 @@ use crate::{
|
|||||||
eth::{
|
eth::{
|
||||||
api::pending_block::PendingBlockEnv,
|
api::pending_block::PendingBlockEnv,
|
||||||
error::{EthApiError, EthResult, RpcInvalidTransactionError, SignError},
|
error::{EthApiError, EthResult, RpcInvalidTransactionError, SignError},
|
||||||
revm_utils::{prepare_call_env, EvmOverrides},
|
revm_utils::prepare_call_env,
|
||||||
utils::recover_raw_transaction,
|
utils::recover_raw_transaction,
|
||||||
},
|
},
|
||||||
EthApi, EthApiSpec,
|
EthApi, EthApiSpec,
|
||||||
@ -26,6 +26,7 @@ use reth_provider::{
|
|||||||
};
|
};
|
||||||
use reth_revm::database::StateProviderDatabase;
|
use reth_revm::database::StateProviderDatabase;
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
|
state::EvmOverrides,
|
||||||
transaction::{
|
transaction::{
|
||||||
EIP1559TransactionRequest, EIP2930TransactionRequest, EIP4844TransactionRequest,
|
EIP1559TransactionRequest, EIP2930TransactionRequest, EIP4844TransactionRequest,
|
||||||
LegacyTransactionRequest,
|
LegacyTransactionRequest,
|
||||||
|
|||||||
@ -10,7 +10,7 @@ use reth_primitives::{
|
|||||||
TransactionSignedEcRecovered, TxHash, TxKind, B256, U256,
|
TransactionSignedEcRecovered, TxHash, TxKind, B256, U256,
|
||||||
};
|
};
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
state::{AccountOverride, StateOverride},
|
state::{AccountOverride, EvmOverrides, StateOverride},
|
||||||
BlockOverrides, TransactionRequest,
|
BlockOverrides, TransactionRequest,
|
||||||
};
|
};
|
||||||
#[cfg(feature = "optimism")]
|
#[cfg(feature = "optimism")]
|
||||||
@ -27,64 +27,6 @@ use revm::{
|
|||||||
use std::cmp::min;
|
use std::cmp::min;
|
||||||
use tracing::trace;
|
use tracing::trace;
|
||||||
|
|
||||||
/// Helper type that bundles various overrides for EVM Execution.
|
|
||||||
///
|
|
||||||
/// By `Default`, no overrides are included.
|
|
||||||
#[derive(Debug, Clone, Default)]
|
|
||||||
pub struct EvmOverrides {
|
|
||||||
/// Applies overrides to the state before execution.
|
|
||||||
pub state: Option<StateOverride>,
|
|
||||||
/// Applies overrides to the block before execution.
|
|
||||||
///
|
|
||||||
/// This is a `Box` because less common and only available in debug trace endpoints.
|
|
||||||
pub block: Option<Box<BlockOverrides>>,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl EvmOverrides {
|
|
||||||
/// Creates a new instance with the given overrides
|
|
||||||
pub const fn new(state: Option<StateOverride>, block: Option<Box<BlockOverrides>>) -> Self {
|
|
||||||
Self { state, block }
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Creates a new instance with the given state overrides.
|
|
||||||
pub const fn state(state: Option<StateOverride>) -> Self {
|
|
||||||
Self { state, block: None }
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Creates a new instance with the given block overrides.
|
|
||||||
pub const fn block(block: Option<Box<BlockOverrides>>) -> Self {
|
|
||||||
Self { state: None, block }
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Returns `true` if the overrides contain state overrides.
|
|
||||||
pub const fn has_state(&self) -> bool {
|
|
||||||
self.state.is_some()
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Returns `true` if the overrides contain block overrides.
|
|
||||||
pub const fn has_block(&self) -> bool {
|
|
||||||
self.block.is_some()
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Adds state overrides to an existing instance.
|
|
||||||
pub fn with_state(mut self, state: StateOverride) -> Self {
|
|
||||||
self.state = Some(state);
|
|
||||||
self
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Adds block overrides to an existing instance.
|
|
||||||
pub fn with_block(mut self, block: Box<BlockOverrides>) -> Self {
|
|
||||||
self.block = Some(block);
|
|
||||||
self
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl From<Option<StateOverride>> for EvmOverrides {
|
|
||||||
fn from(state: Option<StateOverride>) -> Self {
|
|
||||||
Self::state(state)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// Helper type to work with different transaction types when configuring the EVM env.
|
/// Helper type to work with different transaction types when configuring the EVM env.
|
||||||
///
|
///
|
||||||
/// This makes it easier to handle errors.
|
/// This makes it easier to handle errors.
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
use crate::eth::{
|
use crate::eth::{
|
||||||
error::{EthApiError, EthResult},
|
error::{EthApiError, EthResult},
|
||||||
revm_utils::{prepare_call_env, EvmOverrides},
|
revm_utils::prepare_call_env,
|
||||||
utils::recover_raw_transaction,
|
utils::recover_raw_transaction,
|
||||||
EthTransactions,
|
EthTransactions,
|
||||||
};
|
};
|
||||||
@ -12,7 +12,7 @@ use reth_provider::{BlockReader, ChainSpecProvider, EvmEnvProvider, StateProvide
|
|||||||
use reth_revm::database::StateProviderDatabase;
|
use reth_revm::database::StateProviderDatabase;
|
||||||
use reth_rpc_api::TraceApiServer;
|
use reth_rpc_api::TraceApiServer;
|
||||||
use reth_rpc_types::{
|
use reth_rpc_types::{
|
||||||
state::StateOverride,
|
state::{EvmOverrides, StateOverride},
|
||||||
trace::{
|
trace::{
|
||||||
filter::TraceFilter,
|
filter::TraceFilter,
|
||||||
opcode::{BlockOpcodeGas, TransactionOpcodeGas},
|
opcode::{BlockOpcodeGas, TransactionOpcodeGas},
|
||||||
|
|||||||
@ -8,5 +8,6 @@ license.workspace = true
|
|||||||
[dependencies]
|
[dependencies]
|
||||||
reth.workspace = true
|
reth.workspace = true
|
||||||
reth-node-ethereum.workspace = true
|
reth-node-ethereum.workspace = true
|
||||||
|
reth-rpc-types.workspace = true
|
||||||
clap = { workspace = true, features = ["derive"] }
|
clap = { workspace = true, features = ["derive"] }
|
||||||
futures-util.workspace = true
|
futures-util.workspace = true
|
||||||
@ -21,13 +21,11 @@ use reth::{
|
|||||||
interpreter::{Interpreter, OpCode},
|
interpreter::{Interpreter, OpCode},
|
||||||
Database, Evm, EvmContext, Inspector,
|
Database, Evm, EvmContext, Inspector,
|
||||||
},
|
},
|
||||||
rpc::{
|
rpc::{compat::transaction::transaction_to_call_request, eth::EthTransactions},
|
||||||
compat::transaction::transaction_to_call_request,
|
|
||||||
eth::{revm_utils::EvmOverrides, EthTransactions},
|
|
||||||
},
|
|
||||||
transaction_pool::TransactionPool,
|
transaction_pool::TransactionPool,
|
||||||
};
|
};
|
||||||
use reth_node_ethereum::node::EthereumNode;
|
use reth_node_ethereum::node::EthereumNode;
|
||||||
|
use reth_rpc_types::state::EvmOverrides;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
Cli::<RethCliTxpoolExt>::parse()
|
Cli::<RethCliTxpoolExt>::parse()
|
||||||
|
|||||||
Reference in New Issue
Block a user