From 7c49df9d0804053904a9f72045b98272f8219d83 Mon Sep 17 00:00:00 2001 From: Alex Hunt Date: Wed, 7 Aug 2024 09:08:28 -0700 Subject: [PATCH] Set nativeSourceCodeFetching capability in jsinspector-modern targets (#45850) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/45850 Enables the `nativeSourceCodeFetching` capability flag for the modern debugger stack on both Android and iOS. This disables source code fetching hacks within the Inspector Proxy layer and instead enables the debugger server to handle all source code fetching directly on the device. Changelog: [Internal] Differential Revision: D60236216 fbshipit-source-id: 1239b4d7d2233852f007114721b202d90459fa06 --- packages/react-native/React/Base/RCTBridge.mm | 2 +- .../react/devsupport/inspector/InspectorNetworkHelper.java | 2 +- .../jni/react/jni/ReactInstanceManagerInspectorTarget.cpp | 4 +++- .../main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp | 4 +++- .../react/runtime/platform/ios/ReactCommon/RCTHost.mm | 2 +- 5 files changed, 9 insertions(+), 5 deletions(-) diff --git a/packages/react-native/React/Base/RCTBridge.mm b/packages/react-native/React/Base/RCTBridge.mm index cc119a82b6b..281f5ef7c77 100644 --- a/packages/react-native/React/Base/RCTBridge.mm +++ b/packages/react-native/React/Base/RCTBridge.mm @@ -483,7 +483,7 @@ RCT_NOT_IMPLEMENTED(-(instancetype)init) } return strongSelf->_inspectorTarget->connect(std::move(remote)); }, - {.nativePageReloads = true, .prefersFuseboxFrontend = true}); + {.nativePageReloads = true, .nativeSourceCodeFetching = true, .prefersFuseboxFrontend = true}); } Class bridgeClass = self.bridgeClass; diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.java b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.java index abc92c9537e..1c58db0fb2b 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.java +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.java @@ -36,7 +36,7 @@ public class InspectorNetworkHelper { return; } - // TODO(T180434718): Assign cancel function to listener + // TODO(T196951523): Assign cancel function to listener Call call = client.newCall(request); call.enqueue( diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp b/packages/react-native/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp index df86891e94e..d606e37f6c9 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +++ b/packages/react-native/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp @@ -79,7 +79,9 @@ ReactInstanceManagerInspectorTarget::ReactInstanceManagerInspectorTarget( -> std::unique_ptr { return inspectorTarget->connect(std::move(remote)); }, - {.nativePageReloads = true, .prefersFuseboxFrontend = true}); + {.nativePageReloads = true, + .nativeSourceCodeFetching = true, + .prefersFuseboxFrontend = true}); } } diff --git a/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp b/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp index 2204017b3ec..d05eb2e0e7b 100644 --- a/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +++ b/packages/react-native/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp @@ -44,7 +44,9 @@ JReactHostInspectorTarget::JReactHostInspectorTarget( // Reject the connection. return nullptr; }, - {.nativePageReloads = true, .prefersFuseboxFrontend = true}); + {.nativePageReloads = true, + .nativeSourceCodeFetching = true, + .prefersFuseboxFrontend = true}); } } diff --git a/packages/react-native/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm b/packages/react-native/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm index 86598b49c98..51d1b2deecb 100644 --- a/packages/react-native/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +++ b/packages/react-native/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm @@ -227,7 +227,7 @@ class RCTHostHostTargetDelegate : public facebook::react::jsinspector_modern::Ho } return strongSelf->_inspectorTarget->connect(std::move(remote)); }, - {.nativePageReloads = true, .prefersFuseboxFrontend = true}); + {.nativePageReloads = true, .nativeSourceCodeFetching = true, .prefersFuseboxFrontend = true}); } if (_instance) { RCTLogWarn(