-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Description
This issues tracks various tasks to upgrade third-party dependencies for the native mobile editor. The following tasks could likely be addressed individually as miniature projects.
What problem does this address?
React Native’s New Architecture could provide performance benefits (e.g. JSI) and may eventually be required for future React Native upgrades or compatibility with third-party dependencies.
What is your proposed solution?
Some prerequisite items may already have been completed (but have not been verified as complete), while some items may require a significant amount of work. If you can verify that an item is complete or would like to tackle an item, feel free to assign yourself and mark it off the list.
Prerequisites for Supporting the New Architecture in JavaScript
- Define Specs in JavaScript
- Ensure autolinking is enabled
- Configure Codegen
- Migrate from UIManager JavaScript APIs
Enabling in an Android Library
Enabling in an iOS Library
Prerequisites for WPiOS
- Upgrade to React Native version 0.71.0
- Use Hermes as an xcframework
- Build the project
- Use Objective-C++ (.mm extension)
- Make AppDelegate conform to RCTAppDelegate (or custom bridged equivalent)
- Run pod install and apply changes
Prerequisites for WPAndroid
Third-Party Dependencies
Each third-party dependency will need to be upgraded to a version with New Architecture support or replaced entirely in this project.
- Address
react-native-get-random-values - Address
react-native-safe-area-context - Address
react-native-screens - Address
react-native-svg - Address
react-native-webview - Address
@react-native-masked-view/masked-view - Address
@react-native-clipboard/clipboard - Address
react-native-reanimated - Address
react-native-gesture-handler - Address
react-native-linear-gradient - Address
react-native-prompt-android - Address
react-native-video - Address
@react-native-community/slider - Address
react-native-safe-area - Address
react-native-fast-image
The following table represents the status of each third-party dependency's support for the new React Native architecture.
| Dependency | Support Status | Notes |
|---|---|---|
| react-native-get-random-values | 🔴 Not Started | Issue, PR |
| react-native-safe-area-context | 🟢 Completed | v4.1.2 |
| react-native-screens | 🟢 Completed | 3.12.0 |
| react-native-svg | 🟢 Completed | v13.0.0 |
| react-native-webview | 🟢 Completed | v12.0.0 |
| @react-native-masked-view/masked-view | 🟡 In Progress | Issue |
| @react-native-clipboard/clipboard | 🟢 Completed | v1.13.0 |
| react-native-reanimated | 🟢 Completed | 3.0.0 |
| react-native-gesture-handler | 🟢 Completed | 2.3.0 |
| react-native-linear-gradient | 🟢 Completed | Forked |
| react-native-prompt-android | Removed | |
| react-native-video | 🔴 Not Started | No lead, blocked by v6 |
| @react-native-community/slider | 🟢 Completed | v4.3.0 |
| react-native-safe-area | 🔴 Not Started | Inactive |
| react-native-fast-image | 🟡 In Progress | Issue, PR |
| react-native-blur | 🟢 Complete | v4.3.0 |