Skip to content

v0.8.0

Choose a tag to compare

@GFean GFean released this 09 Sep 19:57
Immutable release. Only release title and notes can be modified.
fbcd05e

Bundle Drop v0.8.0 extends Bundle Drop Sight with isolated Git comparisons, emitted asset analysis, and full Bundle Drop OTA archive measurements. See which packages, source files, and assets changed between revisions, then share the results with your team.

Sight: compare Git revisions

Compare a branch, tag, or commit against your current working tree—including uncommitted edits, deletions, and nonignored untracked files.

# Analyze your current app
npx bundle-drop sight --platform ios

# Compare a local baseline with your current changes
npx bundle-drop sight --compare main --platform android

# Explicitly fetch and compare a remote branch
npx bundle-drop sight --compare origin/main --fetch --platform ios
  • Builds both revisions locally in isolated snapshots, with independent frozen dependency installs and build caches.
  • Preserves your original checkout, index, and local branches. Each snapshot retains its own commit identity.
  • Uses locally available Git refs by default; remote branches are refreshed only when you pass --fetch.
  • Supports repeatable --include <path> for ignored build inputs needed by both revisions, and --no-open, --keep, and --output for retaining generated files.
  • Opens Sight through an authenticated, short-lived local transfer, with Git labels and source-path context for package and file comparisons.

Emitted assets and Bundle Drop OTA size

  • Bundled assets: single CLI analysis and CLI comparisons now report the files emitted by Metro or Expo, including images and fonts. Compare additions, removals, size changes, and content changes—even when the byte count stays the same.
  • Bundle Drop OTA size: measures a locally generated full OTA archive, including the runtime bundle, emitted assets, and delivery metadata. Uses the project's local Hermes compiler when Hermes is enabled.
  • Comparison summaries: show the OTA size difference prominently, alongside baseline and current sizes. Available asset and OTA measurements are also included in Sight's reports.

JavaScript package and file attribution continues to measure raw, minified JavaScript bytes. Asset totals are separate; OTA size measures the compressed delivery archive and excludes source maps. These metrics describe different parts of the build and should not be added together.

OTA measurement requires Bundle Drop configuration and a resolvable app/runtime identity in the analyzed revision—both revisions for an OTA size comparison. If required configuration or tooling is missing, Sight explains why the metric is unavailable while keeping JavaScript and asset analysis usable.

Local analysis and compatibility

  • Bundles, source maps, asset inventories, and Git context are analyzed locally and are not uploaded to Bundle Drop servers. Comparison dependency installs may use the network and run project scripts.
  • Existing manual analysis remains available with a bundle and source map, or two pairs for comparison. Manual JavaScript analysis requires no Bundle Drop SDK or account; Git labels, asset inventories, and measured OTA sizes come through the CLI.
  • The new comparison implementation stays in the CLI and adds no runtime dependencies. Sight comparison code is excluded from the mobile SDK import graph.
  • Includes safeguards for baseline symlinks, local dependency archives, build-input mutations, and temporary-directory cleanup.

Android and maintenance

  • Fixed Android Gradle Plugin 9 compatibility by avoiding duplicate application of the Kotlin plugin when AGP provides built-in Kotlin support. (56d7e98)
  • Updated locked dependencies, including Axios, @xmldom/xmldom, and Browserslist, plus GitHub Actions tooling.

Get started

npm install @gfean/react-native-bundle-drop@0.8.0
npx bundle-drop sight --platform ios

Sight implementation: #37 · Full changelog: v0.7.0 → v0.8.0