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.
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/LogBox/Data/LogBoxData.js +3 -2
- package/Libraries/promiseRejectionTrackingOptions.js +26 -7
- package/React/Base/RCTVersion.m +1 -1
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/package.json +1 -1
- package/scripts/cocoapods/utils.rb +4 -3
- package/sdks/hermes-engine/utils/build-apple-framework.sh +2 -7
- package/sdks/hermesc/osx-bin/hermesc +0 -0
- package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
- package/template/Gemfile +3 -1
- package/template/package.json +1 -1
|
@@ -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
|
-
//
|
|
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
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
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
|
|
66
|
+
`Promise rejection handled (id: ${id})\n` +
|
|
48
67
|
'This means you can ignore any previous messages of the form ' +
|
|
49
|
-
`"Possible
|
|
68
|
+
`"Possible unhandled promise rejection (id: ${id}):"`;
|
|
50
69
|
console.warn(warning);
|
|
51
70
|
},
|
|
52
71
|
};
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -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
|
|
package/package.json
CHANGED
|
@@ -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.
|
|
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.
|
|
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
|
-
|
|
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
|
|
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=
|
|
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
|
-
|
|
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'
|