Skip to content

Commit

Permalink
changelog
Browse files Browse the repository at this point in the history
  • Loading branch information
andrei-marinica committed Sep 10, 2021
1 parent 961fc70 commit cdc851d
Showing 1 changed file with 26 additions and 1 deletion.
27 changes: 26 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,32 @@ There are several crates in this repo, this changelog will keep track of all of
Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file.

## [elrond-wasm 0.19.0, elrond-codec 0.6.0, mandos 0.9.0] - 2021-09-10
- Managed APIs used everywhere
- Managed types used extensively. Because of this, the recommended Arwen minimum version is `v1.4.10`.
- Redesigned parts of the elrond-codec, so as to allow custom type specializations. These specializations allow serializers and types to bypass the limitations of the codec traits to provide optimized implementations. Managed type serialization relies on this.
- Redesigned existing managed types: `BigInt`, `BigUint`, `EllipticCurve`.
- Added the `ManagedBuffer` type, which can be used to store anything on the VM side.
- Support for complex operations using managed buffers, such as storing lists of elements in a managed buffer via the `ManagedVec` type.
- There are `ManagedAddress`es now. They rely on another managed type, the `ManagedByteArray`, which is a fixed size managed structure.
- `TokenIdentifier` is now a managed type.
- Serializer based on a managed buffer.
- Storage keys are now based on managed buffers.
- All error messages generated by the framework are assembled using a managed buffer.
- The blockchain API uses managed types for most interactions.
- The contract call API uses managed types for most interactions.
- The call value API supports multi transfer via managed `EsdtTokenPayment` objects.
- Event logs are sent to the VM via managed types (`ManagedVec<ManagedBuffer>` for topics, `ManagedBuffer` for data).
- Type conversion traits for managed types: `ManagedFrom` and `ManagedInto`.
- There are now 2 types of `SCError`: `StaticSCError` for static messages and `ManagedSCError`, which is backed by a managed buffer.
- Contract errors can now be triggered immediately, without the need to return them from an endpoint.
- Improved macro preprocessor: more complex patterns can now be substituted.
- Generic API parameter needs not be specified every time.
- Substitutions available for most managed types and storage mappers.
- Separated contract API into low-level VM API connectors and high-level utility objects to be used in the contracts.
- Mandos-rs improvements:
- Self tests synchronized with mandos-go. Some missing features needed to be added to make them pass.
- Support for ESDT tokens.
- Support for ESDT multi-transfer.


## [elrond-wasm 0.18.2] - 2021-08-20
- Crypto API: `ripemd160` function, custom secp256k1 signature verification (`verify_custom_secp256k1`) and signature generation (`encode_secp256k1_der_signature`).
Expand Down

0 comments on commit cdc851d

Please sign in to comment.