@samitouri / QOS-React-1 / commits / 90817f8810

[rn] delete the legacy renderers from the sync (#34946)

Now that RN is only on the New Architecture, we can stop stop syncing the legacy React Native renderers. In this diff, I just stop syncing them. In a follow up I'll delete the code for them so only Fabric is left. This will also allow us to remove the `enableLegacyMode` feature flag.

Ricky committed Oct 27, 2025 at 17:38 UTC 90817f8810da9d993bf93a75b673399b112af67e
5 files changed +8 -39
.github/workflows/runtime_commit_artifacts.yml
+5 -2
@@ -162,10 +162,13 @@ jobs:
162 mv build/facebook-react-native/react-is/cjs/ $BASE_FOLDER/RKJSModules/vendor/react/react-is/
163 mv build/facebook-react-native/react-test-renderer/cjs/ $BASE_FOLDER/RKJSModules/vendor/react/react-test-renderer/
164
165 - # Delete OSS renderer. OSS renderer is synced through internal script.
165 + # Delete the OSS renderers, these are sync'd to RN separately.
166 RENDERER_FOLDER=$BASE_FOLDER/react-native-github/Libraries/Renderer/implementations/
167 + SHIM_FOLDER=$BASE_FOLDER/react-native-github/Libraries/Renderer/shims/
168 rm $RENDERER_FOLDER/ReactFabric-{dev,prod,profiling}.js
168 - rm $RENDERER_FOLDER/ReactNativeRenderer-{dev,prod,profiling}.js
169 +
170 + # Delete the legacy renderer shim, this is not sync'd and will get deleted in the future.
171 + rm $SHIM_FOLDER/ReactNative.js
172
173 # Copy eslint-plugin-react-hooks
174 # NOTE: This is different from www, here we include the full package
packages/react-native-renderer/index.js
+1
@@ -12,4 +12,5 @@ import * as ReactNative from './src/ReactNativeRenderer';
12 // Assert that the exports line up with the type we're going to expose.
13 (ReactNative: ReactNativeType);
14
15 +// TODO: Delete the legacy renderer, only Fabric is used now.
16 export * from './src/ReactNativeRenderer';
packages/react-reconciler/README.md
+1 -1
@@ -59,7 +59,7 @@ The examples in the React repository are declared a bit differently than a third
59
60 * [React ART](https://github.com/facebook/react/blob/main/packages/react-art/src/ReactART.js) and its [host config](https://github.com/facebook/react/blob/main/packages/react-art/src/ReactFiberConfigART.js)
61 * [React DOM](https://github.com/facebook/react/blob/main/packages/react-dom/src/client/ReactDOM.js) and its [host config](https://github.com/facebook/react/blob/main/packages/react-dom-bindings/src/client/ReactFiberConfigDOM.js)
62 -* [React Native](https://github.com/facebook/react/blob/main/packages/react-native-renderer/src/ReactNativeRenderer.js) and its [host config](https://github.com/facebook/react/blob/main/packages/react-native-renderer/src/ReactFiberConfigNative.js)
62 +* [React Native](https://github.com/facebook/react/blob/main/packages/react-native-renderer/src/ReactFabric.js) and its [host config](https://github.com/facebook/react/blob/main/packages/react-native-renderer/src/ReactFiberConfigFabric.js)
63
64 If these links break please file an issue and we’ll fix them. They intentionally link to the latest versions since the API is still evolving. If you have more questions please file an issue and we’ll try to help!
65
scripts/rollup/bundles.js
-36
@@ -819,42 +819,6 @@ const bundles = [
819 }),
820 },
821
822 - /******* React Native *******/
823 - {
824 - bundleTypes: __EXPERIMENTAL__
825 - ? []
826 - : [RN_FB_DEV, RN_FB_PROD, RN_FB_PROFILING],
827 - moduleType: RENDERER,
828 - entry: 'react-native-renderer',
829 - global: 'ReactNativeRenderer',
830 - externals: ['react-native', 'ReactNativeInternalFeatureFlags'],
831 - minifyWithProdErrorCodes: false,
832 - wrapWithModuleBoundaries: true,
833 - babel: opts =>
834 - Object.assign({}, opts, {
835 - plugins: opts.plugins.concat([
836 - [require.resolve('@babel/plugin-transform-classes'), {loose: true}],
837 - ]),
838 - }),
839 - },
840 - {
841 - bundleTypes: [RN_OSS_DEV, RN_OSS_PROD, RN_OSS_PROFILING],
842 - moduleType: RENDERER,
843 - entry: 'react-native-renderer',
844 - global: 'ReactNativeRenderer',
845 - // ReactNativeInternalFeatureFlags temporary until we land enableRemoveConsolePatches.
846 - // Needs to be done before the next RN OSS release.
847 - externals: ['react-native', 'ReactNativeInternalFeatureFlags'],
848 - minifyWithProdErrorCodes: false,
849 - wrapWithModuleBoundaries: true,
850 - babel: opts =>
851 - Object.assign({}, opts, {
852 - plugins: opts.plugins.concat([
853 - [require.resolve('@babel/plugin-transform-classes'), {loose: true}],
854 - ]),
855 - }),
856 - },
857 -
822 /******* React Native Fabric *******/
823 {
824 bundleTypes: __EXPERIMENTAL__
scripts/rollup/shims/react-native/ReactNative.js
+1
@@ -14,6 +14,7 @@ import type {ReactNativeType} from './ReactNativeTypes';
14
15 let ReactNative: ReactNativeType;
16
17 +// TODO: Delete the legacy renderer. Only ReactFabric is used now.
18 if (__DEV__) {
19 ReactNative = require('../implementations/ReactNativeRenderer-dev');
20 } else {