github jossephus/chuchu v0.6.0

one hour ago

Chuchu v0.6.0

Highlight of the release

  • plugin system, with Rex shipped as a built-in transport plugin
  • program status on tabs (OSC 7501), with the program's icon and a notification when a tab needs you
  • jump hosts and local/remote port forwarding through a saved server
  • new SSH keys screen
  • browser-style session picker for tmux and zmx hosts, and sessions can be opened on any host
  • Simplified Chinese translation (the UI is now fully translatable)
  • many Mosh, SFTP, host key and multiplexer reliability fixes
  • native bridge moved to Zig 0.17 and ghostty 1.4
  • nightly builds are now published on every push to main

features:

  • feat: show the program's icon next to its status - 43e603b
  • feat(rex): show program status for Rex panes, including ones not on screen - 03fdefc
  • feat: show program status (OSC 7501) on tabs and notify when a tab needs you - 8aaf5ae
  • feat: Rex as a built-in transport plugin - c6edc15
  • feat: plugin system - a0d8785
  • feat: add Shift+Tab and Ctrl+B accessory keys - 5b9f78e - (Thanks @Sylonin)
  • feat: forward local and remote ports through a saved server - a1948f4
  • feat: add jump host support - ef1a556
  • feat: copy a saved connection from the long-press actions - d7fede2
  • feat: option to show the accessory bar only while the keyboard is open - 0edb7a6
  • feat: add option to hide the status bar on the terminal screen - 192b09f
  • feat: add a browser-style session picker for tmux and zmx hosts - d925984
  • feat: let the remote host set the clipboard, behind an opt-in - 31795ad - (Thanks @salemsayed)
  • feat: enable opening sessions in any host - c233110 - (@salemsayed)
  • feat: add terminal autocorrect setting - fa5f729 - (Thanks @kevcenteno)
  • feat: add SSH keys screen - 42ba561
  • feat: handle different cursor styles - a3d48c2
  • feat: keep theme picker dropdown open on selection - 1a764e2
  • feat: add host filtering to the server list - 521244b - (@salemsayed)
  • feat: open SFTP browser at the current directory - 8261e45 - (@salemsayed)
  • feat: add an opt-in setting to hide screen contents - b5a3ce5 - (@salemsayed)
  • feat: smooth stepped pinch zoom for terminal font size - ba55035 - (@salemsayed)
  • feat: add keep screen awake option for terminal sessions - 92056d8 - (Thanks @Thoroslives)
  • feat: custom actions and chuchu key improvements - d962636 - (Thanks @bhoffman20)

i18n:

fixes:

  • fix(rex): keep the port in plain http Rex addresses - b7be6ce
  • fix: keep the settings header in place while the content scrolls - 6554111 - (@ec50n9)
  • fix: hold frames while the remote program repaints its screen - f8846c2 - (@ec50n9)
  • fix: prevent single-row accessory bar crash - e8b0e63 - (Thanks @reinyaa)
  • fix: stop crashing when saving fewer accessory keys - 5c54280
  • fix: keep every accessory key reachable when the bar overflows - 404c608
  • fix: stop drawing the working directory over the terminal - c5ecfc5
  • fix: keep the selected tab in view in the tab strip - e1d703a
  • fix: stop tmux session listing from breaking on zsh hosts - eba1c4f - (@ec50n9)
  • fix: do not hold an SSH handshake open while the user verifies a host key - 92a9be3 - (@salemsayed)
  • fix: do not silently drop a multiplexer connect, and show progress while it runs - e879437 - (@salemsayed)
  • fix: point the Mosh client at the address SSH connected to - 824b06f
  • fix: show when a Mosh session has lost contact - 2665491 - (@salemsayed)
  • fix: keep SFTP transfers alive across slow network windows - 4f61ddf - (@salemsayed)
  • fix: do not silently truncate SFTP downloads - 9e7992a - (@salemsayed)
  • fix: wait for the session before SFTP calls and retry once after a drop - 514c30e
  • fix: keep IME caret in sync for backspace swipe and undo - 6a8f5a0
  • fix: translate IME caret moves into terminal arrow keys - 5c3655d
  • fix: guard the multiplexer duplicate and show it is working - e389d61 - (@salemsayed)
  • fix: stop tmux 3.7 mangling the session list separator - f965b48 - (@salemsayed)
  • fix: make tab strip labels distinguishable per host - 171dd80 - (@salemsayed)
  • fix: run the post-connect command on multiplexer hosts too - 73dfe07 - (@salemsayed)
  • fix: let the multiplexer session list use the space it has - 4d700ec - (@salemsayed)
  • fix: confirm before disconnecting everything from the server list - 78f94a8 - (@salemsayed)
  • fix: print host key fingerprints without base64 padding - ff3e2c9 - (@salemsayed)
  • fix: draw wide glyphs on the grid instead of by font advance - 0cdc297 - (@salemsayed)
  • fix: show edit screen title properly - b216f01 - (@salemsayed)
  • fix: let the tab manager be opened with a single tab - dd480f3 - (@salemsayed)
  • fix: require an explicit choice on the host key dialog - 543653a - (@salemsayed)
  • fix: keep IMEs from mangling the host and username fields - 90456b4 - (@salemsayed)
  • fix: reattach an existing session instead of orphaning it on reconnect - 408e888 - (@salemsayed)
  • fix: verify the host key in test connection - 759ee75 - (@salemsayed)
  • fix: add deterministic unicode symbol fallback - a0b5e3c
  • fix: preserve Mosh sessions across network loss - ddacfef - (@salemsayed)
  • fix: handle large Mosh output events - e81a9d4 - (@salemsayed)
  • fix: correct terminal mouse action encoding - 4a7a816 - (@salemsayed)
  • fix: enable multi ABI builds - f090f2b
  • fix: handle leading whitespace in zmx session list - 71da20f - (Thanks @tom-sigil)
  • fix: render SGR cell style flags properly - 6d5dec1

perf:

  • perf: resize the remote pty once per keyboard toggle - 05a883e
  • perf: stop recomposing the terminal screen on every frame of output - 590d397

chore:

  • build: migrate native bridge to Zig 0.17 and ghostty 1.4 - ce2d034
  • refactor: split TerminalScreen into smaller composables - 7c01a87
  • ci: comment the branch build's APK link on the open pull request - 0a1b24b
  • ci: run the branch build only by hand - e53cb55
  • ci: build a signed APK from any branch - f837e5e
  • ci: target aarch64 for default CI releases - 5b059b0
  • ci: add nightly release workflow - c4aa910
  • test: capture real Compose theme screenshots on the JVM with Roborazzi - 43c02ec
  • test: add Robolectric harness for on-orb Android framework tests - bc99798
  • chore: add Nix-based orb setup and resume scripts - 7bfe4fc
  • docs: list Zig 0.17.0 as the build prerequisite - 30fd487 - (@Sylonin)

Don't miss a new chuchu release

NewReleases is sending notifications on new releases.