diff options
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/check-queries.lua | 1 | ||||
| -rwxr-xr-x | scripts/install-parsers.lua | 4 | ||||
| -rwxr-xr-x | scripts/update-parsers.lua | 16 |
3 files changed, 10 insertions, 11 deletions
diff --git a/scripts/check-queries.lua b/scripts/check-queries.lua index d951cf2d6..94d8951cb 100755 --- a/scripts/check-queries.lua +++ b/scripts/check-queries.lua @@ -14,7 +14,6 @@ do for _, lang in pairs(parsers) do if configs[lang] and configs[lang].install_info then - timings[lang] = {} for _, query_type in pairs(query_types) do local before = vim.uv.hrtime() local ok, query = pcall(vim.treesitter.query.get, lang, query_type) diff --git a/scripts/install-parsers.lua b/scripts/install-parsers.lua index 2d083f3c3..c97c6eecc 100755 --- a/scripts/install-parsers.lua +++ b/scripts/install-parsers.lua @@ -2,7 +2,7 @@ local generate = false local update = false -local max_jobs = nil ---@type integer? +local max_jobs = nil ---@type number? local parsers = {} for i = 1, #_G.arg do if _G.arg[i] == '--generate' then @@ -10,7 +10,7 @@ for i = 1, #_G.arg do elseif _G.arg[i] == '--update' then update = true elseif _G.arg[i]:find('^%-%-max%-jobs') then - max_jobs = _G.arg[i]:match('=(%d+)') + max_jobs = tonumber(_G.arg[i]:match('=(%d+)')) else parsers[#parsers + 1] = _G.arg[i] ---@type string end diff --git a/scripts/update-parsers.lua b/scripts/update-parsers.lua index 83f724970..bab572c27 100755 --- a/scripts/update-parsers.lua +++ b/scripts/update-parsers.lua @@ -6,7 +6,7 @@ -- nvim -l update-parsers.lua --tier=1 # update stable parsers to latest version -- nvim -l update-parsers.lua --tier=2 # update unstable parsers to latest commit -local tier = nil ---@type integer? +local tier = nil ---@type number? for i = 1, #_G.arg do if _G.arg[i]:find('^%-%-tier=') then tier = tonumber(_G.arg[i]:match('=(%d+)')) @@ -41,15 +41,15 @@ for k, p in pairs(parsers) do if #vim.tbl_keys(jobs) % 100 == 0 or next(parsers, k) == nil then for name, job in pairs(jobs) do - local stdout = vim.split(job:wait().stdout, '\n') + local stdout = vim.split(job:wait().stdout or '', '\n') jobs[name] = nil - local info = parsers[name].install_info - assert(info) + assert(parsers[name]) + local info = assert(parsers[name].install_info) - local sha ---@type string + local sha ---@type string? if parsers[name].tier == 1 then - sha = stdout[#stdout - 1]:match('v[%d%.]+$') + sha = stdout[#stdout - 1] and stdout[#stdout - 1]:match('v[%d%.]+$') else local branch = info.branch local line = 1 @@ -61,10 +61,10 @@ for k, p in pairs(parsers) do end end end - sha = vim.split(stdout[line], '\t')[1] + sha = stdout[line] and vim.split(stdout[line], '\t')[1] end - if info.revision ~= sha then + if sha and info.revision ~= sha then info.revision = sha updates[#updates + 1] = name end |
