AppbrewDevelopers
Changelog

0.36.0

App start-up back to 0.34 speed: build-tools no longer registers every app dependency for instant code at launch.

No native changes

Only @app-brew/build-tools changed. It builds the app's JavaScript bundle, so the speed-up reaches users with the next app release. No pod install is needed.

Performance

Apps start as fast as they did on 0.34. In 0.35.0, @app-brew/build-tools put every app dependency, and every path under it, in Module Federation's shared set. Each of the app's own imports then went through the share scope, and all of them were registered at launch, so JavaScript start-up took two to four times longer. The app now offers its dependencies in a separate scope that is skipped at launch, and registers only the ones an instant-code manifest lists, when that manifest loads.

App0.34.00.35.00.36.0
Without instant code, Android348 ms1,353 ms332 ms
With instant code, iOS218 ms381 ms218 ms

Times are JavaScript module initialisation in Release builds. Apps without instant code pay nothing for sharing. Instant code still uses the app's copy of each dependency, including when the instant code bundles a newer version, so stateful libraries keep running as one instance.

On this page