diff --git a/packages/react-reconciler/src/ReactFiber.js b/packages/react-reconciler/src/ReactFiber.js index 7f5fbe59b8e90..1471c2d094876 100644 --- a/packages/react-reconciler/src/ReactFiber.js +++ b/packages/react-reconciler/src/ReactFiber.js @@ -39,7 +39,6 @@ import { enableDO_NOT_USE_disableStrictPassiveEffect, enableRenderableContext, disableLegacyMode, - enableObjectFiber, enableViewTransition, } from 'shared/ReactFeatureFlags'; import {NoFlags, Placement, StaticMask} from './ReactFiberFlags'; @@ -225,7 +224,7 @@ function FiberNode( // is faster. // 5) It should be easy to port this to a C struct and keep a C implementation // compatible. -function createFiberImplClass( +function createFiber( tag: WorkTag, pendingProps: mixed, key: null | string, @@ -235,77 +234,6 @@ function createFiberImplClass( return new FiberNode(tag, pendingProps, key, mode); } -function createFiberImplObject( - tag: WorkTag, - pendingProps: mixed, - key: null | string, - mode: TypeOfMode, -): Fiber { - const fiber: Fiber = { - // Instance - // tag, key - defined at the bottom as dynamic properties - elementType: null, - type: null, - stateNode: null, - - // Fiber - return: null, - child: null, - sibling: null, - index: 0, - - ref: null, - refCleanup: null, - - // pendingProps - defined at the bottom as dynamic properties - memoizedProps: null, - updateQueue: null, - memoizedState: null, - dependencies: null, - - // Effects - flags: NoFlags, - subtreeFlags: NoFlags, - deletions: null, - - lanes: NoLanes, - childLanes: NoLanes, - - alternate: null, - - // dynamic properties at the end for more efficient hermes bytecode - tag, - key, - pendingProps, - mode, - }; - - if (enableProfilerTimer) { - fiber.actualDuration = -0; - fiber.actualStartTime = -1.1; - fiber.selfBaseDuration = -0; - fiber.treeBaseDuration = -0; - } - - if (__DEV__) { - // This isn't directly used but is handy for debugging internals: - fiber._debugInfo = null; - fiber._debugOwner = null; - fiber._debugStack = null; - fiber._debugTask = null; - fiber._debugNeedsRemount = false; - fiber._debugHookTypes = null; - if (!hasBadMapPolyfill && typeof Object.preventExtensions === 'function') { - Object.preventExtensions(fiber); - } - } - return fiber; -} - -const createFiber = enableObjectFiber - ? createFiberImplObject - : createFiberImplClass; - function shouldConstruct(Component: Function) { const prototype = Component.prototype; return !!(prototype && prototype.isReactComponent); diff --git a/packages/shared/ReactFeatureFlags.js b/packages/shared/ReactFeatureFlags.js index 6bed7187dd07e..97dc8e54f1d59 100644 --- a/packages/shared/ReactFeatureFlags.js +++ b/packages/shared/ReactFeatureFlags.js @@ -101,11 +101,6 @@ export const enableScrollEndPolyfill = __EXPERIMENTAL__; */ export const enableFabricCompleteRootInCommitPhase = false; -/** - * Switches Fiber creation to a simple object instead of a constructor. - */ -export const enableObjectFiber = false; - export const enableTransitionTracing = false; // FB-only usage. The new API has different semantics. diff --git a/packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js b/packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js index 7711c842691cb..a8d951ad283a6 100644 --- a/packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js +++ b/packages/shared/forks/ReactFeatureFlags.native-fb-dynamic.js @@ -18,7 +18,6 @@ // add a test configuration for React Native. export const alwaysThrottleRetries = __VARIANT__; -export const enableObjectFiber = __VARIANT__; export const enableHiddenSubtreeInsertionEffectCleanup = __VARIANT__; export const enablePersistedModeClonedFlag = __VARIANT__; export const enableShallowPropDiffing = __VARIANT__; diff --git a/packages/shared/forks/ReactFeatureFlags.native-fb.js b/packages/shared/forks/ReactFeatureFlags.native-fb.js index b9e9bae96cb7d..659d28147e96f 100644 --- a/packages/shared/forks/ReactFeatureFlags.native-fb.js +++ b/packages/shared/forks/ReactFeatureFlags.native-fb.js @@ -22,7 +22,6 @@ export const { alwaysThrottleRetries, enableFabricCompleteRootInCommitPhase, enableHiddenSubtreeInsertionEffectCleanup, - enableObjectFiber, enablePersistedModeClonedFlag, enableShallowPropDiffing, enableUseEffectCRUDOverload, diff --git a/packages/shared/forks/ReactFeatureFlags.native-oss.js b/packages/shared/forks/ReactFeatureFlags.native-oss.js index baeef0b56483d..90d53c6d71a65 100644 --- a/packages/shared/forks/ReactFeatureFlags.native-oss.js +++ b/packages/shared/forks/ReactFeatureFlags.native-oss.js @@ -40,7 +40,6 @@ export const enableLegacyCache = false; export const enableLegacyFBSupport = false; export const enableLegacyHidden = false; export const enableNoCloningMemoCache = false; -export const enableObjectFiber = false; export const enablePersistedModeClonedFlag = false; export const enablePostpone = false; export const enableReactTestRendererWarning = false; diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.js index 1e3eedc9e2255..d7bebecf8d8b7 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.js @@ -92,7 +92,5 @@ export const enableRenderableContext = true; export const enableReactTestRendererWarning = true; export const disableDefaultPropsExceptForClasses = true; -export const enableObjectFiber = false; - // Flow magic to verify the exports of this file match the original version. ((((null: any): ExportsType): FeatureFlagsType): ExportsType); diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js index f2fa119800fa8..f6a514ae41f0f 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js @@ -34,7 +34,6 @@ export const enableLegacyCache = false; export const enableLegacyFBSupport = false; export const enableLegacyHidden = false; export const enableNoCloningMemoCache = false; -export const enableObjectFiber = false; export const enablePersistedModeClonedFlag = false; export const enablePostpone = false; export const enableProfilerCommitHooks = __PROFILE__; diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js index 2342b959f99f8..8fb1774969692 100644 --- a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js +++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js @@ -70,7 +70,6 @@ export const disableDefaultPropsExceptForClasses = true; export const renameElementSymbol = false; -export const enableObjectFiber = false; export const enableShallowPropDiffing = false; export const enableSiblingPrerendering = true; diff --git a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js index 0116e160b643e..aa6e9e11b2683 100644 --- a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js +++ b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js @@ -20,7 +20,6 @@ export const disableSchedulerTimeoutInWorkLoop = __VARIANT__; export const enableDO_NOT_USE_disableStrictPassiveEffect = __VARIANT__; export const enableHiddenSubtreeInsertionEffectCleanup = __VARIANT__; export const enableNoCloningMemoCache = __VARIANT__; -export const enableObjectFiber = __VARIANT__; export const enableRenderableContext = __VARIANT__; export const enableRetryLaneExpiration = __VARIANT__; export const enableTransitionTracing = __VARIANT__; diff --git a/packages/shared/forks/ReactFeatureFlags.www.js b/packages/shared/forks/ReactFeatureFlags.www.js index 0584af1f81826..0ec88b27df3cd 100644 --- a/packages/shared/forks/ReactFeatureFlags.www.js +++ b/packages/shared/forks/ReactFeatureFlags.www.js @@ -23,7 +23,6 @@ export const { enableHiddenSubtreeInsertionEffectCleanup, enableInfiniteRenderLoopDetection, enableNoCloningMemoCache, - enableObjectFiber, enableRenderableContext, enableRetryLaneExpiration, enableSiblingPrerendering,