跳到主要内容

V1.5.0 路径变量、多设备支持与 Tauri 2 升级

· 阅读需 6 分钟
Sworld
游戏存档管理器的Maintainer

请注意:此版本从 Tauri 1 升级到 Tauri 2,这是一个重要的底层更新。

  • 对于从 v1.4.x 及更早版本升级的用户: 强烈建议在升级前备份您的数据。安装时选择旧的安装目录进行安装(请手动指定,无法自动识别)。如果是便携版请备份后直接替换可执行文件。
  • 新用户: 请直接下载最新版本进行安装。

✨ 核心功能亮点

  • 🚀 多设备支持与路径变量:
    • 后端完全支持多设备管理及自定义路径变量
    • 前端增加路径变量配置界面和设备信息获取功能,方便在不同设备间同步和管理游戏存档。
  • 🖥️ Tauri 2 全面迁移:
    • 应用已完全迁移到 Tauri 2 框架(从 1 代)。
    • 后端通信采用强类型的 Specta 导出,提升开发效率和代码健壮性。
  • 🔄 持久化窗体状态与新设备流程:
    • 应用现在可以记住您关闭时的窗口大小和位置,并在下次打开时恢复。
    • 优化了新设备的初始化流程,首次使用更加顺畅。
  • ⬆️ 版本升级支持:
    • 提供从 v1.4.x 到 v1.5.0 的配置升级支持,尽可能保证用户数据的平滑过渡。

🌟 其他重要更新与优化

功能增强 (Features)

  • 前端体验:
    • 全新设计的首页,更直观易用。
    • 一键添加所有未识别游戏到收藏夹。
    • 优化了存档备份信息提交(支持回车)。
    • 改进了游戏启动路径的修改功能(游戏管理 -> 查看受管理文件)。
    • 自动检测新设备并提示复制旧设备路径配置。
    • 优化了侧边栏、i18n 切换按钮及整体日志输出。
  • 后端与通用:
    • 增强了国际化支持,优化了 i18n 初始化和语言设置。
    • 更新了热键功能以适配 Tauri 2。
    • 增加了 Panic 日志记录,日志时间统一使用本地时间。
    • 优化了设置页面交互和云后端检查逻辑。
    • 更新了 Rust Edition 到 2024,Nuxt 构建目标为 ES2022。

Bug 修复 (Bug Fixes)

  • 修复了大量已知问题,包括但不限于:
    • 修复了前端样式、页面跳转、黑暗模式失效、i18n 显示等问题。
    • 解决了 Panic Hook 无法捕获所有 Panic、错误的通知、托盘图标 ID 等后端问题。
    • 修复了 CI/CD 流程中的依赖安装和执行环境错误 (#187, #189)。

代码重构与依赖 (Refactoring & Chores)

  • 代码质量:
    • 前端 invoke 调用改为强类型的 Specta 导出。
    • 部分回调代码重构为 async/await 格式。
    • 使用 temp-dir 库管理临时文件夹。
    • 后端代码重构,引入 preclude 模块,优化 Notification 处理。
  • 依赖与文档:
    • 更新了所有主要依赖项。
    • 更新了 README 和开发指南。
    • 更新了 .gitignore 和 GitHub Actions workflows。

Full Changelog: https://github.com/mcthesw/game-save-manager/compare/v1.4.0...v1.5.0

🔮 下版本主要计划

  • 持续优化多设备间的同步与管理体验。
  • 探索更多实用的路径变量预设(以及优化现在简陋的体验)。
  • 完善和扩展自动化测试覆盖。
  • 对文件变动的检测(xxh3)以及自动备份功能的优化 #190
  • 存档位置自动识别 #8
  • 云存档功能增强 #162

🛠️ 开发者可能关心的变更

  • Tauri 2 迁移: 这是本次更新的核心。所有与窗口管理、系统交互、IPC 通信相关的 API 都已更新至 Tauri 2 版本。请务必查阅 Tauri 2 官方文档
  • 强类型后端通信 (Specta): 前后端通信现在基于 Specta 生成的 TypeScript 类型,显著提高了类型安全。
  • 后端架构: 为支持多设备和路径变量,后端配置管理、设备识别等模块有较大调整。
  • 配置文件 (GameSaveManager.config.json):
    • 结构已更新以支持多设备 (devices 字段) 和路径变量 (path_variables 字段)。具体变动请参考最新的代码或文档。
  • Rust Edition 2024 & ES2022: 项目分别升级到 Rust 2024 Edition 和 ES2022 JavaScript 标准。

🚀 发布

不知道下载哪个?推荐使用portable版本(便携版),如果无法启动可能是缺少了Webview2

💬 讨论区