New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[0.74.0] stress reloading leads to broken state on android bridgeless #44241
Labels
Contributor
A React Native contributor.
Needs: Triage 🔍
p: Expo
Partner: Expo
Partner
Platform: Android
Android applications.
Type: New Architecture
Issues and PRs related to new architecture (Fabric/Turbo Modules)
Comments
Kudo
added
Needs: Triage 🔍
Type: New Architecture
Issues and PRs related to new architecture (Fabric/Turbo Modules)
labels
Apr 24, 2024
Ios has the same issue |
3 tasks
brentvatne
pushed a commit
to expo/expo
that referenced
this issue
May 4, 2024
# Why Closes ENG-12058 Similar to the issue reported by @Kudo on core (facebook/react-native#44241), triggering two immediate reloads when running an app using the new arch in bridgeless mode will cause the app to crash on iOS as well. # How Instead of registering the "r" hotkey for the DevMenu `reloadAction` we can just rely on the default react-native reload action (which also uses the "r" hotkey) # Test Plan Test dev-client through BareExpo and FabricTester # Checklist <!-- Please check the appropriate items below if they apply to your diff. This is required for changes to Expo modules. --> - [ ] Documentation is up to date to reflect these changes (eg: https://docs.expo.dev and README.md). - [ ] Conforms with the [Documentation Writing Style Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md) - [ ] This diff will work correctly for `npx expo prebuild` & EAS Build (eg: updated a module plugin).
I believe #44554 will fix this for Android |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Contributor
A React Native contributor.
Needs: Triage 🔍
p: Expo
Partner: Expo
Partner
Platform: Android
Android applications.
Type: New Architecture
Issues and PRs related to new architecture (Fabric/Turbo Modules)
Description
On bridgeless mode, we have some sort of race condition from reloading.
react-native/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessDevSupportManager.java
Line 111 in 766ece7
react-native/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java
Line 1203 in 766ece7
so we will see two
BUNDLE ./index.js
from the cli terminal for each reload.However, in some stress reload, the app will be in broken state. reloading is then broken and the app has an empty screen.
not sure if that is coming from the second reload introduced in #42917. i think there is some race condition inside.
Steps to reproduce
git clone https://github.com/Kudo/repro-RN074-android-reload
cd repro-RN074-android-reload
yarn android
React Native Version
0.74.0
Affected Platforms
Runtime - Android, Build - MacOS
Areas
Bridgeless - The New Initialization Flow
Output of
npx react-native info
Reproducer
https://github.com/Kudo/repro-RN074-android-reload
Screenshots and Videos
repro-android-reload.mp4
The text was updated successfully, but these errors were encountered: