LuaLS / LuaLS/lua-language-server

`lua-language-server --check foo.lua` not working since version `3.8.0`

Ouverte
#2,989 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Lua
Étoiles
4.4k
Forks
442
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### How are you using the lua-language-server?

Command Line

### Which OS are you using?

Windows WSL

### What is the issue affecting?

Annotations, Type Checking

### Expected Behaviour

`lua-language-server --check reproduction.lua` should error if there is an issue. For example in this file

`reproduction.lua`
```lua
---@class Foo
---@field bar asdfasfsdf_does_not_exist_is_not_defined
```

The `asdfasfsdf_does_not_exist_is_not_defined` type does not exist

### Actual Behaviour

The command reports `Diagnosis completed, no problems found`

### Reproduction steps

#### Last Working Version
```sh
git checkout 3.7.4
./make.sh
(cd ~/temp && lua-language-server --check --check reproduction.lua)
```

This errors as expected with `Diagnosis complete, 1 problems found, see {root}/lua-language-server/log/check.json` message

#### Broken
```sh
git checkout 3.8.0
./make.sh
(cd ~/temp && lua-language-server --check --check reproduction.lua)
```

```sh
git checkout 3.13.3
./make.sh
(cd ~/temp && lua-language-server --check --check reproduction.lua)
```

In both cases the report says `Diagnosis completed, no problems found`, instead of erroring as expected.

### Additional Notes

It seems a lot changed between 3.7.4 and 3.8.0. Maybe the expectations / interface `--check` are different now? It's a bit hard to find info online

### Log File

#### 3.7.4

check.json

```json
{
"file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua": [
{
"code": "undefined-doc-name",
"message": "Undefined type or alias `asdfasfsdf_does_not_exist_is_not_defined`.",
"range": {
"end": {
"character": 57,
"line": 1
},
"start": {
"character": 17,
"line": 1
}
},
"severity": 2,
"source": "Lua Diagnostics."
}
]
}
```

#### 3.13.4

service.log

```
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:68]: Lua Lsp startup, root: /home/selecaoone/repositories/lua-language-server
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:69]: ROOT: /home/selecaoone/repositories/lua-language-server
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:70]: LOGPATH: /home/selecaoone/repositories/lua-language-server/log
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:71]: METAPATH: /home/selecaoone/repositories/lua-language-server/meta
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:72]: VERSION: 3.13.3-dev
[11:36:12.793][info] [#0:script/language.lua:137]: VSC language: nil
[11:36:12.794][info] [#0:script/language.lua:138]: LS language: en-us
[11:36:12.794][info] [#0:script/client.lua:657]: Client init {
capabilities = {
textDocument = {
completion = {
completionItem = {
tagSupport = {
valueSet = { 1, 2 }
}
}
}
},
workspace = {
configuration = true
}
},
initializationOptions = {
changeConfiguration = true,
trustByClient = true,
useSemanticByRange = true,
viewDocument = true
},
rootUri = "file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua"
}
[11:36:12.794][info] [#0:script/language.lua:137]: VSC language: nil
[11:36:12.794][info] [#0:script/language.lua:138]: LS language: en-us
[11:36:12.794][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.794][info] [#0:script/workspace/workspace.lua:42]: Log path: /home/selecaoone/repositories/lua-language-server/log/file_home_selecaoone_temp_annotation_tes_annotation_type_test.lua.log
```

/home/selecaoone/repositories/lua-language-server/log/file_home_selecaoone_temp_annotation_tes_annotation_type_test.lua.log

```
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:68]: Lua Lsp startup, root: /home/selecaoone/repositories/lua-language-server
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:69]: ROOT: /home/selecaoone/repositories/lua-language-server
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:70]: LOGPATH: /home/selecaoone/repositories/lua-language-server/log
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:71]: METAPATH: /home/selecaoone/repositories/lua-language-server/meta
[11:36:12.752][info] [#0:/home/selecaoone/repositories/lua-language-server/main.lua:72]: VERSION: 3.13.3-dev
[11:36:12.793][info] [#0:script/language.lua:137]: VSC language: nil
[11:36:12.794][info] [#0:script/language.lua:138]: LS language: en-us
[11:36:12.794][info] [#0:script/client.lua:657]: Client init {
capabilities = {
textDocument = {
completion = {
completionItem = {
tagSupport = {
valueSet = { 1, 2 }
}
}
}
},
workspace = {
configuration = true
}
},
initializationOptions = {
changeConfiguration = true,
trustByClient = true,
useSemanticByRange = true,
viewDocument = true
},
rootUri = "file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua"
}
[11:36:12.794][info] [#0:script/language.lua:137]: VSC language: nil
[11:36:12.794][info] [#0:script/language.lua:138]: LS language: en-us
[11:36:12.794][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.794][info] [#0:script/workspace/workspace.lua:42]: Log path: /home/selecaoone/repositories/lua-language-server/log/file_home_selecaoone_temp_annotation_tes_annotation_type_test.lua.log
[11:36:12.794][info] [#0:script/workspace/workspace.lua:48]: Workspace create: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.795][warn] [#0:script/config/loader.lua:116]: No config? nil
[11:36:12.796][warn] [#0:script/config/loader.lua:116]: No config? nil
[11:36:12.796][info] [#0:script/provider/provider.lua:64]: Load config from client fallback
[11:36:12.796][info] [#0:script/provider/provider.lua:65]: nil
[11:36:12.796][info] [#0:script/library.lua:212]: Init builtin library at: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.828][info] [#0:script/library.lua:212]: Init builtin library at: nil
[11:36:12.845][warn] [#0:script/config/loader.lua:116]: No config? nil
[11:36:12.845][warn] [#0:script/config/loader.lua:116]: No config? nil
[11:36:12.846][info] [#0:script/provider/provider.lua:64]: Load config from client fallback
[11:36:12.846][info] [#0:script/provider/provider.lua:65]: nil
[11:36:12.846][info] [#0:script/workspace/workspace.lua:324]: Preload start: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:330]: Scan files at: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua
[11:36:12.851][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua
[11:36:12.852][info] [#0:script/workspace/workspace.lua:324]: Preload start:
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua
[11:36:12.855][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua
[11:36:12.856][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua
[11:36:12.856][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua
[11:36:12.856][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua
[11:36:12.856][info] [#0:script/workspace/workspace.lua:353]: Scan library at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua
[11:36:12.856][info] [#0:script/workspace/workspace.lua:379]: Found 12 files at: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.856][info] [#0:script/workspace/loading.lua:160]: Load files from disk: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.856][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua , size = 2.669 KB
[11:36:12.859][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua
[11:36:12.859][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua , size = 2.447 KB
[11:36:12.862][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua
[11:36:12.862][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua , size = 7.812 KB
[11:36:12.871][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua
[11:36:12.871][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua , size = 8.825 KB
[11:36:12.879][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua
[11:36:12.879][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua , size = 0.302 KB
[11:36:12.880][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua
[11:36:12.880][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua , size = 6.547 KB
[11:36:12.887][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua
[11:36:12.887][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua , size = 6.566 KB
[11:36:12.893][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua
[11:36:12.893][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua , size = 16.192 KB
[11:36:12.905][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua
[11:36:12.905][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua , size = 3.050 KB
[11:36:12.911][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua
[11:36:12.911][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua , size = 5.863 KB
[11:36:12.915][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua
[11:36:12.915][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua , size = 4.551 KB
[11:36:12.919][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua
[11:36:12.920][info] [#0:script/workspace/loading.lua:100]: Preload file at: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua , size = 0.070 KB
[11:36:12.920][info] [#0:script/workspace/loading.lua:172]: Loaded files takes [0.064] sec: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.920][info] [#0:script/workspace/loading.lua:181]: Compile files takes [0.000] sec: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.920][info] [#0:script/workspace/loading.lua:182]: Loaded finish: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.920][info] [#0:script/workspace/workspace.lua:381]: Preload finish at: file:///home/selecaoone/temp/annotation_tes/annotation_type_test.lua
[11:36:12.924][info] [#0:script/workspace/workspace.lua:379]: Found 11 files at:
[11:36:12.924][info] [#0:script/workspace/loading.lua:160]: Load files from disk:
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/coroutine.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/utf8.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/debug.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/math.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/builtin.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/string.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/io.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/basic.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/package.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/os.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:88]: Skip loaded file: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:112]: ++++As library of: file:///home/selecaoone/repositories/lua-language-server/meta/Lua%205.4%20en-us%20utf8/table.lua
[11:36:12.924][info] [#0:script/workspace/loading.lua:172]: Loaded files takes [0.000] sec:
[11:36:12.924][info] [#0:script/workspace/loading.lua:181]: Compile files takes [0.000] sec:
[11:36:12.924][info] [#0:script/workspace/loading.lua:182]: Loaded finish:
[11:36:12.924][info] [#0:script/workspace/workspace.lua:381]: Preload finish at:
```

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Reproduce the regression with the supplied reproduction.lua and --check commands on versions 3.7.4 and 3.8.0 or later. Start at main.lua and the script/workspace and script/config paths shown in the logs; done means the undefined annotation type is diagnosed again and the check output reports a problem.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
lua
Domaine
cli, devtools
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.