From 94689dd0e98467cf8509252254e8c171fc115d57 Mon Sep 17 00:00:00 2001 From: Hans Svensson Date: Tue, 21 May 2019 09:55:17 +0200 Subject: [PATCH] Prepare for v3.0.0 --- CHANGELOG.md | 25 ++++++++++++++++++++++--- rebar.config | 2 +- src/aesophia.app.src | 2 +- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cf6d2e9..86a4c64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,11 +6,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Added -- `stateful` annotations are now properly enforced. Functions must be marked stateful - in order to update the state or spend tokens. ### Changed ### Removed +## [3.0.0] - 2019-05-21 +### Added +- `stateful` annotations are now properly enforced. Functions must be marked stateful + in order to update the state or spend tokens. +- Primitives `Contract.creator`, `Address.is_contract`, `Address.is_oracle`, + `Oracle.check` and `Oracle.check_query` has been added to Sophia. +- A byte array type `bytes(N)` has been added to generalize `hash (== bytes(32))` and + `signature (== bytes(64))` and allow for byte arrays of arbitrary fixed length. +- `Crypto.ecverify_secp256k1` has been added. +### Changed +- Address literals (+ Oracle, Oracle query and remote contracts) have been changed + from `#` to address as `ak_`, oracle `ok_`, + oracle query `oq_` and remote contract `ct_`. +- The compilation and typechecking of `letfun` (e.g. `let m(f, xs) = map(f, xs)`) was + not working properly and has been fixed. +### Removed +- `let rec` has been removed from the language, it has never worked. +- The standalone CLI compiler is served in the repo `aeternity/aesophia_cli` and has + been completely removed from `aesophia`. + ## [2.1.0] - 2019-04-11 ### Added - Stubs (not yet wired up) for compilation to FATE @@ -37,6 +55,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Simplify calldata creation - instead of passing a compiled contract, simply pass a (stubbed) contract string. -[Unreleased]: https://github.com/aeternity/aesophia/compare/v2.1.0...HEAD +[Unreleased]: https://github.com/aeternity/aesophia/compare/v3.0.0...HEAD +[3.0.0]: https://github.com/aeternity/aesophia/compare/v2.1.0...v3.0.0 [2.1.0]: https://github.com/aeternity/aesophia/compare/v2.0.0...v2.1.0 [2.0.0]: https://github.com/aeternity/aesophia/tag/v2.0.0 diff --git a/rebar.config b/rebar.config index ae4abe5..6099820 100644 --- a/rebar.config +++ b/rebar.config @@ -15,7 +15,7 @@ {base_plt_apps, [erts, kernel, stdlib, crypto, mnesia]} ]}. -{relx, [{release, {aesophia, "2.1.0"}, +{relx, [{release, {aesophia, "3.0.0"}, [aesophia, aebytecode, getopt]}, {dev_mode, true}, diff --git a/src/aesophia.app.src b/src/aesophia.app.src index 49fb95d..4fd6938 100644 --- a/src/aesophia.app.src +++ b/src/aesophia.app.src @@ -1,6 +1,6 @@ {application, aesophia, [{description, "Contract Language for aeternity"}, - {vsn, "2.1.0"}, + {vsn, "3.0.0"}, {registered, []}, {applications, [kernel,