aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
authorChristian Clason <c.clason@uni-graz.at>2025-11-08 13:23:17 +0100
committerChristian Clason <ch.clason+github@icloud.com>2025-11-10 11:32:04 +0100
commit81aec1e45d58b587fa055a938cd6642c6b94ba4d (patch)
tree69e8c611baac14f204ba577db30b7a6f2bab724e /.github/workflows
parentfeat(parsers): update asm, devicetree, gdshader, hack, hyprlang, koto, matlab... (diff)
downloadnvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar.gz
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar.bz2
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar.lz
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar.xz
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.tar.zst
nvim-treesitter-81aec1e45d58b587fa055a938cd6642c6b94ba4d.zip
ci: add check for downstream queries
Problem: Parser updates may break downstream queries. Solution: Add workflow that clones and validates queries in * https://github.com/nvim-treesitter/nvim-treesitter-textobjects#main * https://github.com/nvim-treesitter/nvim-treesitter-context on changes to the parsers.lua table. (Workflow should not be required to pass; the purpose is to give a heads-up that follow-up PRs are needed.)
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/downstream.yml58
1 files changed, 58 insertions, 0 deletions
diff --git a/.github/workflows/downstream.yml b/.github/workflows/downstream.yml
new file mode 100644
index 000000000..b4ea6fc85
--- /dev/null
+++ b/.github/workflows/downstream.yml
@@ -0,0 +1,58 @@
+name: Tests
+
+on:
+ pull_request:
+ branches:
+ - "main"
+ paths:
+ - "lua/nvim-treesitter/parsers.lua"
+ workflow_dispatch:
+
+jobs:
+ test-downstream:
+ name: Check downstream queries
+ runs-on: ubuntu-latest
+ env:
+ NVIM: "nvim"
+ steps:
+ - uses: actions/checkout@v5
+ - uses: tree-sitter/setup-action/cli@v1
+
+ - name: Install and prepare Neovim
+ env:
+ NVIM_TAG: "nightly"
+ run: |
+ bash ./scripts/ci-install.sh
+
+ - name: Compile parsers
+ run: $NVIM -l ./scripts/install-parsers.lua --max-jobs=10
+
+ - name: Set up ts_query_ls
+ run: curl -fL https://github.com/ribru17/ts_query_ls/releases/latest/download/ts_query_ls-x86_64-unknown-linux-gnu.tar.gz | tar -xz
+
+ - name: Clone textobjects
+ uses: actions/checkout@v5
+ with:
+ repository: nvim-treesitter/nvim-treesitter-textobjects
+ ref: main
+ path: .tests/nvim-treesitter-textobjects
+ sparse-checkout: queries
+
+ - name: Check textobjects
+ working-directory: .tests/nvim-treesitter-textobjects/
+ run: ../../ts_query_ls check queries/
+
+ - name: Clone context
+ if: always()
+ uses: actions/checkout@v5
+ with:
+ repository: nvim-treesitter/nvim-treesitter-context
+ ref: master
+ path: .tests/nvim-treesitter-context
+ sparse-checkout: queries
+
+ - name: Check context
+ if: always()
+ working-directory: .tests/nvim-treesitter-context/
+ run: ../../ts_query_ls check queries/
+