-
Notifications
You must be signed in to change notification settings - Fork 253
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: EIP-7840 #1828
feat: EIP-7840 #1828
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nits
imo this is fine because genesis -> chainspec is an additional step anyway |
rn we're keeping Genesis directly on chainspec so we would need to update this to ensure correct hardfork names https://github.com/paradigmxyz/reth/blob/dd4715f5d1b33c695783541fe1b32d07baff8bf5/crates/chainspec/src/spec.rs#L35-L36 |
right, I think for this we should introduce a new chainspec field that we then set for the known networks accordingly and update the from genesis -> chainspec conversion as well |
keep up with alloy PRs - alloy-rs/alloy#1807 - alloy-rs/alloy#1828
Motivation
Implements EIP-7840 ethereum/EIPs#9129
Solution
alloy_eips::eip7840
has 2 structs:BlobScheduleItem
which is the one present in genesis config as per EIP, andBlobParams
which is a new aggregated configuration for blob constants, including an update fraction which is going to change in Prague as well with EIP-7691. All methods of header which need to perform blobfee-related calculations are now acceptingBlobParams
similarly to methods performing eip1559 calculations.ChainConfig
is extended withblob_schedule
which is a mapping fromString
toBlobScheduleItem
. It is not great because this means that we'd need to perform parsing of strings into the actual hardforks names on demand and won't have type-safety during parsing.One way to improve this could be to make
Genesis
andChainConfig
generic over hardforks enum but this might be quite invasive, wdyt @mattssePR Checklist