Skip to content

Integrate RN 0.85.0-nightly-20260224-42cd0f041#16294

Open
anuagragith wants to merge 8 commits into
mainfrom
integrate/nightly-20260224-v2
Open

Integrate RN 0.85.0-nightly-20260224-42cd0f041#16294
anuagragith wants to merge 8 commits into
mainfrom
integrate/nightly-20260224-v2

Conversation

@anuagragith

@anuagragith anuagragith commented Jun 30, 2026

Copy link
Copy Markdown
Contributor

Updates React Native Windows to nightly 0.85.0-nightly-20260224-42cd0f041 (Feb 24, 2026).

Description

  • Updated all react-native and @react-native/* dependencies to target nightly
  • Upgraded platform overrides via react-native-platform-override
  • Added upstream AnimationBackend examples for RNTester
  • Added src-win/Libraries/LogBox to eslintignore for component keyword syntax
  • Removed obsolete vnext/src-win/jest/setup.js (now provided by upstream)
  • Updated yarn.lock

Type of Change

Bug fix (non-breaking change which fixes an issue)

Why

Update RNW to a newer RN nightly build

Testing

  • yarn install
  • yarn validate-overrides
  • yarn lint:fix applied
  • Playground builds and launches
  • Change files included

Summary of all the chanegs made to fix all the failing linter checks and tests -

# Root cause Files changed Why/What it does
1 Jest relocated upstream — the jest/ folder (setup, mocks, helpers) moved out of react-native into the new @react-native/jest-preset (not auto-installed), breaking flow-check with ~22 "cannot resolve module" errors packages/@rnw-scripts/just-task/copyRNLibraries.js, vnext/package.json, packages/@office-iss/react-native-win32/package.json, vnext/src-win/jest/setup.js (deleted), yarn.lock Copy Jest from @react-native/jest-preset; add it as an explicit dep in vnext + win32; delete the orphaned override file (upstream preset now provides it); regenerate lockfile. 👉 Confirm relying on @react-native/jest-preset is the intended direction.
2 Bogus no-unreachable lint errors — the new Flow component/hook syntax confuses ESLint's code-path analysis into flagging valid code as unreachable packages/@rnw-scripts/eslint-config/eslintrc.js Disable no-unreachable for hermes-parsed files. 👉 Main judgment call: per-file eslint-disable wasn't an option because those are "copy"-type overrides that must byte-match upstream. Safe since Flow does its own unreachable check.
3 Flow needed a bump for the new syntax vnext/package.json, packages/@office-iss/react-native-win32/package.json, .../LogBoxInspectorSourceMapStatus.win32.js flow-bin 0.299 → 0.302; removed one dead if block the newer Flow flagged.
4 New upstream RNTester example (AnimationBackend) had no override entry, failing validate-overrides packages/@react-native/tester/overrides.json Added a directoryCopy override matching sibling example dirs.
5 C++ formatting vnext/Microsoft.ReactNative/Fabric/FabricUIManagerModule.cpp clang-format only, no behavior change.
6 E2E Fabric snapshot mismatches — the nightly makes more views carry a meaningful backgroundColor upstream, so RNW correctly renders its background SpriteVisual (the empty 0-size child visual). RNW's own color/view code is unchanged → expected upstream behavior 14 .snap files under packages/e2e-test-app-fabric/test/**/__snapshots__/ Regenerated via yarn e2etest -u. 👉 Pure test-baseline updates; worth a glance to confirm the added background visuals look right.

Changelog

No

Microsoft Reviewers: Open in CodeFlow
Updates React Native Windows to nightly 0.85.0-nightly-20260224-42cd0f041 (Feb 24, 2026).

Changes:
- Updated all react-native and @react-native/* dependencies to target nightly
- Upgraded platform overrides via react-native-platform-override
- Added upstream AnimationBackend examples for RNTester
- Added src-win/Libraries/LogBox to eslintignore for component keyword syntax
- Removed obsolete vnext/src-win/jest/setup.js (now provided by upstream)
- Updated yarn.lock

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@anuagragith anuagragith requested review from a team as code owners June 30, 2026 04:56
Anukrati Agrawal and others added 5 commits June 30, 2026 15:40
…ntax

hermes-eslint's no-unreachable does not recognize Flow `component` declarations as function boundaries, so returns inside them falsely mark following top-level declarations as unreachable. Add scoped eslint-disable comments to suppress these false positives.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The nightly integration bumped the .flowconfig [version] to ^0.302.0 in vnext and @office-iss/react-native-win32 but left flow-bin at ^0.299.0, so flow-check failed the version guard. Bump flow-bin to ^0.302.0 in both packages to match. Flow 0.302.0's stricter invalid-compare check then flagged pre-existing dead code (an 'if (status === COMPLETE)' block made unreachable by the switch 'default: return null') in LogBoxInspectorSourceMapStatus.win32.js; remove it (behavior-preserving).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The nightly integration converted these FlatList example components to Flow
'component' syntax. hermes-eslint emits ComponentDeclaration AST nodes that
ESLint's code-path analyzer does not treat as function boundaries, so a
'return' inside a component body leaks to module scope and falsely flags
following top-level declarations as unreachable. Add a scoped file-level
eslint-disable for no-unreachable to suppress these false positives.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Upstream React Native moved the Jest setup, mocks, and helpers out of the
react-native package into @react-native/jest-preset. copyRNLibraries still
copied from react-native/jest/** (now nonexistent), so vnext/jest ended up
with only the RNW setup.js override and none of the ./mock or ./mocks/*
siblings it imports, producing 22 cannot-resolve-module flow errors.

Point copyRNLibraries at @react-native/jest-preset/jest/** and declare the
package explicitly (pinned to the nightly) since react-native only lists it
as an optional peer dependency. Verified flow-check passes with 0 errors for
both react-native-windows (vnext) and @office-iss/react-native-win32.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

Performance Test Results

Branch: integrate/nightly-20260224-v2
Commit: 4e75f068
Time: 2026-07-01T21:15:53.716Z
Tests: 161/161 passed

✅ Passed

161 scenario(s) across 28 suite(s) — no regressions

SectionList

Scenario Mean Median StdDev Renders vs Baseline
SectionList mount 4.30ms 4.00ms ±0.67ms 1 -20.0%
SectionList unmount 0.10ms 0.00ms ±0.32ms 0 +0.0%
SectionList rerender 10.20ms 10.00ms ±1.55ms 2 -4.8%
SectionList with-3-sections-15-items 4.30ms 4.00ms ±0.82ms 1 -27.3%
SectionList with-5-sections-50-items 5.60ms 5.00ms ±1.96ms 1 -16.7%
SectionList with-10-sections-200-items 4.50ms 4.00ms ±0.71ms 1 -27.3%
SectionList with-20-sections-200-items 4.40ms 4.00ms ±1.71ms 1 -20.0%
SectionList with-section-separator 1.40ms 1.00ms ±0.52ms 1 -50.0%
SectionList with-item-separator 2.10ms 2.00ms ±1.10ms 1 +0.0%
SectionList with-header-footer 1.60ms 2.00ms ±0.52ms 1 +0.0%
SectionList with-section-footer 1.50ms 1.50ms ±0.53ms 1 -25.0%
SectionList with-sticky-section-headers 1.30ms 1.00ms ±0.48ms 1 -50.0%
SectionList with-empty-list 0.50ms 0.50ms ±0.53ms 1 -50.0%
SectionList with-50-sections-1000-items 1.40ms 1.00ms ±0.52ms 1 -50.0%

FlatList

Scenario Mean Median StdDev Renders vs Baseline
FlatList mount 4.30ms 4.00ms ±0.82ms 1 +0.0%
FlatList unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
FlatList rerender 8.80ms 8.50ms ±1.32ms 2 -5.6%
FlatList with-10-items 4.40ms 4.00ms ±0.52ms 1 +0.0%
FlatList with-100-items 5.00ms 4.50ms ±1.41ms 1 -10.0%
FlatList with-500-items 4.10ms 4.00ms ±0.57ms 1 +0.0%
FlatList with-1000-items 4.40ms 4.00ms ±1.26ms 1 +0.0%
FlatList horizontal 3.70ms 4.00ms ±0.67ms 1 -20.0%
FlatList with-separator 1.60ms 2.00ms ±0.52ms 1 +0.0%
FlatList with-header-footer 1.30ms 1.00ms ±0.48ms 1 -50.0%
FlatList with-empty-list 0.30ms 0.00ms ±0.48ms 1 -100.0%
FlatList with-get-item-layout 1.50ms 1.00ms ±1.27ms 1 +0.0%
FlatList inverted 1.30ms 1.00ms ±0.48ms 1 -33.3%
FlatList with-num-columns 2.50ms 3.00ms ±0.71ms 1 +0.0%

TouchableOpacity

Scenario Mean Median StdDev Renders vs Baseline
TouchableOpacity mount 0.90ms 1.00ms ±0.32ms 1 +0.0%
TouchableOpacity unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
TouchableOpacity rerender 0.80ms 1.00ms ±0.42ms 2 +0.0%
TouchableOpacity custom-active-opacity 0.40ms 0.00ms ±0.52ms 1 -100.0%
TouchableOpacity disabled 0.70ms 1.00ms ±0.48ms 1 +0.0%
TouchableOpacity with-all-handlers 0.60ms 1.00ms ±0.52ms 1 +0.0%
TouchableOpacity with-hit-slop 0.90ms 1.00ms ±0.32ms 1 +0.0%
TouchableOpacity with-delay 0.80ms 1.00ms ±0.42ms 1 +0.0%
TouchableOpacity nested 1.20ms 1.00ms ±0.42ms 1 +0.0%
TouchableOpacity multiple-10 4.53ms 5.00ms ±0.99ms 1 -16.7%
TouchableOpacity multiple-50 23.47ms 23.00ms ±1.92ms 1 -20.7%
TouchableOpacity multiple-100 21.53ms 21.00ms ±7.96ms 1 -58.0%

ScrollView

Scenario Mean Median StdDev Renders vs Baseline
ScrollView mount 0.30ms 0.00ms ±0.48ms 1 +0.0%
ScrollView unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
ScrollView rerender 0.50ms 0.50ms ±0.53ms 2 -50.0%
ScrollView children-20 3.47ms 3.00ms ±1.30ms 1 -25.0%
ScrollView children-100 14.80ms 14.00ms ±1.57ms 1 -12.5%
ScrollView horizontal 3.60ms 3.00ms ±1.26ms 1 -25.0%
ScrollView sticky-headers 2.60ms 3.00ms ±0.70ms 1 +0.0%
ScrollView scroll-indicators 0.70ms 1.00ms ±0.48ms 1 +0.0%
ScrollView nested 1.60ms 1.50ms ±0.70ms 1 +50.0%
ScrollView content-container-style 0.70ms 1.00ms ±0.48ms 1 +0.0%
ScrollView children-500 20.07ms 18.00ms ±3.86ms 1 -5.3%

TouchableHighlight

Scenario Mean Median StdDev Renders vs Baseline
TouchableHighlight mount 0.30ms 0.00ms ±0.48ms 1 -100.0%
TouchableHighlight unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
TouchableHighlight rerender 0.70ms 1.00ms ±0.48ms 2 +0.0%
TouchableHighlight custom-underlay-color 0.30ms 0.00ms ±0.48ms 1 +0.0%
TouchableHighlight custom-active-opacity 0.20ms 0.00ms ±0.42ms 1 +0.0%
TouchableHighlight disabled 0.40ms 0.00ms ±0.52ms 1 +0.0%
TouchableHighlight with-all-handlers 0.30ms 0.00ms ±0.48ms 1 +0.0%
TouchableHighlight with-hit-slop 0.30ms 0.00ms ±0.48ms 1 +0.0%
TouchableHighlight nested-touchables 0.70ms 1.00ms ±0.48ms 1 +0.0%
TouchableHighlight multiple-touchables-10 2.80ms 2.00ms ±1.55ms 1 -33.3%
TouchableHighlight multiple-touchables-50 11.90ms 11.50ms ±1.85ms 1 -8.0%
TouchableHighlight multiple-touchables-100 22.20ms 21.50ms ±2.44ms 1 -4.4%

Pressable

Scenario Mean Median StdDev Renders vs Baseline
Pressable mount 0.20ms 0.00ms ±0.42ms 1 +0.0%
Pressable unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
Pressable rerender 0.50ms 0.50ms ±0.53ms 2 +0.0%
Pressable with-all-handlers 0.30ms 0.00ms ±0.48ms 1 +0.0%
Pressable with-style-function 0.30ms 0.00ms ±0.48ms 1 +0.0%
Pressable disabled 0.20ms 0.00ms ±0.42ms 1 +0.0%
Pressable with-hit-slop 0.30ms 0.00ms ±0.48ms 1 +0.0%
Pressable nested 0.40ms 0.00ms ±0.52ms 1 -100.0%
Pressable multiple-10 2.67ms 3.00ms ±0.62ms 1 +0.0%
Pressable multiple-50 13.27ms 12.00ms ±1.83ms 1 -14.3%
Pressable multiple-100 15.20ms 10.00ms ±9.00ms 1 -16.7%

Modal

Scenario Mean Median StdDev Renders vs Baseline
Modal mount 0.30ms 0.00ms ±0.48ms 1 +0.0%
Modal unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
Modal rerender 0.30ms 0.00ms ±0.48ms 2 +0.0%
Modal slide-animation 0.30ms 0.00ms ±0.48ms 1 +0.0%
Modal fade-animation 0.20ms 0.00ms ±0.42ms 1 +0.0%
Modal transparent 0.30ms 0.00ms ±0.48ms 1 +0.0%
Modal with-callbacks 0.30ms 0.00ms ±0.48ms 1 +0.0%
Modal rich-content 1.50ms 1.50ms ±0.53ms 1 -25.0%
Modal with-accessibility 0.20ms 0.00ms ±0.42ms 1 +0.0%

Image

Scenario Mean Median StdDev Renders vs Baseline
Image mount 0.20ms 0.00ms ±0.42ms 1 +0.0%
Image unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
Image rerender 0.20ms 0.00ms ±0.42ms 2 +0.0%
Image with-resize-mode 0.10ms 0.00ms ±0.32ms 1 +0.0%
Image with-border-radius 0.10ms 0.00ms ±0.32ms 1 +0.0%
Image with-tint-color 0.00ms 0.00ms ±0.00ms 1 +0.0%
Image with-blur-radius 0.10ms 0.00ms ±0.32ms 1 +0.0%
Image with-accessibility 0.20ms 0.00ms ±0.42ms 1 +0.0%
Image multiple-10 1.07ms 1.00ms ±1.16ms 1 +0.0%
Image multiple-50 3.40ms 3.00ms ±0.83ms 1 +0.0%
Image multiple-100 7.73ms 7.00ms ±1.67ms 1 -12.5%

ActivityIndicator

Scenario Mean Median StdDev Renders vs Baseline
ActivityIndicator mount 0.20ms 0.00ms ±0.42ms 1 +0.0%
ActivityIndicator unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
ActivityIndicator rerender 0.00ms 0.00ms ±0.00ms 2 +0.0%
ActivityIndicator size-large 0.20ms 0.00ms ±0.42ms 1 +0.0%
ActivityIndicator size-small 0.20ms 0.00ms ±0.42ms 1 +0.0%
ActivityIndicator with-color 0.00ms 0.00ms ±0.00ms 1 +0.0%
ActivityIndicator not-animating 0.10ms 0.00ms ±0.32ms 1 +0.0%
ActivityIndicator with-accessibility 0.10ms 0.00ms ±0.32ms 1 +0.0%
ActivityIndicator multiple-10 0.87ms 1.00ms ±0.35ms 1 +0.0%
ActivityIndicator multiple-50 3.53ms 3.00ms ±1.13ms 1 -25.0%
ActivityIndicator multiple-100 7.40ms 7.00ms ±1.40ms 1 +0.0%

Switch

Scenario Mean Median StdDev Renders vs Baseline
Switch mount 0.20ms 0.00ms ±0.42ms 1 +0.0%
Switch unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
Switch rerender 0.40ms 0.00ms ±0.52ms 2 -100.0%
Switch value-true 0.30ms 0.00ms ±0.48ms 1 +0.0%
Switch disabled 0.30ms 0.00ms ±0.48ms 1 +0.0%
Switch custom-colors 0.30ms 0.00ms ±0.48ms 1 +0.0%
Switch on-value-change 0.10ms 0.00ms ±0.32ms 1 +0.0%
Switch with-accessibility 0.20ms 0.00ms ±0.42ms 1 +0.0%
Switch multiple-10 1.40ms 1.00ms ±0.51ms 1 -50.0%
Switch multiple-50 8.07ms 7.00ms ±2.79ms 1 -22.2%
Switch multiple-100 15.93ms 15.00ms ±2.43ms 1 -6.3%

Button

Scenario Mean Median StdDev Renders vs Baseline
Button mount 0.60ms 1.00ms ±0.52ms 1 +0.0%
Button unmount 0.10ms 0.00ms ±0.32ms 0 +0.0%
Button rerender 0.90ms 1.00ms ±0.32ms 2 +0.0%
Button disabled 0.60ms 1.00ms ±0.52ms 1 +0.0%
Button with-color 0.60ms 1.00ms ±0.52ms 1 +100.0%
Button with-accessibility 0.50ms 0.50ms ±0.53ms 1 -50.0%
Button multiple-10 5.07ms 5.00ms ±1.33ms 1 -16.7%
Button multiple-50 19.53ms 23.00ms ±7.98ms 1 -14.8%
Button multiple-100 14.40ms 13.00ms ±2.35ms 1 -31.6%

TextInput

Scenario Mean Median StdDev Renders vs Baseline
TextInput mount 0.20ms 0.00ms ±0.42ms 1 +0.0%
TextInput unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
TextInput rerender 0.10ms 0.00ms ±0.32ms 2 +0.0%
TextInput multiline 0.10ms 0.00ms ±0.32ms 1 +0.0%
TextInput with-value 0.10ms 0.00ms ±0.32ms 1 +0.0%
TextInput styled 0.00ms 0.00ms ±0.00ms 1 +0.0%
TextInput multiple-100 6.60ms 6.00ms ±0.99ms 1 -14.3%

View

Scenario Mean Median StdDev Renders vs Baseline
View mount 0.10ms 0.00ms ±0.32ms 1 +0.0%
View unmount 0.10ms 0.00ms ±0.32ms 0 +0.0%
View rerender 0.20ms 0.00ms ±0.42ms 2 +0.0%
View nested-50 3.20ms 3.00ms ±0.41ms 1 +0.0%
View nested-100 7.27ms 7.00ms ±1.44ms 1 +0.0%
View shadow 0.00ms 0.00ms ±0.00ms 1 +0.0%
View border-radius 0.20ms 0.00ms ±0.42ms 1 +0.0%
View nested-500 16.13ms 10.00ms ±12.60ms 1 +0.0%

Text

Scenario Mean Median StdDev Renders vs Baseline
Text mount 0.10ms 0.00ms ±0.32ms 1 +0.0%
Text unmount 0.00ms 0.00ms ±0.00ms 0 +0.0%
Text rerender 0.20ms 0.00ms ±0.42ms 2 +0.0%
Text long-1000 0.10ms 0.00ms ±0.32ms 1 +0.0%
Text nested 0.20ms 0.00ms ±0.42ms 1 +0.0%
Text styled 0.10ms 0.00ms ±0.32ms 1 +0.0%
Text multiple-100 7.67ms 7.00ms ±1.50ms 1 +0.0%

SectionList.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
SectionList native mount 3.92ms 3.74ms ±0.59ms 1 -42.5%

FlatList.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
FlatList native mount 3.96ms 3.71ms ±0.63ms 1 -59.8%

TouchableHighlight.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
TouchableHighlight native mount 1.28ms 1.24ms ±0.16ms 1 -40.8%

TouchableOpacity.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
TouchableOpacity native mount 1.72ms 1.48ms ±0.66ms 1 -52.8%

Pressable.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Pressable native mount 1.31ms 1.29ms ±0.10ms 1 -48.5%

ScrollView.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
ScrollView native mount 2.82ms 2.70ms ±0.35ms 1 -33.3%

ActivityIndicator.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
ActivityIndicator native mount 1.25ms 1.08ms ±0.45ms 1 -56.6%

TextInput.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
TextInput native mount 1.93ms 1.85ms ±0.28ms 1 -54.8%

Switch.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Switch native mount 0.98ms 0.95ms ±0.09ms 1 -45.0%

Button.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Button native mount 1.67ms 1.51ms ±0.31ms 1 -41.9%

Modal.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Modal native mount 0.84ms 0.79ms ±0.18ms 1 -35.3%

Image.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Image native mount 1.49ms 1.43ms ±0.28ms 1 -36.7%

View.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
View native mount 0.90ms 0.88ms ±0.08ms 1 -38.6%

Text.native-perf-test.ts

Scenario Mean Median StdDev Renders vs Baseline
Text native mount 1.17ms 1.07ms ±0.21ms 1 -38.6%
Anukrati Agrawal and others added 2 commits July 1, 2026 10:02
…mationBackend override

- Add 'no-unreachable': 0 to hermes-eslint .js override block in shared eslint-config
  (root-cause fix for false positives from ComponentDeclaration/HookDeclaration AST
  nodes; Flow performs its own unreachable analysis)
- Revert per-file eslint-disable edits on LogBox/FlatList override files (now handled
  by config; required because copy-type overrides must byte-match upstream)
- Delete orphaned vnext/src-win/jest/setup.js (manifest entry removed by integration;
  upstream @react-native/jest-preset now provides it)
- Add js/examples/AnimationBackend directoryCopy override to @react-native/tester manifest

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…change

The 0.85.0-nightly-20260224 integration causes more views to carry a
meaningful backgroundColor upstream, so RNW correctly materializes the
background SpriteVisual (empty 0-size child visual) for those views.
RNW's own color/view code (HostPlatformColor.h, CompositionViewComponentView.cpp)
is unchanged. Regenerated snapshots via 'yarn e2etest -u' output.

Also reflects a deterministic asset testUri path shift and text-background
visual restructuring surfaced by the same integration.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

1 participant