From 69371f0148bb96b41047f036a58e7e648e200140 Mon Sep 17 00:00:00 2001 From: Lewis Russell Date: Fri, 16 May 2025 15:44:26 +0100 Subject: feat(install)!: migrate to latest async.nvim impl (#7856) Provides significantly simpler blocking installation and update. --- scripts/install-parsers.lua | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'scripts') diff --git a/scripts/install-parsers.lua b/scripts/install-parsers.lua index 6dbc73d68..f06d3ee46 100755 --- a/scripts/install-parsers.lua +++ b/scripts/install-parsers.lua @@ -21,24 +21,17 @@ vim.opt.runtimepath:append('.') -- needed on CI vim.fn.mkdir(vim.fn.stdpath('cache'), 'p') -local ok = nil -if update then - require('nvim-treesitter.install').update('all', {}, function(success) - ok = success - end) -else - require('nvim-treesitter.install').install( +---@type async.Task +local task = update and require('nvim-treesitter.install').update('all') + or require('nvim-treesitter.install').install( #parsers > 0 and parsers or 'all', - { force = true, generate = generate, max_jobs = max_jobs }, - function(success) - ok = success - end + { force = true, generate = generate, max_jobs = max_jobs } ) -end -vim.wait(6000000, function() - return ok ~= nil -end) +local ok, err_or_ok = task:pwait(1800000) -- wait max. 30 minutes if not ok then + print('ERROR: ', err_or_ok) + vim.cmd.cq() +elseif not err_or_ok then vim.cmd.cq() end -- cgit v1.2.3-70-g09d2