From a6e6b1f6aa88d9cae6bebdb83ca7b30d78c2fb18 Mon Sep 17 00:00:00 2001 From: yushen Date: Tue, 20 Jan 2026 15:40:09 +0800 Subject: [PATCH] feat: update release skill for complete build artifacts - Update build:mac script to build both arm64 and x64 architectures - Update release skill to include all build artifacts: - DMG files with blockmaps - ZIP files with blockmaps - latest-mac.yml for auto-updater Co-Authored-By: Claude Opus 4.5 --- .claude/skills/release/SKILL.md | 24 ++++++++++++++++++++---- package.json | 2 +- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/.claude/skills/release/SKILL.md b/.claude/skills/release/SKILL.md index 50580a03f9..59dd835c81 100644 --- a/.claude/skills/release/SKILL.md +++ b/.claude/skills/release/SKILL.md @@ -108,8 +108,11 @@ This will: - Build x64 (Intel) version - Automatically notarize with Apple (notarize: true in config) - Output files to `dist/` directory: - - `Multica-{version}-arm64.dmg` - - `Multica-{version}-x64.dmg` + - `Multica-{version}-arm64.dmg` and `.blockmap` + - `Multica-{version}-x64.dmg` and `.blockmap` + - `Multica-{version}-arm64-mac.zip` and `.blockmap` + - `Multica-{version}-x64-mac.zip` and `.blockmap` + - `latest-mac.yml` (auto-updater manifest) ### Step 6: Commit Version Change @@ -165,16 +168,29 @@ Format example: ### Step 8: Create GitHub Release -1. Create the release with generated notes: +1. Create the release with generated notes and all build artifacts: ```bash gh release create v{version} \ --title "v{version}" \ --notes "{release_notes}" \ dist/Multica-{version}-arm64.dmg \ - dist/Multica-{version}-x64.dmg + dist/Multica-{version}-arm64.dmg.blockmap \ + dist/Multica-{version}-x64.dmg \ + dist/Multica-{version}-x64.dmg.blockmap \ + dist/Multica-{version}-arm64-mac.zip \ + dist/Multica-{version}-arm64-mac.zip.blockmap \ + dist/Multica-{version}-x64-mac.zip \ + dist/Multica-{version}-x64-mac.zip.blockmap \ + dist/latest-mac.yml ``` + The uploaded files include: + - **DMG files**: Primary installers for each architecture + - **ZIP files**: Alternative distribution format (required by auto-updater) + - **Blockmap files**: Enable incremental/delta updates + - **latest-mac.yml**: Manifest file for electron-updater to check for new versions + 2. Confirm the release was created successfully 3. Provide the release URL to the user diff --git a/package.json b/package.json index f5c9d9ae80..247b5ad263 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "postinstall": "electron-builder install-app-deps", "build:unpack": "npm run build && electron-builder --dir", "build:win": "npm run build && electron-builder --win", - "build:mac": "electron-vite build && electron-builder --mac", + "build:mac": "electron-vite build && electron-builder --mac --arm64 --x64", "build:linux": "electron-vite build && electron-builder --linux", "cli": "tsx src/main/cli.ts", "test:acp": "tsx src/main/cli.ts prompt",