v0.3.1
Upgrade GhostCRT to 0.3.1 and pin the published ghostty-textual v0.0.4 wheel for faster styled output, selection, and hyperlink rendering.
The library now defers feed rendering through _flush_frame, which collided with GhostCRT's timer callback and bypassed its 60 Hz batching. Rename the consumer callback to _flush_throttled_frame so output and scrolling continue to share one frame timer. Add regression coverage for output across event-loop turns, forced refresh, reconnect/reset, and synchronized-output release/timeout.
Update the lockfile, installation instructions, and changelog. Include a reproducible GhostCRT rendering benchmark and adoption report; local synthetic measurements reduced styled/alternating-color rendering CPU time by roughly 36–52%, with plain output essentially unchanged.
Validation:
- Published v0.0.4 wheel SHA-256 verified against the library handoff and lockfile; Python sources match the reviewed performance candidate.
- Full consumer suite: 362 passed, 8 skipped (local SSH server/sshpass integration tests).
- Ruff and
git diff --checkpass. - 0.3.1 wheel and source distribution build successfully; isolated installed-wheel smoke checks cover CLI version, deferred rendering, reset, and unmount.