chore(deps): update dependency tree-sitter-language-pack to v1.19.1 - #365
Open
renovate[bot] wants to merge 1 commit into
Open
chore(deps): update dependency tree-sitter-language-pack to v1.19.1#365renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
Contributor
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
📊 Source Code Metrics (this PR vs
|
renovate
Bot
force-pushed
the
renovate/tree-sitter-language-pack-1.x
branch
from
September 10, 2026 11:15
3c5aadd to
8bdd105
Compare
|
Important Review skippedBot user detected. To trigger a single review, invoke the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
renovate
Bot
force-pushed
the
renovate/tree-sitter-language-pack-1.x
branch
from
September 11, 2026 19:59
8bdd105 to
5e84fd5
Compare
renovate
Bot
force-pushed
the
renovate/tree-sitter-language-pack-1.x
branch
from
September 12, 2026 17:58
5e84fd5 to
04bc5ee
Compare
renovate
Bot
force-pushed
the
renovate/tree-sitter-language-pack-1.x
branch
from
September 13, 2026 17:34
04bc5ee to
7011f32
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==1.16.1→==1.19.1Release Notes
xberg-io/tree-sitter-language-pack (tree-sitter-language-pack)
v1.19.1Compare Source
Changed
DataNode,ProcessResultandStructureItembecomeCodablestructs with typed propertiesinstead of
typealiases to opaque Rust handles -- but does not update the Swift e2e suite itgenerates alongside them, which still calls
result.language()andresult.structure()onwhat are now properties. The two halves of its own output do not compile together, and
e2e/is generated with a CI freshness gate, so the mismatch cannot be patched downstream. Reported
upstream; the upgrade lands once the e2e emitter follows the binding emitter.
release/swift/<version>branches.publish.yamlmoves therelease tag onto the same checksummed commit it pushes the branch to, so each branch named a
commit already reachable through
v<version>; a consumer pinned to one can switch toexact: "<version>"with no other change.release/swift/1.19.0is retained.Fixed
agdaexternal scanner.VEC_POPis a barelen--andVEC_BACKreadsdata[len - 1], so the dedent loop could drain the stack, wraplentoUINT32_MAXand dereference the buffer plus 16 GiB. 1023 or more repeated'characters -- or NUL bytes -- crash the parser with
SIGBUS. The same scanner also seeded itscolumn-0 sentinel only when
deserializewas called with a NULL buffer, while tree-sitterresets a scanner with a non-NULL inline buffer of length 0, leaving the following scan to read
data[-1]. A survey of all 186 vendored scanners found both defects only inagda.load_from_dircalledLanguage::from_rawon a downloaded parser with only a null check, so an incompatible grammarwas accepted and failed later at
ts_parser_set_language-- or, just outside the compatiblerange, parsed wrongly. The ABI version is now compared against the linked runtime's
MIN_COMPATIBLE_LANGUAGE_VERSION..=LANGUAGE_VERSIONand rejected with both versions named. Thebounds are read from the runtime, so a runtime upgrade moves them rather than leaving a stale
literal behind.
scripts/sync_zig_zon_hashes.pynow maintainsalef.toml's[crates.e2e.registry.packages.zig.platform_hashes]alongsidetest_apps/zig/build.zig.zon.Nothing had ever populated that table, so it carried five
STALE_HASH_REGENERATEplaceholders;Alef responds to a placeholder by omitting the
.hashline entirely, which is the only reasonthe manifest had to be declared
user_ownedin the first place. The five real digests are inplace and the gate now fails on drift in either file.
the 120-minute limit, every one inside the parse sweep after all twelve preceding steps had
passed, so the job reported neither its findings nor how far it got. The sweep now runs against
a 90-minute budget checked between languages, states how many languages it swept, names any it
did not reach, and bounds each parse with a timeout -- one pathological input had been running
over ten minutes. The day's language order rotates by day-of-year so a truncated sweep stops
dropping the same alphabetical tail every night.
SIGABRTwhereabort_on_errordefaults to 1 and printsERROR: UndefinedBehaviorSanitizer,neither of which the previous detector matched, so the
agdacrash above was exactly the shapeit let through; any parse killed by a signal now counts. Its sanitizer environment is scoped to
the
ts-packinvocation as well -- as a step-levelenv:it also reached the shell,python3,find,grepandtee, each running uninstrumented with the runtimeLD_PRELOADed into itand
exitcode=42in force, so a diagnosis raised in a helper would have been reported as ascanner finding.
v1.19.0Compare Source
Changed
tree-sitter-languageto 0.1.8 in the samestep. The two pins are not independent: 0.27 requires
tree-sitter-language^0.1.8, and 0.1.8relocates the 0.26 WASM shims under
wasm/unsupported/so they no longer compile against theolder runtime. The grammar ABI is unchanged -- both 0.26 and 0.27 are
TREE_SITTER_LANGUAGE_VERSION15 with a minimum compatible version of 13 -- so every bundledgrammar loads exactly as before and no regeneration is implied.
tree-sitterdirectly must move to 0.27 in the same step. Thetree-sittercrate declareslinks = "tree-sitter", and Cargo permits only one package perlinksvalue in a dependency graph, so pairing this release with a 0.26 pin fails to resolverather than failing to compile. Nothing this crate exports changed: the requirement is a
dependency floor, not a break in its own API.
NDEBUGonwasm32. 0.27's WASM libc is a documented subsetthat excludes
assert, so a scanner keeping its assertions emitted an unresolved__assert_fail.That became an
envmodule import rather than a link error, and the package then failed to loadat runtime with
Cannot find module 'env'. Native builds keep their assertions.memchr,strcmp,iswalnumand friends) now that0.27 defines them. Keeping both made the two definitions collide at link time, which broke the
WASM package under the split-codegen-unit settings the release build uses.
incomplete libc. 0.27 supplies its own WASM libc and forwards C allocation to the Rust
application's global allocator.
Fixed
SwiftTreeSitter as loose object files, while this package's Rust staticlib carries the 0.27
runtime in one archive member. Archive members load only to resolve an undefined symbol, and
0.27's new
ts_language_is_parseablewas the first symbol SwiftPM's copy could not supply --pulling the member in and colliding on 253 other runtime symbols at link time. The C bridge now
provides a weak definition, so the member stays unreferenced and yields to any future SwiftPM
runtime that exports the symbol itself (#189).
wasm32builds now find their headers under either wasi-sysroot include layout. wasi-libcrenamed
include/wasm32-wasitoinclude/wasm32-wasip1, and probing only the former meant asysroot that existed but used the newer name contributed no include flag at all, failing every
grammar with
'stdlib.h' file not found. Toolchains whose clang supplies its own sysroot wereunaffected, which is why this surfaced only in local builds.
Node::child_countnow returns tree-sitter'su32widened to theusizethis crate has alwaysdeclared, rather than failing to compile against the new runtime.
v1.18.0Compare Source
Changed
al,blade,cfml,dotenv,gitcommit,javadoc,kcl,kdl,lean,magik,mlir,nix,ocaml,ocaml_interface,perl,proto,sas,sql,swift,sysmlandt32.ablis nolonger held back: upstream now defines the
outer_joinnode itshighlights.scmreferences, so it compiles for the first time since the hold was taken.
cudais now theone deliberate hold -- upstream's committed
parser.cgrew past the regenerationthreshold, so a bump would ship it as-is at ABI 15 and drop the injections and tags
queries the grammar only receives while being regenerated.
ocaml_interfacehighlights overlay from upstream's reworked query.tree-sitter-ocaml declares one shared
queries/highlights.scmfor all three of itsgrammars, but that query matches
(shebang), which only the implementation grammardefines; the overlay is upstream's file with that alternative removed, and it had drifted
behind their block-access rework.
C#
containsassertions now compare a JSON-serialized value instead ofConvert.ToString, which reported a type name rather than content for tagged unions suchas
StructureKind. The PHP e2e runner exports the verified extension path so processes itspawns under
-nload the same build.rmcpto 3.3.tree-sitter-language0.1.7 pin. tree-sitter 0.27requires
tree-sitter-language0.1.8 and removed itsPackage.swift, so SwiftTreeSittercannot follow it; the upgrade also changes this crate's public API, since
Languageisre-exported. (#189)
Fixed
tree-sitterfloor inalef.tomland realignedtest_apps/node's lockfile with its regenerated manifest, which disagreed and brokepnpm install --frozen-lockfile. Realigned the generated Go e2e module pin, which theversion sync leaves behind.
v1.17.0Compare Source
Changed
is deferred because SwiftTreeSitter 0.25 requires the 0.25 C runtime, which conflicts
with the newer runtime in our published static Swift library. Pin the WASM shim
dependency
tree-sitter-languageto 0.1.7 because 0.1.8 rejects the retained runtime. (#189)upgrade Rust dependencies, including
dirs7 andzstd0.14.Added
extension_ambiguity()API and its serde-gated JSON companion to expose thedefault language and alternatives for ambiguous file extensions. (#185)
Fixed
native error codes and messages; narrow Java boolean returns to the C ABI width.
TypeScript namespace ownership and named arrow functions without duplicate constants. (#186)
JSON property spans, and Terraform/HCL paths. Reject concatenated JSON documents and handle
deeply nested TOML keys without overflowing the stack. (#186)
synchronize dependency lockfiles used by documentation and generated test suites.
v1.16.2Compare Source
Fixed
process()returns aProcessResultobject again in Python, so attribute access works.In 1.16.1 the generator emitted
options.ProcessResultasclass ProcessResult(TypedDict, total=False), which is a type annotation and not a runtime class --process()therefore handedback a plain
dict, and every documented access (result.language,result.chunks,result.metrics.total_lines) raisedAttributeError. Only Python was affected; the TypedDictpath existed in no other binding, so the same call in Node, Go, Ruby or Java kept returning a
real object throughout.
ProcessResultis a@dataclass(frozen=True, slots=True)again, as itwas before 1.16.1 and as every sibling binding already models it. (#183)
backends were broken by one generator-level disagreement, in which the e2e emitter and the
binding emitter held different ideas about the shape of a value they share. In Python, 72 of the
523 tests failed because the emitter wrote attribute assertions (
result.language == "python")against a value the binding emitter was generating as a dict. In TypeScript, 18 of the 37
processtests failed because the emitter wroteString(e.kind).includes("Function")againstkind, which is an object --String({ type: "Function" })is"[object Object]", so everystructure-kind assertion evaluated false and reported it as the uninformative
expected false to be true. Both emitters now read the value the way the binding presents it -- the dataclassattribute in Python,
e.kind?.["type"] === "Function"in TypeScript -- and both suites are 523passed / 0 failed. (#182)
Changed
(from 0.82.2). 0.82.1 deleted the TypedDict path from the Python binding emitter and 0.75.0
fixed the e2e emitter, so this is the first release carrying both. 0.84.1 also makes generation
reproducible across runs, which clears the 459 spurious TypeScript snippet-compile failures the
0.84.0 line reported.
Note on the npm package
@xberg-io/tree-sitter-language-packskipped both 1.16.0 and 1.16.1 -- npm's latest is still1.15.8 -- for two different reasons. 1.16.0 never got past
Validate version consistency, theunrun
task version:syncrecorded in the 1.16.1 notes below. 1.16.1 cleared that gate and thenfailed
E2E gate — Nodeon the 18 TypeScript failures above; that job blocks the npm publish, sothe package never reached the registry. The wasm package is gated separately and did ship 1.16.1.
1.16.2 is the first release in which both gates pass.
Note
content of this one; no grammar pins moved.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.