From 7681249bbdf14529592593c380e4a14fb52784e8 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 29 May 2023 16:52:20 +0200 Subject: [PATCH] ci: remove update-lockfile shell script --- .github/workflows/update-lockfile.yml | 5 +---- ...write-lockfile.lua => update-lockfile.lua} | 13 ++++++------ scripts/update-lockfile.sh | 20 ------------------- scripts/update-readme.lua | 14 ++++++------- 4 files changed, 13 insertions(+), 39 deletions(-) rename scripts/{write-lockfile.lua => update-lockfile.lua} (75%) delete mode 100755 scripts/update-lockfile.sh diff --git a/.github/workflows/update-lockfile.yml b/.github/workflows/update-lockfile.yml index bf4752379..0956fd2c0 100644 --- a/.github/workflows/update-lockfile.yml +++ b/.github/workflows/update-lockfile.yml @@ -28,10 +28,7 @@ jobs: SKIP_LOCKFILE_UPDATE_FOR_LANGS: "" run: | cp lockfile.json /tmp/old_lockfile.json - nvim -l scripts/write-lockfile.lua - # Pretty print - cp lockfile.json /tmp/lockfile.json - cat /tmp/lockfile.json | jq --sort-keys > lockfile.json + nvim -l ./scripts/update-lockfile.lua - name: Commit changes run: | diff --git a/scripts/write-lockfile.lua b/scripts/update-lockfile.lua similarity index 75% rename from scripts/write-lockfile.lua rename to scripts/update-lockfile.lua index 0b1d0504e..dfd3e933f 100755 --- a/scripts/write-lockfile.lua +++ b/scripts/update-lockfile.lua @@ -1,18 +1,18 @@ #!/usr/bin/env -S nvim -l vim.opt.runtimepath:append('.') +local util = require('nvim-treesitter.util') -- Load previous lockfile local filename = require('nvim-treesitter.install').get_package_path('lockfile.json') -local lockfile = vim.json.decode(require('nvim-treesitter.util').read_file(filename)) +local lockfile = vim.json.decode(util.read_file(filename)) ---@type string? -local skip_lang_string = os.getenv('SKIP_LOCKFILE_UPDATE_FOR_LANGS') +local skip_lang_string = os.getenv('LOCKFILE_SKIP') local skip_langs = skip_lang_string and vim.split(skip_lang_string, ',') or {} vim.print('Skipping languages: ', skip_langs) local sorted_parsers = {} -local configs = require('nvim-treesitter.parsers').configs -for k, v in pairs(configs) do +for k, v in pairs(require('nvim-treesitter.parsers').configs) do table.insert(sorted_parsers, { name = k, parser = v }) end table.sort(sorted_parsers, function(a, b) @@ -42,7 +42,6 @@ for _, v in ipairs(sorted_parsers) do print('Skipping ' .. v.name) end end -vim.print(lockfile) --- write new lockfile -require('nvim-treesitter.util').write_file(filename, vim.json.encode(lockfile)) +lockfile = vim.fn.system('jq --sort-keys', vim.json.encode(lockfile)) +util.write_file(filename, lockfile) diff --git a/scripts/update-lockfile.sh b/scripts/update-lockfile.sh deleted file mode 100755 index d950b321a..000000000 --- a/scripts/update-lockfile.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env bash - -make_ignored() { - if [ -n "$1" ] - then - while read -r lang; do - if [ "$lang" != "$1" ] - then - printf "%s," "$lang" - fi - done < <(jq 'keys|@sh' -c lockfile.json) - fi -} - -TO_IGNORE=$(make_ignored $1) - -SKIP_LOCKFILE_UPDATE_FOR_LANGS="$TO_IGNORE" nvim -l ./scripts/write-lockfile.lua -# Pretty print -cp lockfile.json /tmp/lockfile.json -cat /tmp/lockfile.json | jq --sort-keys > lockfile.json diff --git a/scripts/update-readme.lua b/scripts/update-readme.lua index 9dd9f9183..ded0d6bcb 100755 --- a/scripts/update-readme.lua +++ b/scripts/update-readme.lua @@ -1,21 +1,19 @@ #!/usr/bin/env -S nvim -l vim.opt.runtimepath:append('.') - +local util = require('nvim-treesitter.util') +local parsers = require('nvim-treesitter.parsers') ---@class Parser ---@field name string ---@field parser ParserInfo -local parsers = require('nvim-treesitter.parsers').configs local sorted_parsers = {} -for k, v in pairs(parsers) do +for k, v in pairs(parsers.configs) do table.insert(sorted_parsers, { name = k, parser = v }) end table.sort(sorted_parsers, function(a, b) return a.name < b.name end) -local tiers = require('nvim-treesitter.parsers').tiers - local generated_text = [[ Language | Tier | Queries | CLI | NPM | Maintainer -------- |:----:|:-------:|:---:|:---:| ---------- @@ -38,7 +36,7 @@ for _, v in ipairs(sorted_parsers) do end -- tier - generated_text = generated_text .. (p.tier and tiers[p.tier] or '') .. ' | ' + generated_text = generated_text .. (p.tier and parsers.tiers[p.tier] or '') .. ' | ' -- queries generated_text = generated_text @@ -66,7 +64,7 @@ end generated_text = generated_text .. footnotes local readme = 'SUPPORTED_LANGUAGES.md' -local readme_text = require('nvim-treesitter.util').read_file(readme) +local readme_text = util.read_file(readme) local new_readme_text = string.gsub( readme_text, @@ -74,7 +72,7 @@ local new_readme_text = string.gsub( '\n' .. generated_text .. '' ) -require('nvim-treesitter.util').write_file(readme, new_readme_text) +util.write_file(readme, new_readme_text) if string.find(readme_text, generated_text, 1, true) then print(readme .. ' is up-to-date\n')