react-native 0.71.15 → 0.71.16

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: 71,
15
- patch: 15,
15
+ patch: 16,
16
16
  prerelease: null,
17
17
  };
@@ -30,6 +30,7 @@ export type LogData = $ReadOnly<{|
30
30
  message: Message,
31
31
  category: Category,
32
32
  componentStack: ComponentStack,
33
+ stack?: string,
33
34
  |}>;
34
35
 
35
36
  export type Observer = (
@@ -154,7 +155,7 @@ function appendNewLog(newLog: LogBoxLog) {
154
155
  if (newLog.level === 'fatal') {
155
156
  // If possible, to avoid jank, we don't want to open the error before
156
157
  // it's symbolicated. To do that, we optimistically wait for
157
- // sybolication for up to a second before adding the log.
158
+ // symbolication for up to a second before adding the log.
158
159
  const OPTIMISTIC_WAIT_TIME = 1000;
159
160
 
160
161
  let addPendingLog: ?() => void = () => {
@@ -198,7 +199,7 @@ export function addLog(log: LogData): void {
198
199
  // otherwise spammy logs would pause rendering.
199
200
  setImmediate(() => {
200
201
  try {
201
- const stack = parseErrorStack(errorForStackTrace?.stack);
202
+ const stack = parseErrorStack(log.stack ?? errorForStackTrace?.stack);
202
203
 
203
204
  appendNewLog(
204
205
  new LogBoxLog({
@@ -10,6 +10,8 @@
10
10
 
11
11
  import typeof {enable} from 'promise/setimmediate/rejection-tracking';
12
12
 
13
+ import LogBox from './LogBox/LogBox';
14
+
13
15
  type ExtractOptionsType = <P>(((options?: ?P) => void)) => P;
14
16
 
15
17
  let rejectionTrackingOptions: $Call<ExtractOptionsType, enable> = {
@@ -34,19 +36,36 @@ let rejectionTrackingOptions: $Call<ExtractOptionsType, enable> = {
34
36
  ? rejection
35
37
  : JSON.stringify((rejection: $FlowFixMe));
36
38
  }
39
+ // It could although this object is not a standard error, it still has stack information to unwind
40
+ // $FlowFixMe ignore types just check if stack is there
41
+ if (rejection.stack && typeof rejection.stack === 'string') {
42
+ stack = rejection.stack;
43
+ }
37
44
  }
38
45
 
39
- const warning =
40
- `Possible Unhandled Promise Rejection (id: ${id}):\n` +
41
- `${message ?? ''}\n` +
42
- (stack == null ? '' : stack);
43
- console.warn(warning);
46
+ const warning = `Possible unhandled promise rejection (id: ${id}):\n${
47
+ message ?? ''
48
+ }`;
49
+ if (__DEV__) {
50
+ LogBox.addLog({
51
+ level: 'warn',
52
+ message: {
53
+ content: warning,
54
+ substitutions: [],
55
+ },
56
+ componentStack: [],
57
+ stack,
58
+ category: 'possible_unhandled_promise_rejection',
59
+ });
60
+ } else {
61
+ console.warn(warning);
62
+ }
44
63
  },
45
64
  onHandled: id => {
46
65
  const warning =
47
- `Promise Rejection Handled (id: ${id})\n` +
66
+ `Promise rejection handled (id: ${id})\n` +
48
67
  'This means you can ignore any previous messages of the form ' +
49
- `"Possible Unhandled Promise Rejection (id: ${id}):"`;
68
+ `"Possible unhandled promise rejection (id: ${id}):"`;
50
69
  console.warn(warning);
51
70
  },
52
71
  };
@@ -23,7 +23,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
23
23
  __rnVersion = @{
24
24
  RCTVersionMajor: @(0),
25
25
  RCTVersionMinor: @(71),
26
- RCTVersionPatch: @(15),
26
+ RCTVersionPatch: @(16),
27
27
  RCTVersionPrerelease: [NSNull null],
28
28
  };
29
29
  });
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.71.15
1
+ VERSION_NAME=0.71.16
2
2
  GROUP=com.facebook.react
3
3
 
4
4
  # JVM Versions
@@ -113,6 +113,7 @@ public abstract class ReactActivity extends AppCompatActivity
113
113
  @Override
114
114
  public void onRequestPermissionsResult(
115
115
  int requestCode, String[] permissions, int[] grantResults) {
116
+ super.onRequestPermissionsResult(requestCode, permissions, grantResults);
116
117
  mDelegate.onRequestPermissionsResult(requestCode, permissions, grantResults);
117
118
  }
118
119
 
@@ -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", 71,
20
- "patch", 15,
20
+ "patch", 16,
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 = 71;
20
- int32_t Patch = 15;
20
+ int32_t Patch = 16;
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.71.15",
3
+ "version": "0.71.16",
4
4
  "bin": "./cli.js",
5
5
  "description": "A framework for building native apps using React",
6
6
  "license": "MIT",
@@ -160,7 +160,7 @@ class ReactNativePodsUtils
160
160
 
161
161
  # fix for weak linking
162
162
  self.safe_init(config, other_ld_flags_key)
163
- if self.is_using_xcode15_or_greter(:xcodebuild_manager => xcodebuild_manager)
163
+ if self.is_using_xcode15_0(:xcodebuild_manager => xcodebuild_manager)
164
164
  self.add_value_to_setting_if_missing(config, other_ld_flags_key, xcode15_compatibility_flags)
165
165
  else
166
166
  self.remove_value_from_setting_if_present(config, other_ld_flags_key, xcode15_compatibility_flags)
@@ -299,7 +299,7 @@ class ReactNativePodsUtils
299
299
  end
300
300
  end
301
301
 
302
- def self.is_using_xcode15_or_greter(xcodebuild_manager: Xcodebuild)
302
+ def self.is_using_xcode15_0(xcodebuild_manager: Xcodebuild)
303
303
  xcodebuild_version = xcodebuild_manager.version
304
304
 
305
305
  # The output of xcodebuild -version is something like
@@ -310,7 +310,8 @@ class ReactNativePodsUtils
310
310
  regex = /(\d+)\.(\d+)(?:\.(\d+))?/
311
311
  if match_data = xcodebuild_version.match(regex)
312
312
  major = match_data[1].to_i
313
- return major >= 15
313
+ minor = match_data[2].to_i
314
+ return major == 15 && minor == 0
314
315
  end
315
316
 
316
317
  return false
@@ -52,13 +52,8 @@ function build_host_hermesc {
52
52
 
53
53
  # Utility function to configure an Apple framework
54
54
  function configure_apple_framework {
55
- local build_cli_tools enable_bitcode enable_debugger cmake_build_type xcode_15_flags xcode_major_version
55
+ local build_cli_tools enable_debugger cmake_build_type xcode_15_flags xcode_major_version
56
56
 
57
- if [[ $1 == iphoneos || $1 == catalyst ]]; then
58
- enable_bitcode="true"
59
- else
60
- enable_bitcode="false"
61
- fi
62
57
  if [[ $1 == macosx ]]; then
63
58
  build_cli_tools="true"
64
59
  else
@@ -94,7 +89,7 @@ function configure_apple_framework {
94
89
  -DHERMES_ENABLE_LIBFUZZER:BOOLEAN=false \
95
90
  -DHERMES_ENABLE_FUZZILLI:BOOLEAN=false \
96
91
  -DHERMES_ENABLE_TEST_SUITE:BOOLEAN=false \
97
- -DHERMES_ENABLE_BITCODE:BOOLEAN="$enable_bitcode" \
92
+ -DHERMES_ENABLE_BITCODE:BOOLEAN=false \
98
93
  -DHERMES_BUILD_APPLE_FRAMEWORK:BOOLEAN=true \
99
94
  -DHERMES_BUILD_APPLE_DSYM:BOOLEAN=true \
100
95
  -DHERMES_ENABLE_TOOLS:BOOLEAN="$build_cli_tools" \
Binary file
Binary file
package/template/Gemfile CHANGED
@@ -3,5 +3,7 @@ source 'https://rubygems.org'
3
3
  # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
4
4
  ruby '>= 2.6.10'
5
5
 
6
- gem 'cocoapods', '>= 1.11.3'
6
+ # Cocoapods 1.15 introduced a bug which break the build. We will remove the upper
7
+ # bound in the template on Cocoapods with next React Native release.
8
+ gem 'cocoapods', '>= 1.13', '< 1.15'
7
9
  gem 'activesupport', '>= 6.1.7.3', '< 7.1.0'
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "react": "18.2.0",
14
- "react-native": "0.71.15"
14
+ "react-native": "0.71.16"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/core": "^7.20.0",