Skip to content

v1.5.0

Latest

Choose a tag to compare

@github-actions github-actions released this 29 Aug 01:19
· 5 commits to main since this release
e735f81

What's Changed

Tombi v1.5.0 is a major performance and architecture release.

We redesigned the parser and AST around a compact, source-backed syntax tape, replacing the previous red-green syntax tree.
The new architecture is optimized for Tombi’s lossless, long-lived editor and LSP workloads: it improves memory locality and reduces allocation and pointer-chasing overhead while preserving comments, punctuation, incomplete syntax, and diagnostics.
The AST and document-tree interfaces are now also separated from their syntax-backed implementations.

We also optimized hot paths throughout the parser, JSON Schema processing, linter, formatter, and stdin-based CLI workflows.
In our Apple M2 Max benchmarks, long ASCII comment lexing was approximately 2.3× faster, selected JSON parsing workloads improved by up to 84%, and repository-wide lint time decreased from approximately 355 ms to 81 ms.

🚨 Breaking Changes

  • perf(parser): replace syntax tree with compact tape by @ya7010 in #2140

🐝 Bug Fixes

  • fix(lsp): preserve composite schema metadata by @ya7010 in #2139

🛠️ Other Changes

  • Improve minimal-change guidance for agents by @ya7010 in #2137
  • perf(parser): accelerate long comment scanning by @ya7010 in #2141
  • perf: speed up lint and format by @ya7010 in #2142
  • perf: reduce stdin runtime overhead by @ya7010 in #2143
  • perf(json): accelerate long string parsing by @ya7010 in #2145
  • perf(json): optimize lexer and parser hot paths by @ya7010 in #2146

Full Changelog: v1.4.1...v1.5.0