Skip to content

0.8.4

Compare
Choose a tag to compare
@github-actions github-actions released this 12 May 18:48
· 76 commits to main since this release
95b81d6

Added

  • Added a builtin API for regular expressions.

    Example basic usage:

    local Regex = require("@lune/regex")
    
    local re = Regex.new("hello")
    
    if re:isMatch("hello, world!") then
    	print("Matched!")
    end
    
    local caps = re:captures("hello, world! hello, again!")
    
    print(#caps) -- 2
    print(caps:get(1)) -- "hello"
    print(caps:get(2)) -- "hello"
    print(caps:get(3)) -- nil

    Check out the documentation for more details.

  • Added support for buffers as arguments in builtin APIs (#148)

    This includes APIs such as fs.writeFile, serde.encode, and more.

  • Added support for cross-compilation of standalone binaries (#162)

    You can now compile standalone binaries for other platforms by passing
    an additional target argument to the build subcommand:

    lune build my-file.luau --output my-bin --target windows-x86_64

    Currently supported targets are the same as the ones included with each
    release of Lune on GitHub. Check releases for a full list of targets.

  • Added stdio.readToEnd() for reading the entire stdin passed to Lune

Changed

  • Split the repository into modular crates instead of a monolith. (#188)

    If you previously depended on Lune as a crate, nothing about it has changed for version 0.8.4, but now each individual sub-crate has also been published and is available for use:

    • lune (old)
    • lune-utils
    • lune-roblox
    • lune-std-* for every builtin library

    When depending on the main lune crate, each builtin library also has a feature flag that can be toggled in the format std-*.

    In general, this should mean that it is now much easier to make your own Lune builtin, publish your own flavor of a Lune CLI, or take advantage of all the work that has been done for Lune as a runtime when making your own Rust programs.

  • Changed the User-Agent header in net.request to be more descriptive (#186)

  • Updated to Luau version 0.622.

Fixed

  • Fixed not being able to decompress lz4 format in high compression mode
  • Fixed stack overflow for tables with circular keys (#183)
  • Fixed net.serve no longer accepting ipv6 addresses
  • Fixed headers in net.serve being raw bytes instead of strings