Open antazoey opened 2 years ago
Gets me thinking if the cached addresses need some additional information to them, maybe a structure more like this (in ethpm-types
):
class ContractType(...):
abi: ...
...
immutable: bool = True
proxyInfo: Optional[ProxyInfo] = None
Where ProxyInfo
is like this:
class ProxyType(enum.Enum):
EIP1167 = "eip1167"
...
class ProxyInfo(...):
type: ProxyType = ProxyType.EIP1167
implementation: AddressType
Overview
Detect if a contract's type can be updated or deleted from upgradeable or selfdestructed designs and update the contract_type in the
chain.contracts
cache.Specification
TBD
Dependencies
https://github.com/ApeWorX/ape/pull/712#pullrequestreview-976042673