-
Notifications
You must be signed in to change notification settings - Fork 11.8k
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
Add Proxies from OpenZeppelin SDK #2335
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.
LGTM @frangio! My thoughts on naming:
Proxy
I'd rename to DelegateProxy, as opposed to a ForwardProxy
UpgradeabilityProxy
I'd consider changing to UpgradeableProxy or UpgradeProxy. EIP1967 is tempting, but it's only part of the implementation. For instance, UUPS is 1967 compatible, but uses a different approach where upgradeTo
is not part of the proxy.
AdminUpgradeabilityProxy
I really like the idea of including Transparent on this one. AdminTransparentProxy sounds fine, and I'd also consider TransparentUpgradeProxy (or TransparentUpgradeableProxy).
Last: have you considered moving Initializable
out of /proxy
? Looks odd in there. But I'm not sure where else to place it.
@spalladino |
As mentioned in #2207, we're moving the proxies from OpenZeppelin SDK into the Contracts project so they can 1) be more readily accessible to users, and 2) benefit from the community participation in maintenance and security assessment.
This PR is a simple port of the contracts and their tests from the SDK repo, the main difference being the removal of the "base" and "initializable" distintion (see here) for simplicity.
Some potential renames:
UpgradeabilityProxy
→EIP1967Proxy
(orERC1967Proxy
?)AdminUpgradeabilityProxy
→AdminTransparentProxy