Amaan Qureshi
8d6d19de1b
build: add package-lock.json for npm cli package
2025-09-09 04:45:57 +02:00
Amaan Qureshi
17854168d9
feat(nix): add cross compilation support
2025-09-04 05:00:14 -04:00
Amaan Qureshi
d287acfcc0
refactor(nix): remove openssl dependency
2025-09-04 05:00:14 -04:00
Amaan Qureshi
1d0ebd1065
fix(rust): do not interpret readme doc comments as doc tests
2025-09-04 04:22:32 -04:00
Will Lillis
cc5463ad44
fix(test): improve readability of corpus error message mismatch
2025-09-04 00:59:44 -04:00
Amaan Qureshi
da61d7cac5
feat: add nix flake
2025-09-01 22:48:37 -04:00
Boris Verkhovskiy
9b23cd5394
feat: use compileStreaming when loading wasm parsers
2025-09-01 22:08:20 -04:00
Will Lillis
a12a79b366
fix(cli): canonicalize --lib-path arguments
...
This fixes an issue where "./foo.so" would would work but "foo.so" would not.
2025-08-31 01:10:43 -04:00
ObserverOfTime
90bdd63a71
fix(npm): add directory to repository fields
...
and remove non-existent "main" entry point
2025-08-30 17:16:25 -04:00
ObserverOfTime
ca27fb5d43
fix(cli): fix DSL type declarations
2025-08-30 16:47:47 -04:00
ObserverOfTime
0be215e152
fix(bindings): properly detect MSVC compiler
2025-08-29 13:32:55 +03:00
Amaan Qureshi
8387101a61
fix(lib): allow error nodes to match when they are child nodes
2025-08-28 18:02:47 -04:00
Amaan Qureshi
b7f36a13ba
fix(lib): check if an ERROR node is named before assuming it's the builtin error node
2025-08-28 17:13:57 -04:00
ObserverOfTime
107bd800b0
fix(bindings): improve zig dependency fetching logic
...
Currently, including a tree-sitter parser as a dependency in a zig
project and running `zig build test` on the project will fetch the
zig-tree-sitter dependency declared by the parser. This is a problem
because (a) consumers may not want this dependency for whatever reason
and (b) due to how often Zig breaks everything and how scarcely most
tree-sitter parsers are updated, the zig-tree-sitter version pinned
by the parser module will often be outdated and broken.
The workaround I used was taken from https://ziggit.dev/t/11234
2025-08-28 10:31:24 +03:00
ObserverOfTime
e67f9f8f7a
fix(bindings): add tree-sitter as npm dev dependency
...
npm is supposed to automatically install peer dependencies since v7
but sometimes it's not doing it and we need this dependency for tests
2025-08-27 19:34:09 +03:00
Quentin LE DILAVREC
79177a1cd5
fix(rust): EqCapture accepted cases where number of captured nodes differed by one
...
Problem: When using alternations, the `#eq?` predicate does not always use the same capture name.
Solution: Iterate the left and right captured nodes more independently.
2025-08-27 10:25:29 +02:00
ObserverOfTime
eb5ad7eb26
feat(playground): add a button to copy the tree
...
Co-Authored-By: Firas al-Khalil <firasalkhalil@gmail.com>
2025-08-25 10:21:48 +03:00
ObserverOfTime
4602e60c1b
refactor(playground): move style to head
2025-08-25 10:21:48 +03:00
ObserverOfTime
1c640ac2c3
fix(cli): correct resource paths
2025-08-25 10:21:48 +03:00
John-Philip Taylor
10f5a42fd7
feat(cli): Version updates ( #4179 )
...
- `version` on its own displays the current version
- `version --bump patch` bumps the patch version
- `version --bump minor` bumps the minor version
- `version --bump major` bumps the major version
- `version 1.2.3` bumps the version directly (existing behaviour)
All flavours of version bump displays a string in the form:
`Bumping version 1.2.3 to 4.5.6`
2025-08-24 00:53:41 -04:00
ObserverOfTime
88e0b4cea4
docs: change WASM/wasm to Wasm
...
That is the official capitalisation.
2025-08-21 09:56:32 +03:00
ObserverOfTime
0bb43f7afb
fix(playground): scroll with vanilla JS
...
jQuery must burn in fire.
2025-08-14 11:03:52 +03:00
Andrey L.
f9f7ae0850
fix(bindings): make npm repository field an object
2025-08-13 22:54:37 +03:00
ObserverOfTime
d45642c345
fix(bindings): don't ignore lockfiles
2025-08-13 22:51:12 +03:00
Will Lillis
3a47bc4435
fix(cli): escape delimiters '"' and '`' in cst node text
2025-08-11 22:39:12 -04:00
Will Lillis
3294b04436
fix(cli): remove trailing whitespace in cst print
2025-08-10 14:52:25 -04:00
Will Lillis
6f7f9a3869
refactor(test): replace long tuples with structs
2025-08-10 14:52:25 -04:00
Will Lillis
1704c604bf
feat(test): allow cst as expected output of test case
2025-08-10 14:52:25 -04:00
Will Lillis
21b38004da
fix(rust): adapt to new nightly iterator lints
2025-08-10 13:28:52 -04:00
Will Lillis
aed8b8b32c
feat(cli): rebuild parsers by default when --grammar-path is passed.
2025-08-10 13:28:52 -04:00
Will Lillis
1562b719d2
feat(cli): add --rebuild flag to query, highlight, and tags commands
2025-08-10 13:28:52 -04:00
Will Lillis
3d9f4d1bd3
fix(rust): remove redundant String clones
2025-08-09 16:02:28 -04:00
ObserverOfTime
9f2dd2f377
fix(bindings): fix clean makefile target
2025-08-09 14:41:22 +03:00
Ronald T. Casili
d87921bb9c
fix(bindings): update zig template files ( #4637 )
2025-08-09 10:18:07 +03:00
ObserverOfTime
f7838748df
fix(cli): drop homepage link from config
...
We don't actually use this currently and the vast majority of grammars
don't have a homepage other than the repository itself.
2025-08-09 10:14:17 +03:00
ObserverOfTime
7e7e376046
refactor(cli): conditional assignment consistency
2025-08-08 10:53:57 +03:00
ObserverOfTime
bbec252c51
refactor(cli): drop unused function
2025-08-08 10:53:57 +03:00
ObserverOfTime
9d619d6fdc
fix(bindings): use custom class name
2025-08-08 10:53:57 +03:00
Will Lillis
d641249f85
feat(cli): include language name in dump-languages output
2025-08-03 14:34:04 -04:00
Will Lillis
acfeed006a
feat(cli): allow users to specify dynamic libraries directly for
...
parse, query, test, and fuzz subcommands
2025-08-03 14:34:04 -04:00
Will Lillis
5e1daf0c41
fix(rust)!: take u32 for index parameter to Node::{child, named_child}
...
Co-authored-by: Ye Sijun <junnplus@gmail.com>
2025-08-03 12:58:53 -04:00
Will Lillis
d3c2fed4b3
fix(rust): correct indices for Node::utf16_text
2025-08-02 16:03:55 -04:00
Will Lillis
9ced6172de
fix(cli): improve error message when language in list can't be found ( #4643 )
...
Problem: When multiple input paths are provided to the `parse` command (a la `tree-sitter parse --paths [...]`), if a language can't be found for one of the paths, it can be a little unclear *which* path caused the failure. The loader *can* fail with `Failed to load language for file name <foo.bar>`, but this isn't guaranteed.
Solution: Attach some additional context in the case where multiple paths can be provided, displaying the problematic path on failure.
2025-08-02 11:52:54 +02:00
Pieter Goetschalckx
07b4c8d05d
fix(cli): add reserved type declarations and schema
...
- Use `globalThis` for `reserved` function export
- Add `reserved` field and function to DSL declarations
- Add `reserved` rule to grammar schema
2025-08-02 12:01:41 +03:00
Antonin Delpeuch
b787f31481
feat(bindings): generate in 2 steps via make/cmake ( #4646 )
...
This makes it possible to run `make` or `cmake --build` in grammar
repos where `grammar.json` hasn't been included, and still get the parser
compilation to work.
2025-08-02 11:57:29 +03:00
Will Lillis
62c53197c4
fix(cli): eliminate leak of version string
2025-07-29 20:44:48 -04:00
Antonin Delpeuch
8e90799e27
feat(generate): Support for --stage=json/parser/lib
2025-07-26 22:48:00 -04:00
Antonin Delpeuch
8676eda663
feat: Only evaluate grammar.js to grammar.json
...
This adds an `--evaluate-only` option to `tree-sitter generate`
so that it only does the evaluation of `grammar.js` to
`src/grammar.json`, without continuing on with the generation of
`src/parser.c` and related files.
It's a follow-up to #4580 .
2025-07-26 22:48:00 -04:00
Robert Muir
8c61bbdb73
feat(bindings): improve python binding test
...
Previously, the test would not detect ABI incompatibilities.
2025-07-25 13:22:49 +03:00
ObserverOfTime
99988b7081
fix(bindings): improve python platform detection
2025-07-25 13:21:36 +03:00