Skip to content

v2.22.0

Choose a tag to compare

@sunnylqm sunnylqm released this 21 Aug 15:52
· 30 commits to master since this release
2d6f597

Hermes delta mode (-base-bytecode)

  • bundle now compiles Hermes bundles against the app's previous HBC (--hermesBase auto, default), keeping Hermes string IDs stable across versions: hot-update patches shrink 5–30×. Base comes from the server (GET /app/:id/hermesBase), is verified by sha256 and cached under .pushy/cache/<sha256> (500 MB / 20 files, --cacheMaxMb, PUSHY_CACHE_DIR).
  • --hermesBase none disables it; --hermesBase <file.hbc|.ppk|.apk|.ipa> uses a local artifact (e.g. the store build) as base.
  • --verifyHermesBase (default on) compares the delta build's disassembly with a plain compile and silently falls back on any mismatch — the feature can never block a release.
  • hermesc always runs with -output-source-map: debug info is stripped from the bytecode (15–40% smaller, same as RN release builds); the Hermes .map stays in the intermediate directory.
  • publish / uploadApk / uploadIpa / uploadApp report bundleHash, bytecodeVersion, baseVersionId, baseHash and seed the local cache.
  • New command: pushy cache [clean].