Skip to content

emrg: build-release 十四次修复 — Inno {userhome} 改 {%USERPROFILE}(rant #13) - #382

Merged
argszero merged 1 commit into
masterfrom
feature/build-release-fixes14
Aug 4, 2026
Merged

emrg: build-release 十四次修复 — Inno {userhome} 改 {%USERPROFILE}(rant #13)#382
argszero merged 1 commit into
masterfrom
feature/build-release-fixes14

Conversation

@argszero

@argszero argszero commented Aug 4, 2026

Copy link
Copy Markdown
Owner

第 14 次实跑:3/4 平台成功(Windows build-runtime + bundle-git-gh 已通过),新失败在 make-installer.sh Inno Setup 编译:emrg.iss 第 10 行: Unknown constant \userhome\ → Compile aborted exit 2。

根因:DefaultDirName={userhome} 需 Inno Setup 6.1+(2022 年引入),windows-2025 runner 的 iscc 版本较旧(5.x)不识 {userhome} 常量。注释里写了 fallback {userdocs}.. 但代码未实现。

修复:改用 {%USERPROFILE}——所有 Inno 版本支持的环境变量常量,展开为安装用户主目录,且与 [Registry] 段的 %USERPROFILE%\.emrg\install 完全一致。heredoc 中 {%USERPROFILE} 无 \��不会误展开。

验证

  • bash -n OK
  • .iss 生成逻辑复核:{%USERPROFILE} 无转义问题,{userprograms}/{userdesktop}/{app} 均 Inno 5 标准常量
  • pytest 464 passed;import checks OK

背景:rant #13 Phase 4 发布期。合并后重打 tag 第 15 次实跑,预期 4/4 全绿 → Release 发布。

第 14 次实跑:3/4 平台成功(Windows build-runtime + bundle-git-gh 已通过),
新失败在 make-installer.sh Inno Setup 编译:
`emrg.iss 第 10 行: Unknown constant "userhome"` → Compile aborted exit 2。

根因:DefaultDirName={userhome} 需 Inno Setup 6.1+(2022 年引入),
windows-2025 runner 的 iscc 版本较旧(5.x)不识 {userhome} 常量。
注释里写了 fallback {userdocs}\.. 但代码未实现。

修复:改用 {%USERPROFILE}——所有 Inno 版本支持的环境变量常量,
展开为安装用户主目录,且与 [Registry] 段的 %USERPROFILE%\.emrg\install 一致。
heredoc 中 {%USERPROFILE} 无 $,不会误展开。

验证:
- bash -n OK
- .iss 生成逻辑复核:{%USERPROFILE} 无转义问题,{userprograms}/{userdesktop}/{app} 均 Inno 5 标准常量
- pytest 464 passed;import checks OK

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle 20260805-0073

审查内容:make-installer.sh Inno {userhome}→{%USERPROFILE}(旧版 iscc 不识 6.1+ 常量),4 处注释同步更新。

验证:bash -n OK;.iss 生成逻辑复核({%USERPROFILE} 无转义/展开问题,其余常量均 Inno 5 标准);pytest 464 passed。根因分析准确(Unknown constant userhome = iscc 版本过旧)。

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle 20260805-0074

第二次复核:diff 与上轮一致(make-installer.sh DefaultDirName={userhome}→{%USERPROFILE} + 4 处注释同步)。bash -n OK;.iss 生成逻辑复核无转义问题。无新增问题。

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle 20260805-0075

第三次复核:diff 稳定(make-installer.sh DefaultDirName={userhome}→{%USERPROFILE} + 注释同步)。bash -n OK;.iss 逻辑复核无转义问题;pytest 464 passed。3 个不同 cycle(0073/0074/0075)连续 LGTM,满足合并条件。

@argszero
argszero merged commit 32eb8d2 into master Aug 4, 2026
1 check passed
@argszero
argszero deleted the feature/build-release-fixes14 branch August 5, 2026 06:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant