Firas al-Khalil
5d9605a91e
feat(cli): concurrent build of same grammar on different paths
2025-12-29 00:20:05 -05:00
Firas al-Khalil
5293dd683e
fix(cli): report library load failure
...
Instead of panicking somehere else.
This happens on concurrent builds of the the same grammar.
2025-12-29 00:20:05 -05:00
Firas al-Khalil
62effdf128
fix(cli): report context on compile fail
2025-12-29 00:20:05 -05:00
WillLillis
8e4f21aba0
fix(rust): address nightly clippy lint
2025-12-27 17:05:53 -05:00
WillLillis
5208299bbb
fix(cli): set language in cwd for all usages of highlight command
2025-12-27 17:05:53 -05:00
skewb1k
f96d518ebf
fix(cli): remove extra newline with --cst
...
Makes CST output consistent with other formats.
2025-12-24 15:06:48 +01:00
skewb1k
d5b82fbbab
fix(cli): remove extra indentation with --cst --no-ranges
2025-12-24 15:06:48 +01:00
Will Lillis
eacb95c85d
fix(cli): correct discrepancy with cst for --no-ranges
2025-12-16 21:34:03 -05:00
skewb1k
4ac2d5d276
fix(cli): trailing whitespace after multiline text nodes in CST
...
Problem:
The CST printer emits trailing whitespace after multiline text nodes.
With 1704c604bf and `:cst` corpus tests
this causes trailing spaces to appear on `test --update`.
These spaces cannot be removed afterward, as the test runner
expects an exact character-for-character match for CST tests.
Solution:
Print whitespace only if node is not multiline.
2025-12-14 21:34:50 -05:00
Christian Clason
98de2bc1a8
feat: start working on v0.27
...
* bump tree-sitter crates to 0.27.0
* bump tree-sitter-language to 0.1.7
2025-12-13 14:14:33 +01:00
Christian Clason
cd4b6e2ef9
0.26.3
2025-12-13 13:41:03 +01:00
Will Lillis
8b8199775f
0.26.x
...
Also bump the tree-sitter-language crate to 0.1.6
2025-12-09 17:19:25 -05:00
Will Lillis
8a3dcc6155
release 0.26.1
2025-12-08 17:05:03 -05:00
ObserverOfTime
b9c2d1dc89
feat(bindings): add Java bindings
2025-12-08 15:47:15 -05:00
ObserverOfTime
3182efeccc
feat(bindings): add byproducts to cmake
2025-12-08 04:35:09 -05:00
Will Lillis
bec7c3272b
fix(loader)!: correct arguments passed to select_language
2025-12-07 17:11:28 -05:00
dependabot[bot]
3ff8edf9e8
build(deps): bump js-yaml from 4.1.0 to 4.1.1 in /crates/cli/eslint
...
Bumps [js-yaml](https://github.com/nodeca/js-yaml ) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1 )
---
updated-dependencies:
- dependency-name: js-yaml
dependency-version: 4.1.1
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2025-12-05 22:25:23 -05:00
Will Lillis
888f57657d
fix(cli): improve error reporting for invalid range arguments to query
...
command
2025-12-03 18:06:16 -05:00
Piotr Osiewicz
c0b1710f8a
Add containing range APIs to query cursor
...
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: dino <dinojoaocosta@gmail.com>
Co-authored-by: John Tur <john-tur@outlook.com>
Co-authored-by: Piotr Osiewicz <24362066+osiewicz@users.noreply.github.com>
Co-authored-by: dino <dinojoaocosta@gmail.com>
Co-authored-by: Will Lillis <will.lillis24@gmail.com>
2025-12-03 18:06:16 -05:00
Piotr Osiewicz
7d3feeae9a
cli: Do not validate UTF-8 boundaries when query results are not being
...
tested
Co-authored-by: Kirill Bulatov <mail4score@gmail.com>
Co-authored-by: dino <dinojoaocosta@gmail.com>
Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-authored-by: John Tur <john-tur@outlook.com>
2025-12-03 18:06:16 -05:00
WillLillis
df8b62fc50
feat(xtask): bring wasi-sdk treatment up to par with the loader
...
The loader package's `ensure_wasi_sdk_exists` private method checks for
the wasi-sdk, fetching it if it can't be found. This logic was
re-implemented in xtask for `build-wasm-stdlib`, but without the
fetching functionality. We can have nice things in xtask too! Rather
than make this function a public member of `tree-sitter-loader`, we
just re-implement and leave a nice comment asking people to keep the
two in sync.
2025-11-27 16:06:25 -05:00
ObserverOfTime
14b4708018
fix(loader): write Wasm lib directly to lib dir
...
Problem: `fs::rename` fails if the parser directory and the Tree-sitter
library directory are on different file systems.
Solution: Write the library file directly to the final directory.
2025-11-25 17:23:44 +01:00
WillLillis
dcef0cc0ee
fix(cli): correct query match limit warning condition
2025-11-25 17:23:19 +01:00
WillLillis
c1a0f48781
fix(cli): return error if --wasm flag is passed when the wasm feature
...
is disabled
This applies to the `parse` and `test` commands, but not `build` as it
doesn't require the wasm feature. Also, hide the `--wasm` options if
from the `--help` output if the feature is disabled.
2025-11-25 17:23:19 +01:00
Antonin Delpeuch
f6d17fdb04
fix(node): bump tree-sitter dep to 0.25 in bindings
...
Sets the dependency `tree-sitter` to version 0.25 in
the NodeJS bindings generated by default, so that
`npm run test` passes.
2025-11-25 03:32:31 -05:00
Riley Bruins
829733a35e
fix(query): prevent infinite loop with + and ? quantifiers
...
**Problem:** A query with a `?` quantifier followed by a `+` quantifier
would hang at 100% CPU usage while iterating through a tree, regardless
of the source content.
**Solution:** Collect all quantifiers in one step, and then add the
required repeat/optional step logic *after* we have determined the
composite quantifier we need to use for the current step.
2025-11-25 03:21:13 -05:00
Christian Clason
d64b863030
build(deps): bump wasi-sdk to v29
2025-11-25 07:41:04 +01:00
Will Lillis
0d656de98b
feat(cli): update zig bindings with version command
2025-11-21 19:40:14 -05:00
Amaan Qureshi
b095968dff
refactor(cli): clean up version updating code
...
This commit adds proper error types when updating the version across
files
2025-11-21 19:40:14 -05:00
Will Lillis
320c0865e9
feat(cli): don't bail after first version update fails
2025-11-21 19:40:14 -05:00
ObserverOfTime
60635e0729
fix(generate): add node_modules to quickjs resolver
2025-11-21 19:39:53 -05:00
Will Lillis
877782a8a4
fix(docs): update cli docs to reflect changes to various subcommand
...
arguments
2025-11-19 04:30:01 -05:00
Antonin Delpeuch
0e1f715ef1
Move PathsJSON method, reformat
2025-11-19 03:57:13 -05:00
Antonin Delpeuch
f3012a999d
feat(bindings): expose the queries dynamically
...
Available in the Rust, Python, and Node bindings
Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
2025-11-19 03:57:13 -05:00
Valeriy Kosikhin
57e3a7b2ca
fix(loader): set correct runtime host for cc while cross-compiling
...
Pass the BUILD_TARGET variable from the build environment as 'host' for
the cc crate. Otherwise, when cross-compiled, cc will keep looking for a
cross-compiler instead of the native one on the target system.
Signed-off-by: Valeriy Kosikhin <vkosikhin@gmail.com>
2025-11-17 18:19:34 +01:00
WillLillis
61c21aa408
refactor(generate)!: include path when available in IO errors
2025-11-14 11:28:00 +01:00
WillLillis
7eb23d9f3c
refactor(config)!: transition from anyhow to thiserror
2025-11-14 11:28:00 +01:00
WillLillis
db2d221ae9
fix(generate): remove leftover imports of anyhow
2025-11-14 11:28:00 +01:00
WillLillis
67cb3cb881
refactor(loader)!: transition from anyhow to thiserror
2025-11-14 11:28:00 +01:00
Will Lillis
7657cc9d35
fix(dsl): add ReservedRule to Rule type definition
2025-11-12 07:27:05 +01:00
Will Lillis
361287fb56
fix(cli)!: deprecate --build flag for generate command
2025-11-07 08:51:24 +01:00
Will Lillis
419a5a7305
fix(generate): don't short-circuit within extend_sorted
2025-11-03 01:22:29 -05:00
Will Lillis
c7b5f89392
feat(xtask): generate JSON schema for cli TestSummary
2025-11-02 21:08:55 -05:00
Will Lillis
d546e28abf
fix(cli): mark report_states_for_rule and json/json_summary flags
...
for `generate` command as conflicting
2025-11-02 21:08:55 -05:00
WillLillis
86e2fd2337
fix(cli): correct behavior of parse --stat and --json-summary flags
2025-11-02 21:08:55 -05:00
WillLillis
ff255a2354
test: add coverage for new test aggregation method
2025-11-02 21:08:55 -05:00
WillLillis
fe67521b3d
refactor(cli)!: deprecate json flags in favor of json-summary
2025-11-02 21:08:55 -05:00
WillLillis
f02d7e7e33
feat(test): display test results in JSON format
2025-11-02 21:08:55 -05:00
WillLillis
6a8676f335
refactor(test): generalize printing of test diff keys and diffs
2025-11-02 21:08:55 -05:00
WillLillis
944386d25f
refactor(test): clean up test filtering logic
...
Also, only update the expected output of a case when it is skipped if
the `update` flag has been passed
2025-11-02 21:08:55 -05:00