fix(tauri): 锁 Rust crate ~2.10 — 修 npm/Rust 跨 minor 版本检查 fail
CI release-tauri.yml 三平台 (mac arm64 / Windows / Linux) Build step 在
~10 秒内全部失败:
Found version mismatched Tauri packages.
tauri (v2.11.0) : @tauri-apps/api (v2.10.1)
根因:
- Cargo.toml 写 \`tauri = { version = "2" }\`,cargo 解析到 latest 2.x = 2.11.0
- npm \`@tauri-apps/api\` / \`@tauri-apps/cli\` latest 仍是 2.10.1(Tauri 团队
把 Rust crate 发到了 crates.io 2.11,但 npm 包还没同步发 2.11)
- tauri build 启动时校验 npm 与 Rust crate 必须 major+minor 一致,跨 minor
直接 fail——三平台都没机会跑到 bundle 阶段。
修复:
- Cargo.toml 把 \`tauri\` 锁成 \`~2.10\`,让 cargo 选 2.10.x patch 版本,
与 npm 端 2.10.1 对齐。
- cargo update 精确下调到 tauri 2.10.3 / tauri-runtime 2.10.1 /
tauri-runtime-wry 2.10.1(连带 wry 0.55.1→0.54.4 / tray-icon 0.23.1→0.21.3
等 transitive 依赖一并回退,让 lock 内部一致——这也是 Cargo.lock diff 大
的原因,所有改动都是 \`cargo update\` 自动算出来的,没有手改)。
等 Tauri 团队把 npm @tauri-apps/api 2.11 发布后,再放开 Cargo.toml 的
约束。期间 package-lock.json 保持 2.10.1,CI 走 \`npm ci\` 不会自动漂。
This commit is contained in:
1 parent
6b38e5ef1d
commit
e090eb2a3b
2 files changed
+416
-177
No files matched your search
Generated
+412
-176
File diff suppressed because it is too large.
Load diff
@@ -16,7 +16,10 @@ tauri-build = { version = "2", features = [] }
|
||||
cc = "1.1"
|
||||
|
||||
[dependencies]
|
||||
tauri = { version = "2", features = ["macos-private-api", "tray-icon"] }
|
||||
# 锁 ~2.10 是因为 Tauri 2.11.0 已发到 crates.io,但 npm 端 @tauri-apps/api / cli
|
||||
# 还停在 2.10.1 没同步发布;tauri build 会校验 npm 与 Rust crate 的 major/minor
|
||||
# 一致,跨 minor (2.10 vs 2.11) 直接 fail。等 npm 端发 2.11 后再放开。
|
||||
tauri = { version = "~2.10", features = ["macos-private-api", "tray-icon"] }
|
||||
tauri-plugin-shell = "2"
|
||||
tauri-plugin-updater = "2"
|
||||
tauri-plugin-single-instance = "2"
|
||||
|
||||
Reference in new issue
Block a user