mirror of
https://github.com/neovim/neovim.git
synced 2025-10-21 17:21:49 +00:00
refactor(diagnostic)!: remove deprecated diagnostic APIs (#33072)
This commit is contained in:
@@ -1456,47 +1456,6 @@ M.handlers.signs = {
|
||||
api.nvim_create_namespace(string.format('nvim.%s.diagnostic.signs', ns.name))
|
||||
end
|
||||
|
||||
-- Handle legacy diagnostic sign definitions
|
||||
-- These were deprecated in 0.10 and will be removed in 0.12
|
||||
if opts.signs and not opts.signs.text and not opts.signs.numhl then
|
||||
for _, v in ipairs({ 'Error', 'Warn', 'Info', 'Hint' }) do
|
||||
local name = string.format('DiagnosticSign%s', v)
|
||||
local sign = vim.fn.sign_getdefined(name)[1]
|
||||
if sign then
|
||||
local severity = M.severity[v:upper()]
|
||||
vim.deprecate(
|
||||
'Defining diagnostic signs with :sign-define or sign_define()',
|
||||
'vim.diagnostic.config()',
|
||||
'0.12'
|
||||
)
|
||||
|
||||
if not opts.signs.text then
|
||||
opts.signs.text = {}
|
||||
end
|
||||
|
||||
if not opts.signs.numhl then
|
||||
opts.signs.numhl = {}
|
||||
end
|
||||
|
||||
if not opts.signs.linehl then
|
||||
opts.signs.linehl = {}
|
||||
end
|
||||
|
||||
if opts.signs.text[severity] == nil then
|
||||
opts.signs.text[severity] = sign.text or ''
|
||||
end
|
||||
|
||||
if opts.signs.numhl[severity] == nil then
|
||||
opts.signs.numhl[severity] = sign.numhl
|
||||
end
|
||||
|
||||
if opts.signs.linehl[severity] == nil then
|
||||
opts.signs.linehl[severity] = sign.linehl
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local text = {} ---@type table<vim.diagnostic.Severity|string, string>
|
||||
for k in pairs(M.severity) do
|
||||
if opts.signs.text and opts.signs.text[k] then
|
||||
@@ -2058,12 +2017,6 @@ function M.is_enabled(filter)
|
||||
return diagnostic_disabled[bufnr] == nil
|
||||
end
|
||||
|
||||
--- @deprecated use `vim.diagnostic.is_enabled()`
|
||||
function M.is_disabled(bufnr, namespace)
|
||||
vim.deprecate('vim.diagnostic.is_disabled()', 'vim.diagnostic.is_enabled()', '0.12')
|
||||
return not M.is_enabled { bufnr = bufnr or 0, ns_id = namespace }
|
||||
end
|
||||
|
||||
--- Display diagnostics for the given namespace and buffer.
|
||||
---
|
||||
---@param namespace integer? Diagnostic namespace. When omitted, show
|
||||
@@ -2441,12 +2394,6 @@ function M.setloclist(opts)
|
||||
set_list(true, opts)
|
||||
end
|
||||
|
||||
--- @deprecated use `vim.diagnostic.enable(false, …)`
|
||||
function M.disable(bufnr, namespace)
|
||||
vim.deprecate('vim.diagnostic.disable()', 'vim.diagnostic.enable(false, …)', '0.12')
|
||||
M.enable(false, { bufnr = bufnr, ns_id = namespace })
|
||||
end
|
||||
|
||||
--- Enables or disables diagnostics.
|
||||
---
|
||||
--- To "toggle", pass the inverse of `is_enabled()`:
|
||||
@@ -2458,31 +2405,9 @@ end
|
||||
--- @param enable (boolean|nil) true/nil to enable, false to disable
|
||||
--- @param filter vim.diagnostic.Filter?
|
||||
function M.enable(enable, filter)
|
||||
-- Deprecated signature. Drop this in 0.12
|
||||
local legacy = (enable or filter)
|
||||
and vim.tbl_contains({ 'number', 'nil' }, type(enable))
|
||||
and vim.tbl_contains({ 'number', 'nil' }, type(filter))
|
||||
|
||||
if legacy then
|
||||
vim.deprecate(
|
||||
'vim.diagnostic.enable(buf:number, namespace:number)',
|
||||
'vim.diagnostic.enable(enable:boolean, filter:table)',
|
||||
'0.12'
|
||||
)
|
||||
|
||||
vim.validate('enable', enable, 'number', true) -- Legacy `bufnr` arg.
|
||||
vim.validate('filter', filter, 'number', true) -- Legacy `namespace` arg.
|
||||
|
||||
local ns_id = type(filter) == 'number' and filter or nil
|
||||
filter = {}
|
||||
filter.ns_id = ns_id
|
||||
filter.bufnr = type(enable) == 'number' and enable or nil
|
||||
enable = true
|
||||
else
|
||||
filter = filter or {}
|
||||
vim.validate('enable', enable, 'boolean', true)
|
||||
vim.validate('filter', filter, 'table', true)
|
||||
end
|
||||
filter = filter or {}
|
||||
vim.validate('enable', enable, 'boolean', true)
|
||||
vim.validate('filter', filter, 'table', true)
|
||||
|
||||
enable = enable == nil and true or enable
|
||||
local bufnr = filter.bufnr
|
||||
|
Reference in New Issue
Block a user