Releases: JohnnyMorganz/luau-lsp
Releases · JohnnyMorganz/luau-lsp
1.32.2
[1.32.2] - 2024-08-10
Changed
- Sync to upstream Luau 0.638
Fixed
- Fixed a regression in 1.32.0 causing
luau-lsp.ignoreGlobsandluau-lsp.completion.imports.ignoreGlobsto not work (#719) - Fixed auto-imports injecting a require in the middle of a multi-line require when introducing a require with lower lexicographical ordering (#725)
- Fixed documentation not showing for properties of an intersected type table in Hover and Autocomplete (#715)
1.32.1
[1.32.1] - 2024-07-23
Changed
- Sync to upstream Luau 0.635
Fixed
- Fixed
:FindFirstChild()returningInstanceinstead ofInstance?when applied to DataModel types - Fixed
:FindFirstChild()not supporting a boolean "recursive" 2nd parameter on DataModel types (#704) - Fixed
:WaitForChild()not supporting a number "timeout" 2nd parameter on DataModel types (#704) - Fixed inlay hint off-by-one on a function definition with an explicit self (i.e.,
function Class.foo(self, param)) (#702) - Fixed
:GetPropertyChangedSignal()still showing children in autocomplete for DataModel types (#699) - Fixed grandparent's children showing up in autocomplete of FindFirstChild
- Fixed tilde expansion (
~) for paths to home directory not working in VSCode (#707)
1.32.0
[1.32.0] - 2024-07-14
Added
- Support tilde expansion (
~) to home directory for definition and documentation file paths - Added a datamodel-aware
WaitForChildfunction - We now apply a datamodel-aware
FindFirstChildfunction to the top level datamodel and service types (#543) - Added autocompletion of children to
:FindFirstChild("")and:WaitForChild("")(#685) - Attached magic function to
Instance.fromExistingto allow it to operate similar toinst:Clone(#678) - Added separate configuration
luau-lsp.completion.imports.ignoreGlobsto filter out files for auto-importing. We no longer checkluau-lsp.ignoreGlobs. (#686) - Diagnostics will now refresh when the Studio plugin sends updated DataModel information (#637)
Changed
- Sync to upstream Luau 0.634
- Reverted "configuration in initializationOptions" and reintroduced messages postponing due to crashes in clients that do not send initial config
Fixed
- Fix static linking with MSVC Runtime for release binaries
- Fixed clients that do not support pull diagnostics erroring with "server not yet received configuration for diagnostics"
- Don't show children in autocomplete for
:GetPropertyChangedSignal("")(#684) - Fixed autocomplete end not working for non-local functions (#554)
- Fixed extension failing to get types information on macOS with "'fetch' is not defined"
- Fixed crashes under new type solver due to internal removal of different type inference for autocomplete/non-autocomplete contexts (#692)
- Fixed crashes where internally we fail to normalise a "virtual path" from a sourcemap to a real path, causing it to mismatch with the filepath understood by VSCode, leading to desync in internal file state. (#645)
1.31.1
1.31.0
[1.31.0] - 2024-07-01
Changed
- Sync to upstream Luau 0.632
- Language clients are recommended to send configuration during intializationOptions (see https://github.com/JohnnyMorganz/luau-lsp/blob/main/editors/README.md for details)
- Removed need for postponing requests whilst waiting for platform configuration (relies on clients sending config in intializationOptions)
Fixed
- Fixed crashes occuring for users without the MSVC Redistributable installed due to introduced dependency on Windows headers (#657)
1.30.1
[1.30.1] - 2024-06-27
Fixed
- Fixed use-after-free when generating sourcemap types
1.30.0
[1.30.0] - 2024-06-23
Deprecated
- Deprecated
luau-lsp.types.robloxsetting in favour ofluau-lsp.platform.type
Added
- Added
luau-lsp.platform.typeto separate platform-specific functionality from the main LSP - Added option
--platformto analyze CLI to make configuringluau-lsp.platform.typemore convenient - Added support for registering FFlags for the server via initializationOptions, rather than on the command line (#590)
- Added
luau-lsp.inlayHints.makeInsertable(default:true) to configure whether inlay hint type annotations can be inserted by clicking (#620) - Added inlay hints for varargs parameter type (#622)
- Added setting
luau-lsp.plugin.maximumRequestBodySize(default:3mb) to configure the maximum size of the payload accepted from the Studio Plugin - Added support for requiring
.tomlfiles - Added syntax highlighting for
luauin markdown fenced codeblocks
Changed
- Sync to upstream Luau 0.631
- An indexed expression will no longer show an inlay hint if the index matches the parameter name (i.e.,
call(other.value)won't addvalue:inlay hint) (#618) - Studio Plugin will now perform Gzip compression on sent requests
Fixed
- Overloaded methods (typed as an intersection of function types with explicitly defined
self) are now correctly marked withmethodsemantic token (#574) - Fixed semantic token highlighting overrides for global variables
- Improved robustness for non-ASCII filesystem paths in file lookup and directory traversal
1.29.1
1.29.0
[1.29.0] - 2024-05-11
Added
- Bytecode display will now show type info information. Added setting
luau-lsp.bytecode.typeInfoLevel(default: 1) to configure the type info level shown. - Added "magic functions / refinements" support under the New Solver (i.e., special handling of :IsA, :FindFirstChildWhichIsA, :Clone, etc.)
Changed
- Sync to upstream Luau 0.625
- Improved memory usage of document and workspace diagnostics by no longer storing type graphs
- Rewritten the Luau grammar syntax: https://github.com/JohnnyMorganz/Luau.tmLanguage
Fixed
- Fixed autocompletion of strings with '/' characters causing the prefix to be duplicated rather than replaced (#607)
- Fixed bug with string requires where a required files types may not correctly update when the file contents changed
1.28.1
[1.28.1] - 2024-03-04
Fixed
- Fixed macos release build