Skip to content

build(deps): bump github.com/odvcencio/gotreesitter from 0.16.0 to 0.20.1 - #39

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/odvcencio/gotreesitter-0.20.1
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/go_modules/github.com/odvcencio/gotreesitter-0.20.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 5, 2026

Copy link
Copy Markdown
Contributor

Bumps github.com/odvcencio/gotreesitter from 0.16.0 to 0.20.1.

Release notes

Sourced from github.com/odvcencio/gotreesitter's releases.

v0.20.0-rc3 — GLR fork reduction: C to parity

Third release candidate on the 0.20 line. Parser-core GLR performance wins bring C to/below parity with tree-sitter C on real corpus, plus parser correctness fixes and markdown grammargen advances. All changes byte-for-byte C-parity-verified; CI green (build, parity-cgo, perf-regression).

Performance — GLR fork reduction (#96)

Extended the RepetitionShiftConflictChoice resolver to collapse spurious reduce/shift forks where tree-sitter C resolves deterministically (verified per state against C's parser.c — the reduce is a zero-progress dead-end, no conflicts: entanglement).

  • C: translation_unit_repeat1 (top-level list) + preproc_if_repeat1 (preprocessor body) collapse — large__cluster.c 20,866 → 1,099 GLR forks (−95%), ~−30% parse wall, bringing C to/below parity.
  • Rust: macro token-tree (delim_token_tree_repeat1) continuation-token fork reduction.
  • Token source: O(1) valid-external-symbol fast path mirroring C's external_lex_state indexing.
  • Consolidated ring A/B (real corpus, n=8): geomean −6.62% — C −30%, java −11%, go −10%, no language regressed.

Fixed

  • Race in deferred parent-link wiring (#95)
  • Kotlin object declaration misparse (#94)
  • grammargen: html_block type 6/7 blank-line termination; link_reference_definition soft-break de-merge

Added

  • grammargen: self-contained CommonMark §3–§6 markdown parity corpus

Full changelog: https://github.com/odvcencio/gotreesitter/blob/v0.20.0-rc3/CHANGELOG.md

v0.20.0-rc2

Second release candidate on the 0.20 line. Builds on v0.20.0-rc1 (markdown grammargen substrate) with runtime/parser wins, a new packaging feature, and further markdown grammargen fixes. CI green (build, parity-cgo, perf-regression).

Features

  • Selective embedded grammar builds (#92, addresses #88) — build with -tags 'grammar_subset grammar_subset_<lang>' to embed only the chosen grammar blobs. A single-language binary drops ~24 MB → ~3.7 MB (84.7%) and stays self-contained (no GOTREESITTER_GRAMMAR_BLOB_DIR needed). Finer-grained than grammar_set_core, and embedded unlike grammar_blobs_external. New generator cmd/gen_subset_blob_embeds; default builds remain byte-identical (backward compatible).
  • grammargen authoring CLI (#87) — emit / parse / doctor subcommands + docs.

Parser / runtime

  • JS GLR fork reduction (#90) — Go-vs-C full-parse ratio 5.95× → 4.41× by resolving 4 JavaScript conflict states to the repetition-shift (matching tree-sitter C). Byte-for-byte JS C-parity preserved; exhaustive ring-matrix proven non-regressing.
  • Kotlin error-recovery (#86) — recovered parse roots expose source_file / function_declaration shape while preserving child error state.

grammargen (markdown CommonMark + GFM substrate)

  • Visible block_quote / list / fenced_code_block wrapper emission at top-level and inside containers; pipe-table body-row de-merge + wrapper; link-ref-def / blank-line newline-state de-merge; markdown_inline generation-timeout calibration.

Known issues — why this is rc2, not v0.20.0

These are grammargen compiler-import quality regressions (reproducing the grammar from grammar.json). The bundled .bin blobs for these languages are unaffected and runtime parsing is fine. They pass within test floors (CI is green) but block a clean v0.20.0:

  • requirements, jsdoc, graphql, proto — TestMultiGrammarImportPipeline shape / external-scanner-wiring / alias-promotion regressions. To be fixed before promoting to v0.20.0.

Downstream guidance

Runtime consumers (parsing via the bundled blobs) can adopt rc2 safely — the parser-core work is proven non-regressing. Consumers using grammargen to import requirements/jsdoc/graphql/proto from grammar.json should wait for v0.20.0.

v0.19.1

... (truncated)

Changelog

Sourced from github.com/odvcencio/gotreesitter's changelog.

Changelog

All notable changes to this project are documented in this file.

This project follows Semantic Versioning for tags and release notes while still in 0.x.

[Unreleased]

  • Nothing yet.

[0.20.0-rc3] - 2026-05-30

Third release candidate on the 0.20 line. Parser-core GLR performance wins — C now parses at/below parity with tree-sitter C on real corpus — plus parser correctness fixes and markdown grammargen advances. CI green (build, parity-cgo, perf-regression).

Performance

  • GLR fork reduction across the ring matrix (#96). Extended the RepetitionShiftConflictChoice resolver to collapse spurious reduce/shift forks at boundaries where tree-sitter C resolves deterministically (verified per state against C's parser.c; the reduce is a zero-progress dead-end with no conflicts: entanglement). Every change is byte-for-byte C-parity-verified against libtree-sitter.
    • C: translation_unit_repeat1 (top-level item list) + preproc_if_repeat1 (preprocessor body) collapse — large__cluster.c drops from 20,866 to 1,099 GLR forks (−95%) and ~−30% parse wall, bringing C to/below parity.
    • Rust: macro token-tree (delim_token_tree_repeat1) continuation-token fork reduction.
    • Token source: O(1) valid-external-symbol fast path mirroring C's external_lex_state indexing (single active state references the precomputed row instead of rebuilding it per token).
    • Consolidated ring A/B (real corpus): geomean −6.62%; C −30%, java −11%, go −10%; no language regressed.

Fixed

  • Race in deferred parent-link wiring (#95).
  • Kotlin object declaration misparse (#94).
  • grammargen: terminate html_block type 6/7 at a blank line.
  • grammargen: de-merge link_reference_definition soft-break terminator.

Added

  • grammargen: self-contained CommonMark §3–§6 markdown parity corpus.

[0.19.1] - 2026-05-23

... (truncated)

Commits
  • a8dc5dc add taproot blob loading helpers
  • ad5e232 add(taproot): Add taproot DSL parsing harness and diagnostics
  • f50f66f fix(parser): fix infinite spin on repeated zero-width external tokens
  • 52647cc fix(parser): Cap forest reduce DFS steps to prevent hangs
  • b1f4ab8 update(glr): Update forest language status comments
  • d4eac93 add(cgo_harness): add forest-vs-C oracle parity gate
  • e5cf641 fix(php parser): mark recovered semicolons as Missing to match C oracle
  • 39aab70 update(parser): Update EXCLUDED language notes
  • 6e8c46c add(parser): add Kotlin collapsed modifier normalization
  • a5ec2a0 fix(grammargen): Skip markdown_inline import pipeline under race detector
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/odvcencio/gotreesitter](https://github.com/odvcencio/gotreesitter) from 0.16.0 to 0.20.1.
- [Release notes](https://github.com/odvcencio/gotreesitter/releases)
- [Changelog](https://github.com/odvcencio/gotreesitter/blob/main/CHANGELOG.md)
- [Commits](odvcencio/gotreesitter@v0.16.0...v0.20.1)

---
updated-dependencies:
- dependency-name: github.com/odvcencio/gotreesitter
  dependency-version: 0.20.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file go Pull requests that update go code labels Jun 5, 2026
@dependabot @github

dependabot Bot commented on behalf of github Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #40.

@dependabot dependabot Bot closed this Jun 12, 2026
@dependabot
dependabot Bot deleted the dependabot/go_modules/github.com/odvcencio/gotreesitter-0.20.1 branch June 12, 2026 06:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants