Commit Graph

218 Commits

Author SHA1 Message Date
dependabot[bot]
877f724846 ci: bump actions/create-github-app-token in the actions group
Bumps the actions group with 1 update: [actions/create-github-app-token](https://github.com/actions/create-github-app-token).


Updates `actions/create-github-app-token` from 2 to 3
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-20 17:42:48 +01:00
Christian Clason
511e5ccf40 ci: correct concurrency group for downstream 2026-01-22 18:44:49 +01:00
Christian Clason
62dad2a60a ci: add concurrency for downstream tests 2026-01-22 18:36:56 +01:00
Christian Clason
0d1b8b026b ci: use ubuntu-slim for small jobs 2026-01-22 18:36:56 +01:00
Christian Clason
4fc09bee78 ci(dependabot): fix labels 2025-12-17 13:12:25 +01:00
dependabot[bot]
cfdca13a5d ci: bump the actions group with 2 updates
Bumps the actions group with 2 updates: [actions/checkout](https://github.com/actions/checkout) and [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request).


Updates `actions/checkout` from 5 to 6
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

Updates `peter-evans/create-pull-request` from 7 to 8
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: peter-evans/create-pull-request
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-17 13:00:42 +01:00
Christian Clason
fc21d3db8c ci: add dependabot for GH actions 2025-12-17 12:55:05 +01:00
Christian Clason
846c7b50ee chore: remove FUNDING.yml 2025-12-17 12:55:05 +01:00
Christian Clason
2979e048b3 ci(test): bump tree-sitter/setup-actions to v2 2025-12-11 10:57:07 +01:00
Christian Clason
81aec1e45d 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.)
2025-11-10 11:32:04 +01:00
Riley Bruins
4b74045bbe chore: ask for file extension in new language PR template
This will really help me to search on github for diverse code samples.
2025-10-11 18:09:54 +02:00
Christian Clason
bf0234010a ci: bump actions/checkout to v5 2025-08-12 11:08:18 +02:00
Christian Clason
c78594ce06 ci(test): throttle all install steps 2025-05-22 19:50:31 +02:00
Christian Clason
6b55bc0fab ci(test): remove parser cache
Since installation now installs parsers _and_ queries, caching parsers
doesn't allow skipping the installation step (and caching queries does
not pay off).
2025-05-13 18:12:58 +02:00
Christian Clason
e8bfe271b0 docs: update to rewrite
This updates

* README
* CONTRIBUTING
* the `:h nvim-treesitter` documentation

to the current state of `main`. It also adds a pull request template for
adding a new language.
2025-05-12 18:43:41 +02:00
Christian Clason
dc8f3415a7 feat!: update tier 1 parsers to versions 2025-05-12 18:43:41 +02:00
Christian Clason
53dccb3a77 feat(tests)!: new infrastructure based on makefile
Problem: Not easy to run all checks and tests locally. Redundant CI
workflows.

Solution: Separate CI into two workflows:
 * lint: Lua files (stylua, luals), query files (valid captures,
   predicates, directives using tsqueryls), docs
   (SUPPORTED_LANGUAGES.md) -- does not need parser installation
 * tests: parsers (ABI compatibility), query files (tsqueryls on
   Linux/macOS; nvim on Windows), highlight and indent tests (separated
   for better readability) -- needs parser installation (but only once)

Switch to https://github.com/nvim-treesitter/highlight-assertions fork
with ABI 15 support.

Run all tests (on Linux and macOS) through `make` (`formatlua`,
`checklua`, `lintquery`, `formatquery`, `checkquery`, `docs`, `tests`),
which downloads and caches all necessary dependencies.

Remove `update-readme` workflow (replaced by lint job on PRs).
2025-05-12 18:43:41 +02:00
Christian Clason
c5a8c9d01a ci(tests): add optional workflow for generating grammars
run on PR by adding label `ci:generate` or manually
2025-05-12 18:43:40 +02:00
Christian Clason
214cfcf851 feat!: use tree-sitter build 2025-05-12 18:43:40 +02:00
Christian Clason
c17de56890 feat!: track parser revision in Lua
Problem: Tracking parser revision in lockfile and allowing override
through the parsers module complicates the code. In addition, only
revision changes are handled robustly, not changes to other installation
info.

Solution: Track parser revision in the parsers module directly. Reload
parser table on every install or update call. Support modifying parser
table in a `User TSUpdate` autocommand.
2025-05-12 18:43:40 +02:00
Christian Clason
5a38df5627 feat(install)!: generate from json instead of requiring node
Problem: Many parsers require node/npm to evaluate the `grammar.js`
before being able to generate a parser from it.

Solution: Generate from `grammar.json` instead, which is fully resolved.
Drops `node` and `npm` as (optional) requirements for nvim-treesitter.

Note that this requires parsers to commit the generated json iff the
grammar requires evaluation (which is currently the case for all tracked
languages).
2025-05-12 18:43:40 +02:00
Christian Clason
37957d6bcf refactor: use vim.uv 2025-05-12 18:43:40 +02:00
Christian Clason
9c0a99819c ci: remove update-lockfile shell script 2025-05-12 18:43:40 +02:00
Christian Clason
5aa2984a02 refactor: use vim.fs.joinpath 2025-05-12 18:43:40 +02:00
Christian Clason
eb1b6ec542 feat!: drop luarocks release 2025-05-12 18:43:40 +02:00
Christian Clason
692b051b09 feat!: drop modules, general refactor and cleanup 2025-05-12 18:43:40 +02:00
Christian Clason
e5c8398e44 ci(bot): bump create-github-app-token to v2 2025-04-06 11:23:58 +02:00
Christian Clason
30654ee72a ci(tests): run tests on v0.10.4 2025-04-02 11:40:11 +02:00
Christian Clason
36a7d010bb ci(update): only check once a week (sat)
I need a break...
2025-04-02 11:19:22 +02:00
Christian Clason
79a6192d47 ci(update): block dhall,elm,enforce,rust (ABI 15) 2025-04-02 11:19:22 +02:00
Christian Clason
cfbbea187b ci(tests): check queries on 0.10.4 2025-04-02 11:19:22 +02:00
Christian Clason
c8c7924cc3 ci(update): block wit (ABI 15) 2025-03-21 08:29:36 +01:00
Christian Clason
d96c52565c ci(update): block bp (ABI 15) 2025-03-13 08:59:53 +01:00
Christian Clason
c641ca8e05 ci(update): block rescript (ABI 15) 2025-03-04 09:25:23 +01:00
Christian Clason
8bf733ccce ci(update): block templ (ABI 15) 2025-03-02 11:16:59 +01:00
Christian Clason
f56d2f6765 ci(update): block typespec (ABI 15) 2025-03-01 11:55:29 +01:00
Christian Clason
f37b1668a6 ci(update): block verilog (ABI 15) 2025-03-01 11:15:34 +01:00
Christian Clason
225419160b ci(update): block git_config (ABI 15) 2025-02-25 09:46:10 +01:00
Christian Clason
c08aa2fe3f ci(update): block devicetree (ABI 15) 2025-02-23 12:01:29 +01:00
Christian Clason
1a6e42bb8c ci(update): block nickel (ABI 15) 2025-02-18 09:16:17 +00:00
Christian Clason
da89532f03 ci(update): block t32 (ABI 15) 2025-02-09 12:15:07 +01:00
nvim-treesitter-bot[bot]
824bf8455f bot(lockfile): update erlang, vhs
lock sql parser (ABI 15)
2025-02-06 07:43:26 +00:00
Christian Clason
16a51977dc Revert "ci(update): block vhdl (ABI 15)"
This reverts commit 1545e964e2.
2025-02-02 15:17:50 +01:00
Christian Clason
1545e964e2 ci(update): block vhdl (ABI 15) 2025-02-02 15:00:38 +01:00
nvim-treesitter-bot[bot]
bcd0b26607 bot(lockfile): update bash, desktop, haskell, julia, nix, objc, typst 2025-02-01 08:47:04 +00:00
Christian Clason
5da195ac3d ci: use new issue types 2025-01-17 10:46:06 +01:00
Christian Clason
b4897f5a84 ci(update): unblock gnuplot 2024-12-23 16:10:41 +01:00
zetashift
c5be87ad3e refactor(unison): update to latest treesitter grammar 2024-11-13 09:09:53 +01:00
Christian Clason
d105f2cb7b feat(julia): update parser and queries 2024-11-11 08:40:34 +01:00
nvim-treesitter-bot[bot]
425b589683 bot(lockfile): update inko, nu, udev 2024-11-08 07:07:56 +00:00