fix: lsp.diagnostics deprecation warning
- change default diagnostics source from nvim_lsp to nvim_diagnostic and deprecate nvim_lsp on neovim-0.6 and higher. - rename diagnostics source nvim to nvim_diagnostic. nvim could be confusing. fixes #473
This commit is contained in:
parent
d68631d2c0
commit
4231b63196
11
README.md
11
README.md
|
@ -126,8 +126,7 @@ require'lualine'.setup {
|
||||||
},
|
},
|
||||||
sections = {
|
sections = {
|
||||||
lualine_a = {'mode'},
|
lualine_a = {'mode'},
|
||||||
lualine_b = {'branch', 'diff',
|
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||||
{'diagnostics', sources={'nvim_lsp', 'coc'}}},
|
|
||||||
lualine_c = {'filename'},
|
lualine_c = {'filename'},
|
||||||
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
||||||
lualine_y = {'progress'},
|
lualine_y = {'progress'},
|
||||||
|
@ -433,18 +432,18 @@ sections = {
|
||||||
{
|
{
|
||||||
'diagnostics',
|
'diagnostics',
|
||||||
-- table of diagnostic sources, available sources:
|
-- table of diagnostic sources, available sources:
|
||||||
-- 'nvim_lsp', 'nvim', 'coc', 'ale', 'vim_lsp'
|
-- 'nvim_lsp', 'nvim_diagnostic', 'coc', 'ale', 'vim_lsp'
|
||||||
-- Or a function that returns a table like
|
-- Or a function that returns a table like
|
||||||
-- {error=error_cnt, warn=warn_cnt, info=info_cnt, hint=hint_cnt}
|
-- {error=error_cnt, warn=warn_cnt, info=info_cnt, hint=hint_cnt}
|
||||||
sources = {'nvim_lsp', 'coc'},
|
sources = {'nvim_diagnostic', 'coc'},
|
||||||
-- displays diagnostics from defined severity
|
-- displays diagnostics from defined severity
|
||||||
sections = {'error', 'warn', 'info', 'hint'},
|
sections = {'error', 'warn', 'info', 'hint'},
|
||||||
diagnostics_color = {
|
diagnostics_color = {
|
||||||
-- Same values like general color option can be used here.
|
-- Same values like general color option can be used here.
|
||||||
error = 'DiagnosticError', -- changes diagnostic's error color
|
error = 'DiagnosticError', -- changes diagnostic's error color
|
||||||
warn = 'DiagnosticWarn', -- changes diagnostic's warn color
|
warn = 'DiagnosticWarn', -- changes diagnostic's warn color
|
||||||
info = 'DiagnosticInfo', -- Changes diagnostic's info color
|
info = 'DiagnosticInfo', -- changes diagnostic's info color
|
||||||
hint = 'DiagnosticHint', -- Changes diagnostic's hint color
|
hint = 'DiagnosticHint', -- changes diagnostic's hint color
|
||||||
},
|
},
|
||||||
symbols = {error = 'E', warn = 'W', info = 'I', hint = 'H'},
|
symbols = {error = 'E', warn = 'W', info = 'I', hint = 'H'},
|
||||||
colored = true, -- displays diagnostics status in color if set to true
|
colored = true, -- displays diagnostics status in color if set to true
|
||||||
|
|
|
@ -113,8 +113,7 @@ checkout `:help lua-heredoc`.
|
||||||
},
|
},
|
||||||
sections = {
|
sections = {
|
||||||
lualine_a = {'mode'},
|
lualine_a = {'mode'},
|
||||||
lualine_b = {'branch', 'diff',
|
lualine_b = {'branch', 'diff', 'diagnostics'},
|
||||||
{'diagnostics', sources={'nvim_lsp', 'coc'}}},
|
|
||||||
lualine_c = {'filename'},
|
lualine_c = {'filename'},
|
||||||
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
||||||
lualine_y = {'progress'},
|
lualine_y = {'progress'},
|
||||||
|
@ -457,18 +456,18 @@ Component specific options These are options that are available on
|
||||||
{
|
{
|
||||||
'diagnostics',
|
'diagnostics',
|
||||||
-- table of diagnostic sources, available sources:
|
-- table of diagnostic sources, available sources:
|
||||||
-- 'nvim_lsp', 'nvim', 'coc', 'ale', 'vim_lsp'
|
-- 'nvim_lsp', 'nvim_diagnostic', 'coc', 'ale', 'vim_lsp'
|
||||||
-- Or a function that returns a table like
|
-- Or a function that returns a table like
|
||||||
-- {error=error_cnt, warn=warn_cnt, info=info_cnt, hint=hint_cnt}
|
-- {error=error_cnt, warn=warn_cnt, info=info_cnt, hint=hint_cnt}
|
||||||
sources = {'nvim_lsp', 'coc'},
|
sources = {'nvim_diagnostic', 'coc'},
|
||||||
-- displays diagnostics from defined severity
|
-- displays diagnostics from defined severity
|
||||||
sections = {'error', 'warn', 'info', 'hint'},
|
sections = {'error', 'warn', 'info', 'hint'},
|
||||||
diagnostics_color = {
|
diagnostics_color = {
|
||||||
-- Same values like general color option can be used here.
|
-- Same values like general color option can be used here.
|
||||||
error = 'DiagnosticError', -- changes diagnostic's error color
|
error = 'DiagnosticError', -- changes diagnostic's error color
|
||||||
warn = 'DiagnosticWarn', -- changes diagnostic's warn color
|
warn = 'DiagnosticWarn', -- changes diagnostic's warn color
|
||||||
info = 'DiagnosticInfo', -- Changes diagnostic's info color
|
info = 'DiagnosticInfo', -- changes diagnostic's info color
|
||||||
hint = 'DiagnosticHint', -- Changes diagnostic's hint color
|
hint = 'DiagnosticHint', -- changes diagnostic's hint color
|
||||||
},
|
},
|
||||||
symbols = {error = 'E', warn = 'W', info = 'I', hint = 'H'},
|
symbols = {error = 'E', warn = 'W', info = 'I', hint = 'H'},
|
||||||
colored = true, -- displays diagnostics status in color if set to true
|
colored = true, -- displays diagnostics status in color if set to true
|
||||||
|
|
|
@ -18,7 +18,7 @@ M.options = {
|
||||||
colored = true,
|
colored = true,
|
||||||
update_in_insert = false,
|
update_in_insert = false,
|
||||||
always_visible = false,
|
always_visible = false,
|
||||||
sources = { 'nvim_lsp', 'coc' },
|
sources = { vim.fn.has 'nvim-0.6' == 1 and 'nvim_diagnostic' or 'nvim_lsp', 'coc' },
|
||||||
sections = { 'error', 'warn', 'info', 'hint' },
|
sections = { 'error', 'warn', 'info', 'hint' },
|
||||||
diagnostics_color = {
|
diagnostics_color = {
|
||||||
error = {
|
error = {
|
||||||
|
|
|
@ -58,6 +58,43 @@ function M:init(options)
|
||||||
print 'no sources for diagnostics configured'
|
print 'no sources for diagnostics configured'
|
||||||
return ''
|
return ''
|
||||||
end
|
end
|
||||||
|
if vim.fn.has 'nvim-0.6' then
|
||||||
|
for i, name in ipairs(self.options.sources) do
|
||||||
|
if name == 'nvim_lsp' then
|
||||||
|
self.options.sources[i] = 'nvim_diagnostic'
|
||||||
|
modules.utils_notices.add_notice [[
|
||||||
|
### diagnostics.source
|
||||||
|
Diagnostics source `nvim_lsp` has been deprecated in favour of `nvim_diagnostic`.
|
||||||
|
nvim_diagnostic shows diagnostics from neovim's diagnostics api
|
||||||
|
while nvim_lsp used to only show lsp diagnostics.
|
||||||
|
|
||||||
|
You've something like this your config.
|
||||||
|
```lua
|
||||||
|
{'diagnostics', sources = {'nvim_lsp'}}
|
||||||
|
```
|
||||||
|
It needs to be updated to:
|
||||||
|
```lua
|
||||||
|
{'diagnostics', sources = {'nvim_diagnostic'}}
|
||||||
|
```
|
||||||
|
]]
|
||||||
|
elseif name == 'nvim' then
|
||||||
|
self.options.sources[i] = 'nvim_diagnostic'
|
||||||
|
modules.utils_notices.add_notice [[
|
||||||
|
### diagnostics.source
|
||||||
|
Diagnostics source `nvim` has been renamed to `nvim_diagnostic`
|
||||||
|
|
||||||
|
You've something like this your config.
|
||||||
|
```lua
|
||||||
|
{'diagnostics', sources = {'nvim'}}
|
||||||
|
```
|
||||||
|
It needs to be updated to:
|
||||||
|
```lua
|
||||||
|
{'diagnostics', sources = {'nvim_diagnostic'}}
|
||||||
|
```
|
||||||
|
]]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
-- Initialize variable to store last update so we can use it in insert
|
-- Initialize variable to store last update so we can use it in insert
|
||||||
-- mode for no update_in_insert
|
-- mode for no update_in_insert
|
||||||
self.last_diagnostics_count = {}
|
self.last_diagnostics_count = {}
|
||||||
|
|
|
@ -11,7 +11,7 @@ M.sources = {
|
||||||
local hint_count = vim.lsp.diagnostic.get_count(0, 'Hint')
|
local hint_count = vim.lsp.diagnostic.get_count(0, 'Hint')
|
||||||
return error_count, warning_count, info_count, hint_count
|
return error_count, warning_count, info_count, hint_count
|
||||||
end,
|
end,
|
||||||
nvim = function()
|
nvim_diagnostic = function()
|
||||||
local diagnostics = vim.diagnostic.get(0)
|
local diagnostics = vim.diagnostic.get(0)
|
||||||
local count = { 0, 0, 0, 0 }
|
local count = { 0, 0, 0, 0 }
|
||||||
for _, diagnostic in ipairs(diagnostics) do
|
for _, diagnostic in ipairs(diagnostics) do
|
||||||
|
|
|
@ -13,7 +13,7 @@ local config = {
|
||||||
},
|
},
|
||||||
sections = {
|
sections = {
|
||||||
lualine_a = { 'mode' },
|
lualine_a = { 'mode' },
|
||||||
lualine_b = { 'branch', 'diff', { 'diagnostics', sources = { 'nvim_lsp', 'coc' } } },
|
lualine_b = { 'branch', 'diff', 'diagnostics' },
|
||||||
lualine_c = { 'filename' },
|
lualine_c = { 'filename' },
|
||||||
lualine_x = { 'encoding', 'fileformat', 'filetype' },
|
lualine_x = { 'encoding', 'fileformat', 'filetype' },
|
||||||
lualine_y = { 'progress' },
|
lualine_y = { 'progress' },
|
||||||
|
|
|
@ -115,7 +115,7 @@ describe('config parsing', function()
|
||||||
config = config_module.apply_configuration(config)
|
config = config_module.apply_configuration(config)
|
||||||
local lualine_default_sections = {
|
local lualine_default_sections = {
|
||||||
lualine_a = { 'mode' },
|
lualine_a = { 'mode' },
|
||||||
lualine_b = { 'branch', 'diff', { 'diagnostics', sources = { 'nvim_lsp', 'coc' } } },
|
lualine_b = { 'branch', 'diff', 'diagnostics' },
|
||||||
lualine_c = { 'filename' },
|
lualine_c = { 'filename' },
|
||||||
lualine_x = { 'encoding', 'fileformat', 'filetype' },
|
lualine_x = { 'encoding', 'fileformat', 'filetype' },
|
||||||
lualine_y = { 'progress' },
|
lualine_y = { 'progress' },
|
||||||
|
|
Loading…
Reference in New Issue