This post covers Kit v2026.5.29. The detailed notes below come from the project changelog.
Kit 2026.5.29 is a focused compiler and codegen correctness release. It clears a batch
of code generation regressions across the native and lazy runtime backends, tightens constructor
lowering, and fixes how macros and reexported interfaces are handled during incremental builds.
The largest group of fixes lands in codegen: native WGPU output, PVec branch indexing, qualified constructor lowering with module aliases, nullary constructors for module records, unboxing with phi-chain tail-call optimization, and lazy runtime constructor collisions. The REPL also gets a fix for higher-order functions, and macro expansion now reaches inside exported binding bodies.
Release Snapshot
- Release: v2026.5.29
- Date: May 29, 2026
- Changelog entries: 15
- Primary areas: codegen correctness, constructor lowering, incremental reexport snapshots, macro expansion, REPL higher-order functions, kit test runner stability
What Changed
Code generation receives the bulk of the fixes. Native WGPU codegen regressions are resolved, qualified constructor codegen now works correctly with module aliases, and nullary constructors for module records lower properly. The unboxing path is fixed alongside phi-chain tail-call optimization, and skipped local constants are now inlined before the unboxable-var path in codegen.
The lazy runtime and persistent vector paths were corrected as well. Lazy runtime constructor collisions are fixed, and PVec branch indexing now behaves correctly.
Incremental builds and macros also improved. Reexport interface snapshots are fixed for incremental rebuilds, and macro expansion now reaches inside exported binding bodies so exported definitions expand consistently.
The REPL gets a fix for higher-order functions: it now skips Env injection and keeps
anonymous function names unique. The test runner is more robust too, with a fix for a
kit test arena double-free along with static setup detection and parallel compilation.
Project documentation rounds out the release. AGENTS.md is updated with corrected
paths, grammar references, fast-path kit test usage, and development workflow rules.
Release Highlights
- Fix native WGPU codegen regressions and PVec branch indexing.
- Fix qualified constructor codegen with module aliases and nullary constructors for module records.
- Fix codegen unboxing with phi-chain tail-call optimization, inlining skipped local constants first.
- Fix lazy runtime constructor collisions.
- Fix incremental reexport interface snapshots.
- Expand macros inside exported binding bodies.
- Fix REPL higher-order functions by skipping
Envinjection and keeping anonymous names unique. - Fix a
kit testarena double-free, with static setup detection and parallel compilation. - Update
AGENTS.mdwith corrected paths, grammar/docs references, fast-pathkit testusage, and dev workflow rules.
Exact Changelog
The list below matches the 2026.5.29 changelog entry, with each short SHA linked to the
corresponding GitLab commit in kit-lang.
- Fix compiler WGPU native codegen regressions (a30a9bc)
- Fix PVec branch indexing (7005f78)
- Fix incremental reexport interface snapshots (4334d99)
- Fix qualified constructor codegen with module aliases (9397099)
- Fix lazy runtime constructor collisions (29f1518)
- Fix codegen unboxing and phi-chain TCO (d202a25)
- Fix nullary constructor codegen for module records (d67c53e)
- Expand macros inside exported binding bodies (bcbab55)
- Inline skipped local constants before the unboxable-var path in codegen (a48f3b3)
- Update AGENTS.md: fix kit-examples path, add docs/grammar refs and dev workflow rules (1c85290)
- Fix REPL higher-order functions: skip Env injection and keep anon names unique (7b7334f)
- Updated version to 2026.5.28, updated CHANGELOG.md (0e2f591)
- Document fast-path kit test usage in AGENTS.md (fbf5e70)
- Fix kit test arena double-free; static setup detection + parallel compile (7be7780)
- Updated CHANGELOG.md (738efe7)