gitzette / @mitchellh / Apr 13 – Apr 19 W16
← W15 W16 W17 →
gitzette.online — open-source digest Apr 13 – Apr 20, 2026
the dispatch
@mitchellh
libc++ was the dependency nobody ordered
29 commits 12 PRs merged 0 releases 8 repos Four Zig libraries updated for 0.16 in one week. Somewhere, a build cache weeps.
FEATURE

libghostty drops its C++ runtime baggage

The static library just got a lot more portable.

ghostty-org/ghostty

Embedding libghostty meant dragging libc++ and its ABI along for the ride — a non-starter for projects with their own C++ runtime opinions (or none at all). #12291 surgically removes those dependencies, making the library link cleanly into Go, Rust, or plain C without symbol collisions. The downstream go-libghostty bindings updated the same week to match. One less reason to vendor a whole terminal instead of embedding one.

FEATURE

resize your terminal mid-scroll without losing your place

Viewport pins now survive reflow.

Resizing a terminal while scrolled back used to scramble your position — the viewport pin pointed at content that had reflowed elsewhere. #12300 tracks pins through the reflow process so your view stays anchored to the line you were actually reading. Small fix, large annoyance eliminated.

FEATURE

go-libghostty learns to speak keyboard

Key, mouse, and focus encoding arrive in the Go bindings.

go-libghostty

A terminal emulator that can't encode input events is just a very complicated cat. #12 adds bindings for key, mouse, and focus encoding — the missing half of the VT conversation. Effect callbacks also got cleaner: #13 passes the terminal instance as the first parameter, so you're not closing over state like it's 2009. Combined with #11 dropping the libc++ dependency, the bindings are now genuinely usable for embedding.

merged: #13#12#11
SECURITY

zig-overlay now verifies signatures against the versioned index

Trust, but verify — and verify against the right file.

The overlay was checking signatures, just not against the index that actually mattered. #95 switches verification to the versioned index.json, closing a gap where a stale or tampered unversioned index could slip through. #96 then wires up new tagged releases from the main index, and #97 cleans up the aftermath. Eleven commits total — mostly the kind of plumbing that only matters until it doesn't work.

merged: #97#96#95
FEATURE

libxev catches up to Zig 0.16

The event loop keeps pace with upstream.

libxev

Zig 0.16 landed with the usual breaking changes, and libxev needed surgery to match. #220 handles the migration — nothing dramatic, just the cost of living on a pre-1.0 compiler. Cross-platform event loops don't maintain themselves.

merged: #220
FEATURE

Objective-C bindings survive another Zig release

zig-objc updated for 0.16 compatibility.

Calling into the Objective-C runtime from Zig is already strange enough without compiler version drift. #34 brings the bindings forward to Zig 0.16, six commits of adaptation to keep the bridge standing. If you're writing macOS code in Zig, this is the week your builds start working again.

merged: #34
FEATURE

zig-js migrates to 0.16 dev builds

WebAssembly-to-JS bindings track upstream Zig.

Living on Zig dev builds means perpetual migration. #10 updates zig-js to 0.16.0-dev.3142+5ccfeb926 — a specific commit hash that will age like milk, but works today. The price of calling JavaScript from Zig-compiled Wasm.

merged: #10
FEATURE

benchmarks get synthetic agents and better UTF-8 data

Testing terminal performance against realistic workloads.

Benchmarking a terminal emulator against ASCII is like testing a race car on a parking lot. #12297 adds an AGENTS mode and improves synthetic UTF-8 generation — because the interesting bugs live in multi-byte sequences and agentic output patterns, not in how fast you can print 'hello world'.

29
commits
12
pull requests
0
releases
commits by repo
REPO COMMITS zig-overlay 11go-libghostty 7zig-objc 6libxev 2zig-js 2vouch 1
github stars
ghostty-org/ghostty ★★★★★★★★★★ 51,530
vouch ☆☆☆☆☆☆☆☆☆ 4,229
libxev ☆☆☆☆☆☆☆☆☆ 3,449
simdutf/simdutf ☆☆☆☆☆☆☆☆☆ 1,801
zig-overlay ☆☆☆☆☆☆☆☆☆ 493
zig-objc ☆☆☆☆☆☆☆☆☆ 331
zig-js ☆☆☆☆☆☆☆☆☆ 284
go-libghostty ☆☆☆☆☆☆☆☆☆ 113
continued2026-W16
the dispatch
FEATURE

libxev catches up to Zig 0.16

The event loop keeps pace with upstream.

libxev

Zig 0.16 landed with the usual breaking changes, and libxev needed surgery to match. #220 handles the migration — nothing dramatic, just the cost of living on a pre-1.0 compiler. Cross-platform event loops don't maintain themselves.

merged: #220
FEATURE

Objective-C bindings survive another Zig release

zig-objc updated for 0.16 compatibility.

Calling into the Objective-C runtime from Zig is already strange enough without compiler version drift. #34 brings the bindings forward to Zig 0.16, six commits of adaptation to keep the bridge standing. If you're writing macOS code in Zig, this is the week your builds start working again.

merged: #34
FEATURE

zig-js migrates to 0.16 dev builds

WebAssembly-to-JS bindings track upstream Zig.

Living on Zig dev builds means perpetual migration. #10 updates zig-js to 0.16.0-dev.3142+5ccfeb926 — a specific commit hash that will age like milk, but works today. The price of calling JavaScript from Zig-compiled Wasm.

merged: #10
FEATURE

benchmarks get synthetic agents and better UTF-8 data

Testing terminal performance against realistic workloads.

Benchmarking a terminal emulator against ASCII is like testing a race car on a parking lot. #12297 adds an AGENTS mode and improves synthetic UTF-8 generation — because the interesting bugs live in multi-byte sequences and agentic output patterns, not in how fast you can print 'hello world'.

29
commits
12
pull requests
0
releases
commits by repo
REPO COMMITS zig-overlay 11go-libghostty 7zig-objc 6libxev 2zig-js 2vouch 1
github stars
ghostty-org/ghostty ★★★★★★★★★★ 51,530
vouch ☆☆☆☆☆☆☆☆☆ 4,229
libxev ☆☆☆☆☆☆☆☆☆ 3,449
simdutf/simdutf ☆☆☆☆☆☆☆☆☆ 1,801
zig-overlay ☆☆☆☆☆☆☆☆☆ 493
zig-objc ☆☆☆☆☆☆☆☆☆ 331
zig-js ☆☆☆☆☆☆☆☆☆ 284
go-libghostty ☆☆☆☆☆☆☆☆☆ 113
gitzette @mitchellh on gitzette @mitchellh on GitHub
share: post on X share on LinkedIn

Your GitHub week, turned into something worth reading.

Generate your dispatch →
gitzette.online  ·  2026 © AISlopMedia, Inc.