Skip to content

Commit bcce273

Browse files
Integrate 0.81.0-nightly-20250604-1a6d466f1 (#15163)
* changes before resolving merge conflicts * Update tester files * Change files * Update Viewproptypes.d.ts files * Fixed build errors * Add primitives.h to define HighResTimeStamp in ReactPerfettoLogger.cpp * lint fix * fix for community cli * fix build errors * fix build errors * Move timing.h include to ReactCommon * Update communitycli template version * Update communitycli template version * Change files * Updated versions that were pointing to precious integration * Updated tester folder with new file that was added * Add mockComponent to global scope in tests for RN 0.81.0 where it's no longer available globally * Add mockComponent to global scope in tests for RN 0.81.0 where it's no longer available globally * change type to copy * Lint fix * change import for newscreenapp * update missing ternary operator * Fix setup.js file changes * Fix yarn validate overrides error * fix linting errors, update snapshots,update flow version * update yarn.lock * Update downloadFlowTypes with newly missing flow types * Change files * Fix flowconfig for react-native-win32 * fix uncleartype and untyped import errors * fix uncleartype and untyped import errors * update code * update code * lint fix --------- Co-authored-by: Harini Malothu Co-authored-by: Jon Thysell <[email protected]>
1 parent 3ef0d51 commit bcce273

File tree

323 files changed

+2951
-1701
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

323 files changed

+2951
-1701
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "prerelease",
3+
"comment": "Update tester files",
4+
"packageName": "@office-iss/react-native-win32",
5+
"email": "[email protected]",
6+
"dependentChangeType": "patch"
7+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "patch",
3+
"comment": "Update tester files",
4+
"packageName": "@react-native-windows/automation-channel",
5+
"email": "[email protected]",
6+
"dependentChangeType": "patch"
7+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "patch",
3+
"comment": "Update communitycli template version",
4+
"packageName": "@rnw-scripts/integrate-rn",
5+
"email": "[email protected]",
6+
"dependentChangeType": "patch"
7+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "patch",
3+
"comment": "Update downloadFlowTypes with newly missing flow types",
4+
"packageName": "@rnw-scripts/just-task",
5+
"email": "[email protected]",
6+
"dependentChangeType": "patch"
7+
}
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "prerelease",
3+
"comment": "Update tester files",
4+
"packageName": "react-native-windows",
5+
"email": "[email protected]",
6+
"dependentChangeType": "patch"
7+
}
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
/**
2+
* Copyright (c) Meta Platforms, Inc. and affiliates.
3+
*
4+
* This source code is licensed under the MIT license found in the
5+
* LICENSE file in the root directory of this source tree.
6+
*
7+
* @flow
8+
* @format
9+
*/
10+
11+
'use strict';
12+
13+
type Handler = {
14+
onIterate?: () => void,
15+
onStall: (params: {lastInterval: number, busyTime: number, ...}) => ?string,
16+
...
17+
};
18+
19+
/**
20+
* A utility for tracking stalls in the JS event loop that prevent timers and
21+
* other events from being processed in a timely manner.
22+
*
23+
* The "stall" time is defined as the amount of time in access of the acceptable
24+
* threshold, which is typically around 100-200ms. So if the threshold is set to
25+
* 100 and a timer fires 150 ms later than it was scheduled because the event
26+
* loop was tied up, that would be considered a 50ms stall.
27+
*
28+
* By default, logs stall events to the console when installed. Can also be
29+
* queried with `getStats`.
30+
*/
31+
const JSEventLoopWatchdog = {
32+
getStats: function (): Object {
33+
return {stallCount, totalStallTime, longestStall, acceptableBusyTime};
34+
},
35+
reset: function () {
36+
console.log('JSEventLoopWatchdog: reset');
37+
totalStallTime = 0;
38+
stallCount = 0;
39+
longestStall = 0;
40+
lastInterval = global.performance.now();
41+
},
42+
addHandler: function (handler: Handler) {
43+
handlers.push(handler);
44+
},
45+
install: function ({thresholdMS}: {thresholdMS: number, ...}) {
46+
acceptableBusyTime = thresholdMS;
47+
if (installed) {
48+
return;
49+
}
50+
installed = true;
51+
lastInterval = global.performance.now();
52+
function iteration() {
53+
const now = global.performance.now();
54+
const busyTime = now - lastInterval;
55+
if (busyTime >= thresholdMS) {
56+
const stallTime = busyTime - thresholdMS;
57+
stallCount++;
58+
totalStallTime += stallTime;
59+
longestStall = Math.max(longestStall, stallTime);
60+
let msg =
61+
`JSEventLoopWatchdog: JS thread busy for ${busyTime}ms. ` +
62+
`${totalStallTime}ms in ${stallCount} stalls so far. `;
63+
handlers.forEach(handler => {
64+
msg += handler.onStall({lastInterval, busyTime}) || '';
65+
});
66+
console.log(msg);
67+
}
68+
handlers.forEach(handler => {
69+
handler.onIterate && handler.onIterate();
70+
});
71+
lastInterval = now;
72+
setTimeout(iteration, thresholdMS / 5);
73+
}
74+
iteration();
75+
},
76+
};
77+
78+
let acceptableBusyTime = 0;
79+
let installed = false;
80+
let totalStallTime = 0;
81+
let stallCount = 0;
82+
let longestStall = 0;
83+
let lastInterval = 0;
84+
const handlers: Array<Handler> = [];
85+
86+
export default JSEventLoopWatchdog;

packages/@office-iss/react-native-win32-tester/overrides.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,19 @@
55
"excludePatterns": [
66
"src/js/examples-win32/**"
77
],
8-
"baseVersion": "0.81.0-nightly-20250521-3cb70bb6a",
8+
"baseVersion": "0.81.0-nightly-20250604-1a6d466f1",
99
"overrides": [
1010
{
1111
"type": "patch",
1212
"file": "src/js/components/ListExampleShared.win32.js",
1313
"baseFile": "packages/rn-tester/js/components/ListExampleShared.js",
14-
"baseHash": "eb604f3c06468e8aaa2671985a772b26f666e5de"
14+
"baseHash": "885ca16a7587f79d6404679ee1b1309d3844afe9"
1515
},
1616
{
1717
"type": "patch",
1818
"file": "src/js/components/RNTesterExampleFilter.win32.js",
1919
"baseFile": "packages/rn-tester/js/components/RNTesterExampleFilter.js",
20-
"baseHash": "2b12495e7371031510b53ebcccdad627363c36ad"
20+
"baseHash": "142194524dd3dfc8d28f2b77fb26cd819ce0236c"
2121
},
2222
{
2323
"type": "platform",
@@ -35,14 +35,14 @@
3535
"type": "copy",
3636
"file": "src/js/RNTesterApp.win32.js",
3737
"baseFile": "packages/rn-tester/js/RNTesterApp.android.js",
38-
"baseHash": "5e73edb50a1156756f2d1bec70d95a92f701ec22",
38+
"baseHash": "987893a4df686425670b7897881b61e485960191",
3939
"issue": 4586
4040
},
4141
{
4242
"type": "derived",
4343
"file": "src/js/utils/RNTesterList.win32.js",
4444
"baseFile": "packages/rn-tester/js/utils/RNTesterList.android.js",
45-
"baseHash": "aded9dd37f3ac325aa1cc095f6d217114c45a8b9"
45+
"baseHash": "faa6a65524adb312817e96d511649edd81e38262"
4646
}
4747
]
4848
}

packages/@office-iss/react-native-win32-tester/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"peerDependencies": {
2020
"@office-iss/react-native-win32": "^0.0.0-canary.297",
2121
"react": "19.1.0",
22-
"react-native": "0.81.0-nightly-20250521-3cb70bb6a"
22+
"react-native": "0.81.0-nightly-20250604-1a6d466f1"
2323
},
2424
"devDependencies": {
2525
"@office-iss/react-native-win32": "^0.0.0-canary.297",
@@ -30,7 +30,7 @@
3030
"@types/node": "^22.14.0",
3131
"eslint": "^8.19.0",
3232
"just-scripts": "^1.3.3",
33-
"react-native": "0.81.0-nightly-20250521-3cb70bb6a",
33+
"react-native": "0.81.0-nightly-20250604-1a6d466f1",
3434
"react-native-platform-override": "^1.9.58",
3535
"typescript": "5.0.4"
3636
},

packages/@office-iss/react-native-win32-tester/src/js/RNTesterApp.win32.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @format
87
* @flow strict-local
8+
* @format
99
*/
1010

1111
import RNTesterApp from './RNTesterAppShared';

packages/@office-iss/react-native-win32-tester/src/js/components/ListExampleShared.win32.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
* This source code is licensed under the MIT license found in the
55
* LICENSE file in the root directory of this source tree.
66
*
7-
* @format
87
* @flow
8+
* @format
99
*/
1010

1111
'use strict';

0 commit comments

Comments
 (0)