feat: OTA 附件改用 7z 压缩包(体积 -73%),客户端纯 Rust 解压
- 发布脚本:附件打包为 <binary>.7z(-mx=9)+ .7z.sha256 上传; 同时保留裸二进制附件,v1.0.3 及更早客户端(不认识 7z)仍可升级 - update.rs:pick_assets 优先选 7z、无则回退裸二进制; 下载 → 大小对账 + sha256 校验 → sevenz-rust 解压出二进制暂存 (压缩包随即删除);暂存目录清理排除 .7z - UpdateInfo 增加 asset_name 字段区分压缩包/裸文件 - 实测 21.3MB exe → 5.8MB(7-Zip -mx=9)
This commit is contained in:
@@ -43,6 +43,8 @@ rfd = "0.17"
|
||||
# OTA 自更新:Gitea Release 检查/下载(ureq 用 rustls,与 rumqttc 依赖同源)
|
||||
ureq = { version = "2", features = ["json"] }
|
||||
sha2 = "0.10"
|
||||
# Release 附件为 7z 压缩包,纯 Rust 解压(客户端免装 7-Zip)
|
||||
sevenz-rust = "0.6"
|
||||
|
||||
# 错误上报(自建 Sentry):panic 捕获 + 持久化错误;rustls 传输避免 openssl 依赖
|
||||
sentry = { version = "0.49", default-features = false, features = [
|
||||
|
||||
Reference in New Issue
Block a user