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

feat: add pre-block EIP-4788 beacon root contract call #4438

Closed
wants to merge 17 commits into from

Conversation

Rjected
Copy link
Member

@Rjected Rjected commented Aug 31, 2023

This implements the Block Processing portion of EIP-4788

TODO:

  • fix tests
  • add test for pre block call at genesis
  • add test for pre block call past genesis

@Rjected Rjected added C-enhancement New feature or request A-execution Related to the Execution and EVM M-eip This change relates to the implementation of an EIP E-cancun Related to the Cancun network upgrade labels Aug 31, 2023
@codecov
Copy link

codecov bot commented Aug 31, 2023

Codecov Report

Merging #4438 (14456e2) into main (1a40dae) will decrease coverage by 0.04%.
Report is 8 commits behind head on main.
The diff coverage is 92.20%.

Impacted file tree graph

Files Changed Coverage Δ
crates/consensus/auto-seal/src/lib.rs 0.00% <ø> (ø)
crates/interfaces/src/executor.rs 100.00% <ø> (ø)
crates/primitives/src/constants/mod.rs 100.00% <ø> (ø)
crates/revm/src/executor.rs 90.93% <91.69%> (+0.64%) ⬆️
crates/revm/revm-primitives/src/config.rs 91.27% <100.00%> (+0.11%) ⬆️
crates/revm/revm-primitives/src/env.rs 45.85% <100.00%> (+4.73%) ⬆️

... and 28 files with indirect coverage changes

Flag Coverage Δ
integration-tests 16.57% <0.00%> (-0.13%) ⬇️
unit-tests 63.84% <92.20%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
reth binary 29.61% <ø> (ø)
blockchain tree 83.52% <ø> (ø)
pipeline 90.47% <ø> (ø)
storage (db) 74.81% <ø> (ø)
trie 94.88% <ø> (ø)
txpool 47.59% <ø> (-1.01%) ⬇️
networking 77.42% <ø> (-0.16%) ⬇️
rpc 57.40% <ø> (-0.16%) ⬇️
consensus 63.42% <ø> (ø)
revm 35.53% <92.20%> (+3.79%) ⬆️
payload builder 6.37% <ø> (ø)
primitives 86.16% <ø> (-0.04%) ⬇️

Comment on lines +215 to +223
/// This can be used in case there are existing changes in [PostState] that need to be
/// applied before executing transactions.
/// TODO: clarify this ^
pub fn execute_transactions_with_post_state(
&mut self,
block: &Block,
total_difficulty: U256,
senders: Option<Vec<Address>>,
senders: Vec<Address>,
mut post_state: PostState,
Copy link
Member

Choose a reason for hiding this comment

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

note will conflcit with #3512

Copy link
Member Author

Choose a reason for hiding this comment

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

#4457 for new version

@Rjected
Copy link
Member Author

Rjected commented Sep 5, 2023

Closing in favor of #4457

@Rjected Rjected closed this Sep 5, 2023
@onbjerg onbjerg deleted the dan/eip-4788-contract-call branch December 15, 2023 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-execution Related to the Execution and EVM C-enhancement New feature or request E-cancun Related to the Cancun network upgrade M-eip This change relates to the implementation of an EIP
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants