From 7358cd0123fe3bcd2f1e25e08cb14870ec9bfe8e Mon Sep 17 00:00:00 2001 From: huangjianwu Date: Thu, 7 May 2026 14:19:39 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix(ci):=20commitlint=20workflow=20?= =?UTF-8?q?=E5=8E=BB=E6=8E=89=E4=BC=AA=20input=20+=20=E8=A7=84=E8=8C=83=20?= =?UTF-8?q?release=20merge=20commit=20=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit v2.1.3 push master 时 Lint commit messages job 红了,根因两条: 1. workflow 里写了 'firstParent: false',但 wagoid/commitlint-github-action@v6 的合法 input 列表里没这个字段,被 ignore 同时打 warn 2. release merge commit 标题 'Release v2.1.3' 不符合 type(scope): subject 格式, commitlint 报 subject-empty + type-empty · @commitlint/config-conventional 默认 ignore 'Merge ' 前缀的 commit, 但我们手动 -m 把标题写成 'Release vX.Y.Z' 跳过了豁免 修: - 去掉 .github/workflows/commitlint.yml 里那条 firstParent 假 input - RELEASING.md §3 加入 merge commit 标题模板: · 合 master 用 'chore(release): vX.Y.Z' · 回灌 develop 用 'chore(release): merge release/X.Y.Z back into develop' - CONTRIBUTING.md §6.3 同步加这条提醒 历史上 master / develop 的 'Release v2.1.x' 那几个 merge commit 已经在 history 里,没法回头改(不能强推 master)。但 commitlint 在 push 时只 lint 推送范围里的 新 commit,旧 commit 不会重新校验,所以不会持续报错。 Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/commitlint.yml | 2 -- CONTRIBUTING.md | 1 + RELEASING.md | 11 +++++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/workflows/commitlint.yml b/.github/workflows/commitlint.yml index 8ae2aa6..fff8ca2 100644 --- a/.github/workflows/commitlint.yml +++ b/.github/workflows/commitlint.yml @@ -26,7 +26,5 @@ jobs: uses: wagoid/commitlint-github-action@v6 with: configFile: .commitlintrc.json - # PR 上检查 base..head 之间所有 commit;push 上只校验最新 commit - firstParent: false failOnWarnings: false helpURL: https://github.com/JefferyHcool/BiliNote/blob/develop/CONTRIBUTING.md#5-提交规范 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 5085696..5f95d0b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -250,6 +250,7 @@ chore(ci): 优化 docker 构建缓存 - `feature/*` / `fix/*` 合入 `develop`:推荐 **Squash and merge**,保持 develop 历史线性。 - `release/*` 合入 `master` 与回灌 `develop`:使用 **Merge commit (--no-ff)**,保留发版结构。 + · merge commit 标题用 `chore(release): vX.Y.Z`(合 master)或 `chore(release): merge release/X.Y.Z back into develop`(回灌 develop),保证 commitlint 通过。 - `hotfix/*` 同上 release。 ### 6.4 合并后 diff --git a/RELEASING.md b/RELEASING.md index 8a46202..ad47892 100644 --- a/RELEASING.md +++ b/RELEASING.md @@ -42,10 +42,13 @@ git push -u origin release/X.Y.Z 在 GitHub 上发起两个 PR: -| PR | base | 合并方式 | -|---|---|---| -| `release/X.Y.Z` → `master` | `master` | **Merge commit (--no-ff)** | -| `release/X.Y.Z` → `develop` | `develop` | **Merge commit (--no-ff)** | +| PR | base | 合并方式 | 合并后 commit 标题 | +|---|---|---|---| +| `release/X.Y.Z` → `master` | `master` | **Merge commit (--no-ff)** | `chore(release): vX.Y.Z` | +| `release/X.Y.Z` → `develop` | `develop` | **Merge commit (--no-ff)** | `chore(release): merge release/X.Y.Z back into develop` | + +> ⚠️ Merge commit 的标题**必须**符合 `type(scope): subject` 格式(commitlint 在 push 到 master/develop 时会校验)。 +> 历史上用过 `Release vX.Y.Z` 这种形式,会被 commitlint 报 `type-empty` / `subject-empty`。 `master` 分支保护要求 review 通过。回灌 `develop` 是为了把发版冻结期内的小修同步回来。 From ac72cc6d6e9358ded83cbd01e24b655a0eaff9ca Mon Sep 17 00:00:00 2001 From: huangjianwu Date: Thu, 7 May 2026 14:30:07 +0800 Subject: [PATCH 2/3] =?UTF-8?q?ci(tauri):=20=E6=A1=8C=E9=9D=A2=E7=AB=AF?= =?UTF-8?q?=E6=9E=84=E5=BB=BA=E5=8E=BB=E6=8E=89=20Linux=EF=BC=8C=E5=8F=AA?= =?UTF-8?q?=E4=BF=9D=E7=95=99=20macOS=20+=20Windows?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tauri Linux 构建 (ubuntu-22.04, x86_64-unknown-linux-gnu) 在 v2.1.x 这几次发版上 持续 17m+ 才完成,相比 macOS / Windows 更慢,且没有面向 Linux 桌面端用户的实际分发渠道。 直接从 matrix 里去掉。 清理: - matrix 删除 ubuntu-22.04 条目 - 'Install Linux Dependencies' step(仅 ubuntu 触发)整段移除 - artifact 收集步里的 .deb / .AppImage 两条 find 命令移除 Linux 用户继续可以走 Docker 镜像 (ghcr.io/jefferyhcool/bilinote),那条线没变。 Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/main.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fbc57b2..6a61280 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,8 +13,6 @@ jobs: include: - platform: macos-latest target: universal-apple-darwin - - platform: ubuntu-22.04 - target: x86_64-unknown-linux-gnu - platform: windows-latest target: x86_64-pc-windows-msvc @@ -24,13 +22,6 @@ jobs: - name: Checkout Code uses: actions/checkout@v4 - # Linux 系统依赖(Tauri 需要) - - name: Install Linux Dependencies - if: matrix.platform == 'ubuntu-22.04' - run: | - sudo apt-get update - sudo apt-get install -y libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf - # 设置 Python 环境(带 pip 缓存) - name: Set up Python uses: actions/setup-python@v5 @@ -103,9 +94,6 @@ jobs: # Windows: .msi, .exe (NSIS) find "$BUNDLE_DIR" -name "*.msi" -exec cp {} release-artifacts/ \; 2>/dev/null || true find "$BUNDLE_DIR/nsis" -name "*.exe" -exec cp {} release-artifacts/ \; 2>/dev/null || true - # Linux: .deb, .AppImage - find "$BUNDLE_DIR" -name "*.deb" -exec cp {} release-artifacts/ \; 2>/dev/null || true - find "$BUNDLE_DIR" -name "*.AppImage" -exec cp {} release-artifacts/ \; 2>/dev/null || true echo "=== Collected artifacts ===" ls -lh release-artifacts/ From 1aea86a8d6eedfefc1a5e4757a42c8c5d8d7131b Mon Sep 17 00:00:00 2001 From: huangjianwu Date: Thu, 7 May 2026 16:44:49 +0800 Subject: [PATCH 3/3] =?UTF-8?q?docs:=20v2.1.4=20CHANGELOG=20+=20README=20?= =?UTF-8?q?=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit CI 工程化修复,无运行时行为变化。详见 CHANGELOG.md。 Co-Authored-By: Claude Opus 4.7 (1M context) --- CHANGELOG.md | 10 ++++++++++ README.md | 7 ++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 39da380..f4134ad 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,16 @@ 本项目所有重要变更记录于此。格式参考 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),遵循 [语义化版本](https://semver.org/lang/zh-CN/)。 +## [2.1.4] - 2026-05-07 + +CI 工程化修复,无运行时行为变化。 + +### Internal + +- 桌面端 Tauri 构建矩阵去掉 Linux(`ubuntu-22.04 / x86_64-unknown-linux-gnu`)。Linux 桌面端构建持续 17m+,且无对应分发渠道;Linux 用户继续可以走 Docker 镜像 (`ghcr.io/jefferyhcool/bilinote`) +- commitlint workflow 去掉无效的 `firstParent` input(wagoid/commitlint-github-action@v6 不支持,被忽略并打 warn) +- 规范 release merge commit 标题:`chore(release): vX.Y.Z`(合 master)/ `chore(release): merge release/X.Y.Z back into develop`(回灌 develop),让 commitlint 能正确识别。`RELEASING.md` §3 与 `CONTRIBUTING.md` §6.3 同步更新 + ## [2.1.3] - 2026-05-07 ### Fixed diff --git a/README.md b/README.md index 3d86c31..eb98c75 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@

BiliNote Banner

-

BiliNote v2.1.3

+

BiliNote v2.1.4

AI 视频笔记生成工具 让 AI 为你的视频做笔记

@@ -53,6 +53,11 @@ BiliNote 是一个开源的 AI 视频笔记助手,支持通过哔哩哔哩、Y - 笔记顶部视频封面 Banner 展示 - 工作区和生成历史面板支持折叠/展开 +### v2.1.4 修订 + +- CI:桌面端 Tauri 构建去掉 Linux(17m+ 慢线退役;Linux 用户继续走 Docker 镜像) +- CI:commitlint workflow 修复 + 规范 release merge commit 标题约定 + ### v2.1.3 修订 - 修复 DeepSeek 等非多模态供应商被 400 拒绝的问题(issue #282):`UniversalGPT` 的 message builder 按是否带图切换 string / 多模态数组形态