Skip to content

Cicero v0.6.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@jeromesimeon jeromesimeon released this 16 Aug 12:16

This week's release includes bug fixes and performance improvements. It also includes support for Ergo 0.3.1, which comes with a brand new tool for interactive construction, execution and debugging of Ergo program.

💔 Beware that we have again some breaking changes in this release on the Ergo side

Install the latest release of the Cicero command-line tool with
npm i -g @accordproject/cicero-cli

Fixes

  • 🐞The creation of hashes for templates is now more robust and consistent (Thanks to @mttrbrts! PR #186)
  • 🐇Avoid loading external models when we don't have to which improves performance (Also Thanks to @mttrbrts ! PR #188 )
  • 🐞Inlining bug for constants (accordproject/ergo#389)
  • 🐞Prevent redefining types with the same name (accordproject/ergo#408)

Ergo

Ergo 0.3.1 is out!

🍸 Ergo REPL!

There is a brand new tool for interactive development and testing of Ergo programs called the REPL (Read-Eval-Print-Loop) (@kach and @jeromesimeon)

Try it by installing the latest release of Ergo with:

npm i -g @accordproject/ergo-cli

Then start the REPL by typing in a terminal:

ergotop

You can type in Ergo expressions (or even load contracts) and try them interactively. The REPL showcases the upcoming type system for Ergo. When you write an expression or load a contract, it will check types for you and tell you if it finds mistakes in your code.

Sample Ergo contracts that work in the REPL can be found in https://github.com/accordproject/ergo/tree/v0.3.1/examples/typechecked

screen shot 2018-08-15 at 6 23 27 pm

Language

  • Output types on functions and clauses are now optional
  • Built in functions on DateTime renamed from moment* to dateTime*
  • Optional values use none and some(...) consistently
  • Empty value (resp. type) now called unit (resp. Unit)
  • match expressions now understand the composer models type hierarchy

Tooling

  • New VIM mode (contribution @kach) can be found in ergo.vim

Templates

🚗 Payment Upon Delivery (in English). A new payment clause thanks to @DianaLease and @Michael-Grover-C

Documentation

🏁 And finally, thanks to @FelixKuehl for some improvements to the Quick Start tutorial in the documentation, https://docs.accordproject.org/docs/cicero-tutorial_001.html