Skip to content

0.17.0

Compare
Choose a tag to compare
@gdotdesign gdotdesign released this 20 Apr 16:00
· 254 commits to master since this release

🚧 !!! This is a big release containing many breaking changes !!! 🚧


This release got pretty big and it would take a long time to gather all the changes, apologies for that.

Breaking Language Changes (check PRs for detailed changes)

  • #503
    • Allow multiple statements per block and added standalone block notation.
    • Promises changed to take a single parameter instead of two Promise(value).
    • Removed try, parallel, sequence, with, where, catch, finally and then language features.
    • Removed partial application language feature (conflicting with default arguments) until we can figure out a solution for the ambiguity.
    • Removed safe operators &. and &(.
    • Added block expressions.
    • Added optional await keyword to statements.
    • Added optional await keyword to the condition of case expressions.
    • Added the ability to define default values for function arguments.
    • Added the ability to create decoder functions using the decode feature by omitting the decodable object: decode as Array(String).
    • Records are now using : instead of =.
    • Added here document support:
      <<#MARKDOWN
      Renders markdown content to Html
      MARKDOWN
      
      <<-TEXT
      Text content which leaves leading indentation intact.
      TEXT
      
      <<~TEXT
      Text content which leaves trims leading indentation to the first line.
      TEXT
      
  • The pipe operator |> now puts the left hand side value as the first argument instead of the last. #571

Standard Library

There are too many changes to list here because of the standard library cleanup and pipe operator changes so consult the PRs #532 #503 and the API documentation if something doesn't work.

Language Server

  • Fix 100% CPU in Language Server when receiving EOF from STDIN #573 @jansul

Housekeeping

  • Maintain dependencies for GitHub Action @Sija
  • Fix typos throughout the codebase @Sija
  • Update CI workflows @Sija
  • Drop support for Crystal versions (< 1.7.0) @Sija