LuaLS / LuaLS/lua-language-server

There are too many ways to toggle diagnostics

Abierto
#1,364 17 comentarios 1 reacción 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

Why is there 3 different ways to disable diagnostics?

The Problem

Currently, there is:

  • Lua.diagnostics.disable
    • An array of strings where you specify each diagnostic to disable
    • Simple, but has no control for open/closed files
  • Lua.diagnostics.neededFileStatus
    • An object where the key is the name of the diagnostic and the value is how the diagnostic will be checked (not at all, only open files, all files)
    • Slow but precise, allows you to alter the most diagnostics but can be slow to get everything set up the way you like it. Good for long-term setup where you can get set up perfectly.
  • Lua.diagnostics.groupFileStatus
    • An object where the key is the name of the group and the value is how the group of diagnostics will be checked (not at all, only open files, all files)
    • Quick but not precise, allows the user to quickly turn off entire categories of diagnostics but does not allow for disabling individual diagnostics. Good for short-term setup.

This can get very confusing very quickly.

The solution

I think going with just Lua.diagnostics.neededFileStatus would make the most sense.

It allows for the user to completely customize how the server runs, which is more important than the user quickly being able to get things working sort of how they like it in the short-term.

To still help get users up and running as fast as possible, we can offer "presets" or "popular configs" on the discussions page. This can help satisfy those that want just the basics or full strict mode.

This would definitely be a breaking change but I think it is a very important one to make!

Originally posted by @carsakiller in https://github.com/sumneko/lua-language-server/discussions/1362#discussioncomment-3194851

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

Comienza localizando las implementaciones y la documentación de configuración de Lua.diagnostics.disable, Lua.diagnostics.neededFileStatus y Lua.diagnostics.groupFileStatus. Determina el alcance del breaking change y cómo los presets o las configuraciones populares podrían reemplazar las opciones eliminadas; el trabajo estará terminado cuando se documente y admita una única ruta de configuración coherente.

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

Evaluación

Stack tecnológico
lua
Área
tooling
Tipo de issue
Refactorización
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.