From a038461512ea0d535ac499a9784b93808248d590 Mon Sep 17 00:00:00 2001 From: "shingo.imota" Date: Sat, 5 Sep 2026 07:51:37 +0900 Subject: [PATCH] chore(release): v0.2.9 --- CHANGELOG.md | 27 +++++++++++++++++++++++++++ Cargo.lock | 26 +++++++++++++------------- Cargo.toml | 2 +- Casks/noa.rb | 2 +- 4 files changed, 42 insertions(+), 15 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bf22d08..4b1eed5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,33 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.2.9] - 2026-09-05 + +### Fixed + +- Claude Code installed through npm is recognized as an agent. The tty's + foreground process for an npm install is the `node` wrapper, and the + wrapper's argv was only inspected for Codex, so Claude Code panes showed + "node", BEL never promoted to attention, and the auto-approve fire gate + rejected every candidate. Wrapper canonicalization now covers Claude Code as + well, including the common `bin/claude` symlink launch whose argv carries no + package name, and an explicit npm package reference takes precedence over + the executable-basename heuristic so a Claude Code launch mentioning a + `codex` path is not branded Codex (#62) +- Raw C1 bytes in ground state decode as invalid UTF-8 instead of opening a + control string, so one stray byte from damaged multi-byte text can no longer + swallow the visible output that follows (#61) +- Colon-form SGR subparameter groups stop at the first semicolon and no longer + borrow the following attribute (#61) +- DECOM origin-relative cursor addressing is applied to CUP/CHA/VPA, margin + homing, CPR, and saved-cursor replay; IRM insert mode shifts existing cells; + ICH/DCH/IL/DL/SU/SD and TAB/CBT are confined to DECSLRM margins; images + outside the margins survive rectangle scrolls (#61) +- Shrinking the row count keeps populated rows below the cursor and counts + erased rows as disposable (#61) +- `noa.getText` IPC responses are capped to the WebSocket write buffer so a + large read cannot disconnect the control client (#61) + ## [0.2.8] - 2026-08-24 ### Fixed diff --git a/Cargo.lock b/Cargo.lock index 4aa4610..07f60cf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -773,7 +773,7 @@ checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" [[package]] name = "drain-staircase" -version = "0.2.8" +version = "0.2.9" dependencies = [ "crossbeam-channel", "libc", @@ -1614,7 +1614,7 @@ dependencies = [ [[package]] name = "noa" -version = "0.2.8" +version = "0.2.9" dependencies = [ "anyhow", "clap", @@ -1625,7 +1625,7 @@ dependencies = [ [[package]] name = "noa-app" -version = "0.2.8" +version = "0.2.9" dependencies = [ "aes-gcm", "anyhow", @@ -1664,7 +1664,7 @@ dependencies = [ [[package]] name = "noa-config" -version = "0.2.8" +version = "0.2.9" dependencies = [ "anyhow", "dirs", @@ -1673,14 +1673,14 @@ dependencies = [ [[package]] name = "noa-core" -version = "0.2.8" +version = "0.2.9" dependencies = [ "bitflags 2.13.0", ] [[package]] name = "noa-font" -version = "0.2.8" +version = "0.2.9" dependencies = [ "core-foundation 0.9.4", "core-text", @@ -1697,7 +1697,7 @@ dependencies = [ [[package]] name = "noa-grid" -version = "0.2.8" +version = "0.2.9" dependencies = [ "bitflags 2.13.0", "flate2", @@ -1711,7 +1711,7 @@ dependencies = [ [[package]] name = "noa-ipc" -version = "0.2.8" +version = "0.2.9" dependencies = [ "crossbeam-channel", "libc", @@ -1726,7 +1726,7 @@ dependencies = [ [[package]] name = "noa-parity" -version = "0.2.8" +version = "0.2.9" dependencies = [ "noa-core", "noa-grid", @@ -1735,7 +1735,7 @@ dependencies = [ [[package]] name = "noa-pty" -version = "0.2.8" +version = "0.2.9" dependencies = [ "crossbeam-channel", "libc", @@ -1748,7 +1748,7 @@ dependencies = [ [[package]] name = "noa-render" -version = "0.2.8" +version = "0.2.9" dependencies = [ "anyhow", "bytemuck", @@ -1765,14 +1765,14 @@ dependencies = [ [[package]] name = "noa-theme" -version = "0.2.8" +version = "0.2.9" dependencies = [ "noa-core", ] [[package]] name = "noa-vt" -version = "0.2.8" +version = "0.2.9" dependencies = [ "noa-core", "simdutf8", diff --git a/Cargo.toml b/Cargo.toml index 7a79274..4772011 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,7 +13,7 @@ codegen-units = 1 [workspace.package] edition = "2024" -version = "0.2.8" +version = "0.2.9" license = "MIT" repository = "https://github.com/simota/Noa" diff --git a/Casks/noa.rb b/Casks/noa.rb index 10dd71e..7534ec1 100644 --- a/Casks/noa.rb +++ b/Casks/noa.rb @@ -1,5 +1,5 @@ cask "noa" do - version "0.2.8" + version "0.2.9" sha256 :no_check url "https://github.com/simota/Noa/releases/download/v#{version}/Noa-#{version}-macos-arm64.zip"