Kit Updated: 2026.5.30

Back to Blog

This post covers Kit v2026.5.30. The detailed notes below come from the project changelog.

Kit 2026.5.30 is a focused correctness and tooling release. It improves FFI linking for prebuilt package wrappers, clears several code generation lowering issues, sharpens non-exhaustive match diagnostics, makes global runtime context initialization thread-safe, and refines a couple of formatter spacing rules.

On the codegen side, nullary functions and externs used in value position are now invoked correctly, List.cons used as a first-class value gets a proper closure wrapper, and the partition cache is keyed on the compiler build fingerprint so stale partitions are not reused across compiler builds. The formatter preserves the space before linearity annotations and @ field attributes, and CI now persists the Zig build cache across pipelines.

Release Snapshot

  • Release: v2026.5.30
  • Date: May 30, 2026
  • Changelog entries: 12
  • Primary areas: FFI auto-linking, codegen lowering, match diagnostics, thread-safe runtime init, formatter spacing, CI caching

What Changed

FFI linking improves: prebuilt package wrapper libraries are now auto-linked into consumers, so packages that ship precompiled wrappers link cleanly without extra manual flags.

Code generation receives several fixes. Nullary functions and externs used in value position are now invoked correctly, List.cons used as a first-class value emits a proper closure wrapper, and the partition cache is keyed on the compiler build fingerprint so stale partitions are no longer reused across compiler builds.

Diagnostics are clearer: a non-exhaustive match failure is now reported at the scrutinee, pointing at the value being matched rather than a less helpful location.

The runtime is more robust under concurrency. Global runtime context initialization is now thread-safe, removing a startup race in concurrent programs.

The formatter gains two spacing fixes: it keeps the space before linearity annotations and puts a space before @ field attributes (and the append operator).

On the tooling side, CI persists the Zig build cache across pipelines for test-stage jobs, and the changelog was regenerated and refreshed.

Release Highlights

Exact Changelog

The list below matches the 2026.5.30 changelog entry, with each short SHA linked to the corresponding GitLab commit in kit-lang.