mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 19:09:54 +00:00
chore: bump revm 6.0 (#6638)
This commit is contained in:
32
Cargo.lock
generated
32
Cargo.lock
generated
@ -173,7 +173,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=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rlp",
|
"alloy-rlp",
|
||||||
@ -183,7 +183,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=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types",
|
"alloy-rpc-types",
|
||||||
@ -205,7 +205,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=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-genesis",
|
"alloy-genesis",
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
@ -266,7 +266,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-engine-types"
|
name = "alloy-rpc-engine-types"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rlp",
|
"alloy-rlp",
|
||||||
@ -281,7 +281,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "alloy-rpc-trace-types"
|
name = "alloy-rpc-trace-types"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/alloy-rs/alloy?rev=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-types",
|
"alloy-rpc-types",
|
||||||
@ -292,7 +292,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=b9dd518#b9dd518b12efd27ab706ae6ffa9ad6b05df451c7"
|
source = "git+https://github.com/alloy-rs/alloy?rev=5062eaf#5062eaf1af2733a7115bc0536c9708a42bfb53ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rlp",
|
"alloy-rlp",
|
||||||
@ -7022,9 +7022,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "revm"
|
name = "revm"
|
||||||
version = "5.0.0"
|
version = "6.0.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "266f86bdefa6dac07d92e2f5c37d7d183f2575b2f9e0ee9cba9402dfde912524"
|
checksum = "8154cec6f8c4f543a379cf00a839cf47c67f405e8a92361a7791c55196c9b7e2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"auto_impl",
|
"auto_impl",
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
@ -7037,14 +7037,16 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "revm-inspectors"
|
name = "revm-inspectors"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://github.com/paradigmxyz/evm-inspectors?rev=8f17f34#8f17f34da5fec043378e689bb9e4169453371c38"
|
source = "git+https://github.com/paradigmxyz/evm-inspectors?rev=ac63f06#ac63f069977d04cd68d96fe7ad9dd4b74ceab44e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"alloy-rpc-trace-types",
|
"alloy-rpc-trace-types",
|
||||||
"alloy-rpc-types",
|
"alloy-rpc-types",
|
||||||
"alloy-sol-types",
|
"alloy-sol-types",
|
||||||
|
"anstyle",
|
||||||
"boa_engine",
|
"boa_engine",
|
||||||
"boa_gc",
|
"boa_gc",
|
||||||
|
"colorchoice",
|
||||||
"revm",
|
"revm",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_json",
|
"serde_json",
|
||||||
@ -7053,9 +7055,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "revm-interpreter"
|
name = "revm-interpreter"
|
||||||
version = "2.1.0"
|
version = "3.0.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9a80b516cc706630e604e2fd47c281501d2fb222712be4328921361388b7d2df"
|
checksum = "dff72cc825a9c44b28749a6181e21fa85ba45ac8d4b5732a7ded165a770ecbd9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"revm-primitives",
|
"revm-primitives",
|
||||||
"serde",
|
"serde",
|
||||||
@ -7063,9 +7065,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "revm-precompile"
|
name = "revm-precompile"
|
||||||
version = "4.0.0"
|
version = "4.0.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "e6912fafe7f70a264ec5895875ce2f2d0621a39263844280c9ee7f85e35bbb9e"
|
checksum = "186373108c0a46e47368752372cc721d4b0ab4886d6786d180ef9dbf4dd71865"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aurora-engine-modexp",
|
"aurora-engine-modexp",
|
||||||
"blst",
|
"blst",
|
||||||
@ -7081,9 +7083,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "revm-primitives"
|
name = "revm-primitives"
|
||||||
version = "2.0.0"
|
version = "2.0.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4b3683a40f1e94e7389c8e81e5f26bb5d30875ed0b48ab07985ec32eb6d6c712"
|
checksum = "093dc5df253eececaf03ffe0c12d3fd7ce5dea3342bc9de109d1aac2647ffa81"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"alloy-primitives",
|
"alloy-primitives",
|
||||||
"auto_impl",
|
"auto_impl",
|
||||||
|
|||||||
16
Cargo.toml
16
Cargo.toml
@ -170,9 +170,9 @@ reth-transaction-pool = { path = "crates/transaction-pool" }
|
|||||||
reth-trie = { path = "crates/trie" }
|
reth-trie = { path = "crates/trie" }
|
||||||
|
|
||||||
# revm
|
# revm
|
||||||
revm = { version = "5.0", features = ["std", "secp256k1"], default-features = false }
|
revm = { version = "6.0", features = ["std", "secp256k1"], default-features = false }
|
||||||
revm-primitives = { version = "2.0", features = ["std"], default-features = false }
|
revm-primitives = { version = "2.0", features = ["std"], default-features = false }
|
||||||
revm-inspectors = { git = "https://github.com/paradigmxyz/evm-inspectors", rev = "8f17f34" }
|
revm-inspectors = { git = "https://github.com/paradigmxyz/evm-inspectors", rev = "ac63f06" }
|
||||||
|
|
||||||
# eth
|
# eth
|
||||||
alloy-chains = { version = "0.1", feature = ["serde", "rlp", "arbitrary"] }
|
alloy-chains = { version = "0.1", feature = ["serde", "rlp", "arbitrary"] }
|
||||||
@ -181,12 +181,12 @@ alloy-dyn-abi = "0.6"
|
|||||||
alloy-sol-types = "0.6"
|
alloy-sol-types = "0.6"
|
||||||
alloy-rlp = "0.3"
|
alloy-rlp = "0.3"
|
||||||
alloy-trie = "0.2"
|
alloy-trie = "0.2"
|
||||||
alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-rpc-types = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
alloy-rpc-trace-types = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-rpc-trace-types = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
alloy-rpc-engine-types = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-rpc-engine-types = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-genesis = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-node-bindings = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "b9dd518" }
|
alloy-eips = { git = "https://github.com/alloy-rs/alloy", rev = "5062eaf" }
|
||||||
ethers-core = { version = "2.0", default-features = false }
|
ethers-core = { version = "2.0", default-features = false }
|
||||||
ethers-providers = { version = "2.0", default-features = false }
|
ethers-providers = { version = "2.0", default-features = false }
|
||||||
ethers-signers = { version = "2.0", default-features = false }
|
ethers-signers = { version = "2.0", default-features = false }
|
||||||
|
|||||||
@ -55,7 +55,7 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[ignore]
|
#[ignore]
|
||||||
fn test_fill_cfg_and_block_env() {
|
fn test_fill_cfg_and_block_env() {
|
||||||
let mut cfg_env = CfgEnvWithHandlerCfg::new(CfgEnv::default(), SpecId::LATEST);
|
let mut cfg_env = CfgEnvWithHandlerCfg::new_with_spec_id(CfgEnv::default(), SpecId::LATEST);
|
||||||
let mut block_env = BlockEnv::default();
|
let mut block_env = BlockEnv::default();
|
||||||
let header = Header::default();
|
let header = Header::default();
|
||||||
let chain_spec = ChainSpec::default();
|
let chain_spec = ChainSpec::default();
|
||||||
|
|||||||
@ -56,7 +56,7 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[ignore]
|
#[ignore]
|
||||||
fn test_fill_cfg_and_block_env() {
|
fn test_fill_cfg_and_block_env() {
|
||||||
let mut cfg_env = CfgEnvWithHandlerCfg::new(CfgEnv::default(), SpecId::LATEST);
|
let mut cfg_env = CfgEnvWithHandlerCfg::new_with_spec_id(CfgEnv::default(), SpecId::LATEST);
|
||||||
let mut block_env = BlockEnv::default();
|
let mut block_env = BlockEnv::default();
|
||||||
let header = Header::default();
|
let header = Header::default();
|
||||||
let chain_spec = ChainSpec::default();
|
let chain_spec = ChainSpec::default();
|
||||||
|
|||||||
@ -208,14 +208,14 @@ impl PayloadBuilderAttributes for EthPayloadBuilderAttributes {
|
|||||||
Ok(Self::new(parent, attributes))
|
Ok(Self::new(parent, attributes))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn parent(&self) -> B256 {
|
|
||||||
self.parent
|
|
||||||
}
|
|
||||||
|
|
||||||
fn payload_id(&self) -> PayloadId {
|
fn payload_id(&self) -> PayloadId {
|
||||||
self.id
|
self.id
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn parent(&self) -> B256 {
|
||||||
|
self.parent
|
||||||
|
}
|
||||||
|
|
||||||
fn timestamp(&self) -> u64 {
|
fn timestamp(&self) -> u64 {
|
||||||
self.timestamp
|
self.timestamp
|
||||||
}
|
}
|
||||||
@ -279,7 +279,7 @@ impl PayloadBuilderAttributes for EthPayloadBuilderAttributes {
|
|||||||
blob_excess_gas_and_price,
|
blob_excess_gas_and_price,
|
||||||
};
|
};
|
||||||
|
|
||||||
(CfgEnvWithHandlerCfg::new(cfg, spec_id), block_env)
|
(CfgEnvWithHandlerCfg::new_with_spec_id(cfg, spec_id), block_env)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -178,7 +178,7 @@ where
|
|||||||
self.db_mut().set_state_clear_flag(state_clear_flag);
|
self.db_mut().set_state_clear_flag(state_clear_flag);
|
||||||
|
|
||||||
let mut cfg: CfgEnvWithHandlerCfg =
|
let mut cfg: CfgEnvWithHandlerCfg =
|
||||||
CfgEnvWithHandlerCfg::new(self.evm.cfg().clone(), self.evm.spec_id());
|
CfgEnvWithHandlerCfg::new_with_spec_id(self.evm.cfg().clone(), self.evm.spec_id());
|
||||||
EvmConfig::fill_cfg_and_block_env(
|
EvmConfig::fill_cfg_and_block_env(
|
||||||
&mut cfg,
|
&mut cfg,
|
||||||
self.evm.block_mut(),
|
self.evm.block_mut(),
|
||||||
|
|||||||
@ -91,6 +91,8 @@ pub fn from_block_full(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Converts from a [reth_primitives::SealedHeader] to a [reth_rpc_types::BlockNumberOrTag]
|
/// Converts from a [reth_primitives::SealedHeader] to a [reth_rpc_types::BlockNumberOrTag]
|
||||||
|
///
|
||||||
|
/// Note: This does not set the `totalDifficulty` field.
|
||||||
pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader) -> Header {
|
pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader) -> Header {
|
||||||
let (header, hash) = primitive_header.split();
|
let (header, hash) = primitive_header.split();
|
||||||
let PrimitiveHeader {
|
let PrimitiveHeader {
|
||||||
@ -138,6 +140,7 @@ pub fn from_primitive_with_hash(primitive_header: reth_primitives::SealedHeader)
|
|||||||
blob_gas_used: blob_gas_used.map(U64::from),
|
blob_gas_used: blob_gas_used.map(U64::from),
|
||||||
excess_blob_gas: excess_blob_gas.map(U64::from),
|
excess_blob_gas: excess_blob_gas.map(U64::from),
|
||||||
parent_beacon_block_root,
|
parent_beacon_block_root,
|
||||||
|
total_difficulty: None,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -161,7 +164,9 @@ fn from_block_with_transactions(
|
|||||||
transactions: BlockTransactions,
|
transactions: BlockTransactions,
|
||||||
) -> Block {
|
) -> Block {
|
||||||
let uncles = block.ommers.into_iter().map(|h| h.hash_slow()).collect();
|
let uncles = block.ommers.into_iter().map(|h| h.hash_slow()).collect();
|
||||||
let header = from_primitive_with_hash(block.header.seal(block_hash));
|
let mut header = from_primitive_with_hash(block.header.seal(block_hash));
|
||||||
|
header.total_difficulty = Some(total_difficulty);
|
||||||
|
|
||||||
let withdrawals = if header.withdrawals_root.is_some() {
|
let withdrawals = if header.withdrawals_root.is_some() {
|
||||||
block
|
block
|
||||||
.withdrawals
|
.withdrawals
|
||||||
@ -169,11 +174,11 @@ fn from_block_with_transactions(
|
|||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
};
|
};
|
||||||
|
|
||||||
Block {
|
Block {
|
||||||
header,
|
header,
|
||||||
uncles,
|
uncles,
|
||||||
transactions,
|
transactions,
|
||||||
total_difficulty: Some(total_difficulty),
|
|
||||||
size: Some(U256::from(block_length)),
|
size: Some(U256::from(block_length)),
|
||||||
withdrawals,
|
withdrawals,
|
||||||
other: Default::default(),
|
other: Default::default(),
|
||||||
@ -193,7 +198,6 @@ pub fn uncle_block_from_header(header: PrimitiveHeader) -> Block {
|
|||||||
transactions: BlockTransactions::Uncle,
|
transactions: BlockTransactions::Uncle,
|
||||||
withdrawals: Some(vec![]),
|
withdrawals: Some(vec![]),
|
||||||
size,
|
size,
|
||||||
total_difficulty: None,
|
|
||||||
other: Default::default(),
|
other: Default::default(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -301,12 +301,7 @@ where
|
|||||||
PendingBlockEnvOrigin::DerivedFromLatest(latest)
|
PendingBlockEnvOrigin::DerivedFromLatest(latest)
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut cfg = CfgEnvWithHandlerCfg::new(CfgEnv::default(), SpecId::LATEST);
|
let mut cfg = CfgEnvWithHandlerCfg::new_with_spec_id(CfgEnv::default(), SpecId::LATEST);
|
||||||
|
|
||||||
#[cfg(feature = "optimism")]
|
|
||||||
{
|
|
||||||
cfg.handler_cfg.is_optimism = self.provider().chain_spec().is_optimism();
|
|
||||||
}
|
|
||||||
|
|
||||||
let mut block_env = BlockEnv::default();
|
let mut block_env = BlockEnv::default();
|
||||||
// Note: for the PENDING block we assume it is past the known merge block and thus this will
|
// Note: for the PENDING block we assume it is past the known merge block and thus this will
|
||||||
|
|||||||
2
crates/rpc/rpc/src/eth/cache/mod.rs
vendored
2
crates/rpc/rpc/src/eth/cache/mod.rs
vendored
@ -513,7 +513,7 @@ where
|
|||||||
this.action_task_spawner.spawn_blocking(Box::pin(async move {
|
this.action_task_spawner.spawn_blocking(Box::pin(async move {
|
||||||
// Acquire permit
|
// Acquire permit
|
||||||
let _permit = rate_limiter.acquire().await;
|
let _permit = rate_limiter.acquire().await;
|
||||||
let mut cfg = CfgEnvWithHandlerCfg::new(
|
let mut cfg = CfgEnvWithHandlerCfg::new_with_spec_id(
|
||||||
CfgEnv::default(),
|
CfgEnv::default(),
|
||||||
SpecId::LATEST,
|
SpecId::LATEST,
|
||||||
);
|
);
|
||||||
|
|||||||
@ -31,7 +31,7 @@ pub trait EvmEnvProvider: Send + Sync {
|
|||||||
where
|
where
|
||||||
EvmConfig: ConfigureEvmEnv,
|
EvmConfig: ConfigureEvmEnv,
|
||||||
{
|
{
|
||||||
let mut cfg = CfgEnvWithHandlerCfg::new(CfgEnv::default(), SpecId::LATEST);
|
let mut cfg = CfgEnvWithHandlerCfg::new_with_spec_id(CfgEnv::default(), SpecId::LATEST);
|
||||||
let mut block_env = BlockEnv::default();
|
let mut block_env = BlockEnv::default();
|
||||||
self.fill_env_with_header::<EvmConfig>(&mut cfg, &mut block_env, header, evm_config)?;
|
self.fill_env_with_header::<EvmConfig>(&mut cfg, &mut block_env, header, evm_config)?;
|
||||||
Ok((cfg, block_env))
|
Ok((cfg, block_env))
|
||||||
|
|||||||
@ -166,7 +166,7 @@ impl PayloadBuilderAttributes for CustomPayloadBuilderAttributes {
|
|||||||
blob_excess_gas_and_price,
|
blob_excess_gas_and_price,
|
||||||
};
|
};
|
||||||
|
|
||||||
(CfgEnvWithHandlerCfg::new(cfg, spec_id), block_env)
|
(CfgEnvWithHandlerCfg::new_with_spec_id(cfg, spec_id), block_env)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user