Skip to content

fix(release): publish versioned installers and refine desktop updates - #2145

Merged
kev1n77 merged 4 commits into
GCWing:mainfrom
kev1n77:fmy/installer
Aug 7, 2026
Merged

fix(release): publish versioned installers and refine desktop updates#2145
kev1n77 merged 4 commits into
GCWing:mainfrom
kev1n77:fmy/installer

Conversation

@kev1n77

@kev1n77 kev1n77 commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Publish the standalone Windows installer with a versioned filename:
    BitFun_<version>_windows-x86_64-installer.exe.
  • Add manual_installers.windows-x86_64 to latest.json while keeping the
    automatic updater package under platforms.windows-x86_64.
  • Update the openbitfun.com mirror flow to synchronize the versioned installer,
    rewrite its URLs, generate website download metadata, and retain the legacy
    fixed-name fallback.
  • Explicitly generate production or development version metadata and make
    generation failures stop the build.
  • Make the desktop About dialog use the native application version and append
    -dev only in development builds.
  • Change the Windows updater NSIS install mode from passive to quiet.

Fixes: N/A

Type and Areas

Type:

Bug fix / CI

Areas:

Desktop/Tauri, web UI, installer, release workflows, update metadata, and
openbitfun.com mirror synchronization.

Motivation / Impact

The standalone Windows installer previously used a fixed filename and was not
represented separately in latest.json, making version-specific domestic
mirror synchronization unreliable.

Production builds could also reuse development version metadata, causing the
About dialog to display a -dev suffix. In addition, automatic updates launched
NSIS in passive mode, which displayed a second installation progress window
after BitFun's own download progress UI.

After this change:

  • Each release publishes a versioned standalone installer and signature.
  • Manual installer consumers and mirrors can use
    manual_installers.windows-x86_64 without changing the Tauri updater URL.
  • Release version metadata is checked for consistency before publication.
  • Production builds display the native packaged version without -dev.
  • Newly built clients install future Windows updates silently after download.

Verification

The following checks passed locally:

  • node --test scripts/tauri-release-manifest.test.mjs scripts/linux-binaries-manifest.test.mjs
    • 13 tests passed.
  • bash -n scripts/openbitfun-release-sync.sh
  • node --test scripts/version-generation.test.mjs
    • 3 tests passed.
  • pnpm --dir src/web-ui run test:run src/shared/utils/version.test.ts
    • 3 tests passed.
  • pnpm run type-check:web
  • pnpm run product:test
    • 19 tests passed.
  • pnpm run check:github-config
    • GitHub configuration validation and 8 tests passed.
  • pnpm run check:repo-hygiene
    • Repository hygiene and release delivery checks passed.
  • git diff upstream/main..HEAD --check

Reviewer Notes

manual_installers is an additional manifest field intended for website and
mirror consumers. Tauri automatic updates continue using
platforms.windows-x86_64.url.

An existing installation may still show the NSIS progress window when upgrading
to the first release containing this change, because that update is launched by
the older client using its embedded passive configuration. Updates launched
by the newly installed version will use quiet mode.

The updated scripts/openbitfun-release-sync.sh must be deployed to the domestic
mirror server before the new manual installer metadata is used there. The script
retains compatibility with releases that only contain the legacy
bitfun-installer.exe asset.

Rollback can be performed independently through the three commits covering
release metadata, About dialog version handling, and updater install mode.

Checklist

  • This PR is focused and does not include secrets, temporary prompts, generated scratch files, or unrelated artifacts.
  • Relevant verification is recorded above, or skipped checks are explained.
  • User-facing strings, docs, and locales are updated where applicable.

@kev1n77
kev1n77 merged commit 9dadf89 into GCWing:main Aug 7, 2026
7 checks passed
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