Files
CodePilot/electron-builder.yml
T
7418andClaude Opus 4.6 09908cfcb7 fix: resolve macOS build race condition and update download button unresponsive
CI 修复 (electron-builder.yml):
- 移除 mac target 的 arch: [arm64, x64],改由 CI matrix 的 --arch flag 控制
- 根因:两个 macOS job 各自构建两个架构的 DMG,产生两个 draft release,
  导致 release job 只发布了没有 DMG 的那个,macOS 产物丢失

下载按钮无响应修复:
- electron/updater.ts: downloadUpdate IPC handler 加 try-catch,
  失败时通过 sendStatus 发送 error 事件给前端,避免静默失败
- AppShell.tsx: downloadUpdate 回调点击后立即设置 downloadProgress=0
  提供即时 UI 反馈;加 await + catch 处理下载失败并重置状态
- AppShell.tsx: error 事件处理中重置 downloadProgress 为 null,
  使下载按钮在失败后重新出现
- UpdateDialog.tsx / GeneralSection.tsx: isDownloading 判断移除 > 0 条件,
  downloadProgress === 0 时也显示下载中状态,消除点击后无反馈的间隙

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-27 12:11:20 +08:00

81 lines
1.7 KiB
YAML

appId: com.codepilot.app
productName: CodePilot
publish:
provider: github
owner: op7418
repo: CodePilot
directories:
output: release
files:
- dist-electron/**/*
- "!node_modules"
- "!src"
- "!electron"
- "!.next"
- "!build"
- "!scripts"
- "!docs"
- "!release"
- "!data"
extraResources:
- from: .next/standalone/
to: standalone/
filter:
- "**/*"
- "!node_modules"
- "!release"
- from: .next/standalone/node_modules/
to: standalone/node_modules/
filter: ["**/*"]
- from: .next/standalone/.next/
to: standalone/.next/
filter: ["**/*"]
- from: .next/static/
to: standalone/.next/static/
filter: ["**/*"]
- from: public/
to: standalone/public/
filter: ["**/*"]
- from: build/
to: .
filter: ["icon.*"]
afterPack: scripts/after-pack.js
asarUnpack:
- "**/*.node"
- "**/better-sqlite3/**"
mac:
icon: build/icon.icns
category: public.app-category.developer-tools
artifactName: "${productName}-${version}-${arch}.${ext}"
target:
- target: dmg
win:
icon: build/icon.ico
target:
- target: nsis
arch: [x64, arm64]
nsis:
oneClick: false
perMachine: false
allowToChangeInstallationDirectory: false
createDesktopShortcut: true
createStartMenuShortcut: true
deleteAppDataOnUninstall: false
linux:
icon: build/icon.png
category: Development
artifactName: "${productName}-${version}-${arch}.${ext}"
desktop:
entry:
Name: CodePilot
Comment: A native desktop GUI for Claude Code
Categories: Development;IDE;
StartupWMClass: codepilot
target:
- target: AppImage
arch: [x64, arm64]
- target: deb
arch: [x64, arm64]
- target: rpm
arch: [x64, arm64]