EI Checker
The EI (environment interface) is a specification of the functionality that the VM exposes for a smart contract.
Historically, this interface has changed. Until now it has only grown, so as to preserve backward compatibility. Changes to the EI are not necessarily tied to VM versions.
On the mainnet we are currently running VM 1.4 with the EI version 1.2.
The future VM 1.5 will run EI version 1.3.
We added a post-build check to make sure that built contracts do not use functionality that is not yet available, unless explicitly stating so.
Contracts can opt for a EI version other than the default one (currently 1.2) via the multicontract.toml
config.
Example:
Unknown block type "codeSnippet", specify a component for it in the `components.types` option
The checker only issues a warning for now. On the next minor release we will make it stop the build.
ManagedVecItem
implementation for arrays
ManagedVec
lists can only contain items that implement a trait called ManagedVecItem
. ManagedVecItem
was not implemented for arrays. It is now.
Github Release link: https://github.com/multiversx/mx-sdk-rs/releases/tag/v0.40.1
As always, feel free to send us feedback or open a topic in our Github Discussions tab and share your thoughts so that the entire MultiversX community can hear you. If you have a great idea, share it with us and let's make it happen by implementing and integrating it in our ecosystem.
Stay Hungry! Stay Foolish!