diff --git a/.claude/skills/release/SKILL.md b/.claude/skills/release/SKILL.md index 43e6302..344d40b 100644 --- a/.claude/skills/release/SKILL.md +++ b/.claude/skills/release/SKILL.md @@ -43,7 +43,9 @@ description: 发版助手。自动分析改动、生成 CHANGELOG 条目、处 | 新增功能 | 次版本号 +1,修订号归零 | `0.0.1` → `0.1.0` | | 破坏性变更 | 主版本号 +1 | `0.x.x` → `1.0.0` | -**测试版判断**:版本号主版本为 0(即 `0.x.x`)时,在 GitHub Release 上自动标记为"预发布/测试版"(CI 已配置,无需手动处理)。 +版本号支持 `-beta` / `-alpha` / `-rc.1` 等后缀(如 `0.1.0-beta`)。 + +**测试版判断**:版本号主版本为 0(即 `0.x.x`)或包含 `-`(如 `0.1.0-beta`)时,在 GitHub Release 上自动标记为"预发布/测试版"(CI 已配置,无需手动处理)。 向用户展示建议版本号,等待确认或让用户输入自定义版本号。 diff --git a/.github/workflows/build-mac.yml b/.github/workflows/build-mac.yml index 68470de..6f903ee 100644 --- a/.github/workflows/build-mac.yml +++ b/.github/workflows/build-mac.yml @@ -85,7 +85,6 @@ jobs: - name: Package DMG run: pnpm exec electron-builder --mac --${{ matrix.arch }} env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} CSC_IDENTITY_AUTO_DISCOVERY: false - name: Upload artifact diff --git a/.github/workflows/build-win.yml b/.github/workflows/build-win.yml index c3d2e05..1c2e0cf 100644 --- a/.github/workflows/build-win.yml +++ b/.github/workflows/build-win.yml @@ -65,8 +65,6 @@ jobs: - name: Package NSIS installer run: pnpm exec electron-builder --win - env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Upload artifact uses: actions/upload-artifact@v7 diff --git a/scripts/extract-release-notes.mjs b/scripts/extract-release-notes.mjs index c754d4a..1998106 100644 --- a/scripts/extract-release-notes.mjs +++ b/scripts/extract-release-notes.mjs @@ -24,8 +24,9 @@ if (!version) { const changelog = readFileSync(resolve(root, 'CHANGELOG.md'), 'utf8') const lines = changelog.split('\n') -// 找到 ## [version] 开头的行 -const startPattern = new RegExp(`^## \\[${version.replace('.', '\\.')}\\]`) +// 找到 ## [version] 开头的行(转义版本号中所有特殊正则字符) +const escapedVersion = version.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') +const startPattern = new RegExp(`^## \\[${escapedVersion}\\]`) const sectionPattern = /^## \[/ let inSection = false diff --git a/scripts/release.mjs b/scripts/release.mjs index d363ff1..1129961 100644 --- a/scripts/release.mjs +++ b/scripts/release.mjs @@ -33,8 +33,8 @@ function run(cmd) { // ── 参数校验 ────────────────────────────────────────────────────────────────── const version = process.argv[2] -if (!version || !/^\d+\.\d+\.\d+$/.test(version)) { - console.error('用法: pnpm run release (例如: 0.2.0)') +if (!version || !/^\d+\.\d+\.\d+(-[a-zA-Z0-9.]+)?$/.test(version)) { + console.error('用法: pnpm run release (例如: 0.2.0 或 0.2.0-beta)') process.exit(1) }