mirror of
https://github.com/chenasraf/nvim-treesitter.git
synced 2026-05-17 17:38:02 +00:00
chore!: remove ensure_installed='maintained'
Removes all support (and tests) for the parser category "maintained", as this is no longer a useful category. BREAKING CHANGE: replace `ensure_installed='maintained'` by an explicit list of parsers, or use `'all'` (not recommended).
This commit is contained in:
committed by
Christian Clason
parent
808473cfbb
commit
bc25a6a5c4
@@ -7,11 +7,11 @@ function! nvim_treesitter#foldexpr() abort
|
||||
endfunction
|
||||
|
||||
function! nvim_treesitter#installable_parsers(arglead, cmdline, cursorpos) abort
|
||||
return join(luaeval("require'nvim-treesitter.parsers'.available_parsers()") + ['all', 'maintained'], "\n")
|
||||
return join(luaeval("require'nvim-treesitter.parsers'.available_parsers()") + ['all'], "\n")
|
||||
endfunction
|
||||
|
||||
function! nvim_treesitter#installed_parsers(arglead, cmdline, cursorpos) abort
|
||||
return join(luaeval("require'nvim-treesitter.info'.installed_parsers()") + ['all', 'maintained'], "\n")
|
||||
return join(luaeval("require'nvim-treesitter.info'.installed_parsers()") + ['all'], "\n")
|
||||
endfunction
|
||||
|
||||
function! nvim_treesitter#available_modules(arglead, cmdline, cursorpos) abort
|
||||
|
||||
@@ -402,9 +402,6 @@ local function install(options)
|
||||
if ... == "all" then
|
||||
languages = parsers.available_parsers()
|
||||
ask = false
|
||||
elseif ... == "maintained" then
|
||||
languages = parsers.maintained_parsers()
|
||||
ask = false
|
||||
else
|
||||
languages = vim.tbl_flatten { ... }
|
||||
ask = ask_reinstall
|
||||
@@ -467,15 +464,9 @@ function M.uninstall(...)
|
||||
path_sep = "\\"
|
||||
end
|
||||
|
||||
if vim.tbl_contains({ "all", "maintained" }, ...) then
|
||||
if vim.tbl_contains({ "all" }, ...) then
|
||||
reset_progress_counter()
|
||||
local installed = info.installed_parsers()
|
||||
if ... == "maintained" then
|
||||
local maintained = parsers.maintained_parsers()
|
||||
installed = vim.tbl_filter(function(l)
|
||||
return vim.tbl_contains(maintained, l)
|
||||
end, installed)
|
||||
end
|
||||
for _, langitem in pairs(installed) do
|
||||
M.uninstall(langitem)
|
||||
end
|
||||
|
||||
@@ -1085,19 +1085,6 @@ function M.available_parsers()
|
||||
end
|
||||
end
|
||||
|
||||
function M.maintained_parsers()
|
||||
require("nvim-treesitter.utils").notify(
|
||||
"ensure_installed='maintained' will be removed April 30, 2022. Specify parsers explicitly or use 'all'.",
|
||||
vim.log.levels.WARN
|
||||
)
|
||||
local has_tree_sitter_cli = vim.fn.executable "tree-sitter" == 1 and vim.fn.executable "node" == 1
|
||||
return vim.tbl_filter(function(lang)
|
||||
return M.list[lang].maintainers
|
||||
and not M.list[lang].experimental
|
||||
and (has_tree_sitter_cli or not M.list[lang].install_info.requires_generate_from_grammar)
|
||||
end, M.available_parsers())
|
||||
end
|
||||
|
||||
function M.get_parser_configs()
|
||||
return M.list
|
||||
end
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
local stub = require "luassert.stub"
|
||||
local parsers = require "nvim-treesitter.parsers"
|
||||
|
||||
describe("maintained_parsers", function()
|
||||
before_each(function()
|
||||
stub(vim.fn, "executable")
|
||||
end)
|
||||
|
||||
after_each(function()
|
||||
vim.fn.executable:clear()
|
||||
end)
|
||||
|
||||
it("does not return experimental parsers", function()
|
||||
local old_list = parsers.list
|
||||
parsers.list = {
|
||||
c = {
|
||||
install_info = {
|
||||
url = "https://github.com/tree-sitter/tree-sitter-c",
|
||||
files = { "src/parser.c" },
|
||||
},
|
||||
maintainers = { "@vigoux" },
|
||||
},
|
||||
d = {
|
||||
install_info = {
|
||||
url = "https://github.com/CyberShadow/tree-sitter-d",
|
||||
files = { "src/parser.c", "src/scanner.cc" },
|
||||
requires_generate_from_grammar = true,
|
||||
},
|
||||
maintainers = { "@nawordar" },
|
||||
experimental = true,
|
||||
},
|
||||
haskell = {
|
||||
install_info = {
|
||||
url = "https://github.com/tree-sitter/tree-sitter-haskell",
|
||||
files = { "src/parser.c", "src/scanner.cc" },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
local expected = { "c" }
|
||||
|
||||
assert.same(parsers.maintained_parsers(), expected)
|
||||
|
||||
parsers.list = old_list
|
||||
end)
|
||||
end)
|
||||
Reference in New Issue
Block a user