summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/check-query-files-and-compilation.yml4
-rwxr-xr-xscripts/check-queries.lua6
2 files changed, 9 insertions, 1 deletions
diff --git a/.github/workflows/check-query-files-and-compilation.yml b/.github/workflows/check-query-files-and-compilation.yml
index c771ae87..b9ad5b08 100644
--- a/.github/workflows/check-query-files-and-compilation.yml
+++ b/.github/workflows/check-query-files-and-compilation.yml
@@ -39,6 +39,8 @@ jobs:
- name: Check query files (Unix)
if: matrix.os != 'windows-latest'
+ env:
+ ALLOWED_INSTALLATION_FAILURES: haskell
run: nvim --headless -c "luafile ./scripts/check-queries.lua" -c "q"
- name: Compile parsers Windows
@@ -53,6 +55,8 @@ jobs:
- name: Check query files (Windows)
if: matrix.os == 'windows-latest'
+ env:
+ ALLOWED_INSTALLATION_FAILURES: haskell
run: C:\\tools\\neovim\\Neovim\\bin\\nvim.exe --headless -c "luafile ./scripts/check-queries.lua" -c "q"
- uses: actions/upload-artifact@v2
diff --git a/scripts/check-queries.lua b/scripts/check-queries.lua
index e89c92ca..623ad6bf 100755
--- a/scripts/check-queries.lua
+++ b/scripts/check-queries.lua
@@ -58,11 +58,15 @@ end
local ok, err = pcall(do_check)
+local allowed_to_fail = vim.split(vim.env.ALLOWED_INSTALLATION_FAILURES or '', ",", true)
for k, v in pairs(require 'nvim-treesitter.parsers'.get_parser_configs()) do
if not require 'nvim-treesitter.parsers'.has_parser(k) then
-- On CI all parsers that can be installed from C files should be installed
- if vim.env.CI and not v.install_info.requires_generate_from_grammar then
+ if vim.env.CI
+ and not v.install_info.requires_generate_from_grammar
+ and not vim.tbl_contains(allowed_to_fail, k) then
+
print('Error: parser for '..k..' is not installed')
vim.cmd('cq')
else