-
Notifications
You must be signed in to change notification settings - Fork 3.8k
refactor[contracts]: Port OVM_DeployerWhitelist to use ovm-solc #548
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
Conversation
🦋 Changeset detectedLatest commit: 1ad5fd2 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
This contract can't have a constructor that sets the owner? We can't forget to call this on L2 post regenesis
|
ben-chain
left a comment
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.
LGTM!
| const NON_WHITELISTED_DEPLOYER = '0x1234123412341234123412341234123412341234' | ||
| const NON_WHITELISTED_DEPLOYER_KEY = | ||
| '0x0000000000000000000000001234123412341234123412341234123412341234' | ||
| const NON_WHITELISTED_DEPLOYER_KEY = ethers.utils.keccak256( |
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.
Assuming that this can't be easily done because it lives in smock right now, but this should really be a call to a utility function. Took me a sec to realize this was here to handle the new solidity storage layout.
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.
Yeah, very true!
tynes
left a comment
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.
Please add a changeset and is this safe to merge to master?
|
Added changeset. Only place where this might be backwards incompatible is if we slapped the code on the existing storage layout. And users would have to have their accounts "re-whitelisted". I think we already have to do this for each regenesis though, right? |
|
Still wondering about my questions above in #548 (comment), thanks for adding the changeset. Added regenesis comment here: ethereum-optimism/scripts#12 (comment) |
maurelian
left a comment
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.
All good except the one question about allowing arbitrary deployments before initialization.
packages/contracts/test/contracts/OVM/execution/OVM_ExecutionManager/nuisance-gas.spec.ts
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/OVM/predeploys/OVM_DeployerWhitelist.sol
Show resolved
Hide resolved
packages/contracts/contracts/optimistic-ethereum/OVM/predeploys/OVM_DeployerWhitelist.sol
Outdated
Show resolved
Hide resolved
…s/OVM_DeployerWhitelist.sol Co-authored-by: Maurelian <[email protected]>
|
Will approve pending open issue regarding removal of the |
Created #560 to cover this issue. |
maurelian
left a comment
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.
LGTM
* Port OVM_DeployerWhitelist to use ovm-solc * chore[contracts]: Add changeset * Update packages/contracts/contracts/optimistic-ethereum/OVM/predeploys/OVM_DeployerWhitelist.sol Co-authored-by: Maurelian <[email protected]> Co-authored-by: Maurelian <[email protected]>
Description
Aaaand another continuation of #475. Moving
OVM_DeployerWhitelistover toovm-solc. We're touching such critical parts of the contracts that I think it's important we review each contract individually.