LuaLS / LuaLS/lua-language-server

There is no missing-field diagnostic for 'number' fields

Open
#2,285 1 comment 1 reaction 0 assignees View on GitHub
Dominant language
Lua
Stars
4.4k
Forks
442
PR merge metrics
No merged PRs in 30d

Description

(Split from: https://github.com/LuaLS/lua-language-server/issues/2279)

I would expect the following code to error with a missing-field for [0]

```
---@class TestClass
---@field [0] string
---@field test string

---@param test TestClass
local function test(test)
end

test({test = "test"})
```
but none is given.

Screenshot_3

Note: there is type checking on the field
Screenshot_4

Contributor guide

Open the contributing guide

Research direction

Reproduce the reported Lua snippet in the language server and compare the missing-field behavior for the numeric field [0] with the existing type-checking behavior. Trace the missing-field diagnostic path and its handling of numeric keys; done means the example reports [0] as missing while preserving the existing field type check.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua
Domain
devtools
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.