Version: Next

changelog

LIGO Changelog#

Unreleased#

Run this release with Docker: docker run ligolang/ligo:Unreleased

0.34.0#

Run this release with Docker: docker run ligolang/ligo:0.34.0

0.33.0#

Run this release with Docker: docker run ligolang/ligo:0.33.0

0.32.0#

Run this release with Docker: docker run ligolang/ligo:0.32.0

0.31.0#

Run this release with Docker: docker run ligolang/ligo:0.31.0

  • performance: Self mini_c optimizations: apply a single inline per round (!1446 by er433)
  • internal: Re-do some reverted module inlining changes (!1444 by tomjack)
  • fixed: Fix type error for sapling_state inside a record (!1443 by melwyn95)
  • fixed: ReasonLIGO: Improve handling of recursive arrows functions. (!1442 by @SanderSpies)
  • fixed: Fix webide by adding correct file extension to temp files (!1440 by melwyn95)
  • internal: Update tezos-ligo submodule to latest Hangzhou release (!1439 by melwyn95)
  • internal: Transpilation: expected cases update (!1435 by er433)
  • internal: PPX: use ppx_construct in main_errors (!1432 by er433)
  • added: Test framework: add pack/unpack using Michelson interpreter (!1429 by er433)
  • fixed: Fix: simple polymorphism wrong interaction with module accessing (!1427 by er433)
  • fixed: Fix: simple polymorphism; remember instances in lambda case (!1423 by er433)
  • internal: Test case: add a test case for module env. (!1412 by er433)
  • added: Experimental: propagate source locations to Michelson with --michelson-comments location (!1251 by tomjack)
  • internal: Add a script that checks for duplicate filenames (!1345 by melwyn95)

0.30.0#

Run this release with Docker: docker run ligolang/ligo:0.30.0

0.29.0#

Run this release with Docker: docker run ligolang/ligo:0.29.0

0.28.0#

Run this release with Docker: docker run ligolang/ligo:0.28.0

0.27.0#

Run this release with Docker: docker run ligolang/ligo:0.27.0

0.26.0#

Run this release with Docker: docker run ligolang/ligo:0.26.0

0.25.0#

Run this release with Docker: docker run ligolang/ligo:0.25.0

0.24.0#

Run this release with Docker: docker run ligolang/ligo:0.24.0

0.23.0#

Run this release with Docker: docker run ligolang/ligo:0.23.0

0.22.0#

Run this release with Docker: docker run ligolang/ligo:0.22.0

  • fixed: Fix: top-level underscore "definition" breaks testing framework (!1238 by er433)
  • internal: Handling errors with exception (!1234 by pierre-emmanuel)
  • fixed: Testing framework: fix overriding of variables on environment reconstruction (!1226 by er433)
  • added: Contract pass: check entrypoint syntax in C_CONTRACT_ENTRYPOINT(_OPT) (!1223 by er433)
  • internal: Clean up error handling in testing framework (!1218 by er433)
  • fixed: Fix #1240: use annotations when checking Tezos.self (!1217 by er433)

0.21.0#

Run this release with Docker: docker run ligolang/ligo:0.21.0

0.20.0#

Run this release with Docker: docker run ligolang/ligo:0.20.0

0.19.0#

Run this release with Docker: docker run ligolang/ligo:0.19.0

  • added: Add support for NEVER instruction as Tezos.never (!1194 by @er433)
  • fixed: Fix type-checker bug when using let-destructuring with a unit pattern (!1193 by Rémi Lesénéchal)
  • changed: Changes in the testing framework: Test.originate, Test.transfer(_exn), Test.to_contract, Test.to_entrypoint, Test.get_storage, Test.get_balance, Test.eval, initial support for big_maps (!1169 by @er433)
  • fixed: REPL: fix evaluation of JsLIGO expressions and add test cases (!1142 by @er433)

0.18.0#

Run this release with Docker: docker run ligolang/ligo:0.18.0

  • fixed: fix a bug where Test.get_storage was not usable within a Test.compile_expression_subst (!1182 by Rémi Lesénéchal)
  • internal: X_options maintenance (!1155 by @SanderSpies)
  • internal: Improved review/refactor script (look for code quality marker, ignore tools/webide, show some info about why a file is at this position in the queue) (!1136 by Suzanne Soy)
  • deprecated: Deprecated evaluate-value (now evaluate-expr) and run-function (now evaluate-call) (!1131 by Suzanne Soy)

0.17.0#

Run this release with Docker: docker run ligolang/ligo:0.17.0

0.16.1#

Run this release with Docker: docker run ligolang/ligo:0.16.1

No changes for this version

0.16.0#

Run this release with Docker: docker run ligolang/ligo:0.16.0

0.15.0#

Run this release with Docker: docker run ligolang/ligo:0.15.0

0.14.0#

Run this release with Docker: docker run ligolang/ligo:0.14.0

0.13.0#

Run this release with Docker: docker run ligolang/ligo:0.13.0

0.12.0#

Run this release with Docker: docker run ligolang/ligo:0.12.0

0.11.0#

Run this release with Docker: docker run ligolang/ligo:0.11.0

  • added: add set update primitive (!1021 by Rémi Lesénéchal)
  • added: prototype typer: separated typeclass deduce_and_clean to its own heuristic; trimmed down the Compat modules (!981 by Suzanne Soy)
  • added: prototype typer: heuristic to inline the definition of type variables used in type classes (!981 by Suzanne Soy)
  • added: Fixed potential bug: use multiset in typeclasses_constraining; added indexer for typeclasses using a variable as an unbound var; sketched out heuristic which inlines variabes in typeclasses (!981 by Suzanne Soy)

0.10.0#

Run this release with Docker: docker run ligolang/ligo:0.10.0

0.9.0#

Run this release with Docker: docker run ligolang/ligo:0.9.0

  • added: Add chain_id literals (!953 by Rémi Lesénéchal)
  • fixed: use letters instead of numbers for type variables in debug trace (!918 by Suzanne Soy)
  • fixed: Fixed small bug in grouped_by_variable (use a multiset instead of a set, so that double-add and removal don't remove both copies (!915 by Suzanne Soy)
  • fixed: Fix assert in type_and_subst (!915 by Suzanne Soy)
  • internal: Addded pretty-printers to the API of indexer plug-ins; added test for addition of constraints and merging of type variables for the by_constraint_identifier indexer and other indexers. (!914 by Suzanne Soy)

0.8.0#

Run this release with Docker: docker run ligolang/ligo:0.8.0

0.7.1#

Run this release with Docker: docker run ligolang/ligo:0.7.1

0.7.0#

Run this release with Docker: docker run ligolang/ligo:0.7.0

0.6.0#

Run this release with Docker: docker run ligolang/ligo:0.6.0

0.5.0#

Run this release with Docker: docker run ligolang/ligo:0.5.0

  • List.head_opt
  • List.tail_opt

which returns none if the list is empty and respectively hd and tl if the list is CONS (hd,tl) (!887 by Pierre-Emmanuel Wulfman)

0.4.0#

Run this release with Docker: docker run ligolang/ligo:0.4.0

0.3.0#

Run this release with Docker: docker run ligolang/ligo:0.3.0

  • internal: Create polymorphic function and use them in asts and passes to factorize code and simplify maintenance (!770 by Pierre-Emmanuel Wulfman)
  • fixed: Fix broken Nix build on MacOS (!852 by Alexander Bantyev)
  • fixed: Documentation of Pascaligo: change deprecated bytes_unpack to Bytes.unpack. (!820 by Sander Spies)
  • performance: Optimization: push DROP into failing conditionals (!820 by Tom)
  • internal: Refactoring of front-end (making libraries, removing exceptions from interfaces, factoring and removing code etc.) (!751 by Christian Rinderknecht)
  • fixed: Fixed 2 bugs in changelog generator (a shell variable wasn't exported but was used in a subprocess; the evaluation time of some nix expressions seem to have changed so we're invoking a shell command instead of having the nix expression evaluated before its inputs are ready) (!853 by Suzanne Soy)
  • internal: Move the preprocessor away from the parser (!851 by Pierre-Emmanuel Wulfman)
  • added: --protocol preloads types corresponding to a given protocol. use "ligo compile-contract path entrypoint --protocol=X --disable-michelson-typecheking" in combination with michelson_insertion (!837 by Rémi Lesénéchal)
  • changed: Type constant are now loaded into the type environment, they become variables until the typed AST (!849 by Rémi Lesénéchal)
  • changed: In the typer which is not currently in use, added a boolean flag on constraints indicating whether they might be necessary for correctness (!814 by Suzanne Soy)
  • fixed: Fix broken build after removal of generated code (!807 by Suzanne Soy)
  • : (! by )
  • changed: In the typer which is not currently in use, constraint removal is now handled by normalizers (!801 by Suzanne Soy)
  • changed: In the typer which is not currently in use, heuristics can now request the justified removal of some of the constraints (!801 by Suzanne Soy)

0.2.1#

Run this release with Docker: docker run ligolang/ligo:0.2.1

0.2.0#

Run this release with Docker: docker run ligolang/ligo:0.2.0

0.1.0#

Run this release with Docker: docker run ligolang/ligo:0.1.0

0.0.1#

Run this release with Docker: docker run ligolang/ligo:0.0.1

0.0.0#

Run this release with Docker: docker run ligolang/ligo:0.0.0

No changes for this version