Releases: Concordium/concordium-rust-smart-contracts
Releases · Concordium/concordium-rust-smart-contracts
concordium-std 7.0.0
Summary
This release contains mainly internal improvements.
Changes
- Set minimum Rust version to 1.65.
- Move
MetadataUrlfrom the CIS-2 library toconcordium-stdalong with the schema and serialization to make it available to other CIS standards. - Change the
MetadataUrlschema: use hex string representation forhash. - Introduce a new method
block_timeas an alias toslot_timein theHasChainMetadatatrait. - Bump version of concordium-contracts-common to 7.0
concordium-cis2 4.0.0
Summary
Bump concordium-std to version 7 and internal restructuring.
concordium-std 6.2.0
Summary
This release adds helpers and makes the crate work with recent nightly versions.
Changes
- Add
write_roothelper function to write the root of the state trie. This is
useful in migrations when upgrading smart contracts. - Bump Rust edition to
2021. - Remove the use of
alloc_error_handlersince the feature is no longer
available in recent nightly builds of the compiler. This can increase the
smart contract size slightly. - Set minimum Rust version to 1.60.
concordium-std-derive 5.2.0
Summary
- Fix
derive(SchemaType)macro so that it allows theconcordiumattribute. - Bump Rust edition to
2021.
concordium-cis2 3.1.0
Summary
This is a minor release adding quality of life improvements.
Changes
- Derive
PartialEqandEqfor theMetadataUrlfrom the CIS2 library. - Update
concordium-stddependency to 6.2.
Release concordium-std 6.1.1
This update contains only internal restructuring. As a result it bumps contracts-common dependency to 5.3.1
Release concordium-std 6.1.0
This is a minor release that exposes additional quality of life helpers, and some additional functionality that was only available in concordium-std until now.
There are some minor breaking API changes that should affect very few users. The changelog below lists them.
Changelog
- Add
Displayimplementation forOwnedParameterandParameter, which uses
hex encoding. - Replace
From<Vec<u8>>instance forOwnedParameter/Parameterwith aTryFrom,
which ensures a valid length, and the unchecked methodnew_unchecked.- Migrate from
From/Into: Usenew_uncheckedinstead (if known to be
valid length).
- Migrate from
- Make inner field in
OwnedParameter/Parameterprivate, but add aFrom
implementation for getting the raw bytes.- Migrate from
parameter.0: useparameter.into()instead (for both of the affected
types).
- Migrate from
- For
ModuleReference, replaceAsRef<[u8;32]>withAsRef<[u8]>and make
innerbytesfield public.- The change was necessary for internal reasons.
- Migrate from
module_reference.as_ref(): use&module_reference.bytesinstead.
- Replace
OwnedParameter::newwithOwnedParameter::from_serial, which also
ensures a valid length.- Migrate from
new(x): Usefrom_serial(x).unwrap()(if known to be valid length).
- Migrate from
- Add an
emptymethod for bothOwnedParameterandParameter. - Implement
DefaultforParameter. - Add
StateBuilder::new_state_containermethod which allows contract developers to use
their own container types atop blockchain storage - Move the type
AccountBalancetoconcordium-contracts-common.
Release concordium-std 6.0.1
Release concordium-std 6.0.0
concordium-std 6.0.0 (2023-02-08)
wee_allocis no
longer set as the allocator inconcordium-stdbut can be enabled via the
featurewee_alloc. The consequence is that unlessstdfeature is
enabled eitherwee_allocmust be enabled, or another global allocator
must be set in the smart contract. Instdbuilds, unlesswee_alloc
feature is used, the allocator provided by the Rust standard library is used.
Release concordium-cis2 3.0.0
concordium-cis2 3.0.0 (2023-02-08)
- Update
concordium-stdto version 6.
No other changes in functionality.