Skip to content

Tauri dev branch#6

Merged
scorpionfree98 merged 4 commits intomainfrom
tauri_dev_branch
Feb 8, 2026
Merged

Tauri dev branch#6
scorpionfree98 merged 4 commits intomainfrom
tauri_dev_branch

Conversation

@scorpionfree98
Copy link
Owner

描述

修复 Tauri 自动更新功能中的签名文件路径问题,确保所有平台(macOS Intel、macOS Apple Silicon、Windows x64 with/without WebView2)的更新签名文件能够被正确识别和打包到更新清单中。

更改类型

  • Bug 修复
  • 新功能
  • 破坏性更改
  • 文档更新
  • 代码重构
  • 性能优化
  • 测试

相关问题

关闭 #自动更新签名文件找不到的问题

更改内容

更改的文件

  • .github/workflows/release.yml
  • .github/workflows/scripts/generate-manifest.js

主要更改

  1. 修复签名文件下载方式 - 移除 merge-multiple: true 配置,确保每个平台的签名文件下载到独立的子目录,避免文件混淆

  2. 简化 manifest 生成脚本 - 将 generate-manifest.js 从 557 行简化至 174 行,移除冗余的复杂匹配逻辑:

    • 移除全局签名文件扫描
    • 移除双层目录结构检测
    • 移除自动发现子目录功能
    • 保留简单的递归查找逻辑
  3. 修正 Windows 签名目录名称 - 修复 artifact 名称与代码期望不匹配的问题:

    • with-webview2 → withwebview2
    • without-webview2 → withoutwebview2
  4. 增强错误处理 - 添加清晰的错误提示,当找不到签名文件时提供排查建议

测试

描述你如何测试这些更改:

  • 测试环境:本地 macOS / GitHub Actions (Ubuntu)
  • 测试步骤:
    1. 创建模拟的签名文件目录结构
    2. 运行 generate-manifest.js 脚本
    3. 验证生成的 latest-update.json 包含所有平台
  • 测试结果:通过

截图

如果适用,请添加截图来展示更改。

检查清单

  • 我的代码遵循此项目的代码风格
  • 我已执行自我审查
  • 我已对代码进行了注释
  • 我已更新了相应的文档
  • 我的更改不会产生新的警告
  • 我已添加了测试(如果适用)
  • 新增和现有的单元测试都通过
  • 任何依赖的更改都已合并和发布

其他信息

此次更改解决了 GitHub Actions 构建过程中 Windows 平台签名文件无法被正确识别的问题。根本原因是 artifact 命名格式( withwebview2 )与代码期望( with-webview2 )不一致,以及签名文件被嵌套在双层 signatures/signatures/ 目录中。

增强生成清单脚本以自动发现签名目录
修复签名文件路径通配符问题并增强签名文件扫描功能
处理双层 signatures 目录结构
优化平台特定签名文件的匹配逻辑
添加备选签名文件匹配机制
修改release workflow不合并签名文件,确保每个artifact下载到独立目录
简化generate-manifest.js脚本,移除冗余代码和复杂逻辑
@scorpionfree98 scorpionfree98 merged commit 8b99d48 into main Feb 8, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant