* contracts: Update README * contracts: Add CHANGELOG.md * contracts: Bump version to v3.0.0 and allow publish * Typos Co-authored-by: Andrew Jones <ascjones@gmail.com> * Improve wording in the changelog * contracts: Add reserved field to ContractInfoOf for future proofing * also bump frame-benchmarking * update lockfile Co-authored-by: Andrew Jones <ascjones@gmail.com> Co-authored-by: Benjamin Kampmann <ben@parity.io>
3.2 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
The semantic versioning guarantees cover the interface to the substrate runtime which includes this pallet as a dependency. This module will also add storage migrations whenever changes require it. Stability with regard to offchain tooling is explicitly excluded from this guarantee: For example adding a new field to an in-storage data structure will require changes to frontends to properly display it. However, those changes will still be regarded as a minor version bump.
The interface provided to smart contracts will adhere to semver with one exception: Even major version bumps will be backwards compatible with regard to already deployed contracts. In other words: Upgrading this pallet will not break pre-existing contracts.
[v3.0.0]
This version constitutes the first release that brings any stability guarantees (see above).
Added
-
Emit an event when a contract terminates (self-destructs). 1
-
Charge rent for code stored on the chain in addition to the already existing rent that is payed for data storage. 1
-
Allow the runtime to configure per storage item costs in addition to the already existing per byte costs. 1
-
Contracts are now deleted lazily so that the user who removes a contract does not need to pay for the deletion of the contract storage. 1
-
Allow runtime authors to define chain extensions in order to provide custom functionality to contracts. 1 2
-
Proper weights which are fully automated by benchmarking. 1 2 3
Changes
-
Collect the rent for one block during instantiation. 1
-
Instantiation takes a
saltargument to allow for easier instantion of the same code by the same sender. 1 -
Improve the information returned by the
contracts_callRPC. 1 -
Simplify the node configuration necessary to add this module. 1