Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature][Anvil] Support all required RPC methods in Anvil node #24

Open
smiasojed opened this issue Feb 21, 2025 · 0 comments
Open

[Feature][Anvil] Support all required RPC methods in Anvil node #24

smiasojed opened this issue Feb 21, 2025 · 0 comments
Milestone

Comments

@smiasojed
Copy link

smiasojed commented Feb 21, 2025

List all the required RPC Method
Implement the methods
Supports EVM snapshots and rewinds

  • evm_snapshot: Takes a snapshot of the current state of the EVM (blockchain state, contracts, balances, etc.) at a given point in time.
  • evm_revert: Reverts the EVM's state to a previously taken snapshot, undoing all state changes made after that point.

Check if all cheatcodes work correctly
Implement gas reporting

  • Foundry measures gas usage for each function in a contract.
  • It uses GasInspector to track gas consumption during execution.

Implement Transaction Tracing & Debugging

  • Supports debug_traceTransaction (Geth-style traces).
  • Implements EIP-3155 for execution tracing. (Optional)
  • Allows step tracing for detailed execution insights. (Optional)

Modify deployment pattern used in Anvil to work with PVM: deploying contracts using CREATE2, Anvil automatically provides a CREATE2 deployer proxy at a fixed address (0x4e59b44847b379578588920ca78fbf26c0b4956c) to facilitate the deployment of contracts at deterministic addresses.

@smiasojed smiasojed added this to the Basic testing milestone Feb 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant