From 351c6ddad512e6be480b9e8c1286c865e1236cc2 Mon Sep 17 00:00:00 2001 From: Mura Li <2606021+typeless@users.noreply.github.com> Date: Mon, 20 Jul 2026 15:13:19 +0800 Subject: [PATCH 1/2] Give the fork a release number independent of the upstream version Both fork releases so far collided on the upstream number: v5.8.0-agent and v5.8.0-agent-putup describe the same 5.8.0 base, so each new release had to invent another suffix instead of incrementing. There was no room left for a third. MAJOR/MINOR/PATCH cannot absorb a fork counter -- they are read as upstream-semantic by ttset's RunningVersion (MAJOR*10000+MINOR), the TERATERM.INI Version key, the ttpcmn shared-memory filemap name and the TTL cur_major/cur_minor macros exposed to user scripts. Renumbering them would send RunningVersion backwards and break macros testing cur_major >= 5. So the upstream triple stays the base and SUBSTR carries the fork's own semver, starting at 1.0.0 on the first putup-only tree. Releases now increment independently, and a rebase moves the base without disturbing the counter. The dash in "agent-1.0.0" is load-bearing: svnrev.pl splices SUBSTR straight into $version, which becomes OutputBaseFilename, so a space would put spaces in the installer and zip filenames. Claude-Session: https://claude.ai/code/session_01YEkLFtTYQZuQHgQP5qYtq7 --- teraterm/common/tt-version.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/teraterm/common/tt-version.h b/teraterm/common/tt-version.h index 6034cb37b..6962f6798 100644 --- a/teraterm/common/tt-version.h +++ b/teraterm/common/tt-version.h @@ -28,10 +28,16 @@ #pragma once +// MAJOR/MINOR/PATCH track the UPSTREAM base this fork is built from -- they are +// read as upstream-semantic by ttset RunningVersion, the TERATERM.INI Version +// key, the ttpcmn filemap name and the TTL cur_major/cur_minor macros, so they +// move only on a rebase. The fork's own release number lives in SUBSTR and +// increments independently. No spaces: svnrev.pl splices SUBSTR straight into +// the installer/zip filenames. #define TT_VERSION_MAJOR 5 #define TT_VERSION_MINOR 8 #define TT_VERSION_PATCH 0 -#define TT_VERSION_SUBSTR "agent" +#define TT_VERSION_SUBSTR "agent-1.0.0" //#undef TT_VERSION_SUBSTR // SUBSTR が不要な時は undef する // 使用例 "dev", "RC", "RC2" From 86b78d72d7c29be34b3827a352c860053f3dfaee Mon Sep 17 00:00:00 2001 From: Mura Li <2606021+typeless@users.noreply.github.com> Date: Mon, 20 Jul 2026 15:52:03 +0800 Subject: [PATCH 2/2] Publish releases as latest instead of prerelease The publish step hardcoded --prerelease from when putup releases were experimental dry runs. With the fork on its own semver line, a v* tag is a real release, so flipping the flag by hand after every publish would be the workaround for a wrong default. Claude-Session: https://claude.ai/code/session_01YEkLFtTYQZuQHgQP5qYtq7 --- .github/workflows/putup-release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/putup-release.yml b/.github/workflows/putup-release.yml index 1a83223ea..df75e9451 100644 --- a/.github/workflows/putup-release.yml +++ b/.github/workflows/putup-release.yml @@ -347,6 +347,6 @@ jobs: dist/*.exe dist/*.zip dist/*.sha256sum dist/*.sha512sum else gh release create "$TAG" --repo "$REPO" \ - --title "Tera Term $TAG" --prerelease --generate-notes \ + --title "Tera Term $TAG" --latest --generate-notes \ dist/*.exe dist/*.zip dist/*.sha256sum dist/*.sha512sum fi