LuaLS / LuaLS/lua-language-server

assign-type-mismatch not reported for global values

Abierto
#1,781 4 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

enhancement
Lenguaje dominante
Lua
Estrellas
4.4k
Forks
442
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

How are you using the lua-language-server?

NeoVim

Which OS are you using?

Linux

What is the issue affecting?

Annotations, Type Checking, Diagnostics/Syntax Checking

Expected Behaviour

With a global table that has type-annotated fields, reassigning a field to an incorrectly-typed value should report [assign-type-mismatch]

Actual Behaviour

No diagnostic is reported, even though autocompletion indicates that the type is understood by the server. Further, assigning a local variable to the global value and doing the same thing does report the diagnostic correctly.

Reproduction steps
---@class test
_G.test = {
    ---@type boolean
    foo = true,
}
test.foo = 'bar'  -- no error
_G.test.foo = 'bar'  -- no error
local test2 = test
test2.foo = 'bar'  -- [assign-type-mismatch]
Additional Notes

No response

Log File

No response

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Empieza ejecutando la reproducción de Lua proporcionada y compara los diagnósticos para test.foo, _G.test.foo y test2.foo. Sigue la ruta de comprobación de tipos y diagnósticos para los valores globales; se considera terminado cuando las dos asignaciones globales informen de [assign-type-mismatch] de forma coherente con el caso del alias local.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
lua
Área
devtools
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
42/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.