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

EIP-7702 and EIP-7251 #7459

Merged
merged 567 commits into from
Oct 7, 2024
Merged

EIP-7702 and EIP-7251 #7459

merged 567 commits into from
Oct 7, 2024

Conversation

ak88
Copy link
Contributor

@ak88 ak88 commented Sep 18, 2024

https://eips.ethereum.org/EIPS/eip-7702
https://eips.ethereum.org/EIPS/eip-7251 (consolidations)

Changes

Adds an authorization_list to tx that is used to set delegations on EOAs in the form of 0xef0100 || address

When the EOA is called it is delegated to the address, in similar fashion as a DELEGATECALL.
EVM opcodes like EXTCODESIZE, EXTCODECOPY etc. are affected by a delegation.

Other things to note:

  • 7702 delegations and refunds will happen regardless of EVM execution outcome.
  • Account access gas is changed to count double if delegated. Once for the EOA and once for the delegation address.

Types of changes

What types of changes does your code introduce?

  • Bugfix (a non-breaking change that fixes an issue)
  • New feature (a non-breaking change that adds functionality)
  • Breaking change (a change that causes existing functionality not to work as expected)
  • Optimization
  • Refactoring
  • Documentation update
  • Build-related changes
  • Other: Description

Testing

Requires testing

  • Yes
  • No

If yes, did you write tests?

  • Yes
  • No

Notes on testing

Optional. Remove if not applicable.

Documentation

Requires documentation update

  • Yes
  • No

If yes, link the PR to the docs update or the issue with the details labeled docs. Remove if not applicable.

Requires explanation in Release Notes

  • Yes
  • No

If yes, fill in the details here. Remove if not applicable.

Remarks

Optional. Remove if not applicable.

MarekM25 and others added 30 commits May 8, 2024 22:44
Co-authored-by: Ben Adams <thundercat@illyriad.co.uk>
Co-authored-by: Kamil Chodoła <43241881+kamilchodola@users.noreply.github.com>
Co-authored-by: nethermind-machine <76107542+nethermind-machine@users.noreply.github.com>
Co-authored-by: LukaszRozmej <LukaszRozmej@users.noreply.github.com>
Co-authored-by: Daniel Kyutae Jung <45947071+pxyxyrus@users.noreply.github.com>
Co-authored-by: Ahmad Bitar <33181301+smartprogrammer93@users.noreply.github.com>
Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
Co-authored-by: Amirul Ashraf <asdacap@gmail.com>
Co-authored-by: yerke26 <160018032+yerke26@users.noreply.github.com>
Co-authored-by: yeerke <ezhumalin01@gmail.com>
Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>
Co-authored-by: Alexey <me@flcl.me>
Co-authored-by: Nikita Mescheryakov <root@nikitam.io>
Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>
Co-authored-by: Marcos Antonio Maceo <35319980+stdevMac@users.noreply.github.com>
Co-authored-by: ak88 <anders@nethermind.io>
Co-authored-by: Yaroslav Kukharuk <i.kukharuk@gmail.com>
Co-authored-by: Marek Moraczyński <marekm2504@gmail.com>
Co-authored-by: Ahmad Bitar <amb014@diyarme.com>
Co-authored-by: Oleg Jakushkin <oleg.jakushkin@gmail.com>
Co-authored-by: Kamil Chodoła <kamil@nethermind.io>
Co-authored-by: healthyyyoung <healthyoung@proton.me>
@ak88 ak88 requested a review from LukaszRozmej October 2, 2024 10:27
@ak88 ak88 requested a review from MarekM25 October 2, 2024 11:32

requestsList.AddRange(_depositsProcessor.ProcessDeposits(block, receipts, spec));
requestsList.AddRange(_withdrawalRequestsProcessor.ReadWithdrawalRequests(block, state, spec));
using ArrayPoolList<ConsensusRequest> requestsList = new(receipts.Length * 2);
Copy link
Contributor

Choose a reason for hiding this comment

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

hmm, but block.Requests.Length will give us the correct capacity besides Invalid blocks, maybe block.Requests.Length *2 then?

receipts are not related to requests. We can have 3 receipts and 16 requests

Copy link
Member

@LukaszRozmej LukaszRozmej left a comment

Choose a reason for hiding this comment

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

Few more small things

@ak88 ak88 merged commit e0c4a59 into master Oct 7, 2024
67 checks passed
@ak88 ak88 deleted the pectra_fix_7702_after_merge branch October 7, 2024 14:00
rjnrohit added a commit that referenced this pull request Oct 10, 2024
Co-authored-by: MarekM25 <marekm2504@gmail.com>
Co-authored-by: Rohit Ranjan <rohitrjn629@gmail.com>
Co-authored-by: Ben Adams <thundercat@illyriad.co.uk>
Co-authored-by: Kamil Chodoła <43241881+kamilchodola@users.noreply.github.com>
Co-authored-by: nethermind-machine <76107542+nethermind-machine@users.noreply.github.com>
Co-authored-by: LukaszRozmej <LukaszRozmej@users.noreply.github.com>
Co-authored-by: Daniel Kyutae Jung <45947071+pxyxyrus@users.noreply.github.com>
Co-authored-by: Ahmad Bitar <33181301+smartprogrammer93@users.noreply.github.com>
Co-authored-by: Lukasz Rozmej <lukasz.rozmej@gmail.com>
Co-authored-by: Amirul Ashraf <asdacap@gmail.com>
Co-authored-by: yerke26 <160018032+yerke26@users.noreply.github.com>
Co-authored-by: yeerke <ezhumalin01@gmail.com>
Co-authored-by: Ruben Buniatyan <rubo@users.noreply.github.com>
Co-authored-by: Alexey <me@flcl.me>
Co-authored-by: Nikita Mescheryakov <root@nikitam.io>
Co-authored-by: Lautaro Emanuel <31224949+emlautarom1@users.noreply.github.com>
Co-authored-by: Marcos Antonio Maceo <35319980+stdevMac@users.noreply.github.com>
Co-authored-by: Yaroslav Kukharuk <i.kukharuk@gmail.com>
Co-authored-by: Ahmad Bitar <amb014@diyarme.com>
Co-authored-by: Oleg Jakushkin <oleg.jakushkin@gmail.com>
Co-authored-by: Kamil Chodoła <kamil@nethermind.io>
Co-authored-by: healthyyyoung <healthyoung@proton.me>
Co-authored-by: Ahmad Bitar <smartprogrammer@windowslive.com>
@rubo rubo mentioned this pull request Dec 14, 2024
10 tasks
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

Successfully merging this pull request may close these issues.

6 participants