Can the EVM update deprecate operations of older smart contracts, making these contracts non-operative? If so, what are the solutions to upgrade these smart contracts to the new version of the EVM if they cannot be modified directly (due to immutability)?
-
2Possible duplicate of Upgradeable smart contracts – Richard Horrocks Jul 10 '17 at 18:03
-
This is a corollary of the question you flagged as duplicate. This one relates to the situation where the contract owner does not wish to upgrade the contract. This question is: will an upgrade to the platform force the owner to upgrade (or deprecate, or delete) the contract. – dcorking Jul 11 '17 at 11:52
Yes, and in fact some already have in the past due to changes to the gas schedule.
Designing a contract to be upgradeable like xgabrielx said is a good practice due to unforeseen changes and problems like this.
Well yes, over time some functions might be depricated (as is standard procedure, not limited to EVM).
(1) You deploy a new contract, telling users to start using that instead.
(2) You have a fronting contract which points to the "latest" version of you main contract.
(3) Use ENS to mycontract.eth and point it to the latest version of your contract.