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.
Unreleased
Added
- edo features: - add new cryptographic hash functions: sha3andkeccak
- add total_voting_powerconstant andvoting_poweroperation
- add levelconstant
- add tickettype and associated instructions (create_ticket,read_ticket,split_ticket,join_tickets)
- add sapling types (sapling_stateandsapling_transaction) and operations (sapling_empty_stateandsapling_verify_update)
- add bls curves types (bls12_381_fr,bls12_381_g1andbls12_381_g2), arthmetic (+,*, unary-) and operation (pairing_check)
 
[1.2.10] - 2021-11-10
Added
Changed
Fixed
- addupdatewhen there is default value in asset
[1.2.9] - 2021-10-03
Added
- callview, call on-chain view
Fixed
[1.2.8] - 2021-09-07
Added
- contract_address(contract -> address) and- key_address(key -> address)
- require_some, same as- opt_getwith an extra arg for custom failed
- sub_natsubstraction which returns- nat
- require_entrypoint, same as- require_some(entrypoint<...>(...))
- mutez_to_nat, convert- tezto- natin mutez
- michelson optimizations
Changed
- entrypoints are generated with a complete binary tree.
Removed
- Breaking : remove implicit cast from teztonat(c.f.mutez_to_nat)
[1.2.7] - 2021-08-11
Added
- npm package for archetype compiler (https://www.npmjs.com/package/@completium/archetype)
- support teztype forsummethod
Changed
- default call contract (transfer 0tz to addr call default<nat>(2))
- change type of string in mlw archetype library
[1.2.6] - 2021-06-24
Added
[1.2.5] - 2021-05-08
Added
- sourced by, same as- called bywith source
Changed
[1.2.4] - 2021-05-03
Added
- updatefunction for map (like- UPDATEin michelson)
- state issection in entry
- called bysupports asset with a key typed address
- failure id in fails specification section (i.e. ... f1 with InvalidCaller(msg : string): ...)
- metadata can be defined in the source file (with metadata)
- instruction for container (my_map.update(key, some(value)))
Changed
- slicereturns- option<byte|string>
- fail message and expression (see documentation)
- syntax enumdeclaration with args (enum my_enum = | A <nat> | B <string>)
Removed
[1.2.3] - 2021-04-12
Added
- date_from_timestampfunction (convert a timestamp typed int to date)
- constfor parameter, which processes like a constant instead of a variable by default
Changed
[1.2.2] - 2021-03-09
Added
- records shaping with as
- add parameter
- add left and right shift operators (<<|and|>>)
- add divmod and three-way comparison operators (resp. EDIV and COMPARE in michelson)
- add Unitliteral
Changed
- handle decimal for percent and currency literals
- getter send transferred(AMOUNT) instead of 0tz
Removed
- Execution language target (LIGO, SmartPy and Scaml)
- head_tail(replace by- match ... with ... end)
[1.2.1] - 2020-10-01
Added
- Add contract metadata tzip-16 (https://gitlab.com/tzip/tzip/-/blob/master/proposals/tzip-16/tzip-16.md)
[1.2.0] - 2020-09-15
Added
- Michelson backend
- specification declaration for asset, variable, entry and function
- failssection in specification declaration
- xoroperator
- head_tailand- reversebuiltin functions for list
- getterentry
Changed
- remove set_andmap_prefix for container builtins
- replace entrysigbycontract
[1.1.2] - 2020-08-13
Changed
- Refactoring of whyml generation
[1.1.1] - 2020-08-11
Added
- in requireandfailifsection, add custom failed with respectivellyotherwiseandwith
- to_stringconvert argument to a string (only avalaible for- nattype for now)
Changed
- failcan take any type argument
- dorequireand- dofailiftake two arguments, the second is for- fail
[1.1.0] - 2020-08-05
Added
- chain_idconstant
- union- interand- diffoperator for view in formula
- multi-keys asset : identified bycan take several field name
- nattype (comparison and arithmetic operations)
- support for entrypoints with entrysigtype,entrypointfunction andtransferwithentrysigandself
- mapand- setcontainers
- recordstructure
Removed
Changed
- syntax of composite type (i.e. list<string>instead ofstring list)
- rationalare mapped to- int * nat
Fixed
- calleras asset key in- initialized bysection
[1.0.0] - 2020-06-27
Added
- Introduce container_kindin model
- pack,- unpackfunctions
- removeiffor collection, aggregate and partition
Changed
- Replace collectionbyaggregate
- Replace listbysetcontainer for asset container fields (Aggregate | Partition).
- Rename actionbyentry
[0.1.14] - 2020-04-25
Added
- Crypto functions
- slice,- concatand- lengthfunctions
- isnone,- issome,- getoptoption functions
- floorand- ceilfunctions
- add percent literal
Update
- Remove key asset for execution generation
- Mlw support for new view type
[0.1.13] - 2020-03-05
Added
- Contract calls
- Handle rational type
- Handle date and duration type
- Add list container
- Add print-type-contract command (-ptc)
- Add addupdatemethod for asset
- Add bytestype
Changed
- Add guard condition in AddandUpdateAddapi storage
- Syntax : add identifier on signature of contract argument
- Refactor and update syntax for transition
- Verification api for asset
- Syntax : extension arguments are enclosed by parentheses
[0.1.12] - 2020-01-09
Added
Changed
- Syntax : add ':' between identifier and type in declaration id : type(instead ofid1 type1)
- Syntax : add ',' between arguments in funciton (id1 : type1, id2 : type2)(instead of(id1 : type1) (id2 : type2))
- Accept transfer is enable by default (use refuse transferto disable it)
[0.1.11] - 2019-12-12
Added
- Invariants on constants and variables
- Date and duration support
- Shadow fields in asset
Changed
- Improve loop generation in ligo output (issue #107)
- Refactoring storage in model module
- Enchance ligo output printer
- Remove keys list of assets in order to decrease storage size
[0.1.10] - 2019-11-02
Fixed
[0.1.8] - 2019-10-25
Added
- Add variable declaration var id = val
- Typing for transition entry
Changed
- Update syntax for for and iter loop for : loop i in col do ... done
Removed
Fixed
[0.1.6] - 2019-10-15
Added
- Add focus property command for vscode extension
Changed
- Update syntax for security predicate arguments
[0.1.5] - 2019-09-28
Added
- Create a share directory for contracts and extensions
Changed
- Update of the archetype syntax
- Fix mlw generation
[0.1.4] - 2019-09-21
Added
- Initial release of Archetype compiler.
- The main example is miles_with_expiration.arl contract.
- For more informations: https://docs.archetype-lang.org