Skip to content

Trellis 0.11.0

Choose a tag to compare

@github-actions github-actions released this 19 Oct 11:44
· 166 commits to master since this release

This release adds sessions that keep running after quit, restored scrollback, desktop and long-command notifications, progress on tabs, shell marks over SSH, ⌘K Clear and opt-in Metal rendering, plus several security fixes.

Added

  • Edit → Clear (⌘K, also in the pane's context menu) clears scrollback and the screen above the prompt, like Terminal. Alternate-screen programs keep their screen; an existing ⌘K binding wins (FR-C07).
  • Desktop notifications from OSC 9, OSC 777 and kitty's OSC 99, shown when you aren't looking at the pane; clicking one jumps to it. Text is sanitized, length-capped and rate-limited (FR-T08).
  • OSC 9;4 progress on tabs and panes: a filled top edge plus a "50%", "Paused", "Error" or "Working" label, also read by VoiceOver and reported by session.get (FR-T09).
  • Long-command notifications: with shell integration, a command that ran past a threshold (default 10 s, set in Settings → Sessions) notifies when it finishes out of view. The command line is never shown (FR-SI08).
  • Shell marks over SSH: a remote shell's OSC 133/7/1337 marks show "SSH · host:/path", titles, exit badges and notifications. They're display-only and never used for local paths (FR-SI09).
  • Keep sessions running after quit (opt-in): sessions run in a bundled trellis-broker helper and reconnect at next launch with up to 4 MiB of recent output. ⌘Q offers Keep Running, Stop Sessions or Cancel (FR-R03).
  • Restore scrollback after quit (opt-in): each pane's text, with secrets redacted best-effort, is shown in the stopped pane next launch; 1 MiB per pane, stored unencrypted (FR-R04, FR-R05).
  • The empty workspace shows the Trellis prompt mark with a blinking cursor (solid with Reduce Motion).

Changed

  • Opt-in GPU rendering with Metal (Settings → Sessions → GPU rendering), matching CoreGraphics output and falling back to it automatically. Roughly 50–90% faster output on an M1 Pro; appearance.get reports each pane's renderer (FR-TX05).
  • Scrollback and notification settings moved from Appearance to Settings → Sessions.
  • Large output is faster: up to 43% for cat of big files.
  • The DMG opens as a drag-to-Applications window.
  • The status bar shows Trellis and the app version on the left and the window name on the right.
  • The About panel and LICENSE credit "bearstouch" instead of LayerX Labs; the panel links to https://github.com/bearstouch.

Fixed

  • A busy tab's context menu (including the Color submenu) no longer closes on its own.

Security

  • Compressed (o=z) and chunked kitty graphics images can no longer hang Trellis or exhaust memory.
  • Oversized sixel images and numbers are refused instead of crashing or allocating.
  • Pasted text can't end a bracketed paste early; ESC[200~/ESC[201~ markers are stripped (FR-C03, FR-C04).
  • Creating a saved host, or clearing its user, port or identity file, through the API now also needs session.execute.
  • DCS sequences are capped at 8 MiB like OSC and APC.
  • Release workflow actions are pinned to commit SHAs, and packaging fails when requested notarization fails.

Downloads

  • Trellis-0.11.0.dmg: Universal 2, runs on Apple silicon and Intel (recommended)
  • Trellis-0.11.0-apple-silicon.dmg: Apple silicon (arm64) only
  • Trellis-0.11.0-intel.dmg: Intel (x86_64) only

Verify with shasum -a 256 -c SHA256SUMS.txt. Requires macOS 14 or later.

Note: this build is ad-hoc signed and is not notarized. Gatekeeper will block it; build from source or wait for a signed release.