diff --git a/CHANGELOG.md b/CHANGELOG.md index 29a1e2c..a34960c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,40 @@ Releases follow [Semantic Versioning](https://semver.org). Each release is a git tag; its notes are the section below with the same version. +## [1.1.0] - 2026-11-10 + +### Terminal and shell +- Ghostty keeps 10 MB of scrollback per terminal, allocated lazily: `scrollback-limit` is in bytes, + so the old 50000 kept only a few hundred lines. +- Ghostty copies its terminfo and `TERM` to ssh hosts, and notifies (bell, desktop notification and a + border on the split) when a command of 30 s or more finishes in a terminal that is not focused. +- On Linux, Ghostty uses the epoll backend: with io_uring every idle terminal showed up as iowait. +- Shells run by coding agents (`CLAUDECODE`, `CODEX_THREAD_ID` or `CODEX_SANDBOX` set) stay plain: no + eza/bat replacements and no `rm`/`cp`/`mv -i` prompts, which stalled chained commands. + `_vt_human_shell` lets `~/.zshrc.local` do the same for its own wrappers. +- Bun completions load when bun is installed. + +### AI in the shell +- `aiexplain`'s output capture is opt-in (`VT_CAPTURE_OUTPUT=1`). The preexec hook piped every + command through `tee`, so commands lost their terminal: no delta or pager in `git diff`, no colour + in bat and eza, plain Markdown from `cheat`. When it is on, the file is mode 600 under `$TMPDIR` + instead of world-readable under `/tmp`. + +### Zed IDE (`ide/`) +- Zig and Swift enabled, with ZLS from Homebrew. + +### Git guard hooks +- `guard.denyEmail`: `pre-commit` refuses a commit whose author or committer email matches it, and + `pre-push` refuses to publish one that skipped the check (rebase, `--no-verify`, another machine). + Off unless the key is set; tested in CI on Linux and macOS. + +### Security +- Ghostty's `clipboard-read` is back to `ask`: with `allow`, any program, including a remote one over + ssh through OSC 52, could read the clipboard silently. + +### Install +- The one-line install and `vt --version` point at 1.1.0. The README shows a terminal demo GIF. + ## [1.0.0] - 2026-10-19 First tagged release: six months of the setup in daily use on macOS and Linux. @@ -42,4 +76,5 @@ First tagged release: six months of the setup in daily use on macOS and Linux. macOS's Bash 3.2, CodeQL, actions pinned by SHA, Ubuntu image pinned to 24.04. - GPL-3.0 license. +[1.1.0]: https://github.com/ValentinTorassa/VT-Terminal-Project/compare/v1.0.0...v1.1.0 [1.0.0]: https://github.com/ValentinTorassa/VT-Terminal-Project/releases/tag/v1.0.0 diff --git a/README.md b/README.md index ded29d2..e32b7f1 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ The Zed setup that used to be [VT-IDE-Project](https://github.com/ValentinTorass One line, pinned to the latest release (read [`bootstrap.sh`](./bootstrap.sh) first: it is short): ```bash -curl -fsSL https://raw.githubusercontent.com/ValentinTorassa/VT-Terminal-Project/v1.0.0/bootstrap.sh | bash +curl -fsSL https://raw.githubusercontent.com/ValentinTorassa/VT-Terminal-Project/v1.1.0/bootstrap.sh | bash ``` It clones the repository into `~/.dotfiles` (or updates the clone that's already there) and runs diff --git a/bootstrap.sh b/bootstrap.sh index f01ee82..3986efa 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -1,13 +1,13 @@ #!/usr/bin/env bash # One-line install for VT Terminal Project: # -# curl -fsSL https://raw.githubusercontent.com/ValentinTorassa/VT-Terminal-Project/v1.0.0/bootstrap.sh | bash +# curl -fsSL https://raw.githubusercontent.com/ValentinTorassa/VT-Terminal-Project/v1.1.0/bootstrap.sh | bash # # Clones the repository (or updates an existing clone) at a fixed release and runs install.sh. # Read it before piping it into a shell: it is short. # # VT_TERMINAL_DIR=~/.dotfiles where the clone lives (default: ~/.dotfiles) -# VT_TERMINAL_REF=v1.0.0 release tag, branch or commit to check out (default: this release) +# VT_TERMINAL_REF=v1.1.0 release tag, branch or commit to check out (default: this release) # VT_TERMINAL_NO_INSTALL=1 clone or update only, without running install.sh # # Everything runs inside a function called on the last line, so a download cut halfway runs nothing. @@ -16,7 +16,7 @@ set -euo pipefail vt_bootstrap() { local repo="https://github.com/ValentinTorassa/VT-Terminal-Project.git" local dir="${VT_TERMINAL_DIR:-$HOME/.dotfiles}" - local ref="${VT_TERMINAL_REF:-v1.0.0}" + local ref="${VT_TERMINAL_REF:-v1.1.0}" if ! command -v git >/dev/null 2>&1; then echo "[!] git is required" >&2 diff --git a/scripts/vt b/scripts/vt index 2bdbee9..7f752e1 100755 --- a/scripts/vt +++ b/scripts/vt @@ -16,7 +16,7 @@ # Written for bash 3.2 (macOS /bin/bash): no associative arrays, no mapfile. set -uo pipefail -VT_VERSION="1.0.0" +VT_VERSION="1.1.0" VT_NAMES="check test build setup doctor" NL=' '