-
Notifications
You must be signed in to change notification settings - Fork 3.3k
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
op-node: flexible L2 genesis generation #8102
Conversation
Allow for the `op-node` L2 genesis generation to use either hardhat artifacts or the `.deploy` L1Deployments JSON file that is created by the solidity deployment script. While adding extra logic, this makes genesis generation much easier to be consumed by the solidity scripts. It also sets up the ability to deprecate the need for maintaining hardhat deploy style artifacts. This will allow us to remove a lot of solidity code and remove the need to call `sync()` to generate the artifacts. The artifacts make less sense now, especially since it is planned to have one set of implementation contracts for the entire superchain. There isn't as much of a need to keep around artifacts for many contracts separated by network when they are shared between different L2s.
@tynes This should be really helpful but it would be great if we have some documents about using it. |
Codecov Report
@@ Coverage Diff @@
## develop #8102 +/- ##
===========================================
- Coverage 45.48% 39.08% -6.40%
===========================================
Files 171 95 -76
Lines 7214 3006 -4208
Branches 1150 624 -526
===========================================
- Hits 3281 1175 -2106
+ Misses 3810 1754 -2056
+ Partials 123 77 -46
Flags with carried forward coverage won't be shown. Click here to find out more. |
@kaliubuntu0206 I added a description to the source code, we have docs here |
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.
What's the reason for removing the legacy options here? Otherwise LGTM
We don't have any legacy artifacts at this point left in the monorepo and all new chains should be deployed with the solidity scripts instead of the hardhat deploy scripts. The solidity scripts create modern artifacts |
Description
Allow for the
op-node
L2 genesis generation to use eitherhardhat artifacts or the
.deploy
L1Deployments JSON filethat is created by the solidity deployment script. While adding
extra logic, this makes genesis generation much easier to be
consumed by the solidity scripts. It also sets up the ability
to deprecate the need for maintaining hardhat deploy style
artifacts. This will allow us to remove a lot of solidity code
and remove the need to call
sync()
to generate the artifacts.The artifacts make less sense now, especially since it is planned
to have one set of implementation contracts for the entire superchain.
There isn't as much of a need to keep around artifacts for many
contracts separated by network when they are shared between
different L2s.