Skip to content

Releases: JohnnyMorganz/luau-lsp

1.16.3

09 Feb 15:15
Compare
Choose a tag to compare

[1.16.3] - 2023-02-09

Fixed

  • Changed internal representation of documents to reduce the likelihood of Request Failed for "No managed text document"

Please do let me know if this has improved (or worsened) the issue!

1.16.2

01 Feb 13:50
Compare
Choose a tag to compare

[1.16.2] - 2023-02-01

Fixed

  • Fixed document symbol crash on incomplete functions
  • Fixed --base-luaurc not registering for an LSP server
  • Fixed crashing on invalid FFlags configuration - the VSCode client will now validate the flags

1.16.1

30 Jan 12:51
Compare
Choose a tag to compare

[1.16.1] - 2023-01-30

Fixed

  • Fixed error in document symbols not conforming to specification - selectionRange will now be fully enclosed by range

1.16.0

29 Jan 17:57
Compare
Choose a tag to compare

[1.16.0] - 2023-01-29

Added

  • Support documentation comments attached to a table and table types, e.g. on DATA in the following:
--- Doc comment
local DATA = {
    ...
}

--- Doc comment
type Contents = {
	...
}
  • Include documentation comments on functions and tables in autocompletion
  • Added configuration option luau-lsp.require.mode to configure how string requires are resolved. It can either be relativeToWorkspaceRoot (default) or relativeToFile
  • Added luau-lsp.types.documentationFiles to support adding extra documentation symbols to the database. These are used to support definition files, and should be in the same format as shown here
  • Added luau-lsp.diagnostics.strictDatamodelTypes (default: false) which configures whether we use expressive DataModel types to power diagnostics.
    When off, game / script / workspace (and all their members) are typed as any, which helps to prevent false positives, but may lead to false negatives.
  • Added CLI option --base-luaurc=PATH for both LSP and Analyze mode to provide a path to a .luaurc file which is used as the default configuration
  • Added support for Go To Definition / Type Definition on imported type references module.Type (gated behind FFlag SupportTypeAliasGoToDeclaration)

Changed

  • Sync to upstream Luau 0.560
  • Class symbols with no documentation present in the docs file will no longer show anything on hover/autocomplete (i.e. won't show @luau/global/require)
  • Instance.new() now accepts variables which are of type string without erroring. It will instead error when Instance.new is called with a string literal which is an unknown class name
  • In the CLI, luau-lsp lsp now supports passing multiple --docs= parameters
  • The CLI will now error when an unknown option is passed to it
  • Diagnostics will now be emitted on .luaurc files with parse errors

Fixed

  • Fixed unknown require errors occurring in multi-root workspaces when in a folder which isn't the first one
  • Fixed diagnostics not clearing for files which were deleted unconventionally (i.e., outside of VSCode using File Explorer, or external commands such as git stash)

1.15.0

11 Jan 18:11
Compare
Choose a tag to compare

[1.15.0] - 2023-01-11

Added

  • Added syntax highlighting support for interpolated strings

image

  • Added color viewers for Color3.new/fromRGB/fromHSV/fromHex (gated behind config.types.roblox)

image

  • Added support for autocompleting require-by-string functions with files and folders when using base Luau
Code_TNvzk5h7Tu.mp4
  • Support documentation comments on variables:
--- documentation comment
local x = "string"

--- another doc comment
local y = function()
end
  • Support documentation comments on table properties, such as the following:
local tbl = {
    --- This is some special information
    data = "hello",
    --- This is a doc comment
    values = function()
    end,
}

local x = tbl.values -- Should give "This is a doc comment"
local y = tbl.data -- Should give "This is some special information"

Changed

  • Sync to upstream Luau 0.558
  • All Luau FFlags are no longer enabled by default. This can be re-enabled by configuring luau-lsp.fflags.enableByDefault. It is recommended to keep luau-lsp.fflags.sync enabled so that FFlags sync with upstream Luau
  • Allow variable number of = sign for multiline doc comments, so --[[ and --[===[ etc. are valid openers

Fixed

  • Luau analyze now exits with code 0 if there are no reported errors (all errors are ignored)
  • require(instance:FindFirstChild("Testing", true)) will no longer resolve as an immediate child of instance due to the recursive argument
  • Fixed a bug where internally the wrong pointer to an Instance type was being used for DM nodes which manifested into failed unification and never types
  • Constant variables will now be syntax highlighted appropriately at definition site (local CONSTANT)

Full Changelog: 1.14.3...1.15.0

1.14.3

10 Dec 13:03
Compare
Choose a tag to compare

[1.14.3] - 2022-12-10

Changed

  • Sync to upstream Luau 0.556 (fixes crashing problems)
  • Sync to latest language client

1.14.2

04 Dec 13:38
Compare
Choose a tag to compare

[1.14.2] - 2022-12-04

Changed

  • Sync to upstream Luau 0.555 (in particular, this has improvements to class definitions)

What's Changed

  • Update to latest types dump by @github-actions in #235
  • add parent argument to Instance.new by @Uncontained0 in #238

New Contributors

  • @Uncontained0 made their first contribution in #238

Full Changelog: 1.14.1...1.14.2

1.14.1

23 Nov 20:03
Compare
Choose a tag to compare

[1.14.1] - 2022-11-23

Changed

  • Sync to upstream Luau 0.554

Fixed

  • Fixed stack overflow when looking up properties on a table type where the __index is set to itself

1.14.0

13 Nov 15:05
Compare
Choose a tag to compare

[1.14.0] - 2022-11-13

Added

  • Show inlay hints for variables in for x in y loops

Changed

  • Sync to upstream Luau 0.553

Fixed

  • Fixed rename symbol not working when cursor after variable
  • Fixed rename symbol causing server crashing when attempting to rename a token which is not a variable

1.13.1

29 Oct 17:24
Compare
Choose a tag to compare

[1.13.1] - 2022-10-29

Fixed

  • Respect client capabilities for snippet support in completion items
  • Respect luau-lsp.completion.addParentheses when fillCallArguments is enabled
  • Fixed Inlay Hints crash when calling a function which only takes varargs
  • Fixed Request Failed due to "No managed text document" as URLs were not being updated correctly