Add recommendation to initialize all contracts that use Initializable
This commit is contained in:
@ -13,6 +13,22 @@ pragma solidity ^0.8.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.
|
||||
*
|
||||
* [CAUTION]
|
||||
* ====
|
||||
* Avoid leaving a contract uninitialized.
|
||||
*
|
||||
* An uninitialized contract can be used in certain kinds of exploits since it may allow an attacker to take control of
|
||||
* the contract. This includes the implementation contract behind a proxy. You can either invoke the initializer
|
||||
* manually, independently of initialization of the proxy, or you can include a constructor to automatically mark it as
|
||||
* initialized when it is deployed:
|
||||
*
|
||||
* [.hljs-theme-light.nopadding]
|
||||
* ```
|
||||
* /// @custom:oz-upgrades-unsafe-allow constructor
|
||||
* constructor() initializer {}
|
||||
* ```
|
||||
* ====
|
||||
*/
|
||||
abstract contract Initializable {
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user