Tree-sitter 0.25 upgrade readiness
tree-sitter@0.21.x (ABI 13–14) → target tree-sitter@0.25.0 (ABI 13–15).
TL;DR
Blocked — 10 grammars are not yet 0.25-compatible. Upstream movement: yes — 2 grammars have unreleased fixes on main.
- 5/15 npm-installed grammars already accept tree-sitter@0.25.0
- 2 intentionally pinned (see below)
- 2 waiting on an upstream npm release
- 5 blocked on upstream (no fix even on main)
- 1 could not be checked (npm registry unreachable)
- 2 bump candidate(s) you can take TODAY (npm-latest is newer than the pin AND its peer dep accepts our current runtime)
What you can do today
These pins lag npm latest and the latest version's peer dep already accepts our current tree-sitter@0.21.x runtime. Bumping is independent of the 0.25 upgrade and should be a quick PR.
tree-sitter-dart: — → 1.0.0 (peer none)
tree-sitter-kotlin: — → 0.3.8 (peer ^0.21.0)
Disposition
Ready for 0.25 (5)
These grammars' npm-latest peer dep already accepts the target runtime. No action needed for the upgrade.
tree-sitter-c-sharp — pinned 0.23.1, npm latest 0.23.5
tree-sitter-dart — pinned —, npm latest 1.0.0 (also a bump candidate — see above)
tree-sitter-go — pinned ^0.23.0, npm latest 0.25.0
tree-sitter-javascript — pinned ^0.23.0, npm latest 0.25.0
tree-sitter-python — pinned 0.23.4, npm latest 0.25.0
Intentionally pinned (2)
Deliberately held below npm latest. These are not drift — each entry lists the issue motivating the pin and the condition for unpinning.
Waiting on upstream npm release (2)
Fixes are merged on the upstream main branch but not yet published to npm. We can move forward as soon as upstream cuts a release.
tree-sitter-php@0.24.2 — peer ^0.22.4. ABI 15 on tree-sitter/tree-sitter-php@master not yet published
tree-sitter-rust@0.24.0 — peer ^0.22.1. peer relaxed to ^0.25.0 on tree-sitter/tree-sitter-rust@master not yet published
Blocked on upstream (5)
Peer dep is too tight on both the latest npm release and on upstream main. These need an upstream issue/PR before we can proceed.
tree-sitter-java@0.23.5 — peer ^0.21.1
tree-sitter-kotlin@0.3.8 — peer ^0.21.0
tree-sitter-ruby@0.23.1 — peer ^0.21.1
tree-sitter-swift@0.7.1 — peer ^0.22.1
tree-sitter-typescript@0.23.2 — peer ^0.21.0
Could not check (1)
npm registry fetch failed for these grammars. Re-run the workflow to retry.
tree-sitter-proto (pinned —)
Full grammar matrix
Click to expand the raw per-grammar table (used by the workflow's change-detection bot).
| Grammar |
Pinned |
npm latest |
Peer dep |
Satisfies 0.25? |
ABI |
Upstream ABI |
Status |
tree-sitter-c |
— |
0.24.1 |
^0.22.4 |
No |
? |
15 |
Intentionally pinned |
tree-sitter-c-sharp |
0.23.1 |
0.23.5 |
^0.25.0 |
Yes |
14 |
15 |
Ready |
tree-sitter-cpp |
0.23.2 |
0.23.4 |
^0.21.1 |
No |
14 |
15 |
Intentionally pinned |
tree-sitter-dart |
— |
1.0.0 |
none |
Yes |
? |
15 |
Ready |
tree-sitter-go |
^0.23.0 |
0.25.0 |
^0.25.0 |
Yes |
14 |
15 |
Ready |
tree-sitter-java |
^0.23.5 |
0.23.5 |
^0.21.1 |
No |
14 |
14 |
Blocking |
tree-sitter-javascript |
^0.23.0 |
0.25.0 |
^0.25.0 |
Yes |
14 |
15 |
Ready |
tree-sitter-kotlin |
— |
0.3.8 |
^0.21.0 (required) |
No |
? |
14 |
Blocking |
tree-sitter-php |
^0.23.0 |
0.24.2 |
^0.22.4 |
No |
14 |
15 |
Unreleased (ABI 15 on main) |
tree-sitter-proto |
— |
? |
? (fetch failed) |
No |
? |
15 |
Unknown (fetch failed) |
tree-sitter-python |
0.23.4 |
0.25.0 |
^0.25.0 |
Yes |
14 |
15 |
Ready |
tree-sitter-ruby |
^0.23.1 |
0.23.1 |
^0.21.1 |
No |
14 |
14 |
Blocking |
tree-sitter-rust |
0.23.1 |
0.24.0 |
^0.22.1 |
No |
14 |
15 |
Unreleased (peer relaxed on main) |
tree-sitter-swift |
— |
0.7.1 |
^0.22.1 (required) |
No |
? |
? |
Blocking |
tree-sitter-typescript |
^0.23.2 |
0.23.2 |
^0.21.0 |
No |
14 |
14 |
Blocking |
Generated daily by .github/workflows/tree-sitter-upgrade-readiness.yml. Closes automatically when all blockers are resolved.
Tree-sitter 0.25 upgrade readiness
tree-sitter@0.21.x(ABI 13–14) → targettree-sitter@0.25.0(ABI 13–15).TL;DR
Blocked — 10 grammars are not yet 0.25-compatible. Upstream movement: yes — 2 grammars have unreleased fixes on main.
What you can do today
These pins lag npm latest and the latest version's peer dep already accepts our current
tree-sitter@0.21.xruntime. Bumping is independent of the 0.25 upgrade and should be a quick PR.tree-sitter-dart:—→1.0.0(peernone)tree-sitter-kotlin:—→0.3.8(peer^0.21.0)Disposition
Ready for 0.25 (5)
These grammars' npm-latest peer dep already accepts the target runtime. No action needed for the upgrade.
tree-sitter-c-sharp— pinned0.23.1, npm latest0.23.5tree-sitter-dart— pinned—, npm latest1.0.0(also a bump candidate — see above)tree-sitter-go— pinned^0.23.0, npm latest0.25.0tree-sitter-javascript— pinned^0.23.0, npm latest0.25.0tree-sitter-python— pinned0.23.4, npm latest0.25.0Intentionally pinned (2)
Deliberately held below npm latest. These are not drift — each entry lists the issue motivating the pin and the condition for unpinning.
tree-sitter-cpinned at—(npm latest0.24.1)Segfault on Windows: tree-sitter 0.21.1 + tree-sitter-c 0.23.2 ABI incompatible abhigyanpatwari/GitNexus#1242 — last release built against the tree-sitter@0.21 ABI; tree-sitter-c@0.23.x prebuilds segfault on Windows under tree-sitter@0.21.1
tree-sitter-cpppinned at0.23.2(npm latest0.23.4)Segfault on Windows: tree-sitter 0.21.1 + tree-sitter-c 0.23.2 ABI incompatible abhigyanpatwari/GitNexus#1242 — last 0.23.x release before tree-sitter-cpp added a runtime dep on the broken-ABI tree-sitter-c@^0.23.1; pinning here removes the need for a transitive override
Waiting on upstream npm release (2)
Fixes are merged on the upstream main branch but not yet published to npm. We can move forward as soon as upstream cuts a release.
tree-sitter-php@0.24.2— peer^0.22.4. ABI 15 ontree-sitter/tree-sitter-php@masternot yet publishedtree-sitter-rust@0.24.0— peer^0.22.1. peer relaxed to^0.25.0ontree-sitter/tree-sitter-rust@masternot yet publishedBlocked on upstream (5)
Peer dep is too tight on both the latest npm release and on upstream main. These need an upstream issue/PR before we can proceed.
tree-sitter-java@0.23.5— peer^0.21.1tree-sitter-kotlin@0.3.8— peer^0.21.0tree-sitter-ruby@0.23.1— peer^0.21.1tree-sitter-swift@0.7.1— peer^0.22.1tree-sitter-typescript@0.23.2— peer^0.21.0Could not check (1)
npm registry fetch failed for these grammars. Re-run the workflow to retry.
tree-sitter-proto(pinned—)Full grammar matrix
Click to expand the raw per-grammar table (used by the workflow's change-detection bot).
tree-sitter-ctree-sitter-c-sharptree-sitter-cpptree-sitter-darttree-sitter-gotree-sitter-javatree-sitter-javascripttree-sitter-kotlintree-sitter-phptree-sitter-prototree-sitter-pythontree-sitter-rubytree-sitter-rusttree-sitter-swifttree-sitter-typescriptGenerated daily by
.github/workflows/tree-sitter-upgrade-readiness.yml. Closes automatically when all blockers are resolved.