Skip to content

Commit e1464c0

Browse files
okwasniewskifacebook-github-bot
authored andcommitted
fix(iOS): provide useful error message about dependency provider (#49843)
Summary: Currently, when integrating into a native app using ReactNativeFactory, when we forget to set `dependencyProvider` we get a random crash exception instructing us (depending on native modules in our app) about an unrecognized selector: ![CleanShot 2025-03-05 at 15 21 53@2x](https://github.com/user-attachments/assets/04b8d4fe-1e40-4023-af1b-1825a3a99f33) After this change we get a proper error informing us that we for got to set dependencyProvider: ![CleanShot 2025-03-05 at 15 22 16@2x](https://github.com/user-attachments/assets/39bb1c2a-3efc-4689-a92e-ca2ee54cb6a4) ## Changelog: [IOS] [ADDED] - Useful error message about setting dependency provider Pull Request resolved: #49843 Test Plan: CI Green Reviewed By: cortinico Differential Revision: D70631515 Pulled By: cipolleschi fbshipit-source-id: d99c8fa12fdb0624a01fe16c50fe0f2d10554f94
1 parent 22cd3b1 commit e1464c0

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

packages/react-native/Libraries/AppDelegate/RCTReactNativeFactory.mm

+7
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,13 @@ - (Class)getModuleClassFromName:(const char *)name
196196

197197
- (id<RCTTurboModule>)getModuleInstanceFromClass:(Class)moduleClass
198198
{
199+
#if USE_OSS_CODEGEN
200+
if (self.delegate.dependencyProvider == nil) {
201+
[NSException raise:@"ReactNativeFactoryDelegate dependencyProvider is nil"
202+
format:@"Delegate must provide a valid dependencyProvider"];
203+
}
204+
#endif
205+
199206
return RCTAppSetupDefaultModuleFromClass(moduleClass, self.delegate.dependencyProvider);
200207
}
201208

0 commit comments

Comments
 (0)