Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Changelog

## 1.4.2 - 2026-08-25

Stable patch release of the **Pane Search** generation and **Click to position
cursor**. The application payload is unchanged from the fully validated 1.4.1
candidate. This patch corrects the release-note signing heading required by the
guarded asset verifier after the published `v1.4.1` tag could no longer be
moved or replaced. It publishes as GitHub Latest with application version
`1.4.2`, package/file version `1.4.2.0`, PowerShell module version
`1.4.2`, and tag `v1.4.2`.

### Fixed

- The packaged release notes now use the canonical `## Signing` section
required by the exact-asset verifier while retaining the explicit unsigned
installer and SmartScreen disclosure.

## 1.4.1 - 2026-08-25

Stable production release of the **Pane Search** generation and **Click to
Expand Down
12 changes: 6 additions & 6 deletions README.ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

最新の安定版リリースページには、インストーラー(Setup EXE)、ポータブルZIP、
リリースノート、チェックサムがまとめて掲載されています。現在の安定版は
**winTerm 1.4.1** です。
**winTerm 1.4.2** です。

インストーラーは署名されていないため、Windowsに「不明な発行元」または
SmartScreenの警告が表示される場合があります。必ず上記の公式リリースから
Expand All @@ -34,8 +34,8 @@ Microsoft、Windows、Windows Terminalのロゴも使用していません。
- `winTerm-<version>-setup-x64.exe` — 現在のユーザー、または全ユーザーへのインストール用;
- `winTerm-<version>-portable-x64.zip` — 展開してそのまま実行する用。

現在のソースバージョンは `1.4.1` で、
最新の安定版リリースも `1.4.1` です。公開されている資産の一覧とチェックサムの全体は、
現在のソースバージョンは `1.4.2` で、
最新の安定版リリースも `1.4.2` です。公開されている資産の一覧とチェックサムの全体は、
[最新の公式リリース](https://github.com/HelloThisWorld/winTerm/releases/latest)
を参照してください。

Expand All @@ -46,7 +46,7 @@ Windowsに「不明な発行元」またはSmartScreenの警告が表示され
Windows SDK、`Add-AppxPackage` は一切必要ありません。

[インストール手順(英語)](docs/user/installation.md)、
[1.4.1のリリースノート(英語)](docs/releases/1.4.1.md)、
[1.4.2のリリースノート(英語)](docs/releases/1.4.2.md)、
[1.3.0のリリースノート(英語)](docs/releases/1.3.0.md)もあわせて参照してください。

## 主な機能
Expand Down Expand Up @@ -116,8 +116,8 @@ PowerShell 7と、[ビルド手順(英語)](docs/build.md)に記載された
.\scripts\winterm\build.ps1 -Configuration Release -Platform x64 -IncludeTests
.\scripts\winterm\test.ps1 -Suite Relevant -Configuration Release -Platform x64
.\scripts\winterm\build-unpackaged.ps1 -Configuration Release -Platform x64
.\scripts\winterm\build-installer.ps1 -Version 1.4.1 -Platform x64
.\scripts\winterm\build-portable.ps1 -Version 1.4.1 -Platform x64
.\scripts\winterm\build-installer.ps1 -Version 1.4.2 -Platform x64
.\scripts\winterm\build-portable.ps1 -Version 1.4.2 -Platform x64
```

アンパッケージ形式の生成処理では、統合されたリソースインデックスを作るための
Expand Down
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ English | [日本語](README.ja.md)
[**Open the latest stable release and download winTerm for x64**](https://github.com/HelloThisWorld/winTerm/releases/latest)

The latest stable Release page provides the Setup EXE, Portable ZIP, release
notes, and checksums together. The current stable release is **winTerm 1.4.1**.
notes, and checksums together. The current stable release is **winTerm 1.4.2**.

The installer is unsigned, so Windows may display Unknown Publisher or a
SmartScreen warning. Download only from the official release above and verify
Expand All @@ -31,8 +31,8 @@ application downloads are:
- `winTerm-<version>-setup-x64.exe` — current-user or all-users installation;
- `winTerm-<version>-portable-x64.zip` — extract and run without installation.

The current source version is `1.4.1`;
the latest stable release is `1.4.1`. See the
The current source version is `1.4.2`;
the latest stable release is `1.4.2`. See the
[latest official Release](https://github.com/HelloThisWorld/winTerm/releases/latest)
for the complete published asset list and checksums.

Expand All @@ -42,7 +42,7 @@ Release. No MSIX certificate, Developer Mode, Visual Studio, Windows SDK, or
`Add-AppxPackage` is required to install a release EXE.

See [installation guidance](docs/user/installation.md), the
[1.4.1 release notes](docs/releases/1.4.1.md), and the earlier
[1.4.2 release notes](docs/releases/1.4.2.md), and the earlier
[1.3.0 notes](docs/releases/1.3.0.md).

## Core features
Expand Down Expand Up @@ -109,8 +109,8 @@ Use PowerShell 7 and the Microsoft Terminal toolchain described in
.\scripts\winterm\build.ps1 -Configuration Release -Platform x64 -IncludeTests
.\scripts\winterm\test.ps1 -Suite Relevant -Configuration Release -Platform x64
.\scripts\winterm\build-unpackaged.ps1 -Configuration Release -Platform x64
.\scripts\winterm\build-installer.ps1 -Version 1.4.1 -Platform x64
.\scripts\winterm\build-portable.ps1 -Version 1.4.1 -Platform x64
.\scripts\winterm\build-installer.ps1 -Version 1.4.2 -Platform x64
.\scripts\winterm\build-portable.ps1 -Version 1.4.2 -Platform x64
```

The unpackaged generator uses an unsigned MSIX only as an upstream build
Expand Down
35 changes: 19 additions & 16 deletions docs/current-progress.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,14 @@ Last updated: 2026-08-25

## Repository state

- Working branch: `codex/release-v1.4.1`
- Branch base: `63c52f538abc29d434077c60acfc5e4aafe95d1b` (`origin/main` at
- Working branch: `codex/release-v1.4.2`
- Branch base: `09dc76796725d9b7bd7b0d86a28196bce14698c7` (`origin/main` at
release preparation start)
- Application version: `1.4.1`
- Package/file version: `1.4.1.0`
- PowerShell module version: `1.4.1` with an empty prerelease suffix
- Application version: `1.4.2`
- Package/file version: `1.4.2.0`
- PowerShell module version: `1.4.2` with an empty prerelease suffix
- Release channel: `stable`
- Intended tag: `v1.4.1`
- Intended tag: `v1.4.2`
- Supported target: Windows 11 x64

The source remains based on the repository's pinned Microsoft Terminal
Expand All @@ -20,12 +20,15 @@ Microsoft Terminal `upstream/main` was separately fetched through
`86d15aef08e500be34497ff4e3a6f0d099ffb067` (2026-08-24) for a targeted
cursor-positioning audit; no broad upstream merge was performed.

## 1.4.1 release scope
## 1.4.2 release scope

winTerm 1.4.1 promotes the complete Pane Search development line and adds
winTerm 1.4.2 promotes the complete Pane Search development line and adds
Click to position cursor as a stable, default-enabled winTerm feature. It is
the combined application delta since stable v1.3.0; the earlier 1.4.0 alpha
and beta entries remain historical records only.
the combined application delta since stable v1.3.0. The immutable v1.4.1 tag
reached packaging but did not publish a GitHub Release because its release-note
signing heading did not match the exact verifier contract; 1.4.2 corrects that
release-only defect. The earlier 1.4.0 alpha and beta entries remain historical
records only.

### Pane Search

Expand Down Expand Up @@ -63,12 +66,12 @@ and beta entries remain historical records only.

### Visual Progress and Command Timeline

- Visual Progress remains stable in 1.4.1, including its determinate and
- Visual Progress remains stable in 1.4.2, including its determinate and
indeterminate renderer, per-pane state, accessibility path, and local-only
recognition controls.
- Command Timeline remains stable and pane-local, with OSC 133-backed command
boundaries, filtering, load-without-executing, copy, jump, and status.
- The 1.4.1 cursor work does not change either feature's settings, protocol,
- The 1.4.2 cursor work does not change either feature's settings, protocol,
persistence, or privacy boundaries.

## Upstream cursor audit
Expand Down Expand Up @@ -96,14 +99,14 @@ public asset re-download before publication is considered complete.

The expected public Release assets are:

- `winTerm-1.4.1-setup-x64.exe`
- `winTerm-1.4.1-portable-x64.zip`
- `winTerm-1.4.2-setup-x64.exe`
- `winTerm-1.4.2-portable-x64.zip`
- `SHA256SUMS.txt`
- `THIRD_PARTY_NOTICES.md`
- `SBOM.spdx.json`
- `SBOM.cyclonedx.json`
- `release-metadata.json`
- `winTerm-1.4.1-release-notes.md`
- `winTerm-1.4.2-release-notes.md`

The installer is currently not Authenticode-signed, so Unknown Publisher or
SmartScreen warnings remain possible. The Release notes disclose this and
Expand All @@ -129,7 +132,7 @@ for the published installer and Portable ZIP.
tag the exact merged `main` commit, and monitor the formal Release workflow
through public asset validation.
2. Update and deploy winterm.dev from the real `published_at` timestamp and
public v1.4.1 asset URLs, then verify English/Japanese production pages.
public v1.4.2 asset URLs, then verify English/Japanese production pages.
3. Only after both the stable Release and website are verified, remove the
published v1.4.0-beta GitHub prerelease entry while retaining its historical
git tag.
107 changes: 107 additions & 0 deletions docs/releases/1.4.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
# winTerm 1.4.2

**winTerm 1.4.2 is a stable production release.** GitHub Latest points to
`v1.4.2`; there is no alpha, beta, preview, or prerelease suffix in the
application, package, PowerShell module, or Release metadata.

This release contains everything changed since stable v1.3.0: the complete
Pane Search feature line, Click to position cursor, cursor-coordinate and
interaction hardening, and the associated tests and documentation.

## New: Pane Search

Press `Ctrl+F` to search the **focused pane only**. `Ctrl+Shift+F` remains a
remappable compatibility alias. The implementation reuses the terminal's
existing search pipeline rather than maintaining a second index or buffer.

- Search follows typing across the pane's entire active scrollback and
highlights all matches at once.
- `Enter` and `Shift+Enter` move forward and backward with wrap-around.
- Case-sensitive and regular-expression modes are available from the compact
search overlay, alongside the `current / total` match counter.
- The scrollbar shows one marker per matching buffer row and emphasizes the
current match's row. This overview is pane-local and does not require generic
shell marks to be enabled.
- Typing is coalesced, live results converge during sustained streaming output,
and unchanged scrollbar state is not needlessly repainted.
- Resize/reflow, scrollback eviction, active-buffer changes, invalid regular
expressions, CJK, and emoji search spans have deterministic regression
coverage.

## New: Click to position cursor

A plain single left click inside the current editable command moves the shell
cursor to that location. winTerm calculates the cell distance and sends LEFT
or RIGHT input events, keeping PowerShell, Readline, and cooked-input state
authoritative. It never moves only the renderer cursor, edits the command
buffer directly, inserts or deletes text, or executes the command.

The feature is enabled by default for winTerm profiles. It can be disabled in
**Profile > Advanced > Click to position cursor**, and an explicit existing
`"experimental.repositionCursorWithMouse": false` setting remains respected.
The internal JSON property name is retained for configuration compatibility;
the user-facing feature is not described as experimental.

Shell integration supplies the safety boundary. Positioning is allowed only
when the last shell mark identifies a current, unfinished editable command.
Clicks on previous commands, previous output, unrelated scrollback, completed
or executing commands, and any position that cannot be validated are safe
no-ops.

## Mouse behavior and compatibility

Cursor positioning occurs on left-button release only when the existing drag
threshold was not crossed. Starting a drag never moves the command cursor
first. Existing interaction precedence remains:

1. Ctrl+Click hyperlink activation.
2. VT mouse reporting to the child terminal application.
3. Double-click word and triple-click line selection.
4. Shift+Click and drag selection.
5. Plain single click positioning.

Mouse-aware applications such as Vim, Less, top, htop, k9s, and tmux retain
mouse ownership when VT mouse reporting is active. Each split pane owns its
own terminal connection, marks, selection state, and cursor-position input.

## Stability fixes

- Integrated the safety intent of Microsoft Terminal PR #20442, merged as
`de3fc87d186e5da1d5ccd8731412905f5e2aba30`. Mouse coordinates are translated
at widened precision, vertical padding and out-of-viewport rows are rejected,
horizontal padding is clamped to rendered buffer cells, and every point is
checked against the TextBuffer's inclusive coordinate contract before use.
- Negative, overflow, beyond-width, beyond-height, padding, empty-command,
historical-output, wrapped-command, resize-era, and pane-isolation cases
fail safely and have automated regression coverage.
- Full-width glyph trailing cells do not produce duplicate LEFT/RIGHT events.
- Pane Search reflow no longer creates a stray selection, active-buffer changes
discard stale highlights, and closing search releases retained search-span
storage.

## Downloads

- `winTerm-1.4.2-setup-x64.exe` — current-user or all-users installation.
- `winTerm-1.4.2-portable-x64.zip` — extract and run without installation;
`portable.marker` keeps data beside the executable.
- `SHA256SUMS.txt` — checksums for the application downloads and published
release artifacts.
- `THIRD_PARTY_NOTICES.md` — dependency and attribution notices.
- `SBOM.spdx.json` and `SBOM.cyclonedx.json` — software bills of materials.
- `release-metadata.json` — immutable build and source provenance.
- `winTerm-1.4.2-release-notes.md` — the packaged copy of these notes.

Upgrading keeps settings, themes, workspaces, and snapshots under
`%LOCALAPPDATA%\winTerm`, or under the adjacent `data` directory in portable
mode.

## Signing

The installer is **not Authenticode-signed**. Windows may display Unknown
Publisher or a Microsoft Defender SmartScreen warning. Download only from the
official GitHub Release and verify `SHA256SUMS.txt` from that same Release
before running the installer.

Requires Windows 11 x64. winTerm is an independent open-source project based
on Microsoft Terminal source code; it is not a Microsoft product and is not
affiliated with or endorsed by Microsoft.
4 changes: 2 additions & 2 deletions scripts/winterm/package-shell-assets.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ foreach ($relativePath in $sourceAssets)
}

$version = Get-Content -LiteralPath (Join-Path $repositoryRoot 'shell\shared\version.json') -Raw | ConvertFrom-Json
if ($version.moduleVersion -ne '1.4.1' -or
if ($version.moduleVersion -ne '1.4.2' -or
$version.modulePrerelease -ne '' -or
$version.applicationVersion -ne '1.4.1' -or
$version.applicationVersion -ne '1.4.2' -or
$version.protocolVersion -ne 1)
{
throw 'The winTerm Shell asset version metadata is invalid.'
Expand Down
Loading
Loading