Whenever we make any upgrades to the FlowYieldVaultsRequests Solidity contract, we have to be careful and update the FlowYieldVaultsEVM, to point to the proper smart contract address on EVM.
To simplify this step, we can use the ERC1967Proxy, and have the FlowYieldVaultsRequests be a UUPSUpgradeable implementation. This way, we only need to set the FlowYieldVaultsEVM.flowYieldVaultsRequestsAddress Cadence variable once, to point to the ERC1967Proxy.
This will likely simplify any back-end/front-end apps, as only the ERC1967Proxy address will be necessary, and no updates will be needed there.
Some examples:
Whenever we make any upgrades to the
FlowYieldVaultsRequestsSolidity contract, we have to be careful and update the FlowYieldVaultsEVM, to point to the proper smart contract address on EVM.To simplify this step, we can use the
ERC1967Proxy, and have theFlowYieldVaultsRequestsbe aUUPSUpgradeableimplementation. This way, we only need to set theFlowYieldVaultsEVM.flowYieldVaultsRequestsAddressCadence variable once, to point to theERC1967Proxy.This will likely simplify any back-end/front-end apps, as only the
ERC1967Proxyaddress will be necessary, and no updates will be needed there.Some examples:
ERC1967Proxyhttps://evm.flowscan.io/address/0x2880aB155794e7179c9eE2e38200202908C17B43UUPSUpgradeablehttps://evm.flowscan.io/address/0xA2aa501b19aff244D90cc15a4Cf739D2725B5729