Lyric v4.2.1

Lyric

A statically typed application language with a bytecode VM — standalone, and embeddable in a host with a capability-based sandbox.

What changed in v4.2.1 — 2026-08-27

The sweep after 4.1.0 and 4.2.0. Ten probe groups against what the two releases added; one real finding, fixed failing-test-first, and it turned out to be older and wider than the release that surfaced it.

Fixed

Probed and clean

Worth not re-running: two tasks sharing one handle (300 of 300 bytes, both finish); a 200 000-byte line and a CRLF pair split across the 64 KB refill boundary (exact); 2 000 open/close rounds with no descriptor leak; a directory opened as a file, and a write to a read-only handle, both refused with the twin naming why; close while a read is outstanding — the 4.0 sweep's crash class — which answers null rather than taking the process down; reads after EOF staying empty; create truncating; the time conformances at both ends of int, including sortList, Set and Map; the whole stdlib suite under LYRIC_JIT=1; and a packed executable.

The full changelog →