react-native 0.73.5 → 0.73.6

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.
@@ -12,6 +12,6 @@
12
12
  exports.version = {
13
13
  major: 0,
14
14
  minor: 73,
15
- patch: 5,
15
+ patch: 6,
16
16
  prerelease: null,
17
17
  };
@@ -192,7 +192,7 @@ export function parseComponentStack(message: string): ComponentStack {
192
192
  if (!s) {
193
193
  return null;
194
194
  }
195
- const match = s.match(/(.*) \(at (.*\.js):([\d]+)\)/);
195
+ const match = s.match(/(.*) \(at (.*\.(?:js|jsx|ts|tsx)):([\d]+)\)/);
196
196
  if (!match) {
197
197
  return null;
198
198
  }
@@ -23,7 +23,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
23
23
  __rnVersion = @{
24
24
  RCTVersionMajor: @(0),
25
25
  RCTVersionMinor: @(73),
26
- RCTVersionPatch: @(5),
26
+ RCTVersionPatch: @(6),
27
27
  RCTVersionPrerelease: [NSNull null],
28
28
  };
29
29
  });
@@ -28,7 +28,7 @@ using namespace facebook::react;
28
28
 
29
29
  @implementation RCTViewComponentView {
30
30
  UIColor *_backgroundColor;
31
- CALayer *_borderLayer;
31
+ __weak CALayer *_borderLayer;
32
32
  BOOL _needsInvalidateLayer;
33
33
  BOOL _isJSResponder;
34
34
  BOOL _removeClippedSubviews;
@@ -397,9 +397,7 @@ using namespace facebook::react;
397
397
  _layoutMetrics = layoutMetrics;
398
398
  _needsInvalidateLayer = YES;
399
399
 
400
- if (_borderLayer) {
401
- _borderLayer.frame = self.layer.bounds;
402
- }
400
+ _borderLayer.frame = self.layer.bounds;
403
401
 
404
402
  if (_contentView) {
405
403
  _contentView.frame = RCTCGRectFromRect(_layoutMetrics.getContentFrame());
@@ -601,10 +599,7 @@ static RCTBorderStyle RCTBorderStyleFromBorderStyle(BorderStyle borderStyle)
601
599
 
602
600
  if (useCoreAnimationBorderRendering) {
603
601
  layer.mask = nil;
604
- if (_borderLayer) {
605
- [_borderLayer removeFromSuperlayer];
606
- _borderLayer = nil;
607
- }
602
+ [_borderLayer removeFromSuperlayer];
608
603
 
609
604
  layer.borderWidth = (CGFloat)borderMetrics.borderWidths.left;
610
605
  CGColorRef borderColor = RCTCreateCGColorRefFromSharedColor(borderMetrics.borderColors.left);
@@ -617,11 +612,12 @@ static RCTBorderStyle RCTBorderStyleFromBorderStyle(BorderStyle borderStyle)
617
612
  layer.backgroundColor = _backgroundColor.CGColor;
618
613
  } else {
619
614
  if (!_borderLayer) {
620
- _borderLayer = [CALayer new];
621
- _borderLayer.zPosition = -1024.0f;
622
- _borderLayer.frame = layer.bounds;
623
- _borderLayer.magnificationFilter = kCAFilterNearest;
624
- [layer addSublayer:_borderLayer];
615
+ CALayer *borderLayer = [CALayer new];
616
+ borderLayer.zPosition = -1024.0f;
617
+ borderLayer.frame = layer.bounds;
618
+ borderLayer.magnificationFilter = kCAFilterNearest;
619
+ [layer addSublayer:borderLayer];
620
+ _borderLayer = borderLayer;
625
621
  }
626
622
 
627
623
  layer.backgroundColor = nil;
@@ -662,6 +658,10 @@ static RCTBorderStyle RCTBorderStyleFromBorderStyle(BorderStyle borderStyle)
662
658
  }
663
659
  }
664
660
 
661
+ // If mutations are applied inside of Animation block, it may cause _borderLayer to be animated.
662
+ // To stop that, imperatively remove all animations from _borderLayer.
663
+ [_borderLayer removeAllAnimations];
664
+
665
665
  // Stage 2.5. Custom Clipping Mask
666
666
  CAShapeLayer *maskLayer = nil;
667
667
  CGFloat cornerRadius = 0;
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.73.5
1
+ VERSION_NAME=0.73.6
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", 73,
20
- "patch", 5,
20
+ "patch", 6,
21
21
  "prerelease", null);
22
22
  }
@@ -17,7 +17,7 @@ namespace facebook::react {
17
17
  constexpr struct {
18
18
  int32_t Major = 0;
19
19
  int32_t Minor = 73;
20
- int32_t Patch = 5;
20
+ int32_t Patch = 6;
21
21
  std::string_view Prerelease = "";
22
22
  } ReactNativeVersion;
23
23
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native",
3
- "version": "0.73.5",
3
+ "version": "0.73.6",
4
4
  "description": "A framework for building native apps using React",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -86,6 +86,27 @@ class ReactNativePodsUtils
86
86
  end
87
87
  end
88
88
 
89
+ def self.fix_flipper_for_xcode_15_3(installer)
90
+ installer.pods_project.targets.each do |target|
91
+ if target.name == 'Flipper'
92
+ file_path = 'Pods/Flipper/xplat/Flipper/FlipperTransportTypes.h'
93
+ if !File.exist?(file_path)
94
+ return
95
+ end
96
+
97
+ contents = File.read(file_path)
98
+ if contents.include?('#include <functional>')
99
+ return
100
+ end
101
+ mod_content = contents.gsub("#pragma once", "#pragma once\n#include <functional>")
102
+ File.chmod(0755, file_path)
103
+ File.open(file_path, 'w') do |file|
104
+ file.puts(mod_content)
105
+ end
106
+ end
107
+ end
108
+ end
109
+
89
110
  def self.set_use_hermes_build_setting(installer, hermes_enabled)
90
111
  Pod::UI.puts("Setting USE_HERMES build settings")
91
112
  projects = self.extract_projects(installer)
@@ -308,6 +308,7 @@ def react_native_post_install(
308
308
  ReactNativePodsUtils.apply_flags_for_fabric(installer, fabric_enabled: fabric_enabled)
309
309
  ReactNativePodsUtils.apply_xcode_15_patch(installer)
310
310
  ReactNativePodsUtils.updateOSDeploymentTarget(installer)
311
+ ReactNativePodsUtils.fix_flipper_for_xcode_15_3(installer)
311
312
 
312
313
  NewArchitectureHelper.set_clang_cxx_language_standard_if_needed(installer)
313
314
  NewArchitectureHelper.modify_flags_for_new_architecture(installer, NewArchitectureHelper.new_arch_enabled)
@@ -7,6 +7,7 @@ require 'net/http'
7
7
  require 'rexml/document'
8
8
 
9
9
  HERMES_GITHUB_URL = "https://github.com/facebook/hermes.git"
10
+ ENV_BUILD_FROM_SOURCE = "RCT_BUILD_HERMES_FROM_SOURCE"
10
11
 
11
12
  module HermesEngineSourceType
12
13
  LOCAL_PREBUILT_TARBALL = :local_prebuilt_tarball
@@ -30,7 +31,7 @@ end
30
31
  # - To use a specific tarball, install the dependencies with:
31
32
  # `HERMES_ENGINE_TARBALL_PATH=<path_to_tarball> bundle exec pod install`
32
33
  # - To force a build from source, install the dependencies with:
33
- # `BUILD_FROM_SOURCE=true bundle exec pod install`
34
+ # `RCT_BUILD_HERMES_FROM_SOURCE=true bundle exec pod install`
34
35
  # If none of the two are provided, Cocoapods will check whether there is a tarball for the current version
35
36
  # (either release or nightly). If not, it will fall back to building from source (the latest commit on main).
36
37
  #
@@ -85,11 +86,11 @@ def hermes_commit_envvar_defined()
85
86
  end
86
87
 
87
88
  def force_build_from_tag(react_native_path)
88
- return ENV['BUILD_FROM_SOURCE'] === 'true' && File.exist?(hermestag_file(react_native_path))
89
+ return ENV[ENV_BUILD_FROM_SOURCE] === 'true' && File.exist?(hermestag_file(react_native_path))
89
90
  end
90
91
 
91
92
  def force_build_from_main(react_native_path)
92
- return ENV['BUILD_FROM_SOURCE'] === 'true' && !File.exist?(hermestag_file(react_native_path))
93
+ return ENV[ENV_BUILD_FROM_SOURCE] === 'true' && !File.exist?(hermestag_file(react_native_path))
93
94
  end
94
95
 
95
96
  def release_artifact_exists(version)
Binary file
Binary file
Binary file
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "react": "18.2.0",
14
- "react-native": "0.73.5"
14
+ "react-native": "0.73.6"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/core": "^7.20.0",