mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Split out CdpJson into separate library (#50170)
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/50170 This is needed in D71470038 and later, where submodules of `jsinspector-modern` need to operate with CDP message payloads. We functionally split out these files as a library to avaoid a dependency cycle. Changelog: [Internal] Reviewed By: hoxyq Differential Revision: D71551561 fbshipit-source-id: 527479399d7563883c1b6599f884b7857e79bd77
This commit is contained in:
committed by
Facebook GitHub Bot
parent
3a8f51e02e
commit
094a22fa16
@@ -47,6 +47,7 @@ Pod::Spec.new do |s|
|
||||
add_dependency(s, "React-RCTFBReactNativeSpec")
|
||||
add_dependency(s, "React-NativeModulesApple")
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "ReactCommon", :subspec => "turbomodule/core", :additional_framework_paths => ["react/nativemodule/core"])
|
||||
|
||||
if ENV["USE_HERMES"] == nil || ENV["USE_HERMES"] == "1"
|
||||
|
||||
@@ -127,6 +127,7 @@ Pod::Spec.new do |s|
|
||||
s.resource_bundles = {'React-Core_privacy' => 'React/Resources/PrivacyInfo.xcprivacy'}
|
||||
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsitooling", :framework_name => "JSITooling")
|
||||
add_dependency(s, "RCTDeprecation")
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-jsi", version
|
||||
s.dependency 'React-RCTBlob'
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
|
||||
add_dependency(s, "React-RCTFBReactNativeSpec")
|
||||
|
||||
@@ -85,6 +85,7 @@ Pod::Spec.new do |s|
|
||||
add_dependency(s, "React-runtimescheduler")
|
||||
add_dependency(s, "React-RCTAnimation", :framework_name => 'RCTAnimation')
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
add_dependency(s, "React-renderercss")
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-jsi"
|
||||
add_dependency(s, "React-jsitooling", :framework_name => "JSITooling")
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
|
||||
add_dependency(s, "React-RuntimeCore")
|
||||
|
||||
@@ -70,6 +70,7 @@ add_react_common_subdir(jsi)
|
||||
add_react_common_subdir(callinvoker)
|
||||
add_react_common_subdir(oscompat)
|
||||
add_react_common_subdir(jsinspector-modern)
|
||||
add_react_common_subdir(jsinspector-modern/cdp)
|
||||
add_react_common_subdir(jsinspector-modern/network)
|
||||
add_react_common_subdir(jsinspector-modern/tracing)
|
||||
add_react_common_subdir(hermes/executor)
|
||||
@@ -168,6 +169,7 @@ add_library(reactnative
|
||||
$<TARGET_OBJECTS:jserrorhandler>
|
||||
$<TARGET_OBJECTS:jsinspector>
|
||||
$<TARGET_OBJECTS:jsitooling>
|
||||
$<TARGET_OBJECTS:jsinspector_cdp>
|
||||
$<TARGET_OBJECTS:jsinspector_network>
|
||||
$<TARGET_OBJECTS:jsinspector_tracing>
|
||||
$<TARGET_OBJECTS:jsireact>
|
||||
@@ -256,6 +258,7 @@ target_include_directories(reactnative
|
||||
$<TARGET_PROPERTY:glog_init,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jserrorhandler,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jsinspector,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jsinspector_cdp,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jsinspector_network,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jsinspector_tracing,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
$<TARGET_PROPERTY:jsireact,INTERFACE_INCLUDE_DIRECTORIES>
|
||||
|
||||
@@ -36,6 +36,7 @@ Pod::Spec.new do |s|
|
||||
s.header_dir = "cxxreact"
|
||||
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
s.dependency "React-callinvoker", version
|
||||
s.dependency "React-runtimeexecutor", version
|
||||
|
||||
@@ -37,6 +37,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-cxxreact", version
|
||||
s.dependency "React-jsiexecutor", version
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
s.dependency "React-perflogger", version
|
||||
s.dependency "hermes-engine"
|
||||
|
||||
@@ -33,6 +33,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-jsi", version
|
||||
s.dependency "React-perflogger", version
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
if ENV['USE_HERMES'] == nil || ENV['USE_HERMES'] == "1"
|
||||
s.dependency 'hermes-engine'
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
*/
|
||||
|
||||
#include "HostAgent.h"
|
||||
#include "CdpJson.h"
|
||||
#include "InstanceAgent.h"
|
||||
|
||||
#ifdef REACT_NATIVE_DEBUGGER_ENABLED
|
||||
@@ -17,6 +16,7 @@
|
||||
|
||||
#include <folly/dynamic.h>
|
||||
#include <folly/json.h>
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
#include <chrono>
|
||||
#include <functional>
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include "HostTarget.h"
|
||||
|
||||
#include <jsinspector-modern/InspectorInterfaces.h>
|
||||
#include <jsinspector-modern/InstanceAgent.h>
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
namespace facebook::react::jsinspector_modern {
|
||||
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
*/
|
||||
|
||||
#include "HostTarget.h"
|
||||
#include "CdpJson.h"
|
||||
#include "HostAgent.h"
|
||||
#include "InspectorInterfaces.h"
|
||||
#include "InspectorUtilities.h"
|
||||
@@ -14,6 +13,7 @@
|
||||
#include "SessionState.h"
|
||||
|
||||
#include <jsinspector-modern/InspectorFlags.h>
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
#include <folly/dynamic.h>
|
||||
#include <folly/json.h>
|
||||
|
||||
@@ -5,10 +5,11 @@
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
#include <jsinspector-modern/InstanceAgent.h>
|
||||
#include "CdpJson.h"
|
||||
#include "InstanceAgent.h"
|
||||
#include "RuntimeTarget.h"
|
||||
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
namespace facebook::react::jsinspector_modern {
|
||||
|
||||
InstanceAgent::InstanceAgent(
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include "RuntimeTarget.h"
|
||||
#include "SessionState.h"
|
||||
|
||||
#include <jsinspector-modern/InspectorInterfaces.h>
|
||||
#include <jsinspector-modern/InstanceTarget.h>
|
||||
#include <jsinspector-modern/RuntimeAgent.h>
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
#include <jsinspector-modern/tracing/InstanceTracingProfile.h>
|
||||
|
||||
#include <functional>
|
||||
|
||||
@@ -7,11 +7,12 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include "InspectorInterfaces.h"
|
||||
#include "ScopedExecutor.h"
|
||||
|
||||
#include <folly/dynamic.h>
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
#include <string>
|
||||
#include <unordered_map>
|
||||
#include <utility>
|
||||
|
||||
@@ -51,6 +51,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-featureflags"
|
||||
s.dependency "React-runtimeexecutor", version
|
||||
s.dependency "React-jsi"
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectornetwork", :framework_name => 'jsinspector_modernnetwork')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
s.dependency "React-perflogger", version
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include "InspectorInterfaces.h"
|
||||
#include "RuntimeAgentDelegate.h"
|
||||
#include "RuntimeTarget.h"
|
||||
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
#include <jsinspector-modern/tracing/RuntimeSamplingProfile.h>
|
||||
|
||||
namespace facebook::react::jsinspector_modern {
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
namespace facebook::react::jsinspector_modern {
|
||||
|
||||
|
||||
@@ -7,10 +7,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "CdpJson.h"
|
||||
#include "InspectorInterfaces.h"
|
||||
#include "InstanceAgent.h"
|
||||
|
||||
#include <jsinspector-modern/cdp/CdpJson.h>
|
||||
|
||||
namespace facebook::react::jsinspector_modern {
|
||||
|
||||
/**
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
#
|
||||
# This source code is licensed under the MIT license found in the
|
||||
# LICENSE file in the root directory of this source tree.
|
||||
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
set(CMAKE_VERBOSE_MAKEFILE on)
|
||||
|
||||
include(${REACT_ANDROID_DIR}/src/main/jni/first-party/jni-lib-merge/SoMerging-utils.cmake)
|
||||
|
||||
add_compile_options(
|
||||
-fexceptions
|
||||
-std=c++20
|
||||
-Wall
|
||||
-Wpedantic)
|
||||
|
||||
file(GLOB jsinspector_cdp_SRC CONFIGURE_DEPENDS *.cpp)
|
||||
|
||||
add_library(jsinspector_cdp OBJECT ${jsinspector_cdp_SRC})
|
||||
target_merge_so(jsinspector_cdp)
|
||||
|
||||
target_include_directories(jsinspector_cdp PUBLIC ${REACT_COMMON_DIR})
|
||||
|
||||
target_link_libraries(jsinspector_cdp
|
||||
folly_runtime
|
||||
)
|
||||
@@ -0,0 +1,50 @@
|
||||
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
#
|
||||
# This source code is licensed under the MIT license found in the
|
||||
# LICENSE file in the root directory of this source tree.
|
||||
|
||||
require "json"
|
||||
|
||||
package = JSON.parse(File.read(File.join(__dir__, "..", "..", "..", "package.json")))
|
||||
version = package['version']
|
||||
|
||||
source = { :git => 'https://github.com/facebook/react-native.git' }
|
||||
if version == '1000.0.0'
|
||||
# This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
|
||||
source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
|
||||
else
|
||||
source[:tag] = "v#{version}"
|
||||
end
|
||||
|
||||
header_search_paths = []
|
||||
|
||||
if ENV['USE_FRAMEWORKS']
|
||||
header_search_paths << "\"$(PODS_TARGET_SRCROOT)/../..\""
|
||||
end
|
||||
|
||||
header_dir = 'jsinspector-modern/cdp'
|
||||
module_name = "jsinspector_moderncdp"
|
||||
|
||||
Pod::Spec.new do |s|
|
||||
s.name = "React-jsinspectorcdp"
|
||||
s.version = version
|
||||
s.summary = "Common helper functions for working with CDP messages in jsinspector-modern"
|
||||
s.homepage = "https://reactnative.dev/"
|
||||
s.license = package["license"]
|
||||
s.author = "Meta Platforms, Inc. and its affiliates"
|
||||
s.platforms = min_supported_versions
|
||||
s.source = source
|
||||
s.source_files = "*.{cpp,h}"
|
||||
s.header_dir = header_dir
|
||||
s.pod_target_xcconfig = {
|
||||
"HEADER_SEARCH_PATHS" => header_search_paths.join(' '),
|
||||
"CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
|
||||
"DEFINES_MODULE" => "YES"}
|
||||
|
||||
if ENV['USE_FRAMEWORKS']
|
||||
s.module_name = module_name
|
||||
s.header_mappings_dir = "../.."
|
||||
end
|
||||
|
||||
add_rn_third_party_dependencies(s)
|
||||
end
|
||||
@@ -38,6 +38,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-cxxreact", version
|
||||
s.dependency "React-jsi", version
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
|
||||
add_rn_third_party_dependencies(s)
|
||||
|
||||
+1
@@ -47,6 +47,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-runtimeexecutor"
|
||||
add_dependency(s, "React-featureflags")
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
|
||||
depend_on_js_engine(s)
|
||||
add_rn_third_party_dependencies(s)
|
||||
|
||||
@@ -43,6 +43,7 @@ Pod::Spec.new do |s|
|
||||
s.dependency "React-RuntimeCore"
|
||||
s.dependency "React-featureflags"
|
||||
add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
|
||||
add_dependency(s, "React-jsinspectorcdp", :framework_name => 'jsinspector_moderncdp')
|
||||
add_dependency(s, "React-jsinspectortracing", :framework_name => 'jsinspector_moderntracing')
|
||||
|
||||
s.dependency "React-hermes"
|
||||
|
||||
@@ -150,6 +150,7 @@ def use_react_native! (
|
||||
pod 'React-jsiexecutor', :path => "#{prefix}/ReactCommon/jsiexecutor"
|
||||
pod 'React-jsinspector', :path => "#{prefix}/ReactCommon/jsinspector-modern"
|
||||
pod 'React-jsitooling', :path => "#{prefix}/ReactCommon/jsitooling"
|
||||
pod 'React-jsinspectorcdp', :path => "#{prefix}/ReactCommon/jsinspector-modern/cdp"
|
||||
pod 'React-jsinspectornetwork', :path => "#{prefix}/ReactCommon/jsinspector-modern/network"
|
||||
pod 'React-jsinspectortracing', :path => "#{prefix}/ReactCommon/jsinspector-modern/tracing"
|
||||
|
||||
|
||||
+746
-246
File diff suppressed because it is too large
Load Diff
@@ -46,6 +46,8 @@
|
||||
<string>You need to add NSLocationWhenInUseUsageDescription key in Info.plist to enable geolocation, otherwise it is going to *fail silently*!</string>
|
||||
<key>NSPhotoLibraryUsageDescription</key>
|
||||
<string>You need to add NSPhotoLibraryUsageDescription key in Info.plist to enable photo library usage, otherwise it is going to *fail silently*!</string>
|
||||
<key>RCTNewArchEnabled</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
|
||||
Reference in New Issue
Block a user