From 44a5c7ce504e599a8db39fefd9500a005d6de0bb Mon Sep 17 00:00:00 2001 From: riteshshukla04 Date: Thu, 4 Jun 2026 12:09:22 +0530 Subject: [PATCH 1/2] fix: metro not picking threaded runtime --- packages/core/ios/ThreadedRuntime.mm | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/packages/core/ios/ThreadedRuntime.mm b/packages/core/ios/ThreadedRuntime.mm index 055cc60..951a2ec 100644 --- a/packages/core/ios/ThreadedRuntime.mm +++ b/packages/core/ios/ThreadedRuntime.mm @@ -841,7 +841,25 @@ + (RCTHost *)ensureHostWithRuntimeName:(NSString *)runtimeName [[ThreadedRuntimeTurboModuleDelegate alloc] initWithDelegate:delegate]; __weak id weakDelegate = delegate; RCTHostBundleURLProvider bundleURLProvider = ^NSURL *_Nullable { - return [weakDelegate bundleURL]; + NSURL *url = [weakDelegate bundleURL]; + if (url != nil) { + return url; + } + Class devLauncherClass = NSClassFromString(@"EXDevLauncherController"); + if (devLauncherClass != nil) { + SEL sharedSel = NSSelectorFromString(@"sharedInstance"); + SEL sourceUrlSel = NSSelectorFromString(@"sourceUrl"); + if ([devLauncherClass respondsToSelector:sharedSel]) { + id controller = ((id (*)(id, SEL))objc_msgSend)(devLauncherClass, sharedSel); + if ([controller respondsToSelector:sourceUrlSel]) { + NSURL *devLauncherURL = ((NSURL *(*)(id, SEL))objc_msgSend)(controller, sourceUrlSel); + if (devLauncherURL != nil) { + return devLauncherURL; + } + } + } + } + return url; // nil — preserve original behavior for non-dev-client setups. }; RCTHost *host = [[RCTHost alloc] initWithBundleURLProvider:bundleURLProvider hostDelegate:hostDelegate From fbd83f618388ace969ab42525457852eefadeb8d Mon Sep 17 00:00:00 2001 From: riteshshukla04 Date: Thu, 4 Jun 2026 12:15:53 +0530 Subject: [PATCH 2/2] chore: hopefully-ci