Releases: multiversx/mx-sdk-rs
Releases · multiversx/mx-sdk-rs
sc 0.57.1, sdk 0.9.1
- Retrieve token properties using
get_token_properties
; - Fixed URIs for
esdt_metadata_recreate
andesdt_metadata_update
; sc-meta
:- Fixed
test --chain-simulator
used for running chain-simulator interactor tests; - Added extra checks for argument validity.
- Fixed
- Interactor:
- Fixed
setStateOverwrite
; - Fixed
ReturnsTxHash
result handler.
- Fixed
- Enhanced
checkState
to allow partial key verification.
sc 0.57.0, codec 0.22.0, chain 0.14.0, sdk 0.9.0, scenario-format 0.23.1
- Newer compiler support:
- Dropped support for Rust compiler versions older than 1.83.
- Support and optimizations for using Rust 1.85.
sc-meta
:- Windows support.
- Removed the concept of a "main" contract configuration.
- Using
typenum
/generic-array
instead of const generics/macros for:- ManagedVec payloads;
- ManagedDecimal const decimals.
- ManagedDecimal - more arithmetic operator implementations for combinations of const + var decimals.
- ManagedVecItem can now be derived for enums with fields.
- Codec and ABI support for bitflags.
- Storage mappers:
- New storage mapper:
TimelockMapper
; - Renamed source type and object.
- New storage mapper:
ESDTTransferRole
:- Reintroduced role after being accidentally dropped;
- Added a
token_has_transfer_role
method for checking if it is set on a token, as a workaround until Barnard release.
- Unified syntax - result handler for back transfers, which resets previous back transfers (
ReturnsBackTransfersReset
). - SDK:
- Chain simulator - set state overwrite support;
Wallet
get_shard
method.
- Debugger - improved mandos error messages.
- Dependencies upgraded.
sc 0.56.1, chain 0.13.1, sdk 0.8.2
- Allow setting gas for callback for direct transfers.
- NestedEncode for interaction types: TestAddress, TestScAddress and TestTokenIdentifier.
- Bugfix: pretty representation for ManagedAddress when debugging.
- Upgrade dependency: ruplacer.
sc 0.56.0, chain 0.13.0, sdk 0.8.1
- Rust VM support for readonly sync calls.
ManagedMapEncoded
, a map type that can use any key or value types that are serializable.ManagedDecimal
implementsManagedVecItem
.- Bugfixes, improvements:
- Fixed a bug regarding the ESDT roles VM hook;
- Pretty representation for ManagedBuffer and other string-like types when debugging;
- API fix of an issue that was preventing set state in chain simulator;
- Snippets generator fixes involving the crate path and the upgrade result handler.
sc 0.55.0, codec 0.21.2, chain 0.12.0, sdk 0.8.0
- Integrating Spica changes into the framework:
- EGLD+ESDT multi-transfers are now possible:
- changed the handling of call values: EGLD is treated almost the same as an ESDT in
all_transfers
andmulti_egld_or_esdt
, old ESDT methods are given some protection against unexpected scenarios - changed the tx unified syntax for sending EGLD+ESDT from contracts, interactors and tests;
- support in the Rust VM.
- changed the handling of call values: EGLD is treated almost the same as an ESDT in
- New built-in functions in the
ESDTSystemSCProxy
:ESDTModifyRoyalties
,SDTSetNewURIs
,ESDTModifyCreator
,ESDTMetaDataRecreate
,ESDTMetaDataUpdate
.
- EGLD+ESDT multi-transfers are now possible:
- Interactor support for "set state" on the chain simulator.
- Fixed ownership for ManagedVec iterators, specifically reference iterators only produce references to the items.
- Syntax cleanup:
#[payable]
now allowed instead of#[payable("*")]
;register_promise
allows callback, without calling a function on destination.
- Refactoring and optimizations:
- Simplified the callback selector;
- Performance improvements in ManagedVec iterators;
- Removed some unnecessary bound checks in
multi_esdt
.
sc 0.54.5
ManagedVec
- deprecatedsort
and guarded it by thealloc
feature, since it uses the allocator.sc-meta
- versioning fix;
- interactor generator fix.
- Interactors - fixed code metadata on deploy.
sc 0.54.4
sc-meta
install debugger
CLI that prepares VSCode extension for debugging;- fixed a crash involving templates and installers.
- Deprecated
#[derive(TypeAbi)]
and added an additional warning in the macro.
sc 0.54.3
#[storage_mapper_from_address]
fixes for:FungibleTokenMapper
,NonFungibleTokenMapper
,TokenAttributesMapper
,UniqueIdMapper
,UserMapper
,AddressToIdMapper
.
sc 0.54.2, codec 0.21.1, chain 0.11.1, sdk 0.7.1
- Codec improvements:
MultiValueX
-TopDecodeMultiLength
implementation fix;ManagedVecItem
implented for MultiValue2 and MultiValue3.
sc-meta snippets
improvements.
sc 0.54.1
sc-meta
cs
- ChainSimulator CLI, which provides handy functionality to:- install the chain simulator image in Docker;
- start/stop the chain simulator;
- quick testing using the
chain-simulator-tests
feature flag.
- Adder interactor cleanup, including in template.
- Interactor -
use_chain_simulator
builder method, for improved backwards compatibility. MultiValueEncodedCounted
- a lazy multi-value encoding, but with known number of elements.