This post covers Kit v2026.6.11. The notes below come from the release tag history and the project changelog.
Kit 2026.6.11 is a busy release centered on applications, parser ergonomics, and capability
tooling. Plain projects now get first-class application manifests with project-local installs, lambdas can
trail a call as the final argument, interpolated heredocs dedent correctly, and capability errors are
aggregated into a single actionable report backed by a new trust-on-first-use consent store. Cold builds
also get noticeably faster.
Release Snapshot
- Release: v2026.6.11
- Date: June 11, 2026
- Commits since v2026.6.9: 24
- Primary areas: application manifests, parser ergonomics, capability tooling, build performance
What Changed
Applications are now first-class: a plain kit init creates an application
kit.toml (not publishable), dependencies install project-locally to
./kit-packages/, and a bare kit run executes the manifest entry-point, much like
cargo run. kit add in a directory without a manifest now offers to create one.
Packages can also declare a kit-version compatibility pin that kit install
enforces.
Capability errors get a major usability pass: instead of reporting missing package capabilities one at a
time, the compiler now aggregates them into a single C004 diagnostic listing every missing
capability along with the complete --allow command. A new --allow-requested flag
grants exactly what packages declare, and a trust-on-first-use consent store remembers capability grants
so you only approve them once.
The parser learns two documented-but-missing ergonomics: trailing lambda arguments
(f arg fn(x) => body parses as the final call argument) and multi-line parenthesized
lambda blocks. Interpolated squiggly heredocs now strip common indentation and drop the trailing newline,
matching plain heredocs. Three more documented-but-unimplemented parser gaps surfaced by the website
guides are fixed, so the tour and grammar examples now compile as written.
Thanks to Alvydas ( avitkauskas) for reporting and helping test the interpolated heredoc indentation issue (#201) and the
documentation example parser gaps (kit-website #4, #5, #6) behind
these fixes.
Build performance improves across the board: the full stdlib tree is embedded at build time (standalone
binary installs now ship the complete stdlib), backend compile phases overlap, and partition codegen
resolution paths are memoized for faster cold builds. The compile spinner is suppressed when
stderr is not a TTY, keeping CI logs clean.
Quality work rounds out the release: generated-program differential backend testing, property-style tests
for List builtins, executable docs and formatter properties, codegen fixes for capability
capture discards and inlined constant operands, parser memory leak fixes in sql blocks and
using expressions, quasiquote formatter spacing, and a wasm build fix that keeps
Io.Threaded out of freestanding targets.
Release Highlights
- Add application manifests with project-local installs; bare
kit runuses the manifest entry-point. - Support trailing lambda arguments and paren-closed lambda blocks.
- Strip common indentation across interpolated heredoc segments.
-
Aggregate capability errors into one
C004, add--allow-requested, and add a trust-on-first-use capability consent store. - Add
kit-versioncompatibility pinning for packages. - Embed the full stdlib tree and speed up cold builds.
- Add differential backend testing and property-style List tests.
Release Commits
The list below uses the v2026.6.9..v2026.6.11 tag range, with each short SHA linked to the
corresponding GitLab commit in kit-lang.
- Fix capability capture discard codegen regression (40b600e)
- Memoize partition codegen resolution paths for faster cold builds (4b52499)
- Overlap backend compile phases and trim cold-build overheads (8ee4e22)
- Bypass zig command cache in tests (c7f00ce)
- Embed the full stdlib tree, generated at build time (810d155)
- Add application manifests with project-local installs (44dd554)
- Report all missing package capabilities in one C004 (00dd0a3)
- Support trailing lambda arguments and paren-closed lambda blocks (d782ac7)
- Strip common indentation across interpolated heredoc segments (fbc7405)
- Fix three documented-but-unimplemented parser gaps (3ed5411)
- Add executable docs, formatter properties, and repair the fuzz step (a8159fa)
- Add generated-program differential backend testing (fb9710f)
- Inline skipped local constants in unboxed arithmetic operands (7d1dfed)
- Add property-style tests for List builtins (6924150)
- Fix parser memory leaks in sql blocks and using expressions (f8d2c49)
- Preserve spacing before unquote tokens in quasiquote bodies (c545d43)
- Suppress the compile spinner when stderr is not a TTY (fc97f21)
- Run the manifest entry-point when kit run gets no file (e0ae919)
- Add kit-version compatibility pinning for packages (116d90d)
- Aggregate capability errors across packages; add --allow-requested (2a1f727)
- Bump version to 2026.6.11 and regenerate changelog (7b2bdc2)
- Fix wasm build: keep Io.Threaded out of freestanding targets (0bfe045)
- Regenerate changelog (c242a3b)
- Add trust-on-first-use capability consent store (c84d450)
Related links: