mirror of
https://github.com/neovim/neovim
synced 2025-07-16 09:11:51 +00:00
feat: remove deprecated features
Remove following functions: - vim.lsp.util.extract_completion_items - vim.lsp.util.get_progress_messages - vim.lsp.util.parse_snippet() - vim.lsp.util.text_document_completion_list_to_complete_items - LanguageTree:for_each_child - health#report_error - health#report_info - health#report_ok - health#report_start - health#report_warn - vim.health.report_error - vim.health.report_info - vim.health.report_ok - vim.health.report_start - vim.health.report_warn
This commit is contained in:
@ -1,40 +0,0 @@
|
|||||||
function! s:deprecate(type) abort
|
|
||||||
let deprecate = v:lua.vim.deprecate('health#report_' . a:type, 'vim.health.' . a:type, '0.11')
|
|
||||||
redraw | echo 'Running healthchecks...'
|
|
||||||
if deprecate isnot v:null
|
|
||||||
call v:lua.vim.health.warn(deprecate)
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! health#report_start(name) abort
|
|
||||||
call v:lua.vim.health.start(a:name)
|
|
||||||
call s:deprecate('start')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! health#report_info(msg) abort
|
|
||||||
call v:lua.vim.health.info(a:msg)
|
|
||||||
call s:deprecate('info')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! health#report_ok(msg) abort
|
|
||||||
call v:lua.vim.health.ok(a:msg)
|
|
||||||
call s:deprecate('ok')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! health#report_warn(msg, ...) abort
|
|
||||||
if a:0 > 0
|
|
||||||
call v:lua.vim.health.warn(a:msg, a:1)
|
|
||||||
else
|
|
||||||
call v:lua.vim.health.warn(a:msg)
|
|
||||||
endif
|
|
||||||
call s:deprecate('warn')
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! health#report_error(msg, ...) abort
|
|
||||||
if a:0 > 0
|
|
||||||
call v:lua.vim.health.error(a:msg, a:1)
|
|
||||||
else
|
|
||||||
call v:lua.vim.health.error(a:msg)
|
|
||||||
endif
|
|
||||||
call s:deprecate('error')
|
|
||||||
endfunction
|
|
@ -185,53 +185,6 @@ function M.error(msg, ...)
|
|||||||
collect_output(input)
|
collect_output(input)
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param type string
|
|
||||||
local function deprecate(type)
|
|
||||||
local before = string.format('vim.health.report_%s()', type)
|
|
||||||
local after = string.format('vim.health.%s()', type)
|
|
||||||
local message = vim.deprecate(before, after, '0.11')
|
|
||||||
if message then
|
|
||||||
M.warn(message)
|
|
||||||
end
|
|
||||||
vim.cmd.redraw()
|
|
||||||
vim.print('Running healthchecks...')
|
|
||||||
end
|
|
||||||
|
|
||||||
--- @deprecated
|
|
||||||
--- @param name string
|
|
||||||
function M.report_start(name)
|
|
||||||
deprecate('start')
|
|
||||||
M.start(name)
|
|
||||||
end
|
|
||||||
|
|
||||||
--- @deprecated
|
|
||||||
--- @param msg string
|
|
||||||
function M.report_info(msg)
|
|
||||||
deprecate('info')
|
|
||||||
M.info(msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
--- @deprecated
|
|
||||||
--- @param msg string
|
|
||||||
function M.report_ok(msg)
|
|
||||||
deprecate('ok')
|
|
||||||
M.ok(msg)
|
|
||||||
end
|
|
||||||
|
|
||||||
--- @deprecated
|
|
||||||
--- @param msg string
|
|
||||||
function M.report_warn(msg, ...)
|
|
||||||
deprecate('warn')
|
|
||||||
M.warn(msg, ...)
|
|
||||||
end
|
|
||||||
|
|
||||||
--- @deprecated
|
|
||||||
--- @param msg string
|
|
||||||
function M.report_error(msg, ...)
|
|
||||||
deprecate('error')
|
|
||||||
M.error(msg, ...)
|
|
||||||
end
|
|
||||||
|
|
||||||
function M.provider_disabled(provider)
|
function M.provider_disabled(provider)
|
||||||
local loaded_var = 'loaded_' .. provider .. '_provider'
|
local loaded_var = 'loaded_' .. provider .. '_provider'
|
||||||
local v = vim.g[loaded_var]
|
local v = vim.g[loaded_var]
|
||||||
|
@ -3,6 +3,7 @@ local protocol = require('vim.lsp.protocol')
|
|||||||
local ms = protocol.Methods
|
local ms = protocol.Methods
|
||||||
local util = require('vim.lsp.util')
|
local util = require('vim.lsp.util')
|
||||||
local api = vim.api
|
local api = vim.api
|
||||||
|
local completion = require('vim.lsp._completion')
|
||||||
|
|
||||||
--- @type table<string,lsp.Handler>
|
--- @type table<string,lsp.Handler>
|
||||||
local M = {}
|
local M = {}
|
||||||
@ -353,7 +354,7 @@ M[ms.textDocument_completion] = function(_, result, _, _)
|
|||||||
local textMatch = vim.fn.match(line_to_cursor, '\\k*$')
|
local textMatch = vim.fn.match(line_to_cursor, '\\k*$')
|
||||||
local prefix = line_to_cursor:sub(textMatch + 1)
|
local prefix = line_to_cursor:sub(textMatch + 1)
|
||||||
|
|
||||||
local matches = util.text_document_completion_list_to_complete_items(result, prefix)
|
local matches = completion._lsp_to_complete_items(result, prefix)
|
||||||
vim.fn.complete(textMatch + 1, matches)
|
vim.fn.complete(textMatch + 1, matches)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
local protocol = require('vim.lsp.protocol')
|
local protocol = require('vim.lsp.protocol')
|
||||||
local snippet = require('vim.lsp._snippet_grammar')
|
|
||||||
local validate = vim.validate
|
local validate = vim.validate
|
||||||
local api = vim.api
|
local api = vim.api
|
||||||
local list_extend = vim.list_extend
|
local list_extend = vim.list_extend
|
||||||
@ -343,68 +342,6 @@ local function get_line_byte_from_position(bufnr, position, offset_encoding)
|
|||||||
return col
|
return col
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Process and return progress reports from lsp server
|
|
||||||
---@private
|
|
||||||
---@deprecated Use vim.lsp.status() or access client.progress directly
|
|
||||||
function M.get_progress_messages()
|
|
||||||
vim.deprecate('vim.lsp.util.get_progress_messages()', 'vim.lsp.status()', '0.11')
|
|
||||||
local new_messages = {}
|
|
||||||
local progress_remove = {}
|
|
||||||
|
|
||||||
for _, client in ipairs(vim.lsp.get_clients()) do
|
|
||||||
local groups = {}
|
|
||||||
for progress in client.progress do
|
|
||||||
local value = progress.value
|
|
||||||
if type(value) == 'table' and value.kind then
|
|
||||||
local group = groups[progress.token]
|
|
||||||
if not group then
|
|
||||||
group = {
|
|
||||||
done = false,
|
|
||||||
progress = true,
|
|
||||||
title = 'empty title',
|
|
||||||
}
|
|
||||||
groups[progress.token] = group
|
|
||||||
end
|
|
||||||
group.title = value.title or group.title
|
|
||||||
group.cancellable = value.cancellable or group.cancellable
|
|
||||||
if value.kind == 'end' then
|
|
||||||
group.done = true
|
|
||||||
end
|
|
||||||
group.message = value.message or group.message
|
|
||||||
group.percentage = value.percentage or group.percentage
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for _, group in pairs(groups) do
|
|
||||||
table.insert(new_messages, group)
|
|
||||||
end
|
|
||||||
|
|
||||||
local messages = client.messages
|
|
||||||
local data = messages
|
|
||||||
for token, ctx in pairs(data.progress) do
|
|
||||||
local new_report = {
|
|
||||||
name = data.name,
|
|
||||||
title = ctx.title or 'empty title',
|
|
||||||
message = ctx.message,
|
|
||||||
percentage = ctx.percentage,
|
|
||||||
done = ctx.done,
|
|
||||||
progress = true,
|
|
||||||
}
|
|
||||||
table.insert(new_messages, new_report)
|
|
||||||
|
|
||||||
if ctx.done then
|
|
||||||
table.insert(progress_remove, { client = client, token = token })
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
for _, item in ipairs(progress_remove) do
|
|
||||||
item.client.messages.progress[item.token] = nil
|
|
||||||
end
|
|
||||||
|
|
||||||
return new_messages
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Applies a list of text edits to a buffer.
|
--- Applies a list of text edits to a buffer.
|
||||||
---@param text_edits table list of `TextEdit` objects
|
---@param text_edits table list of `TextEdit` objects
|
||||||
---@param bufnr integer Buffer id
|
---@param bufnr integer Buffer id
|
||||||
@ -541,38 +478,6 @@ function M.apply_text_edits(text_edits, bufnr, offset_encoding)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- local valid_windows_path_characters = "[^<>:\"/\\|?*]"
|
|
||||||
-- local valid_unix_path_characters = "[^/]"
|
|
||||||
-- https://github.com/davidm/lua-glob-pattern
|
|
||||||
-- https://stackoverflow.com/questions/1976007/what-characters-are-forbidden-in-windows-and-linux-directory-names
|
|
||||||
-- function M.glob_to_regex(glob)
|
|
||||||
-- end
|
|
||||||
|
|
||||||
--- Can be used to extract the completion items from a
|
|
||||||
--- `textDocument/completion` request, which may return one of
|
|
||||||
--- `CompletionItem[]`, `CompletionList` or null.
|
|
||||||
---
|
|
||||||
--- Note that this method doesn't apply `itemDefaults` to `CompletionList`s, and hence the returned
|
|
||||||
--- results might be incorrect.
|
|
||||||
---
|
|
||||||
---@deprecated
|
|
||||||
---@param result table The result of a `textDocument/completion` request
|
|
||||||
---@return lsp.CompletionItem[] List of completion items
|
|
||||||
---@see https://microsoft.github.io/language-server-protocol/specification#textDocument_completion
|
|
||||||
function M.extract_completion_items(result)
|
|
||||||
vim.deprecate('vim.lsp.util.extract_completion_items()', nil, '0.11')
|
|
||||||
if type(result) == 'table' and result.items then
|
|
||||||
-- result is a `CompletionList`
|
|
||||||
return result.items
|
|
||||||
elseif result ~= nil then
|
|
||||||
-- result is `CompletionItem[]`
|
|
||||||
return result
|
|
||||||
else
|
|
||||||
-- result is `null`
|
|
||||||
return {}
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Applies a `TextDocumentEdit`, which is a list of changes to a single
|
--- Applies a `TextDocumentEdit`, which is a list of changes to a single
|
||||||
--- document.
|
--- document.
|
||||||
---
|
---
|
||||||
@ -615,38 +520,6 @@ function M.apply_text_document_edit(text_document_edit, index, offset_encoding)
|
|||||||
M.apply_text_edits(text_document_edit.edits, bufnr, offset_encoding)
|
M.apply_text_edits(text_document_edit.edits, bufnr, offset_encoding)
|
||||||
end
|
end
|
||||||
|
|
||||||
--- Parses snippets in a completion entry.
|
|
||||||
---
|
|
||||||
---@deprecated
|
|
||||||
---@param input string unparsed snippet
|
|
||||||
---@return string parsed snippet
|
|
||||||
function M.parse_snippet(input)
|
|
||||||
vim.deprecate('vim.lsp.util.parse_snippet()', nil, '0.11')
|
|
||||||
local ok, parsed = pcall(function()
|
|
||||||
return snippet.parse(input)
|
|
||||||
end)
|
|
||||||
if not ok then
|
|
||||||
return input
|
|
||||||
end
|
|
||||||
|
|
||||||
return tostring(parsed)
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Turns the result of a `textDocument/completion` request into vim-compatible
|
|
||||||
--- |complete-items|.
|
|
||||||
---
|
|
||||||
---@deprecated
|
|
||||||
---@param result table The result of a `textDocument/completion` call, e.g.
|
|
||||||
--- from |vim.lsp.buf.completion()|, which may be one of `CompletionItem[]`,
|
|
||||||
--- `CompletionList` or `null`
|
|
||||||
---@param prefix (string) the prefix to filter the completion items
|
|
||||||
---@return table[] items
|
|
||||||
---@see complete-items
|
|
||||||
function M.text_document_completion_list_to_complete_items(result, prefix)
|
|
||||||
vim.deprecate('vim.lsp.util.text_document_completion_list_to_complete_items()', nil, '0.11')
|
|
||||||
return vim.lsp._completion._lsp_to_complete_items(result, prefix)
|
|
||||||
end
|
|
||||||
|
|
||||||
local function path_components(path)
|
local function path_components(path)
|
||||||
return vim.split(path, '/', { plain = true })
|
return vim.split(path, '/', { plain = true })
|
||||||
end
|
end
|
||||||
|
@ -463,24 +463,6 @@ function LanguageTree:parse(range)
|
|||||||
return self._trees
|
return self._trees
|
||||||
end
|
end
|
||||||
|
|
||||||
---@deprecated Misleading name. Use `LanguageTree:children()` (non-recursive) instead,
|
|
||||||
--- add recursion yourself if needed.
|
|
||||||
--- Invokes the callback for each |LanguageTree| and its children recursively
|
|
||||||
---
|
|
||||||
---@param fn fun(tree: vim.treesitter.LanguageTree, lang: string)
|
|
||||||
---@param include_self? boolean Whether to include the invoking tree in the results
|
|
||||||
function LanguageTree:for_each_child(fn, include_self)
|
|
||||||
vim.deprecate('LanguageTree:for_each_child()', 'LanguageTree:children()', '0.11')
|
|
||||||
if include_self then
|
|
||||||
fn(self, self._lang)
|
|
||||||
end
|
|
||||||
|
|
||||||
for _, child in pairs(self._children) do
|
|
||||||
--- @diagnostic disable-next-line:deprecated
|
|
||||||
child:for_each_child(fn, true)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
--- Invokes the callback for each |LanguageTree| recursively.
|
--- Invokes the callback for each |LanguageTree| recursively.
|
||||||
---
|
---
|
||||||
--- Note: This includes the invoking tree's child trees as well.
|
--- Note: This includes the invoking tree's child trees as well.
|
||||||
|
Reference in New Issue
Block a user