Make ERC1967Upgrades a library instead of an abstract contract (#4325)

This commit is contained in:
Hadrien Croubois
2023-06-15 22:01:04 +02:00
committed by GitHub
parent 05ef6924ac
commit ff85c7b0eb
11 changed files with 89 additions and 61 deletions

View File

@ -11,7 +11,7 @@ Most of the proxies below are built on an abstract base contract.
In order to avoid clashes with the storage variables of the implementation contract behind a proxy, we use https://eips.ethereum.org/EIPS/eip-1967[EIP1967] storage slots.
- {ERC1967Upgrade}: Internal functions to get and set the storage slots defined in EIP1967.
- {ERC1967Utils}: Internal functions to get and set the storage slots defined in EIP1967.
- {ERC1967Proxy}: A proxy using EIP1967 storage slots. Not upgradeable by default.
There are two alternative ways to add upgradeability to an ERC1967 proxy. Their differences are explained below in <<transparent-vs-uups>>.
@ -60,7 +60,7 @@ The current implementation of this security mechanism uses https://eips.ethereum
{{ERC1967Proxy}}
{{ERC1967Upgrade}}
{{ERC1967Utils}}
== Transparent Proxy