-
Notifications
You must be signed in to change notification settings - Fork 631
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: Canyon
hardfork behind optimism
feature flag
#871
Conversation
} | ||
} | ||
#[cfg(feature = "optimism")] | ||
define_spec_id!( |
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.
I like the idea of having a separate SpecId structure, but it isn't best to wrap it inside macro.
You could do:
/// Specification IDs and their activation block.
///
/// See: [Ethereum Execution Specs](https://github.com/ethereum/execution-specs)
#[cfg(feature = "optimism")]
#[repr(u8)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, Ord, PartialOrd, enumn::N)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub enum SpecId {
...
}
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.
Pulled it back out
3f83583
to
5b30bb0
Compare
5b30bb0
to
a9f94be
Compare
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.
nice!
* Add `Canyon` hardfork behind `optimism` feature flag * Remove macro
* Add `Canyon` hardfork behind `optimism` feature flag * Remove macro
Just to note here, I created this change on the top of the 1609e07 commit. This "parent" commit is used inside reth and the idea is to freeze revm as there are some breaking revm changes so it would be less painful. |
Overview
Adds the
Canyon
hardfork behind theoptimism
feature flag, and adds a macro to define theSpecId
enum to separate the ordering of hardforks between L1 andoptimism
.The
Canyon
hardfork does not implement any EVM changes, though it does implicitly enableShanghai
.More information about
Canyon
can be found in the upstream tracking issue: ethereum-optimism/optimism#7452