Skip to content

fix: unblock Windows/macOS release builds for rc tags - #15

Merged
loverustfs merged 1 commit into
mainfrom
cursor/fix-release-build-failures-423c
Aug 29, 2026
Merged

loverustfs merged 1 commit into
mainfrom
cursor/fix-release-build-failures-423c

Conversation

@loverustfs

Copy link
Copy Markdown
Contributor

Why

Release run https://github.com/rustfs/launcher/actions/runs/33270190929 failed on every desktop target:

  1. Windows — cargo tauri build used bundle.targets = "all", so it also built MSI. WiX rejects 1.0.0-rc.4 (optional pre-release identifier in app version must be numeric-only).
  2. macOS Apple Silicon — cargo tauri build --bundles app produced the .app but not .app.tar.gz / .sig. The prepare step then failed with “未找到 macOS updater 产物或签名”.
  3. macOS Intel — upstream rustfs/rustfs@1.0.0-rc.4 no longer publishes rustfs-macos-x86_64-*.zip (no assets match the file pattern).

What changed

  • Windows builds --bundles nsis only. tauri.conf.json targets are now app, dmg, and nsis.
  • macOS builds --bundles app,dmg. If Tauri still does not emit an updater archive, the workflow packs the .app and signs it with cargo tauri signer.
  • Asset download tries *-latest.zip and versioned names. When Intel macOS has no upstream zip, that matrix cell is skipped instead of failing the release.
  • latest.json includes only platforms that actually produced a signed updater file. Apple Silicon and Windows remain required.

scripts/select-rustfs-asset.sh --self-test covers the name matching and is run from CI.

Tests

  • bash scripts/select-rustfs-asset.sh --self-test
  • python3 -m json.tool src-tauri/tauri.conf.json
  • YAML parse of .github/workflows/build.yml

The live Build and Release workflow still has to be re-run on tag 1.0.0-rc.4 after this merges.

Open in Web Open in Cursor 

MSI rejects SemVer prereleases such as 1.0.0-rc.4, so Windows now bundles
NSIS only. macOS builds app+dmg and can synthesize a signed updater
archive when Tauri does not emit one. Intel macOS is skipped when
upstream rustfs has no x86_64 zip, and latest.json lists only the
platforms that actually shipped.

Co-authored-by: RustFS <hello@rustfs.com>
@loverustfs
loverustfs marked this pull request as ready for review August 29, 2026 20:01
@loverustfs
loverustfs merged commit a7ecb86 into main Aug 29, 2026
3 checks passed
@loverustfs
loverustfs deleted the cursor/fix-release-build-failures-423c branch August 29, 2026 20:07
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.

2 participants