|
Some checks are pending
CodeQL / Analyze (javascript-typescript) (push) Waiting to run
Publish / ci (push) Blocked by required conditions
Publish / Publish to npm (push) Blocked by required conditions
Publish / Build & Push RC Docker images (push) Blocked by required conditions
CodeQL / Analyze (python) (push) Waiting to run
Gitleaks / gitleaks (push) Waiting to run
Publish / Classify release event (push) Waiting to run
Publish / RC guard (marker + release-PR skip) (push) Blocked by required conditions
Scorecard / Scorecard analysis (push) Waiting to run
Trivy Image Scan / Trivy (gitnexus-cli) (push) Waiting to run
Trivy Image Scan / Trivy (gitnexus-web) (push) Waiting to run
* chore(vendor): update tree-sitter-proto to 0.6.0-g1836649 * chore(vendor): rebuild native prebuilds (tree-sitter-proto) Built by https://github.com/abhigyanpatwari/GitNexus/actions/runs/39212897186 * chore(vendor): rebuild native prebuilds (tree-sitter-proto) Built by https://github.com/abhigyanpatwari/GitNexus/actions/runs/39271310337 --------- Co-authored-by: gitnexus-release-bot[bot] <gitnexus-release-bot[bot]@users.noreply.github.com> Co-authored-by: Gergő Magyar <gergomagyar@icloud.com> |
||
|---|---|---|
| .. | ||
| lbug-fts | ||
| leiden | ||
| tree-sitter-c | ||
| tree-sitter-dart | ||
| tree-sitter-kotlin | ||
| tree-sitter-objc | ||
| tree-sitter-proto | ||
| tree-sitter-swift | ||
| tree-sitter-zig | ||
| README.md | ||
Vendored Tree-sitter grammars
These grammars use the bundled Tree-sitter 0.25.1 runtime (ABI 13–15). Generated C sources and scanners must be copied from upstream; never patch them by hand. JavaScript/TypeScript compatibility adapters belong in GitNexus.
| Grammar | Version / snapshot | Upstream source commit |
|---|---|---|
| c | 0.24.2-gb780e47 |
b780e47fc780 |
| dart | 1.0.0-gbe07cf7 |
be07cf7118d3 |
| proto | 0.6.0-gd7d1542 |
d7d15427321d |
| kotlin | 0.4.0-g1852ea1 |
1852ea17b7f6 |
| objc | 3.0.2-g181a81b |
181a81b8f23a |
| zig | 1.1.2-g6479aa1 |
6479aa13f32f |
| swift | 0.7.2 |
7b7909f2f6b9 |
Swift 0.7.2 is the newest release that passes our declaration-ownership tests.
Both 0.7.3 and 0.7.4 move a later top-level struct inside an earlier class after
a conditional group splits a function header. That input is invalid Swift,
but preserving recovery for partial source is an existing GitNexus contract.
The hold in .github/vendored-grammars.json remains until the real-parser and
worker-pipeline tests in tree-sitter-languages.test.ts and
swift-conditional-directive.test.ts pass with a newer upstream grammar.
No generated source was patched to preserve this behavior.
To refresh a grammar:
- Resolve an immutable upstream commit (Swift publishes generated sources on
*-with-generated-filestags). Copysrc/runtime/build inputs andbindings/node/binding.ccbyte-for-byte. Keep the GitNexus CommonJS loader andbinding.gyp; upstream C's ESM loader uses top-level await and cannot be substituted into the synchronous worker import path. - Update the vendor package version,
_upstreamCommit,_vendoredBy, this table and any hold in.github/vendored-grammars.json. GitHub snapshots use<upstream-version>-g<sha7>so the monitor recognizes the installed commit. - Run semantic tests, including CFG and call/reference resolution. Successful loading, parsing or definition captures alone do not prove compatibility.
- Let
build-tree-sitter-prebuilds.ymlrebuild and execute the grammar on all six{linux,darwin,win32}-{x64,arm64}hosts. Check the installed tarball too; it must include the regenerated binaries and runtime metadata. Source builds use the repository checkout, which also contains the build inputs.
Protobuf's upstream syntax node collides with node-tree-sitter 0.25.1's
JavaScript SyntaxNode subclass generator. Its gRPC plugin uses a private
metadata wrapper to retain the native node and field/query APIs without
changing upstream sources. Native loading and comment/string-safe fallback
extraction are covered in test/unit/group/grpc-extractor.test.ts.