v0.2.18
## Performance and resource usage Termy v0.2.18 is a focused performance prerelease that reduces CPU work, retained memory, render-cache overhead, and redundant engine wakeups. ### Rendering and memory - Replaced inline shaped-line cache values with pointer-sized shared handles. Empty cache slots shrink from 2,984 bytes to 8 bytes while preserving row-cache reuse. - Release render-cache allocations for inactive tabs, hidden workspaces, and zoom snapshots so background terminals do not retain unnecessary shaped lines, draw operations, and color-cache capacity. - Avoid render timing instrumentation unless performance metrics are enabled. - Lazily initialize process metrics and clipboard reads so hidden diagnostics and unrelated terminal events do not pay for them. ### CPU and engine work - Coalesce repeated PTY wakeups into one host signal until the queued event is drained, while preserving correct wakeups across hidden and visible transitions. - Transfer owned keyboard, paste, and mouse buffers directly into the native PTY path instead of copying them again. - Keep native terminal wakeup interest synchronized when switching tabs and workspaces. - Use GPUI's platform application entry point and remove the previous macOS thermal-observer workaround. ### Performance diagnostics - Clarified that callback intervals measure idle/activity cadence, not frame latency. A roughly 500 ms callback interval can be healthy while the terminal is idle. - Added separate CPU-side view-build p50/p95/p99 measurements. - Relabeled memory reporting as process RSS so it is not confused with total GPU memory. - Tightened benchmark reporting for idle wakeups, cursor blinking, callback cadence, and displayed frames. ### Measured results Controlled local before/after benchmarks showed: - 7.3% lower physical memory in a dense block-grid workload. - 29.5% lower resident malloc memory in that workload. - About 5.8% lower CPU usage during steady scrolling. - About 6.2 MiB lower peak process memory during steady scrolling. - Effectively unchanged frame throughput. - Three repeated wakeup events collapse to one host wake signal until drained. ### Validation - Full workspace test suite passed across all targets. - Strict workspace Clippy passed with warnings denied. - Release build and Intel macOS target checks passed. - Dependency policy, generated documentation, repository boundaries, formatting, and diff checks passed. - Both `termy` and `termy_cli` resolve and compile as version `0.2.18`.