Repository navigation
Commit 04025ec
committed
v1.4.6 — Windows hot-fix (artifact name + signature check)
Same feature set as v1.4.5; only Windows packaging changed. Fixes two
auto-updater issues that blocked v1.4.5 from reaching Windows users.
═══ Issue 1 — Windows artifact filename mismatch ═══
The default electron-builder NSIS template produces a file with spaces
("Tiger Studio Manager Setup 1.4.5.exe"). GitHub auto-rewrote the
spaces to dots on upload ("Tiger.Studio.Manager.Setup.1.4.5.exe"),
but latest.yml — generated by electron-builder before the upload —
URL-encoded the spaces as dashes ("Tiger-Studio-Manager-Setup-1.4.5.exe").
Three different filenames for the same physical .exe.
Fix:
win.artifactName = "Tiger-Studio-Manager-Setup-${version}.${ext}"
Now dist/ produces a space-free filename, so GitHub doesn't rewrite it
and latest.yml matches verbatim. The v1.4.5 release was hot-patched in
place — the dotted-name asset was deleted, the bytes were re-uploaded
under the dashed name (sha512 verified intact), latest.yml was reset
to the dashed reference. v1.4.5 → v1.4.6 auto-update will land on
existing v1.4.5 installs cleanly because the manifest now resolves to
a 200.
═══ Issue 2 — electron-updater publisherName mismatch ═══
electron-updater verifies authenticode signature on the downloaded
.exe before swapping it in. Our nsis config didn't define a
publisherName, so electron-builder fell back to deriving it from the
macOS `mac.identity` field — "Developer ID Application: 3D France
(RT4W5WC9P2)" — a name that of course doesn't match the unsigned
Windows .exe we currently ship. Status: 2 (NotSigned) → auto-update
rejected with "New version is not signed by the application owner".
Fix (temporary):
nsis.publisherName = []
An empty array short-circuits the authenticode check entirely. The
SHA-512 + size verification in latest.yml is still enforced, so
update integrity is preserved over the HTTPS download path. The
attack surface this loses is "MITM with valid TLS but tampered .exe"
which is already protected by the SHA-512 in the signed-by-GitHub
latest.yml. Acceptable trade-off until Microsoft Trusted Signing is
live for STARGATE GROUP (currently In Progress at Microsoft).
When the cert is ready and the GitHub Actions step starts signing
the .exe, this will become:
nsis.publisherName = ["TigerTag Project"]
(or whatever the actual cert subject ends up being).
Files changed: package.json (win.artifactName + nsis.publisherName +
version 1.4.5 → 1.4.6), package-lock.json (version bump), README.md
(changelog entry).1 parent 760df93 commit 04025ec
3 files changed
Lines changed: 12 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
44 | 51 | | |
45 | 52 | | |
46 | 53 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
102 | | - | |
| 102 | + | |
| 103 | + | |
103 | 104 | | |
104 | 105 | | |
105 | 106 | | |
0 commit comments