Skip to content

feat: async chunk support - #5

Merged
zamotany merged 17 commits into
mainfrom
feat/async-chunks
Mar 25, 2021
Merged

feat: async chunk support#5
zamotany merged 17 commits into
mainfrom
feat/async-chunks

Conversation

@zamotany

@zamotany zamotany commented Mar 23, 2021

Copy link
Copy Markdown
Contributor

Summary

Adds support for loading and evaluating asynchronous Webpack chunks created by using dynamic import import() or manually in Webpack configuration.

The feature the target app to include react-native-webpack-toolkit native module.
Currently, in development mode async chunks are loaded over HTTP(S) and in release/production they are bundled together with the main/index bundle into ipa/apk and loaded using filesystem loader.

  • Webpack config, plugins and utils adjustments
  • HTTP(S) chunk loader for iOS
  • HTTP(S) chunk loader for Android
  • Hermes support with async chunks from HTTP(S) on iOS
  • Hermes support with async chunks from HTTP(S) on Android
  • Filesystem chunk loader for iOS
  • Filesystem chunk loader for Android
  • Hermes support with async chunks from Filesystem on iOS (only main bundle is bytecode)
  • Hermes support with async chunks from Filesystem on Android (only main bundle is bytecode)
  • Improved error handling in native modules
  • Documentation

Test plan

  1. Add dynamic import import() or manual chunk declaration to Webpack config.
  2. Run iOS/Android application in debug/release mode.

@zamotany zamotany added the wip label Mar 23, 2021
Comment thread src/webpack/plugins/ReactNativeAssetsPlugin/ReactNativeAssetsPlugin.ts Outdated
@zamotany zamotany removed the wip label Mar 24, 2021
@zamotany zamotany changed the title feat(experimental): async chunk support feat: async chunk support Mar 25, 2021
@zamotany
zamotany merged commit 39e94f8 into main Mar 25, 2021
@zamotany
zamotany deleted the feat/async-chunks branch March 25, 2021 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant