Skip to content

chore: bump revm to v37 (EIP-8037 state gas)#23191

Open
emmajam wants to merge 7 commits intomainfrom
tip1016
Open

chore: bump revm to v37 (EIP-8037 state gas)#23191
emmajam wants to merge 7 commits intomainfrom
tip1016

Conversation

@emmajam
Copy link
Copy Markdown
Member

@emmajam emmajam commented Mar 24, 2026

Bumps revm to 8891655bb, alloy-evm to ec772db, revm-inspectors to ecc5bc7, and reth to b25459035f.

Adapts reth to the EIP-8037 GasTracker changes:

  • gas_used / gas.used()gas.tx_gas_used() / gas.limit() - gas.remaining()
  • PrecompileOutput now uses GasTracker instead of separate gas_used/gas_refunded fields
  • initial_gasinitial_total_gas in intrinsic gas validation
  • Handle new EVMError::CustomAny variant
  • commit_transaction returns GasOutput instead of u64
  • Temporarily comments out op feature flags for crates not yet compatible

@github-project-automation github-project-automation bot moved this to Backlog in Reth Tracker Mar 24, 2026
@emmajam emmajam changed the base branch from bal-devnet-3 to main March 24, 2026 10:07
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 24, 2026

⚠️ Changelog not found.

A changelog entry is required before merging. We've generated a suggested changelog based on your changes:

Preview
---
reth-engine-tree: patch
reth-evm: patch
reth-node-builder: patch
reth-rpc-convert: patch
reth-rpc-eth-api: patch
reth-rpc-eth-types: patch
reth-rpc: patch
reth-transaction-pool: patch
example-custom-beacon-withdrawals: patch
example-custom-evm: patch
example-precompile-cache: patch
---

Bumped `revm` to git rev `8891655bb`, `alloy-evm` to `ec772db`, and `revm-inspectors` to `ecc5bc7`. Adapted call sites to new revm API (`tx_gas_used()`, `PrecompileOutputExt`/`PrecompileResultExt`, `initial_total_gas`, `EVMError::CustomAny`) and temporarily disabled `op` feature flags pending upstream stabilization.

Add changelog to commit this to your branch.

@rakita rakita changed the title TIP-1016 // EIP-8037 chore: bump revm to 1e1d64d54 (EIP-8037 state gas) Mar 24, 2026
@emmajam emmajam closed this Mar 25, 2026
@github-project-automation github-project-automation bot moved this from Backlog to Done in Reth Tracker Mar 25, 2026
@emmajam emmajam reopened this Mar 25, 2026
@github-project-automation github-project-automation bot moved this from Done to In Progress in Reth Tracker Mar 25, 2026
@emmajam emmajam closed this Apr 11, 2026
@github-project-automation github-project-automation bot moved this from In Progress to Done in Reth Tracker Apr 11, 2026
@rakita rakita reopened this Apr 13, 2026
@github-project-automation github-project-automation bot moved this from Done to In Progress in Reth Tracker Apr 13, 2026
@rakita
Copy link
Copy Markdown
Collaborator

rakita commented Apr 13, 2026

This is main PR for the code that we re-executed and resynced on sepolia

@fgimenez fgimenez changed the title chore: bump revm to 1e1d64d54 (EIP-8037 state gas) chore: bump revm to v37 (EIP-8037 state gas) Apr 13, 2026
mattsse
mattsse previously approved these changes Apr 14, 2026
@emmajam emmajam marked this pull request as ready for review April 14, 2026 10:28
@mattsse mattsse dismissed their stale review April 14, 2026 11:49

this has a subtle bug

{
self.transactions.push(tx);
Ok(Some(gas_used))
Ok(Some(gas_used.tx_gas_used()))
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this right? i believe the only actual consumer of this output is here

let gas_used = match builder.execute_transaction(tx) {

and we might need to change it given Amsterdam changes how block gas limit is calculated?

@mattsse mattsse requested a review from DaniPopes as a code owner April 14, 2026 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

5 participants