From 86b808389ab320fdd6f367a5d206eb03b265e666 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rub=C3=A9n=20Norte?= Date: Fri, 17 Apr 2026 06:35:22 -0700 Subject: [PATCH 1/2] Remove reference to type that will not be generated (#56482) Summary: Changelog: [internal] `ReactNativeType` is the type of the legacy renderer, which is being removed. This removes the references to it so the removal can land without Flow errors. Differential Revision: D101352959 --- .../Libraries/ReactNative/RendererImplementation.js | 1 + .../react-native/Libraries/Renderer/shims/ReactNative.js | 7 +++---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/react-native/Libraries/ReactNative/RendererImplementation.js b/packages/react-native/Libraries/ReactNative/RendererImplementation.js index a62650ef1a27..057572a634da 100644 --- a/packages/react-native/Libraries/ReactNative/RendererImplementation.js +++ b/packages/react-native/Libraries/ReactNative/RendererImplementation.js @@ -51,6 +51,7 @@ const getMethod: (( return function (arg1, arg2, arg3, arg4, arg5, arg6) { if (cachedImpl == null) { // $FlowExpectedError[prop-missing] + // $FlowExpectedError[invalid-computed-prop] cachedImpl = getRenderer()[methodName]; } diff --git a/packages/react-native/Libraries/Renderer/shims/ReactNative.js b/packages/react-native/Libraries/Renderer/shims/ReactNative.js index 8a1e9e722f11..87cafb6afc75 100644 --- a/packages/react-native/Libraries/Renderer/shims/ReactNative.js +++ b/packages/react-native/Libraries/Renderer/shims/ReactNative.js @@ -7,16 +7,15 @@ * @noformat * @nolint * @flow - * @generated SignedSource<<7a063365bcf9d96b1cd8714d309e5b92>> + * @generated SignedSource<<5908e4e900f26a939c59a16d2c252af3>> * * This file is no longer sync'd from the facebook/react repository. * The version compatibility check is removed. Use at your own risk. */ 'use strict'; -import type {ReactNativeType} from './ReactNativeTypes'; - -let ReactNative: ReactNativeType; +// The underlying type no longer exists +let ReactNative: $FlowFixMe; if (__DEV__) { ReactNative = require('../implementations/ReactNativeRenderer-dev'); From 26d9780bf8a3864d206389bc55dc9cfb49e5f2c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rub=C3=A9n=20Norte?= Date: Fri, 17 Apr 2026 06:35:22 -0700 Subject: [PATCH 2/2] Remove legacy Paper renderer shim cleanup from artifact commit workflow (#36297) (#56483) Summary: ## Summary PR #36285 deleted the Paper (legacy) renderer, including the shim file `scripts/rollup/shims/react-native/ReactNative.js`. However, the `runtime_commit_artifacts` workflow still tries to `rm` this file after moving build artifacts into `compiled-rn/`. Since the file no longer exists in the build output, `rm` (without `-f`) fails and kills the entire step. This has caused **every run of the Commit Artifacts workflow to fail since #36285 landed on April 16**, blocking both `builds/facebook-www` and `builds/facebook-fbsource` branches from receiving new build artifacts. This in turn blocks DiffTrain from syncing React changes into Meta's internal monorepo. DiffTrain build for [bf45a68dd35ed08860b6a70fed641dfe6d7d290d](https://github.com/facebook/react/commit/bf45a68dd35ed08860b6a70fed641dfe6d7d290d) Reviewed By: zeyap Differential Revision: D101329586 --- .../Renderer/shims/ReactNativeTypes.js | 32 +------------------ 1 file changed, 1 insertion(+), 31 deletions(-) diff --git a/packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js b/packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js index bd5cf5eaace7..24cc37e31e76 100644 --- a/packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js +++ b/packages/react-native/Libraries/Renderer/shims/ReactNativeTypes.js @@ -7,7 +7,7 @@ * @noformat * @nolint * @flow strict - * @generated SignedSource<> + * @generated SignedSource<<4ab83fd2606d6a4d374ef914f231d9c1>> */ import type { @@ -138,36 +138,6 @@ export type RenderRootOptions = { onDefaultTransitionIndicator?: () => void | (() => void), }; -/** - * Flat ReactNative renderer bundles are too big for Flow to parse efficiently. - * Provide minimal Flow typing for the high-level RN API and call it a day. - */ -export type ReactNativeType = { - findHostInstance_DEPRECATED( - componentOrHandle: ?(React.ElementRef | number), - ): ?PublicInstance, - findNodeHandle( - componentOrHandle: ?(React.ElementRef | number), - ): ?number, - isChildPublicInstance(parent: PublicInstance, child: PublicInstance): boolean, - dispatchCommand( - handle: PublicInstance, - command: string, - args: Array, - ): void, - sendAccessibilityEvent(handle: PublicInstance, eventType: string): void, - render( - element: React.MixedElement, - containerTag: number, - callback: ?() => void, - options: ?RenderRootOptions, - ): ?React.ElementRef, - unmountComponentAtNode(containerTag: number): void, - unmountComponentAtNodeAndRemoveContainer(containerTag: number): void, - +unstable_batchedUpdates: (fn: (T) => void, bookkeeping: T) => void, - ... -}; - export opaque type Node = mixed; export opaque type InternalInstanceHandle = mixed;