Repository navigation
v2.29.2
English
Fixes
bundleno longer hangs when the.ppkcannot be written: a full disk, a read-only directory, or an output path that is a directory left packing waiting forever. It now fails with the write error and removes the partial file. (#98)- No crash on a write error while building a patch or a slimmed native package: such an error could surface as an unhandled rejection and end the process before the partial file was cleaned up. It is now reported normally and the partial file is removed. (#98)
Improvements
- Fewer dependencies:
cgbi-to-pngandpropertiesare removed.hermesEnabledinandroid/gradle.propertiesis read directly, with the same results for the usual forms (=/:/space separators, comments, last assignment wins). (#98) - Faster package commands:
uploadApk/uploadIpa/parseApk/parseIparead the archive once instead of twice. The APK/IPA reader now only parses the fields the CLI uses (version name,pushy_build_timemeta-data), and the output is unchanged on real release APKs. (#98) - Cheaper version check: the background "newer version available" check only reads the registry's
latesttag. It no longer resolves installed copies on every check. The cache location and format are unchanged. (#98) - Sentry upload runs
sentry-cli sourcemaps upload --helponce instead of twice to detect its capabilities. (#98) - Hermes base verification: internal cleanup with no behavior change. The diff-transform layout sent with patches is byte-identical for every HBC version.
docs/hermes-base-verification.mdnow covers HBC v99. (#99)
Behavior notes
- A corrupt HarmonyOS
.appnow reports the underlying zip error instead of "bundle not found", like.apk/.ipaalready did. selectAppwith a malformedupdate.jsonnow fails with the same "failed to parse update.json" error that other commands give.
About 2,700 lines of dead or duplicated code were removed in #98 and #99.
Full Changelog: v2.29.1...v2.29.2
中文
修复
.ppk写不进去时,bundle不再卡住:磁盘已满、目录只读,或输出路径本身是一个目录时,打包原先会一直等待。现在会直接报出写入错误,并删除写了一半的文件。(#98)- 生成补丁包或精简原生包时遇到写入错误,进程不再崩溃:这类错误原先可能变成未处理的 Promise 拒绝,在清理半成品文件之前就让进程退出。现在会正常报错,并删除半成品文件。(#98)
改进
- 依赖更少:移除了
cgbi-to-png和properties。android/gradle.properties中的hermesEnabled改为直接读取,常见写法(=/:/空格分隔、注释、以最后一次赋值为准)的结果与原来一致。(#98) - 原生包命令更快:
uploadApk/uploadIpa/parseApk/parseIpa对安装包只扫描一遍,原来要扫两遍。APK/IPA 解析现在只解析 CLI 用到的字段(版本名、pushy_build_timemeta-data),在真实 release APK 上的输出不变。(#98) - 版本检查更轻:后台的“有新版本”检查只读取 registry 的
latest标签,不再在每次检查时查找本地已安装的副本。缓存位置和格式不变。(#98) - Sentry 上传检测 sentry-cli 能力时,只运行一次
sentry-cli sourcemaps upload --help,原来要运行两次。(#98) - Hermes base 校验:内部清理,行为不变。随补丁下发的 diff-transform 布局对所有 HBC 版本逐字节一致。
docs/hermes-base-verification.md补充了 HBC v99 的内容。(#99)
行为说明
- HarmonyOS
.app文件损坏时,现在会报出底层的 zip 错误,不再提示“找不到 bundle”。这与.apk/.ipa原有的行为一致。 update.json格式错误时,selectApp现在会报出与其它命令相同的“解析 update.json 失败”错误。
#98 和 #99 共删除了约 2,700 行无用或重复的代码。
完整变更:v2.29.1...v2.29.2