Commit Graph
84 Commits
Author SHA1 Message Date
Can Celik fff6c820aa refactor: extract libghostty-vt binding into ghostty-vt workspace crate (#4661)
* refactor: extract libghostty-vt binding into ghostty-vt workspace crate

* fix: build libghostty-vt into each build's out dir
2026-09-27 00:06:29 +03:00
JJ Liebig c34dd6b2ac fix: create a symlink on non-elevated windows in docs test (#4654)
* fix: create a symlink on non-elevated windows in docs test

Windows terminals without Developer Mode or elevation cannot create file
symlinks, so the versions publishing integration test failed with EPERM
before it could reach the non-ordinary-file rejection. Fall back to a
directory junction, which is creatable without elevation and hits the
same rejection path.

* fix: detect docs snapshot reparse points with lstat

Classify entries with lstat instead of the readdir dirent so symlinks and
Windows junctions are rejected regardless of how a runtime classifies
them. This keeps the versions integration test's non-ordinary-file
assertion meaningful on non-elevated Windows, where the fixture can only
create a directory junction.
2026-09-26 17:15:50 +02:00
JJ Liebig 11a7ab4ae2 test: qualify Win32 and Kitty input paths by default (#4587) 2026-09-24 19:37:09 +02:00
JJ Liebig d11c0c34cf fix: report partial Windows input coverage and clear clipboard for tests (#4566)
* fix: report partial Windows input coverage and clear clipboard for tests

* fix: require evidence from each Windows input channel

* fix: reject clipboard format count errors
2026-09-24 14:29:07 +02:00
JJ Liebig 9903007e5c test(windows): capture native console input records (#4520)
refs #4470
2026-09-23 14:26:17 +02:00
JJ Liebig 9d29441a84 test(windows): distinguish clipboard paste origin in input gauntlet (#4394)
* test(windows): distinguish clipboard paste origin in input gauntlet

refs #4314

* test(windows): correct gauntlet paste-origin evidence

refs #4314
2026-09-20 00:21:32 +02:00
JJ Liebig 68dd6edaa2 test(windows): qualify remote clipboard image paste (#4324)
* test(windows): qualify remote clipboard image paste

refs #4314

* test(windows): verify staged clipboard image contents

refs #4314

* test(windows): safely clean failed clipboard leases

refs #4314
2026-09-18 15:18:23 +02:00
Can Celik 7df919d00e fix: correct grok activity detection with custom or disabled osc signals (#4337)
refs #4333
2026-09-18 12:52:37 +03:00
JJ Liebig da6bcd5969 fix(windows): preserve mouse capture during refresh (#4319)
* fix(windows): preserve mouse capture during refresh

refs #4284

* test(windows): fix default input gauntlet invocation

* fix(windows): preserve pixel mouse transitions

refs #4284
2026-09-18 02:42:37 +02:00
b88e8116e9 test: add local windows input gauntlet (#4298)
* test: add local windows input gauntlet

refs #4251

* test: add local windows input gauntlet

Harden elevation and channel identity checks, distinguish known host limitations, and surface incomplete cleanup.

refs #4251

* test(windows): harden input gauntlet execution

refs #4251

* test(windows): make input gauntlet self-contained

refs #4251

* test(windows): bound input gauntlet failure paths

refs #4251

* test(windows): extend input qualification gauntlet

refs #4251

* test(windows): complete input qualification matrix

refs #4251

---------

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com>
2026-09-18 01:13:13 +02:00
Ogulcan Celik 2c29fb29e3 fix: avoid workstation sdk requirement in preview checks 2026-09-16 19:22:17 +03:00
Ogulcan Celik 3f78f172d9 fix: address release promotion review findings 2026-09-16 18:43:23 +03:00
Can Celik 36db8ff3f4 ci: promote stable releases from protected previews (#4241) 2026-09-16 18:25:59 +03:00
JJ Liebig f70a1f835e fix(windows): reject dynamic msvc runtime in packaging (#4200)
The v0.8.2 Windows archive shipped an herdr.exe that imported
VCRUNTIME140.dll and the api-ms-win-crt-* Universal CRT, none of which the
archive provides. Static CRT linkage was restored for x86_64-pc-windows-msvc
in .cargo/config.toml, but nothing verified the packaged executable, so the
dependency could silently regress.

Parse the PE import and delay-import tables and reject herdr.exe when it
depends on the dynamic Microsoft C/C++ runtime, including release and debug
variants. Check the input while staging and re-check the staged executable
before archiving so a direct archive cannot bypass the guard.

refs #3129
2026-09-15 18:14:07 +02:00
JJ Liebig e61206cc9d test: deflake recent CI failures (#4139) 2026-09-14 22:41:54 +02:00
JJ Liebig 540b20fdf0 test: relax windows docs snapshot timeout (#4049)
Windows CI runs these documentation contract fixtures under variable load. A degraded runner pushed the preview and versions snapshot integration tests past their 30s ceiling, while a healthy run finishes in seconds. Keep 30s elsewhere and give Windows a 120s ceiling.
2026-09-13 15:26:30 +02:00
JJ Liebig c7a7cc454a fix: lint all targets on windows (#3963)
Native Windows lint and check only clippy-checked the herdr binary, while macOS and Linux run clippy across all targets. Enable --all-targets on Windows and gate the Unix-only test helpers that this exposed so Windows check matches the Unix one.
2026-09-11 18:12:49 +02:00
Can Celik 02b1b49d46 test: make windows cross-check path assertions portable (#3954) 2026-09-11 15:59:09 +03:00
Ogulcan Celik 2778411b6c chore: add one-time windows cross-check setup 2026-09-11 15:35:35 +03:00
Can Celik 425c861797 chore: upgrade libghostty and preserve terminal behavior (#3906) 2026-09-10 21:51:57 +03:00
Ogulcan Celik 9be481fea6 docs: prepare 0.9.0 release documentation 2026-09-07 22:04:55 +03:00
JJ Liebig 50ce4ec2dd fix: run the full applicable test suite on windows (#3660)
* fix: run the full applicable test suite on windows

* test: remove redundant test shell assignment

* test: make endpoint and metadata fixtures deterministic

* test: tolerate exited servers during windows probe cleanup
2026-09-05 21:39:32 +03:00
JJ LiebigandCan Celik 8162e26509 fix(windows): use active release directory on PATH (#3618)
* fix(windows): use active release directory on PATH

refs #3611

* fix(windows): expand variables in PATH comparisons

refs #3611

* fix(windows): restrict installer channel detection

refs #3611

---------

Co-authored-by: Can Celik <ogulcancelik@gmail.com>
2026-09-05 01:47:00 +03:00
akbashandakbash-bot b07ba9ced8 fix: reject Android in Unix installer (#3577)
refs #3571

Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
2026-09-03 20:43:42 +03:00
Can Celik cc88b3b8e5 feat: add stable client endpoint compatibility (#3509)
* feat: add stable client endpoint compatibility

* fix: keep portable-pty patch checks composable

* ci: run maintenance checks in pull requests

* fix: reject endpoint errors from terminal clients

* feat: keep compatible servers running across updates
2026-09-02 02:45:20 +03:00
Ogulcan Celik dbc398f580 test: allow slow documentation snapshot fixtures 2026-09-01 15:53:16 +03:00
Can Celik 207be3c771 refactor: render the shell in the client (#3487)
* feat: add opt-in client-rendered shell

* feat: add client-owned shell mouse controls

* feat: complete client-owned shell chrome

* feat: add client-owned shell settings and notifications

* feat: run client shell custom commands

* feat: render popup terminals in client shell

* feat: add client-owned scrollback and copy mode

* fix: preserve client worktree trust defaults

* feat: render startup diagnostics in client shell

* feat: render onboarding in client shell

* feat: render product announcements in client shell

* feat: render release notes in client shell

* feat: render mobile switcher in client shell

* feat: render kitty graphics in client shell

* fix: preserve client shell lifecycle coherence

* refactor: route client shell commands through endpoint connections

* refactor: make the client-rendered shell the default

* refactor: remove monolithic launch mode

* refactor: complete client-rendered shell cutover

* perf: retain client pane surface updates

* perf: scale retained pane surface updates

* perf: remove remote pane input latency

* test: make client shell checks platform-independent

* fix: prevent client timer starvation

* test: fix client shell platform gates

* test: accept retained surfaces in cross-area checks

* test: make client mode assertions platform-neutral

* fix: badge only outdated integrations
2026-09-01 15:48:22 +03:00
Ogulcan Celik 8a6d697308 refactor: separate website presentation from runtime 2026-09-01 14:48:45 +03:00
Can Celik c9601b9396 fix(windows): add local cmd installer bootstrap (#3133)
* fix(windows): add local cmd installer bootstrap

refs #2751

* fix(windows): bound installer downloads

refs #2751
2026-08-23 00:37:31 +03:00
akbash 2c042bb2ce test: use native path in docs parity assertion (#3043) 2026-08-20 18:48:59 +03:00
Can Celik a5c69beabf fix(perf): eliminate redundant terminal wake work (#2962)
* fix(perf): eliminate redundant terminal wake work

* fix(perf): harden release benchmark gate

* test(perf): strengthen performance guardrails
2026-08-19 04:43:28 +03:00
Ogulcan Celik 9fac517226 feat: make Windows generally available 2026-08-18 22:39:38 +03:00
Can Celik d497ee14dd fix: retry Windows installer activation after transient locks (#2921)
refs #2916
2026-08-18 03:45:53 +03:00
JJ Liebig cb727d0555 fix: use verified local packages for windows updates (#2816)
refs #2751
2026-08-14 22:48:59 +03:00
Can CelikandDavid Heinemeier Hansson e48d83067a feat: add configurable tab bar status (#2586)
* feat: show a zoom indicator in the desktop tab bar

Reserve the right edge of the tab row for a ZOOM pill while the
focused pane is zoomed, matching the accent style of the mode bars.
The per-tab Z suffix stays; the pill makes the zoomed state visible
at a glance like tmux's status-right flag.

* feat: optionally show the hostname in the desktop tab bar

Add ui.tab_bar_hostname to display the machine's hostname at the right
edge of the tab row, like tmux's #h in status-right. The value resolves
where the server renders, so remote sessions show the remote host. Off
by default.

* fix: strip control characters from the tab bar hostname

* fix: hide the hostname when it would squeeze out the tab strip

* feat: add configurable tab bar status

* fix: harden tab bar status updates

* fix: terminate tab bar status process trees

* fix: disable status commands on unsupported platforms

* fix: skip unchanged status command renders

* fix: keep tab bar status opt-in by default

---------

Co-authored-by: David Heinemeier Hansson <david@hey.com>
2026-08-10 01:20:09 +03:00
Ogulcan Celik e2aa86a9e8 test: guard pane-scaled render performance
refs #2550
2026-08-09 20:36:11 +03:00
JJ Liebig 3a76fea2d8 fix: make windows installer swaps atomic (#2530)
refs #2356
2026-08-08 22:59:32 +03:00
Can Celik 50ddc06f00 feat: support all agent integrations on windows (#2496) 2026-08-07 23:10:28 +03:00
Ogulcan Celik 322ab6a5a9 fix: verify stable release checksums 2026-08-07 14:40:14 +03:00
Ogulcan Celik cffc6c4b50 fix(docs): allow corrections to published versions
refs #916
2026-08-04 03:59:22 +03:00
Ogulcan Celik 0e434881b3 fix(docs): publish only released documentation 2026-08-03 01:21:30 +03:00
Can CelikandJonathan Liebig b76adc155d fix(input): preserve native key lifecycle across routing (#2142)
refs #2077

Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com>
2026-08-01 04:27:50 +03:00
Ogulcan Celik 3563f5c56e chore: update repository links after organization transfer 2026-07-29 23:29:29 +03:00
Ogulcan Celik 8ed742da26 fix: preserve windows path variables during install
refs #1947
2026-07-29 15:43:38 +03:00
JJ Liebig 6d1bedee3e fix: make native windows checks reliable (#1925) 2026-07-27 14:15:23 +03:00
Can Celik 8afd52ae57 fix: bundle modern ConPTY on Windows (#1828)
refs #1533
refs #1644
2026-07-25 02:40:14 +03:00
Ogulcan Celik 5f1957c27b fix: harden hermes lifecycle detection 2026-07-25 01:05:14 +03:00
Ogulcan Celik c234f221f9 feat(docs): publish versioned release documentation 2026-07-22 14:59:09 +03:00
Ogulcan Celik 13ce20c4f5 fix: update windows conpty smoke for pane-first agents 2026-07-18 00:47:18 +03:00
Ogulcan Celik 99760f77db fix: detect grok background work from pinned status 2026-07-17 01:53:55 +03:00