From 91f16a7e4751c1dadee93e1212e09baa868fa190 Mon Sep 17 00:00:00 2001 From: Francisco Giordano Date: Thu, 3 Sep 2020 13:49:47 -0300 Subject: [PATCH] Adapt proxies to Contracts conventions (#2345) --- contracts/proxy/Initializable.sol | 2 +- contracts/proxy/Proxy.sol | 6 +++--- contracts/proxy/TransparentUpgradeableProxy.sol | 8 ++++---- contracts/proxy/UpgradeableProxy.sol | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/contracts/proxy/Initializable.sol b/contracts/proxy/Initializable.sol index 6956ac278..75a28a1f1 100644 --- a/contracts/proxy/Initializable.sol +++ b/contracts/proxy/Initializable.sol @@ -15,7 +15,7 @@ pragma solidity >=0.4.24 <0.7.0; * CAUTION: When used with inheritance, manual care must be taken to not invoke a parent initializer twice, or to ensure * that all initializers are idempotent. This is not verified automatically as constructors are by Solidity. */ -contract Initializable { +abstract contract Initializable { /** * @dev Indicates that the contract has been initialized. diff --git a/contracts/proxy/Proxy.sol b/contracts/proxy/Proxy.sol index 69230a5b6..6b618af79 100644 --- a/contracts/proxy/Proxy.sol +++ b/contracts/proxy/Proxy.sol @@ -52,7 +52,7 @@ abstract contract Proxy { * This function does not return to its internall call site, it will return directly to the external caller. */ function _fallback() internal { - _willFallback(); + _beforeFallback(); _delegate(_implementation()); } @@ -76,8 +76,8 @@ abstract contract Proxy { * @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback` * call, or as part of the Solidity `fallback` or `receive` functions. * - * If overriden should call `super._willFallback()`. + * If overriden should call `super._beforeFallback()`. */ - function _willFallback() internal virtual { + function _beforeFallback() internal virtual { } } diff --git a/contracts/proxy/TransparentUpgradeableProxy.sol b/contracts/proxy/TransparentUpgradeableProxy.sol index 55c1d9263..363c2586d 100644 --- a/contracts/proxy/TransparentUpgradeableProxy.sol +++ b/contracts/proxy/TransparentUpgradeableProxy.sol @@ -134,7 +134,7 @@ contract TransparentUpgradeableProxy is UpgradeableProxy { /** * @dev Stores a new address in the EIP1967 admin slot. */ - function _setAdmin(address newAdmin) internal { + function _setAdmin(address newAdmin) private { bytes32 slot = _ADMIN_SLOT; // solhint-disable-next-line no-inline-assembly @@ -144,10 +144,10 @@ contract TransparentUpgradeableProxy is UpgradeableProxy { } /** - * @dev Makes sure the admin cannot access the fallback function. See {Proxy-_willFallback}. + * @dev Makes sure the admin cannot access the fallback function. See {Proxy-_beforeFallback}. */ - function _willFallback() internal override virtual { + function _beforeFallback() internal override virtual { require(msg.sender != _admin(), "TransparentUpgradeableProxy: admin cannot fallback to proxy target"); - super._willFallback(); + super._beforeFallback(); } } diff --git a/contracts/proxy/UpgradeableProxy.sol b/contracts/proxy/UpgradeableProxy.sol index 2ee8faf7f..e031d4121 100644 --- a/contracts/proxy/UpgradeableProxy.sol +++ b/contracts/proxy/UpgradeableProxy.sol @@ -67,7 +67,7 @@ contract UpgradeableProxy is Proxy { /** * @dev Stores a new address in the EIP1967 implementation slot. */ - function _setImplementation(address newImplementation) internal { + function _setImplementation(address newImplementation) private { require(Address.isContract(newImplementation), "UpgradeableProxy: new implementation is not a contract"); bytes32 slot = _IMPLEMENTATION_SLOT;