Repository navigation
v2.1.1
This completes the 2.1 minor release as v2.1.1. The initial v2.1.0 upload exceeded Pub’s unpacked archive limit; the corrective packaging preserves all grammar sources and leaves the original tag intact.
Tree-sitter 0.27.1 now powers Markdown fenced code and the code editor through a shared runtime with 95 pinned grammars, bundled sources, queries and licenses.
- Hosted packages compress generated parser C sources deterministically and unpack them offline before native compilation, keeping the complete bundle below Pub's 256 MiB unpacked archive limit.
- Browser grammar Wasm files load asynchronously per language on demand. Markdown displays exact plain source while loading, then updates highlighting automatically.
- Editors use independent incremental parsing sessions and immutable UTF-16 syntax snapshots. JSX, TypeScript, TSX and C++ use distinct grammars.
- Typeahead suggestions use current Flutter animation APIs while preserving top-center positioning in LTR/RTL, custom transitions and suggestion selection.
Migration
The former Highlight/Mode APIs, generated language/theme imports, Lezer types, StreamLanguage and the old grammar generator have been removed. See the runtime migration guide and editor migration guide.
The runtime and editor require Dart 3.10 / Flutter 3.38. Native builds require a C/C++ toolchain. The complete grammar bundle includes about 142 MiB of browser assets; each browser grammar loads on demand. Native grammars currently link into one bundled library.
Validation
Workspace formatting, fatal-info analysis and all 1,941 tests passed across 14 suites. Release preparation separately passed 1,906 tests across 12 packages. All 95 grammars were exercised with native archive consumers and actual JavaScript/Wasm browser execution; widget checks cover asynchronous initialization, Unicode, incremental edits, language changes, themes and disposal. Published package archives and internal version constraints were independently checked.
Linux native builds were exercised. Android, iOS, macOS, Windows and separate minimum SDK installations remain unvalidated. Full supported-language inventory and exclusions: LANGUAGES.md.