Zig 0.13.0 Reworks the CLI Progress System
Zig 0.13.0 arrived on June 7, 2024, a short cycle driven by the upgrade to LLVM 18, with a reworked terminal progress system and a BatBadBut security mitigation on Windows.
Historical Archive. This article documents an event from 2024 and is preserved with its original date for reference. It is not current news, and details may have changed since publication.
A short, toolchain-driven release
Zig 0.13.0 was released on June 7, 2024. The release notes describe 2 months of work with changes from 73 different contributors across 415 commits, calling it a relatively short cycle primarily motivated by toolchain upgrades such as moving to LLVM 18, along with musl 1.2.5 and glibc 2.39.
Reworked CLI progress
The standout change was a rework of std.Progress, which the compiler and build system both rely on heavily. The old design could not assume ownership of the terminal; the new one establishes a standard 'Zig Progress Protocol' so the same API works whether an application owns the terminal or is a child process communicating progress back over a pipe. The Node.start and Node.end APIs are thread-safe, lock-free and infallible, and a dedicated thread periodically refreshes the terminal, respecting resizes via SIGWINCH.
A Windows security mitigation
Zig 0.13.0 shipped a mitigation for BatBadBut, an arbitrary command execution vulnerability on Windows, hardening std.process.Child. The release also renamed std.ChildProcess to std.process.Child, part of a broader move toward types with minimal lifetimes and minimal states.
Standard library renames
ComptimeStringMap was renamed to StaticStringMap, taking a single type parameter and returning a known struct type, with the key-value list moved to an initComptime parameter; the team reported wall-time improvements across debug, safe, small and fast builds. PriorityQueue now stores capacity instead of length to match the ArrayList API, posix.iovec switched to .base and .len fields, and build.zig.zon gained .zip archive dependency support alongside a new std.zip.
Related on Skillo
See also: Zig 0.12.0 and the Autodoc rewrite.
Sources
Published date reflects the original event date (2024-06-07). This article is original Skillo editorial written from the sources above; facts were verified in September 2026.
Written by
Skillo Staff
0 Comments
Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.