wix / react-native-navigation

A complete native navigation solution for React Native
https://wix.github.io/react-native-navigation/
MIT License
13.02k stars 2.67k forks source link

Can't reload the app when fabric enabled #7770

Closed SudoPlz closed 7 months ago

SudoPlz commented 1 year ago

What happened?

As soon as I enable fabric, and attempt to reload the app, I get the following crash:

Thread 1 Queue : com.apple.main-thread (serial)
#0  0x0000000102cb029f in facebook::react::UIManager::shadowTreeWillCommit(facebook::react::ShadowTree const&, std::__1::shared_ptr<facebook::react::RootShadowNode const> const&, std::__1::shared_ptr<facebook::react::RootShadowNode> const&) const at /Users/aUser/Development/anApp/node_modules/react-native/ReactCommon/react/renderer/uimanager/UIManager.cpp:528
#1  0x0000000102c4d744 in facebook::react::ShadowTree::tryCommit(std::__1::function<std::__1::shared_ptr<facebook::react::RootShadowNode> (facebook::react::RootShadowNode const&)> const&, facebook::react::ShadowTree::CommitOptions const&) const at /Users/aUser/Development/anApp/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:355
#2  0x0000000102c4d2ed in facebook::react::ShadowTree::commit(std::__1::function<std::__1::shared_ptr<facebook::react::RootShadowNode> (facebook::react::RootShadowNode const&)> const&, facebook::react::ShadowTree::CommitOptions const&) const at /Users/aUser/Development/anApp/node_modules/react-native/ReactCommon/react/renderer/mounting/ShadowTree.cpp:307
#3  0x0000000102c7163c in facebook::react::SurfaceHandler::constraintLayout(facebook::react::LayoutConstraints const&, facebook::react::LayoutContext const&) const at /Users/aUser/Development/anApp/node_modules/react-native/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp:238
#4  0x0000000102da93c7 in -[RCTFabricSurface setMinimumSize:maximumSize:viewportOffset:] at /Users/aUser/Development/anApp/node_modules/react-native/React/Fabric/Surface/RCTFabricSurface.mm:212
#5  0x0000000102a89aca in -[RCTSurfaceHostingView setFrame:] at /Users/aUser/Development/anApp/node_modules/react-native/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm:88
#6  0x0000000103104196 in -[RNNComponentViewController renderReactViewIfNeeded] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNComponentViewController.m:98
#7  0x0000000103103d1b in -[RNNComponentViewController render] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNComponentViewController.m:77
#8  0x000000010314fddc in -[UIViewController(LayoutProtocol) render] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/UIViewController+LayoutProtocol.m:70
#9  0x00000001030c2b2e in -[BottomTabsOnSwitchToTabAttacher attach:] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/BottomTabsOnSwitchToTabAttacher.m:10
#10 0x00000001030ebc70 in -[RNNBottomTabsController render] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNBottomTabsController.m:95
#11 0x00000001030f91e0 in -[RNNCommandsHandler setRoot:commandId:completion:] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNCommandsHandler.m:109
#12 0x00000001030f0292 in __52-[RNNBridgeModule setRoot:layout:resolver:rejecter:]_block_invoke at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNBridgeModule.m:28
#13 0x0000000102aa4f78 in RCTExecuteOnMainQueue at /Users/aUser/Development/anApp/node_modules/react-native/React/Base/RCTUtils.m:262
#14 0x00000001030f0188 in -[RNNBridgeModule setRoot:layout:resolver:rejecter:] at /Users/aUser/Development/anApp/node_modules/react-native-navigation/lib/ios/RNNBridgeModule.m:27
#15 0x000000011e25109c in __invoking___ ()
#16 0x000000011e24e406 in -[NSInvocation invoke] ()
#17 0x000000011e24e6a5 in -[NSInvocation invokeWithTarget:] ()
#18 0x0000000102a45482 in -[RCTModuleMethod invokeWithBridge:module:arguments:] at /Users/aUser/Development/anApp/node_modules/react-native/React/Base/RCTModuleMethod.mm:584
#19 0x0000000102a49f54 in facebook::react::invokeInner(RCTBridge*, RCTModuleData*, unsigned int, folly::dynamic const&, int, (anonymous namespace)::SchedulingContext) at /Users/aUser/Development/anApp/node_modules/react-native/React/CxxModule/RCTNativeModule.mm:197
#20 0x0000000102a495a5 in facebook::react::RCTNativeModule::invoke(unsigned int, folly::dynamic&&, int)::$_0::operator()() const at /Users/aUser/Development/anApp/node_modules/react-native/React/CxxModule/RCTNativeModule.mm:114
#21 0x0000000102a49519 in invocation function for block in facebook::react::RCTNativeModule::invoke(unsigned int, folly::dynamic&&, int) at /Users/aUser/Development/anApp/node_modules/react-native/React/CxxModule/RCTNativeModule.mm:105
#22 0x0000000125148e40 in _dispatch_call_block_and_release ()
#23 0x000000012514a0d9 in _dispatch_client_callout ()
#24 0x0000000125159b86 in _dispatch_main_queue_drain ()
#25 0x0000000125159646 in _dispatch_main_queue_callback_4CF ()
#26 0x000000011e1a86cc in __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ ()
#27 0x000000011e1a2fbe in __CFRunLoopRun ()
#28 0x000000011e1a2264 in CFRunLoopRunSpecific ()
#29 0x0000000127b9524e in GSEventRunModal ()
#30 0x000000014d7d37bf in -[UIApplication _run] ()
#31 0x000000014d7d85de in UIApplicationMain ()
#32 0x00000001021be39f in main at /Users/aUser/Development/anApp/ios/AnApp/AppDelegate.swift:8
#33 0x00000001120f8384 in start_sim ()
#34 0x0000000209b8241f in start ()

What was the expected behaviour?

The app shouldn't be crashing.

Was it tested on latest react-native-navigation?

Help us reproduce this issue!

Just reload it after you enable fabric on iOS.

In what environment did this happen?

React Native Navigation version: 7.36.0 React Native version: 0.72.3 Has Fabric (React Native's new rendering system) enabled: yes Node version: 18.14.2 Device model: Simulator iPhone 14 Pro iOS version: 16.4 Hermes: yes

stale[bot] commented 11 months ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you believe the issue is still relevant, please test on the latest version and report back. Thank you for your contributions.

SudoPlz commented 9 months ago

@yogevbd any thoughts on this one?

SudoPlz commented 7 months ago

This no longer happens on the latest version of rnn. Closing.