react-native 0.76.8 → 0.76.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -0
  2. package/Libraries/Blob/React-RCTBlob.podspec +3 -1
  3. package/Libraries/Core/ReactNativeVersion.js +1 -1
  4. package/Libraries/Network/RCTDataRequestHandler.mm +17 -3
  5. package/Libraries/Network/RCTFileRequestHandler.mm +17 -3
  6. package/React/Base/RCTVersion.m +1 -1
  7. package/React/CoreModules/React-CoreModules.podspec +9 -10
  8. package/React/CxxModule/RCTCxxMethod.mm +10 -2
  9. package/React/React-RCTFabric.podspec +1 -0
  10. package/React/third-party.xcconfig +1 -1
  11. package/React-Core.podspec +2 -1
  12. package/ReactAndroid/build.gradle.kts +24 -0
  13. package/ReactAndroid/gradle.properties +1 -1
  14. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  15. package/ReactAndroid/src/main/jni/CMakeLists.txt +1 -0
  16. package/ReactAndroid/src/main/jni/third-party/fast_float/CMakeLists.txt +13 -0
  17. package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +5 -6
  18. package/ReactCommon/React-Fabric.podspec +2 -1
  19. package/ReactCommon/React-FabricComponents.podspec +3 -1
  20. package/ReactCommon/React-FabricImage.podspec +7 -5
  21. package/ReactCommon/ReactCommon.podspec +9 -8
  22. package/ReactCommon/cxxreact/CxxNativeModule.cpp +6 -3
  23. package/ReactCommon/cxxreact/React-cxxreact.podspec +11 -10
  24. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  25. package/ReactCommon/hermes/React-hermes.podspec +7 -6
  26. package/ReactCommon/jsi/React-jsi.podspec +4 -3
  27. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +7 -6
  28. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +4 -4
  29. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
  30. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +3 -1
  31. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +4 -2
  32. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -2
  33. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -0
  34. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -0
  35. package/gradle/libs.versions.toml +3 -2
  36. package/package.json +8 -8
  37. package/scripts/cocoapods/codegen_utils.rb +1 -2
  38. package/scripts/cocoapods/helpers.rb +13 -1
  39. package/scripts/cocoapods/new_architecture.rb +1 -0
  40. package/scripts/cocoapods/utils.rb +2 -0
  41. package/scripts/react_native_pods.rb +14 -0
  42. package/sdks/hermesc/osx-bin/hermes +0 -0
  43. package/sdks/hermesc/osx-bin/hermesc +0 -0
  44. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  45. package/third-party-podspecs/RCT-Folly.podspec +16 -7
  46. package/third-party-podspecs/fast_float.podspec +29 -0
  47. package/third-party-podspecs/fmt.podspec +2 -2
@@ -32,6 +32,7 @@ header_search_paths = [
32
32
  "$(PODS_ROOT)/Headers/Private/React-Core",
33
33
  "$(PODS_ROOT)/boost",
34
34
  "$(PODS_ROOT)/DoubleConversion",
35
+ "$(PODS_ROOT)/fast_float/include",
35
36
  "$(PODS_ROOT)/fmt/include",
36
37
  "$(PODS_ROOT)/RCT-Folly",
37
38
  "${PODS_ROOT}/Headers/Public/FlipperKit",
@@ -24,6 +24,7 @@ header_search_paths = [
24
24
  "\"$(PODS_ROOT)/RCT-Folly\"",
25
25
  "\"$(PODS_ROOT)/boost\"",
26
26
  "\"$(PODS_ROOT)/DoubleConversion\"",
27
+ "\"$(PODS_ROOT)/fast_float/include\"",
27
28
  "\"$(PODS_ROOT)/fmt/include\"",
28
29
  "\"${PODS_ROOT}/Headers/Public/ReactCodegen/react/renderer/components\"",
29
30
  ]
@@ -48,7 +49,8 @@ Pod::Spec.new do |s|
48
49
  }
49
50
 
50
51
  s.dependency "DoubleConversion"
51
- s.dependency "fmt", "9.1.0"
52
+ s.dependency "fast_float"
53
+ s.dependency "fmt"
52
54
  s.dependency "RCT-Folly", folly_version
53
55
  s.dependency "React-jsi"
54
56
  s.dependency "React-Core/RCTBlobHeaders"
@@ -16,7 +16,7 @@ const version: $ReadOnly<{
16
16
  }> = {
17
17
  major: 0,
18
18
  minor: 76,
19
- patch: 8,
19
+ patch: 9,
20
20
  prerelease: null,
21
21
  };
22
22
 
@@ -8,6 +8,8 @@
8
8
  #import <React/RCTDataRequestHandler.h>
9
9
  #import <ReactCommon/RCTTurboModule.h>
10
10
 
11
+ #import <mutex>
12
+
11
13
  #import "RCTNetworkPlugins.h"
12
14
 
13
15
  @interface RCTDataRequestHandler () <RCTTurboModule>
@@ -15,14 +17,22 @@
15
17
 
16
18
  @implementation RCTDataRequestHandler {
17
19
  NSOperationQueue *_queue;
20
+ std::mutex _operationHandlerMutexLock;
18
21
  }
19
22
 
20
23
  RCT_EXPORT_MODULE()
21
24
 
22
25
  - (void)invalidate
23
26
  {
24
- [_queue cancelAllOperations];
25
- _queue = nil;
27
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
28
+ if (_queue) {
29
+ for (NSOperation *operation in _queue.operations) {
30
+ if (!operation.isCancelled && !operation.isFinished) {
31
+ [operation cancel];
32
+ }
33
+ }
34
+ _queue = nil;
35
+ }
26
36
  }
27
37
 
28
38
  - (BOOL)canHandleRequest:(NSURLRequest *)request
@@ -32,6 +42,7 @@ RCT_EXPORT_MODULE()
32
42
 
33
43
  - (NSOperation *)sendRequest:(NSURLRequest *)request withDelegate:(id<RCTURLRequestDelegate>)delegate
34
44
  {
45
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
35
46
  // Lazy setup
36
47
  if (!_queue) {
37
48
  _queue = [NSOperationQueue new];
@@ -69,7 +80,10 @@ RCT_EXPORT_MODULE()
69
80
 
70
81
  - (void)cancelRequest:(NSOperation *)op
71
82
  {
72
- [op cancel];
83
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
84
+ if (!op.isCancelled && !op.isFinished) {
85
+ [op cancel];
86
+ }
73
87
  }
74
88
 
75
89
  - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
@@ -7,6 +7,8 @@
7
7
 
8
8
  #import <React/RCTFileRequestHandler.h>
9
9
 
10
+ #import <mutex>
11
+
10
12
  #import <MobileCoreServices/MobileCoreServices.h>
11
13
 
12
14
  #import <React/RCTUtils.h>
@@ -19,14 +21,22 @@
19
21
 
20
22
  @implementation RCTFileRequestHandler {
21
23
  NSOperationQueue *_fileQueue;
24
+ std::mutex _operationHandlerMutexLock;
22
25
  }
23
26
 
24
27
  RCT_EXPORT_MODULE()
25
28
 
26
29
  - (void)invalidate
27
30
  {
28
- [_fileQueue cancelAllOperations];
29
- _fileQueue = nil;
31
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
32
+ if (_fileQueue) {
33
+ for (NSOperation *operation in _fileQueue.operations) {
34
+ if (!operation.isCancelled && !operation.isFinished) {
35
+ [operation cancel];
36
+ }
37
+ }
38
+ _fileQueue = nil;
39
+ }
30
40
  }
31
41
 
32
42
  - (BOOL)canHandleRequest:(NSURLRequest *)request
@@ -36,6 +46,7 @@ RCT_EXPORT_MODULE()
36
46
 
37
47
  - (NSOperation *)sendRequest:(NSURLRequest *)request withDelegate:(id<RCTURLRequestDelegate>)delegate
38
48
  {
49
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
39
50
  // Lazy setup
40
51
  if (!_fileQueue) {
41
52
  _fileQueue = [NSOperationQueue new];
@@ -83,7 +94,10 @@ RCT_EXPORT_MODULE()
83
94
 
84
95
  - (void)cancelRequest:(NSOperation *)op
85
96
  {
86
- [op cancel];
97
+ std::lock_guard<std::mutex> lock(_operationHandlerMutexLock);
98
+ if (!op.isCancelled && !op.isFinished) {
99
+ [op cancel];
100
+ }
87
101
  }
88
102
 
89
103
  - (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
@@ -23,7 +23,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
23
23
  __rnVersion = @{
24
24
  RCTVersionMajor: @(0),
25
25
  RCTVersionMinor: @(76),
26
- RCTVersionPatch: @(8),
26
+ RCTVersionPatch: @(9),
27
27
  RCTVersionPrerelease: [NSNull null],
28
28
  };
29
29
  });
@@ -20,14 +20,12 @@ folly_config = get_folly_config()
20
20
  folly_compiler_flags = folly_config[:compiler_flags]
21
21
  folly_version = folly_config[:version]
22
22
 
23
- socket_rocket_config = get_socket_rocket_config()
24
- socket_rocket_version = socket_rocket_config[:version]
25
-
26
23
  header_search_paths = [
27
24
  "\"$(PODS_ROOT)/boost\"",
28
25
  "\"$(PODS_TARGET_SRCROOT)/React/CoreModules\"",
29
26
  "\"$(PODS_ROOT)/RCT-Folly\"",
30
27
  "\"$(PODS_ROOT)/DoubleConversion\"",
28
+ "\"$(PODS_ROOT)/fast_float/include\"",
31
29
  "\"$(PODS_ROOT)/fmt/include\"",
32
30
  "\"${PODS_ROOT}/Headers/Public/ReactCodegen/react/renderer/components\"",
33
31
  ]
@@ -51,14 +49,15 @@ Pod::Spec.new do |s|
51
49
  }
52
50
  s.framework = "UIKit"
53
51
  s.dependency "DoubleConversion"
54
- s.dependency "fmt", "9.1.0"
55
- s.dependency "RCT-Folly", folly_version
56
- s.dependency "RCTTypeSafety", version
57
- s.dependency "React-Core/CoreModulesHeaders", version
58
- s.dependency "React-RCTImage", version
59
- s.dependency "React-jsi", version
52
+ s.dependency "fast_float"
53
+ s.dependency "fmt"
54
+ s.dependency "RCT-Folly"
55
+ s.dependency "RCTTypeSafety"
56
+ s.dependency "React-Core/CoreModulesHeaders"
57
+ s.dependency "React-RCTImage"
58
+ s.dependency "React-jsi"
60
59
  s.dependency 'React-RCTBlob'
61
- s.dependency "SocketRocket", socket_rocket_version
60
+ s.dependency "SocketRocket"
62
61
  add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
63
62
 
64
63
  add_dependency(s, "ReactCodegen")
@@ -98,14 +98,22 @@ using namespace facebook::react;
98
98
  NSNumber *id2 = arguments[arguments.count - 1];
99
99
 
100
100
  second = ^(std::vector<folly::dynamic> args) {
101
- [bridge enqueueCallback:id2 args:convertFollyDynamicToId(folly::dynamic(args.begin(), args.end()))];
101
+ folly::dynamic obj = folly::dynamic::array;
102
+ for (auto &arg : args) {
103
+ obj.push_back(std::move(arg));
104
+ }
105
+ [bridge enqueueCallback:id2 args:convertFollyDynamicToId(std::move(obj))];
102
106
  };
103
107
  } else {
104
108
  id1 = arguments[arguments.count - 1];
105
109
  }
106
110
 
107
111
  first = ^(std::vector<folly::dynamic> args) {
108
- [bridge enqueueCallback:id1 args:convertFollyDynamicToId(folly::dynamic(args.begin(), args.end()))];
112
+ folly::dynamic obj = folly::dynamic::array;
113
+ for (auto &arg : args) {
114
+ obj.push_back(std::move(arg));
115
+ }
116
+ [bridge enqueueCallback:id1 args:convertFollyDynamicToId(std::move(obj))];
109
117
  };
110
118
  }
111
119
 
@@ -26,6 +26,7 @@ header_search_paths = [
26
26
  "\"$(PODS_TARGET_SRCROOT)/ReactCommon\"",
27
27
  "\"$(PODS_ROOT)/boost\"",
28
28
  "\"$(PODS_ROOT)/DoubleConversion\"",
29
+ "\"$(PODS_ROOT)/fast_float/include\"",
29
30
  "\"$(PODS_ROOT)/fmt/include\"",
30
31
  "\"$(PODS_ROOT)/RCT-Folly\"",
31
32
  "\"$(PODS_ROOT)/Headers/Private/React-Core\"",
@@ -8,5 +8,5 @@
8
8
  // LICENSE file in the root directory of this source tree.
9
9
  //
10
10
 
11
- HEADER_SEARCH_PATHS = $(SRCROOT)/../third-party/boost_1_83_0 $(SRCROOT)/../third-party/folly-2024.01.01.00 $(SRCROOT)/../third-party/glog-0.3.5/src
11
+ HEADER_SEARCH_PATHS = $(SRCROOT)/../third-party/boost_1_83_0 $(SRCROOT)/../third-party/folly-2024.10.14.00 $(SRCROOT)/../third-party/glog-0.3.5/src
12
12
  OTHER_CFLAGS = -DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_CFG_NO_COROUTINES=1 -DFOLLY_HAVE_CLOCK_GETTIME=1
@@ -21,7 +21,7 @@ folly_compiler_flags = folly_config[:compiler_flags]
21
21
  folly_version = folly_config[:version]
22
22
 
23
23
  socket_rocket_config = get_socket_rocket_config()
24
- socket_rocket_version = socket_rocket_config[:version]
24
+ socket_rocket_version = socket_rocket_config[:version]
25
25
 
26
26
  boost_compiler_flags = '-Wno-documentation'
27
27
 
@@ -49,6 +49,7 @@ header_search_paths = [
49
49
  "$(PODS_TARGET_SRCROOT)/ReactCommon",
50
50
  "$(PODS_ROOT)/boost",
51
51
  "$(PODS_ROOT)/DoubleConversion",
52
+ "$(PODS_ROOT)/fast_float/include",
52
53
  "$(PODS_ROOT)/fmt/include",
53
54
  "$(PODS_ROOT)/RCT-Folly",
54
55
  "${PODS_ROOT}/Headers/Public/FlipperKit",
@@ -66,6 +66,7 @@ val prefabHeadersDir = project.file("$buildDir/prefab-headers")
66
66
  // Native versions which are defined inside the version catalog (libs.versions.toml)
67
67
  val BOOST_VERSION = libs.versions.boost.get()
68
68
  val DOUBLE_CONVERSION_VERSION = libs.versions.doubleconversion.get()
69
+ val FAST_FLOAT_VERSION = libs.versions.fastFloat.get()
69
70
  val FMT_VERSION = libs.versions.fmt.get()
70
71
  val FOLLY_VERSION = libs.versions.folly.get()
71
72
  val GLOG_VERSION = libs.versions.glog.get()
@@ -179,6 +180,7 @@ val preparePrefab by
179
180
  // react_nativemodule_core
180
181
  Pair(File(buildDir, "third-party-ndk/boost/boost_1_83_0/").absolutePath, ""),
181
182
  Pair(File(buildDir, "third-party-ndk/double-conversion/").absolutePath, ""),
183
+ Pair(File(buildDir, "third-party-ndk/fast_float/include/").absolutePath, ""),
182
184
  Pair(File(buildDir, "third-party-ndk/fmt/include/").absolutePath, ""),
183
185
  Pair(File(buildDir, "third-party-ndk/folly/").absolutePath, ""),
184
186
  Pair(File(buildDir, "third-party-ndk/glog/exported/").absolutePath, ""),
@@ -304,6 +306,27 @@ val prepareFolly by
304
306
  includeEmptyDirs = false
305
307
  into("$thirdPartyNdkDir/folly")
306
308
  }
309
+ val downloadFastFloat by
310
+ tasks.creating(Download::class) {
311
+ dependsOn(createNativeDepsDirectories)
312
+ src("https://github.com/fastfloat/fast_float/archive/v${FAST_FLOAT_VERSION}.tar.gz")
313
+ onlyIfModified(true)
314
+ overwrite(false)
315
+ retries(5)
316
+ quiet(true)
317
+ dest(File(downloadsDir, "fast_float-${FAST_FLOAT_VERSION}.tar.gz"))
318
+ }
319
+
320
+ val prepareFastFloat by
321
+ tasks.registering(Copy::class) {
322
+ dependsOn(if (dependenciesPath != null) emptyList() else listOf(downloadFastFloat))
323
+ from(dependenciesPath ?: tarTree(downloadFastFloat.dest))
324
+ from("src/main/jni/third-party/fast_float/")
325
+ include("fast_float-${FAST_FLOAT_VERSION}/include/**/*", "CMakeLists.txt")
326
+ eachFile { this.path = this.path.removePrefix("fast_float-${FAST_FLOAT_VERSION}/") }
327
+ includeEmptyDirs = false
328
+ into("$thirdPartyNdkDir/fast_float")
329
+ }
307
330
 
308
331
  val downloadFmt by
309
332
  tasks.creating(Download::class) {
@@ -541,6 +564,7 @@ android {
541
564
  "generateCodegenArtifactsFromSchema",
542
565
  prepareBoost,
543
566
  prepareDoubleConversion,
567
+ prepareFastFloat,
544
568
  prepareFmt,
545
569
  prepareFolly,
546
570
  prepareGlog,
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.76.8
1
+ VERSION_NAME=0.76.9
2
2
  react.internal.publishingGroup=com.facebook.react
3
3
 
4
4
  android.useAndroidX=true
@@ -17,6 +17,6 @@ public class ReactNativeVersion {
17
17
  public static final Map<String, Object> VERSION = MapBuilder.<String, Object>of(
18
18
  "major", 0,
19
19
  "minor", 76,
20
- "patch", 8,
20
+ "patch", 9,
21
21
  "prerelease", null);
22
22
  }
@@ -49,6 +49,7 @@ add_library(fbjni ALIAS fbjni::fbjni)
49
49
  add_react_third_party_ndk_subdir(glog)
50
50
  add_react_third_party_ndk_subdir(boost)
51
51
  add_react_third_party_ndk_subdir(double-conversion)
52
+ add_react_third_party_ndk_subdir(fast_float)
52
53
  add_react_third_party_ndk_subdir(fmt)
53
54
  add_react_third_party_ndk_subdir(folly)
54
55
  add_react_third_party_ndk_subdir(jsc)
@@ -0,0 +1,13 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ #
3
+ # This source code is licensed under the MIT license found in the
4
+ # LICENSE file in the root directory of this source tree.
5
+
6
+ cmake_minimum_required(VERSION 3.13)
7
+ set(CMAKE_VERBOSE_MAKEFILE on)
8
+
9
+ add_compile_options(-std=c++20 -fexceptions)
10
+
11
+ add_library(fast_float INTERFACE)
12
+
13
+ target_include_directories(fast_float INTERFACE include)
@@ -26,11 +26,8 @@ SET(folly_FLAGS
26
26
  SET(folly_runtime_SRC
27
27
  folly/Conv.cpp
28
28
  folly/Demangle.cpp
29
- folly/dynamic.cpp
30
29
  folly/FileUtil.cpp
31
30
  folly/Format.cpp
32
- folly/json_pointer.cpp
33
- folly/json.cpp
34
31
  folly/ScopeGuard.cpp
35
32
  folly/SharedMutex.cpp
36
33
  folly/String.cpp
@@ -42,6 +39,9 @@ SET(folly_runtime_SRC
42
39
  folly/detail/SplitStringSimd.cpp
43
40
  folly/detail/UniqueInstance.cpp
44
41
  folly/hash/SpookyHashV2.cpp
42
+ folly/json/dynamic.cpp
43
+ folly/json/json_pointer.cpp
44
+ folly/json/json.cpp
45
45
  folly/lang/CString.cpp
46
46
  folly/lang/SafeAssert.cpp
47
47
  folly/lang/ToAscii.cpp
@@ -51,8 +51,7 @@ SET(folly_runtime_SRC
51
51
  folly/synchronization/SanitizeThread.cpp
52
52
  folly/synchronization/ParkingLot.cpp
53
53
  folly/system/AtFork.cpp
54
- folly/system/ThreadId.cpp
55
- folly/system/ThreadName.cpp)
54
+ folly/system/ThreadId.cpp)
56
55
 
57
56
  add_library(folly_runtime STATIC ${folly_runtime_SRC})
58
57
 
@@ -67,4 +66,4 @@ target_compile_options(folly_runtime
67
66
  target_compile_options(folly_runtime PUBLIC ${folly_FLAGS})
68
67
 
69
68
  target_include_directories(folly_runtime PUBLIC .)
70
- target_link_libraries(folly_runtime glog double-conversion boost fmt)
69
+ target_link_libraries(folly_runtime glog double-conversion boost fmt fast_float)
@@ -53,7 +53,8 @@ Pod::Spec.new do |s|
53
53
  s.dependency "React-logger"
54
54
  s.dependency "glog"
55
55
  s.dependency "DoubleConversion"
56
- s.dependency "fmt", "9.1.0"
56
+ s.dependency "fast_float"
57
+ s.dependency "fmt"
57
58
  s.dependency "React-Core"
58
59
  s.dependency "React-debug"
59
60
  s.dependency "React-featureflags"
@@ -33,6 +33,7 @@ Pod::Spec.new do |s|
33
33
  "\"$(PODS_ROOT)/Headers/Private/Yoga\"",
34
34
  "\"$(PODS_TARGET_SRCROOT)\"",
35
35
  "\"$(PODS_ROOT)/DoubleConversion\"",
36
+ "\"$(PODS_ROOT)/fast_float/include\"",
36
37
  "\"$(PODS_ROOT)/fmt/include\"",
37
38
  ]
38
39
 
@@ -74,7 +75,8 @@ Pod::Spec.new do |s|
74
75
  s.dependency "React-logger"
75
76
  s.dependency "glog"
76
77
  s.dependency "DoubleConversion"
77
- s.dependency "fmt", "9.1.0"
78
+ s.dependency "fast_float"
79
+ s.dependency "fmt"
78
80
  s.dependency "React-Core"
79
81
  s.dependency "React-debug"
80
82
  s.dependency "React-featureflags"
@@ -30,6 +30,7 @@ header_search_path = [
30
30
  "\"$(PODS_ROOT)/RCT-Folly\"",
31
31
  "\"$(PODS_ROOT)/Headers/Private/Yoga\"",
32
32
  "\"$(PODS_ROOT)/DoubleConversion\"",
33
+ "\"$(PODS_ROOT)/fast_float/include\"",
33
34
  "\"$(PODS_ROOT)/fmt/include\"",
34
35
  ]
35
36
 
@@ -65,16 +66,17 @@ Pod::Spec.new do |s|
65
66
  s.module_name = 'React_FabricImage'
66
67
  end
67
68
 
68
- s.dependency folly_dep_name, folly_version
69
+ s.dependency folly_dep_name
69
70
 
70
- s.dependency "React-jsiexecutor", version
71
- s.dependency "RCTRequired", version
72
- s.dependency "RCTTypeSafety", version
71
+ s.dependency "React-jsiexecutor"
72
+ s.dependency "RCTRequired"
73
+ s.dependency "RCTTypeSafety"
73
74
  s.dependency "React-jsi"
74
75
  s.dependency "React-logger"
75
76
  s.dependency "glog"
76
77
  s.dependency "DoubleConversion"
77
- s.dependency "fmt", "9.1.0"
78
+ s.dependency "fast_float"
79
+ s.dependency "fmt"
78
80
  s.dependency "React-ImageManager"
79
81
  s.dependency "React-utils"
80
82
  s.dependency "Yoga"
@@ -34,7 +34,7 @@ Pod::Spec.new do |s|
34
34
  s.source = source
35
35
  s.header_dir = "ReactCommon" # Use global header_dir for all subspecs for use_frameworks! compatibility
36
36
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
37
- s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_ROOT)/Headers/Private/React-Core\"",
37
+ s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_ROOT)/Headers/Private/React-Core\"",
38
38
  "USE_HEADERMAP" => "YES",
39
39
  "DEFINES_MODULE" => "YES",
40
40
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
@@ -46,14 +46,15 @@ Pod::Spec.new do |s|
46
46
  # TODO (T48588859): Restructure this target to align with dir structure: "react/nativemodule/..."
47
47
  # Note: Update this only when ready to minimize breaking changes.
48
48
  s.subspec "turbomodule" do |ss|
49
- ss.dependency "React-callinvoker", version
50
- ss.dependency "React-perflogger", version
51
- ss.dependency "React-cxxreact", version
52
- ss.dependency "React-jsi", version
53
- ss.dependency "RCT-Folly", folly_version
54
- ss.dependency "React-logger", version
49
+ ss.dependency "React-callinvoker"
50
+ ss.dependency "React-perflogger"
51
+ ss.dependency "React-cxxreact"
52
+ ss.dependency "React-jsi"
53
+ ss.dependency "RCT-Folly"
54
+ ss.dependency "React-logger"
55
55
  ss.dependency "DoubleConversion"
56
- ss.dependency "fmt", "9.1.0"
56
+ ss.dependency "fast_float"
57
+ ss.dependency "fmt"
57
58
  ss.dependency "glog"
58
59
  if using_hermes
59
60
  ss.dependency "hermes-engine"
@@ -47,9 +47,12 @@ namespace {
47
47
  CxxModule::Callback convertCallback(
48
48
  std::function<void(folly::dynamic)> callback) {
49
49
  return [callback = std::move(callback)](std::vector<folly::dynamic> args) {
50
- callback(folly::dynamic(
51
- std::make_move_iterator(args.begin()),
52
- std::make_move_iterator(args.end())));
50
+ // after unpinning folly, can use folly::dynamic::array_range
51
+ folly::dynamic obj = folly::dynamic::array;
52
+ for (auto& arg : args) {
53
+ obj.push_back(std::move(arg));
54
+ }
55
+ callback(std::move(obj));
53
56
  };
54
57
  }
55
58
 
@@ -35,24 +35,25 @@ Pod::Spec.new do |s|
35
35
  s.exclude_files = "SampleCxxModule.*"
36
36
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
37
37
  s.pod_target_xcconfig = {
38
- "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_CONFIGURATION_BUILD_DIR)/React-debug/React_debug.framework/Headers\" \"${PODS_CONFIGURATION_BUILD_DIR}/React-runtimeexecutor/React_runtimeexecutor.framework/Headers\"",
38
+ "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_CONFIGURATION_BUILD_DIR)/React-debug/React_debug.framework/Headers\" \"${PODS_CONFIGURATION_BUILD_DIR}/React-runtimeexecutor/React_runtimeexecutor.framework/Headers\"",
39
39
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard()
40
40
  }
41
41
  s.header_dir = "cxxreact"
42
42
 
43
43
  s.dependency "boost"
44
44
  s.dependency "DoubleConversion"
45
- s.dependency "fmt", "9.1.0"
46
- s.dependency "RCT-Folly", folly_version
45
+ s.dependency "fast_float"
46
+ s.dependency "fmt"
47
+ s.dependency "RCT-Folly"
47
48
  s.dependency "glog"
48
49
  add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
49
- s.dependency "React-callinvoker", version
50
- s.dependency "React-runtimeexecutor", version
51
- s.dependency "React-perflogger", version
52
- s.dependency "React-jsi", version
53
- s.dependency "React-logger", version
54
- s.dependency "React-debug", version
55
- s.dependency "React-timing", version
50
+ s.dependency "React-callinvoker"
51
+ s.dependency "React-runtimeexecutor"
52
+ s.dependency "React-perflogger"
53
+ s.dependency "React-jsi"
54
+ s.dependency "React-logger"
55
+ s.dependency "React-debug"
56
+ s.dependency "React-timing"
56
57
 
57
58
  s.resource_bundles = {'React-cxxreact_privacy' => 'PrivacyInfo.xcprivacy'}
58
59
 
@@ -17,7 +17,7 @@ namespace facebook::react {
17
17
  constexpr struct {
18
18
  int32_t Major = 0;
19
19
  int32_t Minor = 76;
20
- int32_t Patch = 8;
20
+ int32_t Patch = 9;
21
21
  std::string_view Prerelease = "";
22
22
  } ReactNativeVersion;
23
23
 
@@ -36,17 +36,18 @@ Pod::Spec.new do |s|
36
36
  s.public_header_files = "executor/HermesExecutorFactory.h"
37
37
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
38
38
  s.pod_target_xcconfig = {
39
- "HEADER_SEARCH_PATHS" => "\"${PODS_ROOT}/hermes-engine/destroot/include\" \"$(PODS_TARGET_SRCROOT)/..\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\"",
39
+ "HEADER_SEARCH_PATHS" => "\"${PODS_ROOT}/hermes-engine/destroot/include\" \"$(PODS_TARGET_SRCROOT)/..\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\"",
40
40
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard()
41
41
  }
42
42
  s.header_dir = "reacthermes"
43
- s.dependency "React-cxxreact", version
44
- s.dependency "React-jsiexecutor", version
43
+ s.dependency "React-cxxreact"
44
+ s.dependency "React-jsiexecutor"
45
45
  add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
46
- s.dependency "React-perflogger", version
47
- s.dependency "RCT-Folly", folly_version
46
+ s.dependency "React-perflogger"
47
+ s.dependency "RCT-Folly"
48
48
  s.dependency "DoubleConversion"
49
- s.dependency "fmt", "9.1.0"
49
+ s.dependency "fast_float"
50
+ s.dependency "fmt"
50
51
  s.dependency "glog"
51
52
  s.dependency "hermes-engine"
52
53
  s.dependency "React-jsi"
@@ -37,13 +37,14 @@ Pod::Spec.new do |s|
37
37
 
38
38
  s.header_dir = "jsi"
39
39
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
40
- s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\"",
40
+ s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\"",
41
41
  "DEFINES_MODULE" => "YES" }
42
42
 
43
43
  s.dependency "boost"
44
44
  s.dependency "DoubleConversion"
45
- s.dependency "fmt", "9.1.0"
46
- s.dependency "RCT-Folly", folly_version
45
+ s.dependency "fast_float"
46
+ s.dependency "fmt"
47
+ s.dependency "RCT-Folly"
47
48
  s.dependency "glog"
48
49
 
49
50
  s.source_files = "**/*.{cpp,h}"
@@ -32,16 +32,17 @@ Pod::Spec.new do |s|
32
32
  s.source = source
33
33
  s.source_files = "jsireact/*.{cpp,h}"
34
34
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
35
- s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\"",
35
+ s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\"",
36
36
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard() }
37
37
  s.header_dir = "jsireact"
38
38
 
39
- s.dependency "React-cxxreact", version
40
- s.dependency "React-jsi", version
41
- s.dependency "React-perflogger", version
42
- s.dependency "RCT-Folly", folly_version
39
+ s.dependency "React-cxxreact"
40
+ s.dependency "React-jsi"
41
+ s.dependency "React-perflogger"
42
+ s.dependency "RCT-Folly"
43
43
  s.dependency "DoubleConversion"
44
- s.dependency "fmt", "9.1.0"
44
+ s.dependency "fast_float"
45
+ s.dependency "fmt"
45
46
  s.dependency "glog"
46
47
  add_dependency(s, "React-jsinspector", :framework_name => 'jsinspector_modern')
47
48
 
@@ -37,7 +37,7 @@ Pod::Spec.new do |s|
37
37
  s.header_dir = 'jsinspector-modern'
38
38
  s.compiler_flags = folly_compiler_flags
39
39
  s.pod_target_xcconfig = {
40
- "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/..\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\"",
40
+ "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)/..\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\"",
41
41
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
42
42
  "DEFINES_MODULE" => "YES"
43
43
  }.merge!(use_frameworks ? {
@@ -49,12 +49,12 @@ Pod::Spec.new do |s|
49
49
  end
50
50
 
51
51
  s.dependency "glog"
52
- s.dependency "RCT-Folly", folly_version
52
+ s.dependency "RCT-Folly"
53
53
  s.dependency "React-featureflags"
54
54
  s.dependency "DoubleConversion"
55
- s.dependency "React-runtimeexecutor", version
55
+ s.dependency "React-runtimeexecutor"
56
56
  s.dependency "React-jsi"
57
- s.dependency "React-perflogger", version
57
+ s.dependency "React-perflogger"
58
58
  if ENV["USE_HERMES"] == nil || ENV["USE_HERMES"] == "1"
59
59
  s.dependency "hermes-engine"
60
60
  end
@@ -34,7 +34,7 @@ Pod::Spec.new do |s|
34
34
  s.platforms = min_supported_versions
35
35
  s.source = source
36
36
  s.compiler_flags = folly_compiler_flags + ' ' + boost_compiler_flags
37
- s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_ROOT)/Headers/Private/React-Core\"",
37
+ s.pod_target_xcconfig = { "HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\" \"$(PODS_ROOT)/Headers/Private/React-Core\"",
38
38
  "USE_HEADERMAP" => "YES",
39
39
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
40
40
  "GCC_WARN_PEDANTIC" => "YES" }
@@ -27,6 +27,7 @@ header_search_paths = [
27
27
  "\"$(PODS_ROOT)/boost\"",
28
28
  "\"$(PODS_ROOT)/RCT-Folly\"",
29
29
  "\"$(PODS_ROOT)/DoubleConversion\"",
30
+ "\"$(PODS_ROOT)/fast_float/include\"",
30
31
  "\"$(PODS_ROOT)/fmt/include\"",
31
32
  "\"$(PODS_ROOT)/Headers/Private/React-Core\"",
32
33
  ]
@@ -62,7 +63,8 @@ Pod::Spec.new do |s|
62
63
 
63
64
  s.dependency "RCT-Folly"
64
65
  s.dependency "DoubleConversion"
65
- s.dependency "fmt", "9.1.0"
66
+ s.dependency "fast_float"
67
+ s.dependency "fmt"
66
68
  s.dependency "React-Core"
67
69
  s.dependency "React-cxxreact"
68
70
  s.dependency "React-jsi"
@@ -24,6 +24,7 @@ header_search_paths = [
24
24
  "\"$(PODS_ROOT)/RCT-Folly\"",
25
25
  "\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/RCT-Folly\"",
26
26
  "\"$(PODS_ROOT)/DoubleConversion\"",
27
+ "\"$(PODS_ROOT)/fast_float/include\"",
27
28
  "\"$(PODS_ROOT)/fmt/include\""
28
29
  ]
29
30
 
@@ -55,8 +56,9 @@ Pod::Spec.new do |s|
55
56
  s.header_mappings_dir = "../../.."
56
57
  end
57
58
 
58
- s.dependency "RCT-Folly", folly_version
59
+ s.dependency "RCT-Folly"
59
60
  s.dependency "DoubleConversion"
60
- s.dependency "fmt", "9.1.0"
61
+ s.dependency "fast_float"
62
+ s.dependency "fmt"
61
63
  add_dependency(s, "React-debug")
62
64
  end
@@ -29,6 +29,7 @@ Pod::Spec.new do |s|
29
29
  "\"$(PODS_TARGET_SRCROOT)/../../../\"",
30
30
  "\"$(PODS_ROOT)/RCT-Folly\"",
31
31
  "\"$(PODS_ROOT)/DoubleConversion\"",
32
+ "\"$(PODS_ROOT)/fast_float/include\"",
32
33
  "\"$(PODS_ROOT)/fmt/include\""
33
34
  ]
34
35
 
@@ -61,10 +62,11 @@ Pod::Spec.new do |s|
61
62
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard() }
62
63
 
63
64
  s.dependency "glog"
64
- s.dependency "RCT-Folly/Fabric", folly_version
65
+ s.dependency "RCT-Folly/Fabric"
65
66
  s.dependency "React-jsi"
66
67
  s.dependency "React-jsiexecutor"
67
68
  s.dependency "React-utils"
68
69
  s.dependency "DoubleConversion"
69
- s.dependency "fmt", "9.1.0"
70
+ s.dependency "fast_float"
71
+ s.dependency "fmt"
70
72
  end
@@ -27,6 +27,7 @@ Pod::Spec.new do |s|
27
27
  "\"$(PODS_TARGET_SRCROOT)\"",
28
28
  "\"$(PODS_ROOT)/RCT-Folly\"",
29
29
  "\"$(PODS_ROOT)/DoubleConversion\"",
30
+ "\"$(PODS_ROOT)/fast_float/include\"",
30
31
  "\"$(PODS_ROOT)/fmt/include\"",
31
32
  ].join(" ")
32
33
 
@@ -24,6 +24,7 @@ header_search_paths = [
24
24
  "\"$(PODS_TARGET_SRCROOT)/..\"",
25
25
  "\"$(PODS_ROOT)/RCT-Folly\"",
26
26
  "\"$(PODS_ROOT)/DoubleConversion\"",
27
+ "\"$(PODS_ROOT)/fast_float/include\"",
27
28
  "\"$(PODS_ROOT)/fmt/include\""
28
29
  ]
29
30
 
@@ -35,8 +35,9 @@ yoga-proguard-annotations = "1.19.0"
35
35
  # Native Dependencies
36
36
  boost="1_83_0"
37
37
  doubleconversion="1.1.6"
38
- fmt="9.1.0"
39
- folly="2024.01.01.00"
38
+ fastFloat="6.1.4"
39
+ fmt="11.0.2"
40
+ folly="2024.10.14.00"
40
41
  glog="0.3.5"
41
42
  gtest="1.12.1"
42
43
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native",
3
- "version": "0.76.8",
3
+ "version": "0.76.9",
4
4
  "description": "A framework for building native apps using React",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -109,13 +109,13 @@
109
109
  },
110
110
  "dependencies": {
111
111
  "@jest/create-cache-key-function": "^29.6.3",
112
- "@react-native/assets-registry": "0.76.8",
113
- "@react-native/codegen": "0.76.8",
114
- "@react-native/community-cli-plugin": "0.76.8",
115
- "@react-native/gradle-plugin": "0.76.8",
116
- "@react-native/js-polyfills": "0.76.8",
117
- "@react-native/normalize-colors": "0.76.8",
118
- "@react-native/virtualized-lists": "0.76.8",
112
+ "@react-native/assets-registry": "0.76.9",
113
+ "@react-native/codegen": "0.76.9",
114
+ "@react-native/community-cli-plugin": "0.76.9",
115
+ "@react-native/gradle-plugin": "0.76.9",
116
+ "@react-native/js-polyfills": "0.76.9",
117
+ "@react-native/normalize-colors": "0.76.9",
118
+ "@react-native/virtualized-lists": "0.76.9",
119
119
  "abort-controller": "^3.0.0",
120
120
  "anser": "^1.4.9",
121
121
  "ansi-regex": "^5.0.0",
@@ -80,13 +80,12 @@ class CodegenUtils
80
80
  "\"$(PODS_ROOT)/boost\"",
81
81
  "\"$(PODS_ROOT)/RCT-Folly\"",
82
82
  "\"$(PODS_ROOT)/DoubleConversion\"",
83
+ "\"$(PODS_ROOT)/fast_float/include\"",
83
84
  "\"$(PODS_ROOT)/fmt/include\"",
84
85
  "\"${PODS_ROOT}/Headers/Public/ReactCodegen/react/renderer/components\"",
85
86
  "\"$(PODS_ROOT)/Headers/Private/React-Fabric\"",
86
87
  "\"$(PODS_ROOT)/Headers/Private/React-RCTFabric\"",
87
88
  "\"$(PODS_ROOT)/Headers/Private/Yoga\"",
88
- "\"$(PODS_ROOT)/DoubleConversion\"",
89
- "\"$(PODS_ROOT)/fmt/include\"",
90
89
  "\"$(PODS_TARGET_SRCROOT)\"",
91
90
  ]
92
91
  framework_search_paths = []
@@ -46,11 +46,15 @@ module Helpers
46
46
  }
47
47
 
48
48
  @@folly_config = {
49
- :version => '2024.01.01.00',
49
+ :version => '2024.10.14.00',
50
50
  :git => 'https://github.com/facebook/folly.git',
51
51
  :compiler_flags => '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -DFOLLY_CFG_NO_COROUTINES=1 -DFOLLY_HAVE_CLOCK_GETTIME=1 -Wno-comma -Wno-shorten-64-to-32'
52
52
  }
53
53
 
54
+ @@fast_float_config = {
55
+ :git => "https://github.com/fastfloat/fast_float.git",
56
+ }
57
+
54
58
  @@fmt_config = {
55
59
  :git => "https://github.com/fmtlib/fmt.git",
56
60
  }
@@ -79,6 +83,14 @@ module Helpers
79
83
  @@folly_config.update(new_folly_config)
80
84
  end
81
85
 
86
+ def self.fast_float_config
87
+ return @@fast_float_config
88
+ end
89
+
90
+ def self.set_fast_float_config(new_fast_float_config)
91
+ @@fast_float_config.update(new_fast_float_config)
92
+ end
93
+
82
94
  def self.boost_config
83
95
  return @@boost_config
84
96
  end
@@ -83,6 +83,7 @@ class NewArchitectureHelper
83
83
  header_search_paths = ["\"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/Headers/Private/Yoga\""]
84
84
  if ENV['USE_FRAMEWORKS']
85
85
  header_search_paths << "\"$(PODS_ROOT)/DoubleConversion\""
86
+ header_search_paths << "\"$(PODS_ROOT)/fast_float/include\""
86
87
  header_search_paths << "\"$(PODS_ROOT)/fmt/include\""
87
88
  ReactNativePodsUtils.create_header_search_path_for_frameworks("PODS_CONFIGURATION_BUILD_DIR", "React-graphics", "React_graphics", ["react/renderer/graphics/platform/ios"])
88
89
  .concat(ReactNativePodsUtils.create_header_search_path_for_frameworks("PODS_CONFIGURATION_BUILD_DIR", "React-Fabric", "React_Fabric", ["react/renderer/components/view/platform/cxx"]))
@@ -564,6 +564,7 @@ class ReactNativePodsUtils
564
564
  ReactNativePodsUtils.update_header_paths_if_depends_on(target_installation_result, "RCT-Folly", [
565
565
  "\"$(PODS_ROOT)/RCT-Folly\"",
566
566
  "\"$(PODS_ROOT)/DoubleConversion\"",
567
+ "\"$(PODS_ROOT)/fast_float/include\"",
567
568
  "\"$(PODS_ROOT)/fmt/include\"",
568
569
  "\"$(PODS_ROOT)/boost\""
569
570
  ])
@@ -639,6 +640,7 @@ class ReactNativePodsUtils
639
640
  "ReactCommon",
640
641
  "Yoga",
641
642
  "boost",
643
+ "fast_float",
642
644
  "fmt",
643
645
  "glog",
644
646
  "hermes-engine",
@@ -156,6 +156,7 @@ def use_react_native! (
156
156
  pod 'DoubleConversion', :podspec => "#{prefix}/third-party-podspecs/DoubleConversion.podspec"
157
157
  pod 'glog', :podspec => "#{prefix}/third-party-podspecs/glog.podspec"
158
158
  pod 'boost', :podspec => "#{prefix}/third-party-podspecs/boost.podspec"
159
+ pod 'fast_float', :podspec => "#{prefix}/third-party-podspecs/fast_float.podspec"
159
160
  pod 'fmt', :podspec => "#{prefix}/third-party-podspecs/fmt.podspec"
160
161
  pod 'RCT-Folly', :podspec => "#{prefix}/third-party-podspecs/RCT-Folly.podspec", :modular_headers => true
161
162
 
@@ -280,6 +281,13 @@ def get_glog_config()
280
281
  return Helpers::Constants.glog_config
281
282
  end
282
283
 
284
+ # This method returns an hash with the fast_float git url
285
+ # that can be used to configure libraries.
286
+ # @return an hash with the `:git` field.
287
+ def get_fast_float_config()
288
+ return Helpers::Constants.fast_float_config
289
+ end
290
+
283
291
  # This method returns an hash with the fmt git url
284
292
  # that can be used to configure libraries.
285
293
  # @return an hash with the `:git` field.
@@ -319,6 +327,12 @@ def set_glog_config(glog_config)
319
327
  Helpers::Constants.set_glog_config(glog_config)
320
328
  end
321
329
 
330
+ # This method can be used to set the fast_float config
331
+ # that can be used to configure libraries.
332
+ def set_fast_float_config(fmt_config)
333
+ Helpers::Constants.set_fast_float_config(fast_float_config)
334
+ end
335
+
322
336
  # This method can be used to set the fmt config
323
337
  # that can be used to configure libraries.
324
338
  def set_fmt_config(fmt_config)
Binary file
Binary file
Binary file
@@ -23,7 +23,8 @@ Pod::Spec.new do |spec|
23
23
  spec.dependency 'boost'
24
24
  spec.dependency 'DoubleConversion'
25
25
  spec.dependency 'glog'
26
- spec.dependency "fmt", "9.1.0"
26
+ spec.dependency "fast_float"
27
+ spec.dependency "fmt"
27
28
  spec.compiler_flags = folly_compiler_flags + ' -DFOLLY_HAVE_PTHREAD=1 -Wno-documentation -faligned-new'
28
29
  spec.source_files = 'folly/String.cpp',
29
30
  'folly/Conv.cpp',
@@ -34,18 +35,19 @@ Pod::Spec.new do |spec|
34
35
  'folly/lang/ToAscii.cpp',
35
36
  'folly/ScopeGuard.cpp',
36
37
  'folly/Unicode.cpp',
37
- 'folly/dynamic.cpp',
38
- 'folly/json.cpp',
39
- 'folly/json_pointer.cpp',
38
+ 'folly/json/dynamic.cpp',
39
+ 'folly/json/json.cpp',
40
+ 'folly/json/json_pointer.cpp',
40
41
  'folly/container/detail/F14Table.cpp',
41
42
  'folly/detail/Demangle.cpp',
42
43
  'folly/detail/FileUtilDetail.cpp',
43
44
  'folly/detail/SplitStringSimd.cpp',
45
+ 'folly/detail/StaticSingletonManager.cpp',
44
46
  'folly/detail/UniqueInstance.cpp',
45
47
  'folly/hash/SpookyHashV2.cpp',
46
- 'folly/lang/Assume.cpp',
47
48
  'folly/lang/CString.cpp',
48
49
  'folly/lang/Exception.cpp',
50
+ 'folly/memory/ReentrantAllocator.cpp',
49
51
  'folly/memory/detail/MallocImpl.cpp',
50
52
  'folly/net/NetOps.cpp',
51
53
  'folly/portability/SysUio.cpp',
@@ -53,11 +55,15 @@ Pod::Spec.new do |spec|
53
55
  'folly/system/AtFork.cpp',
54
56
  'folly/system/ThreadId.cpp',
55
57
  'folly/*.h',
58
+ 'folly/algorithm/simd/*.h',
59
+ 'folly/algorithm/simd/detail/*.h',
60
+ 'folly/chrono/*.h',
56
61
  'folly/container/*.h',
57
62
  'folly/container/detail/*.h',
58
63
  'folly/detail/*.h',
59
64
  'folly/functional/*.h',
60
65
  'folly/hash/*.h',
66
+ 'folly/json/*.h',
61
67
  'folly/lang/*.h',
62
68
  'folly/memory/*.h',
63
69
  'folly/memory/detail/*.h',
@@ -68,11 +74,15 @@ Pod::Spec.new do |spec|
68
74
 
69
75
  # workaround for https://github.com/facebook/react-native/issues/14326
70
76
  spec.preserve_paths = 'folly/*.h',
77
+ 'folly/algorithm/simd/*.h',
78
+ 'folly/algorithm/simd/detail/*.h',
79
+ 'folly/chrono/*.h',
71
80
  'folly/container/*.h',
72
81
  'folly/container/detail/*.h',
73
82
  'folly/detail/*.h',
74
83
  'folly/functional/*.h',
75
84
  'folly/hash/*.h',
85
+ 'folly/json/*.h',
76
86
  'folly/lang/*.h',
77
87
  'folly/memory/*.h',
78
88
  'folly/memory/detail/*.h',
@@ -84,7 +94,7 @@ Pod::Spec.new do |spec|
84
94
  spec.pod_target_xcconfig = { "USE_HEADERMAP" => "NO",
85
95
  "DEFINES_MODULE" => "YES",
86
96
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
87
- "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fmt/include\"",
97
+ "HEADER_SEARCH_PATHS" => "\"$(PODS_TARGET_SRCROOT)\" \"$(PODS_ROOT)/boost\" \"$(PODS_ROOT)/DoubleConversion\" \"$(PODS_ROOT)/fast_float/include\" \"$(PODS_ROOT)/fmt/include\"",
88
98
  # In dynamic framework (use_frameworks!) mode, ignore the unused and undefined boost symbols when generating the library.
89
99
  "OTHER_LDFLAGS" => "\"-Wl,-U,_jump_fcontext\" \"-Wl,-U,_make_fcontext\""
90
100
  }
@@ -105,7 +115,6 @@ Pod::Spec.new do |spec|
105
115
  'folly/concurrency/CacheLocality.cpp',
106
116
  'folly/detail/Futex.cpp',
107
117
  'folly/synchronization/ParkingLot.cpp',
108
- 'folly/portability/Malloc.cpp',
109
118
  'folly/concurrency/CacheLocality.h',
110
119
  'folly/synchronization/*.h',
111
120
  'folly/system/ThreadId.h'
@@ -0,0 +1,29 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ #
3
+ # This source code is licensed under the MIT license found in the
4
+ # LICENSE file in the root directory of this source tree.
5
+
6
+ fast_float_config = get_fast_float_config()
7
+ fast_float_git_url = fast_float_config[:git]
8
+
9
+ Pod::Spec.new do |spec|
10
+ spec.name = "fast_float"
11
+ spec.version = "6.1.4"
12
+ spec.license = { :type => "MIT" }
13
+ spec.homepage = "https://github.com/fastfloat/fast_float"
14
+ spec.summary = "{fast_float} is an open-source number parsing library for C++. The library provides fast header-only implementations."
15
+ spec.authors = "The fast_float contributors"
16
+ spec.source = {
17
+ :git => fast_float_git_url,
18
+ :tag => "v6.1.4"
19
+ }
20
+ spec.pod_target_xcconfig = {
21
+ "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
22
+ "GCC_WARN_INHIBIT_ALL_WARNINGS" => "YES" # Disable warnings because we don't control this library
23
+ }
24
+ spec.platforms = min_supported_versions
25
+ spec.libraries = "c++"
26
+ spec.public_header_files = "include/fast_float/*.h"
27
+ spec.header_mappings_dir = "include"
28
+ spec.source_files = ["include/fast_float/*.h"]
29
+ end
@@ -8,14 +8,14 @@ fmt_git_url = fmt_config[:git]
8
8
 
9
9
  Pod::Spec.new do |spec|
10
10
  spec.name = "fmt"
11
- spec.version = "9.1.0"
11
+ spec.version = "11.0.2"
12
12
  spec.license = { :type => "MIT" }
13
13
  spec.homepage = "https://github.com/fmtlib/fmt"
14
14
  spec.summary = "{fmt} is an open-source formatting library for C++. It can be used as a safe and fast alternative to (s)printf and iostreams."
15
15
  spec.authors = "The fmt contributors"
16
16
  spec.source = {
17
17
  :git => fmt_git_url,
18
- :tag => "9.1.0"
18
+ :tag => "11.0.2"
19
19
  }
20
20
  spec.pod_target_xcconfig = {
21
21
  "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),