Skip to content

0.6.0

Compare
Choose a tag to compare
@github-actions github-actions released this 22 Mar 19:48
3a36a9d

Added

  • Added a roblox built-in

    If you're familiar with Remodel, this new built-in contains more or less the same APIs, integrated into Lune.

    There are just too many new APIs to list in this changelog, so head over to the wiki to learn more!

  • Added a serde built-in

    This built-in contains previously available functions encode and decode from the net global.

    The plan is for this built-in to contain more serialization and encoding functionality in the future.

  • require has been reimplemented and overhauled in several ways:

    • New built-ins such as roblox and serde can only be imported using require("@lune/roblox"), require("@lune/serde"), ...
    • Previous globals such as fs, net and others can now also be imported using require("@lune/fs"), require("@lune/net"), ...
    • Requiring a script is now completely asynchronous and will not block lua threads other than the caller.
    • Requiring a script will no longer error when using async APIs in the main body of the required script.

    All new built-ins will be added using this syntax and new built-ins will no longer be available in the global scope, and current globals will stay available as globals until proper editor and LSP support is available to ensure Lune users have a good development experience. This is the first step towards moving away from adding each library as a global, and allowing Lune to have more built-in libraries in general.

    Behavior otherwise stays the same, and requires are still relative to file unless the special @ prefix is used.

  • Added net.urlEncode and net.urlDecode for URL-encoding and decoding strings

Changed

  • Renamed the global info function to printinfo to make it less ambiguous

Removed

  • Removed experimental net.encode and net.decode functions, since they are now available using require("@lune/serde")
  • Removed option to preserve default Luau require behavior