Repository navigation
sc 0.54.0, sdk 0.7.0, chain 0.11.0
·
2753 commits
to master
since this release
- New crate,
multiversx-chain-core, to be used in both framework and Rust VM. It contains common types, flags, and constants that refer to the protocol. - Major SDK/interactor refactor:
- Added support for Chain Simulator in interactors:
- Added chain-simulator-specific endpoints: feed account, advance blocks
- Added a system to set up accounts in the chain simulator from the interactor;
- Support for advancing blocks in the interactor;
- Split SDK crate into:
multiversx-sdk- only contains the specifications of the gateway API, without a mechanism to call the API;multiversx-sdk-http- functionality to call the gateway via reqwest;multiversx-sdk-dapp- functionality to call the gateway via wasm-bindgen, to be used in WebAssembly front-ends;
- Major improvements in the retrieving of transactions and other blockchain data fron the API, many bugs fixed;
- Support for writing integration tests for interactors, using the Chain Simulator;
- Also added support for test-related
chain-simulator-testsfeature flag insc-meta;
- Also added support for test-related
- Interactors on the front-end:
- Interactor type made generic over the gateway API implementation, so that it can be used in both front-end and back-end, with no change in the code base;
- Support for custom random number generation for the front-end;
- Mechanism for fixing file paths in the interactor context;
- Fixed an issue with the account tool;
- Adjusted
sc-meta snippetsfor the new syntax and the chain simulator support;
- Added support for Chain Simulator in interactors:
- Unified syntax:
ReturnsHandledOrErrorresult handler, which can gracefully deal with failed transactions;ReturnsGasUsedresult handler;PassValueresult handler for providing a closure-like context for multi-transaction call/deploy;- More specific back transfer result handlers:
ReturnsBackTransfersEGLD,ReturnsBackTransfersMultiESDT,ReturnsBackTransfersSingleESDT; - Fixed an issue with the update functionality not being general enough;
- Deprecated
prepare_async(), developers can now callrun()directly, asynchronously;
sc-metaimprovements:- New mechanism for detecting and warning about storage writes in readonly endpoints, integrated into the build system;
- Support for referencing the framework via git commit, branch, or tag, to make it easier to try out unreleased versions;
- Support for
default-features; - Better representation in console of the contract/lib folders, as well as better error messages.
- Refactoring of the dependency handling logic.
- Fixed the debugger, following changes in the Rust debug tooling.
ManagedVecsetalways consumes ownership. Preparations for a profound memory management cleanup.- ABI:
titlefield and annotation;- Refactoring.