Wren v0.2.0 Release Notes

  • 0.2.0 spans a pretty wide time period with around 290 commits. ๐Ÿ›  This includes many bug fixes, improvements, clarity in the ๐Ÿ“š code and documentation and so on. There's too many to explicitly list. Below is the obvious user facing stuff that was easy to spot in the history.

    Most noteworthy is that 'relative imports' are a slightly breaking change, but help pave the way forward toward a consistency for modules.


    • import was made smarter, differentiating relative from logical
    • Fiber can now accept a value from the first call/transfer
    • โž• Added String.trim, String.trimEnd, String.trimStart variants
    • โž• Added String.split, String.replace, String.fromByte
    • โž• Added String.indexOf(needle, startIndex)
    • โž• Added Sequence.take and Sequence.skip
    • โž• Added List.filled(count, value)
    • โž• Added Num.pow, Num.log, Num.round
    • โž• Added Num.largest, Num.smallest
    • โž• Added Map iteration (MapEntry)

    C API

    • โž• Added wren.hpp for use in c++
    • โž• Added void* user data to WrenVM
    • ๐Ÿ‘ Allow hosts with no module loader to still load optional modules.
    • โž• Added wrenAbortFiber


    Please note that beyond 0.2.0 the CLI will have it's own changelog. ๐Ÿ‘€ This list is not exhaustive. For a fuller history see the commit log above.

    • โž• Add path module
    • โž• Add --version
    • โž• Add REPL written in Wren
    • โž• Add Stdin.isTerminal
    • โž• Added Platform class
    • ๐Ÿ“‡ Rename process module to os