[flags] cleanup renameElementSymbol (#35600)
Removed the feature flag completely, enabled by default. Will land once I have everything ready on xplat side.
Ruslan Lesiutin committed
Jan 23, 2026 at 10:46 UTC
94913cbffeff60c862ef818ca62cdc329dc2fd57
14 files changed
+4
-22
packages/react-client/src/__tests__/ReactFlight-test.js
-1
@@ -1085,7 +1085,6 @@ describe('ReactFlight', () => {
1085
});
1086
});
1087
1088
- // @gate renameElementSymbol
1088
it('should emit descriptions of errors in dev', async () => {
1089
const ClientErrorBoundary = clientReference(ErrorBoundary);
1090
packages/react-dom/src/__tests__/ReactComponent-test.js
-1
@@ -498,7 +498,6 @@ describe('ReactComponent', () => {
498
);
499
});
500
501
- // @gate renameElementSymbol
501
it('throws if a legacy element is used as a child', async () => {
502
const inlinedElement = {
503
$$typeof: Symbol.for('react.element'),
packages/react-dom/src/__tests__/ReactDOMOption-test.js
+1
-2
@@ -138,12 +138,11 @@ describe('ReactDOMOption', () => {
138
}).rejects.toThrow('Objects are not valid as a React child');
139
});
140
141
- // @gate www && !renameElementSymbol
141
it('should support element-ish child', async () => {
142
// This is similar to <fbt>.
143
// We don't toString it because you must instead provide a value prop.
144
const obj = {
146
- $$typeof: Symbol.for('react.element'),
145
+ $$typeof: Symbol.for('react.transitional.element'),
146
type: props => props.content,
147
ref: null,
148
key: null,
packages/shared/ReactFeatureFlags.js
-3
@@ -159,9 +159,6 @@ export const enableInternalInstanceMap: boolean = false;
159
160
// const __NEXT_MAJOR__ = __EXPERIMENTAL__;
161
162
-// Renames the internal symbol for elements since they have changed signature/constructor
163
-export const renameElementSymbol: boolean = true;
164
-
162
/**
163
* Enables a fix to run insertion effect cleanup on hidden subtrees.
164
*/
packages/shared/ReactSymbols.js
+3
-5
@@ -7,17 +7,15 @@
7
* @flow
8
*/
9
10
-import {renameElementSymbol} from 'shared/ReactFeatureFlags';
11
-
10
// ATTENTION
11
// When adding new symbols to this file,
12
// Please consider also adding to 'react-devtools-shared/src/backend/ReactSymbols'
13
14
// The Symbol used to tag the ReactElement-like types.
15
export const REACT_LEGACY_ELEMENT_TYPE: symbol = Symbol.for('react.element');
18
-export const REACT_ELEMENT_TYPE: symbol = renameElementSymbol
19
- ? Symbol.for('react.transitional.element')
20
- : REACT_LEGACY_ELEMENT_TYPE;
16
+export const REACT_ELEMENT_TYPE: symbol = Symbol.for(
17
+ 'react.transitional.element',
18
+);
19
export const REACT_PORTAL_TYPE: symbol = Symbol.for('react.portal');
20
export const REACT_FRAGMENT_TYPE: symbol = Symbol.for('react.fragment');
21
export const REACT_STRICT_MODE_TYPE: symbol = Symbol.for('react.strict_mode');
packages/shared/__tests__/ReactSymbols-test.internal.js
-1
@@ -23,7 +23,6 @@ describe('ReactSymbols', () => {
23
});
24
};
25
26
- // @gate renameElementSymbol
26
it('Symbol values should be unique', () => {
27
expectToBeUnique(Object.entries(require('shared/ReactSymbols')));
28
});
packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js
-1
@@ -22,7 +22,6 @@ export const enableObjectFiber = __VARIANT__;
22
export const enableHiddenSubtreeInsertionEffectCleanup = __VARIANT__;
23
export const enableEagerAlternateStateNodeCleanup = __VARIANT__;
24
export const passChildrenWhenCloningPersistedNodes = __VARIANT__;
25
-export const renameElementSymbol = __VARIANT__;
25
export const enableFragmentRefs = __VARIANT__;
26
export const enableFragmentRefsScrollIntoView = __VARIANT__;
27
export const enableFragmentRefsInstanceHandles = __VARIANT__;
packages/shared/forks/ReactFeatureFlags.native-fb.js
-1
@@ -24,7 +24,6 @@ export const {
24
enableObjectFiber,
25
enableEagerAlternateStateNodeCleanup,
26
passChildrenWhenCloningPersistedNodes,
27
- renameElementSymbol,
27
enableFragmentRefs,
28
enableFragmentRefsScrollIntoView,
29
enableFragmentRefsInstanceHandles,
packages/shared/forks/ReactFeatureFlags.native-oss.js
-1
@@ -52,7 +52,6 @@ export const enableTaint: boolean = true;
52
export const enableTransitionTracing: boolean = false;
53
export const enableTrustedTypesIntegration: boolean = false;
54
export const passChildrenWhenCloningPersistedNodes: boolean = false;
55
-export const renameElementSymbol: boolean = true;
55
export const retryLaneExpirationMs = 5000;
56
export const syncLaneExpirationMs = 250;
57
export const transitionLaneExpirationMs = 5000;
packages/shared/forks/ReactFeatureFlags.test-renderer.js
-1
@@ -55,7 +55,6 @@ export const disableClientCache: boolean = true;
55
56
export const enableInfiniteRenderLoopDetection: boolean = false;
57
58
-export const renameElementSymbol: boolean = true;
58
export const enableEagerAlternateStateNodeCleanup: boolean = true;
59
60
export const enableYieldingBeforePassive: boolean = true;
packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js
-1
@@ -50,7 +50,6 @@ export const enableTransitionTracing = false;
50
export const enableTrustedTypesIntegration = false;
51
export const enableUpdaterTracking = false;
52
export const passChildrenWhenCloningPersistedNodes = false;
53
-export const renameElementSymbol = false;
53
export const retryLaneExpirationMs = 5000;
54
export const syncLaneExpirationMs = 250;
55
export const transitionLaneExpirationMs = 5000;
packages/shared/forks/ReactFeatureFlags.test-renderer.www.js
-2
@@ -60,8 +60,6 @@ export const enableInfiniteRenderLoopDetection: boolean = false;
60
export const enableReactTestRendererWarning: boolean = false;
61
export const disableLegacyMode: boolean = true;
62
63
-export const renameElementSymbol: boolean = false;
64
-
63
export const enableObjectFiber: boolean = false;
64
export const enableEagerAlternateStateNodeCleanup: boolean = true;
65
packages/shared/forks/ReactFeatureFlags.www-dynamic.js
-1
@@ -21,7 +21,6 @@ export const enableNoCloningMemoCache: boolean = __VARIANT__;
21
export const enableObjectFiber: boolean = __VARIANT__;
22
export const enableRetryLaneExpiration: boolean = __VARIANT__;
23
export const enableTransitionTracing: boolean = __VARIANT__;
24
-export const renameElementSymbol: boolean = __VARIANT__;
24
export const retryLaneExpirationMs = 5000;
25
export const syncLaneExpirationMs = 250;
26
export const transitionLaneExpirationMs = 5000;
packages/shared/forks/ReactFeatureFlags.www.js
-1
@@ -25,7 +25,6 @@ export const {
25
enableRetryLaneExpiration,
26
enableTransitionTracing,
27
enableTrustedTypesIntegration,
28
- renameElementSymbol,
28
retryLaneExpirationMs,
29
syncLaneExpirationMs,
30
transitionLaneExpirationMs,