\n' +
- '
\n' +
- '+ client\n' +
- '- server\n' +
- '\n in p (at **)',
- ],
- );
- if (favorSafetyOverHydrationPerf) {
- expect(domElement.innerHTML).not.toEqual(markup);
- } else {
- expect(domElement.innerHTML).toEqual(markup);
- }
+ expect(domElement.innerHTML).not.toEqual(markup);
});
it('should warn if innerHTML mismatches with dangerouslySetInnerHTML=undefined on the client', async () => {
diff --git a/packages/react-dom/src/__tests__/utils/ReactDOMServerIntegrationTestUtils.js b/packages/react-dom/src/__tests__/utils/ReactDOMServerIntegrationTestUtils.js
index 67d29fd33efdc..4d2bd050f7447 100644
--- a/packages/react-dom/src/__tests__/utils/ReactDOMServerIntegrationTestUtils.js
+++ b/packages/react-dom/src/__tests__/utils/ReactDOMServerIntegrationTestUtils.js
@@ -17,12 +17,10 @@ module.exports = function (initModules) {
let ReactDOMClient;
let ReactDOMServer;
let act;
- let ReactFeatureFlags;
function resetModules() {
({ReactDOM, ReactDOMClient, ReactDOMServer} = initModules());
act = require('internal-test-utils').act;
- ReactFeatureFlags = require('shared/ReactFeatureFlags');
}
function shouldUseDocument(reactElement) {
@@ -274,10 +272,8 @@ module.exports = function (initModules) {
const cleanTextContent =
(cleanContainer.lastChild && cleanContainer.lastChild.textContent) || '';
- if (ReactFeatureFlags.favorSafetyOverHydrationPerf) {
- // The only guarantee is that text content has been patched up if needed.
- expect(hydratedTextContent).toBe(cleanTextContent);
- }
+ // The only guarantee is that text content has been patched up if needed.
+ expect(hydratedTextContent).toBe(cleanTextContent);
// Abort any further expects. All bets are off at this point.
throw new BadMarkupExpected();
diff --git a/packages/react-reconciler/src/ReactFiberHydrationContext.js b/packages/react-reconciler/src/ReactFiberHydrationContext.js
index 8c811f1ef21b7..00e2fcddfcfea 100644
--- a/packages/react-reconciler/src/ReactFiberHydrationContext.js
+++ b/packages/react-reconciler/src/ReactFiberHydrationContext.js
@@ -30,7 +30,6 @@ import {
SuspenseComponent,
ActivityComponent,
} from './ReactWorkTags';
-import {favorSafetyOverHydrationPerf} from 'shared/ReactFeatureFlags';
import {createCapturedValueAtFiber} from './ReactCapturedValue';
@@ -558,7 +557,7 @@ function prepareToHydrateHostInstance(
hostContext,
fiber,
);
- if (!didHydrate && favorSafetyOverHydrationPerf) {
+ if (!didHydrate) {
throwOnHydrationMismatch(fiber, true);
}
}
@@ -624,7 +623,7 @@ function prepareToHydrateHostTextInstance(fiber: Fiber): void {
fiber,
parentProps,
);
- if (!didHydrate && favorSafetyOverHydrationPerf) {
+ if (!didHydrate) {
throwOnHydrationMismatch(fiber, true);
}
}
diff --git a/packages/shared/ReactFeatureFlags.js b/packages/shared/ReactFeatureFlags.js
index e247562b690cc..193301228ecc2 100644
--- a/packages/shared/ReactFeatureFlags.js
+++ b/packages/shared/ReactFeatureFlags.js
@@ -31,9 +31,6 @@ export const enableHydrationLaneScheduling = true;
// like migrating internal callers or performance testing.
// -----------------------------------------------------------------------------
-// TODO: Finish rolling out in www
-export const favorSafetyOverHydrationPerf = true;
-
// Need to remove didTimeout argument from Scheduler before landing
export const disableSchedulerTimeoutInWorkLoop = false;
diff --git a/packages/shared/forks/ReactFeatureFlags.native-fb.js b/packages/shared/forks/ReactFeatureFlags.native-fb.js
index 0c662271833df..352afe2c88591 100644
--- a/packages/shared/forks/ReactFeatureFlags.native-fb.js
+++ b/packages/shared/forks/ReactFeatureFlags.native-fb.js
@@ -66,7 +66,6 @@ export const enableTransitionTracing = false;
export const enableTrustedTypesIntegration = false;
export const enableUpdaterTracking = __PROFILE__;
export const enableUseEffectEventHook = false;
-export const favorSafetyOverHydrationPerf = true;
export const retryLaneExpirationMs = 5000;
export const syncLaneExpirationMs = 250;
export const transitionLaneExpirationMs = 5000;
diff --git a/packages/shared/forks/ReactFeatureFlags.native-oss.js b/packages/shared/forks/ReactFeatureFlags.native-oss.js
index ed372097cb4be..b9e29ca0ea146 100644
--- a/packages/shared/forks/ReactFeatureFlags.native-oss.js
+++ b/packages/shared/forks/ReactFeatureFlags.native-oss.js
@@ -52,7 +52,6 @@ export const enableTaint = true;
export const enableTransitionTracing = false;
export const enableTrustedTypesIntegration = false;
export const enableUseEffectEventHook = false;
-export const favorSafetyOverHydrationPerf = true;
export const passChildrenWhenCloningPersistedNodes = false;
export const renameElementSymbol = true;
export const retryLaneExpirationMs = 5000;
diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.js
index 66514e7697534..8d13173dfe8e2 100644
--- a/packages/shared/forks/ReactFeatureFlags.test-renderer.js
+++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.js
@@ -33,7 +33,6 @@ export const enableSuspenseAvoidThisFallback = false;
export const enableCPUSuspense = false;
export const enableNoCloningMemoCache = false;
export const enableUseEffectEventHook = false;
-export const favorSafetyOverHydrationPerf = true;
export const enableLegacyFBSupport = false;
export const enableMoveBefore = false;
export const enableHiddenSubtreeInsertionEffectCleanup = false;
diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js
index 51c6239dcd89d..63594bac238ca 100644
--- a/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js
+++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.native-fb.js
@@ -52,7 +52,6 @@ export const enableTransitionTracing = false;
export const enableTrustedTypesIntegration = false;
export const enableUpdaterTracking = false;
export const enableUseEffectEventHook = false;
-export const favorSafetyOverHydrationPerf = true;
export const passChildrenWhenCloningPersistedNodes = false;
export const renameElementSymbol = false;
export const retryLaneExpirationMs = 5000;
diff --git a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js
index ef912457ef8fb..449043e9fc926 100644
--- a/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js
+++ b/packages/shared/forks/ReactFeatureFlags.test-renderer.www.js
@@ -35,7 +35,6 @@ export const enableSuspenseAvoidThisFallback = true;
export const enableCPUSuspense = false;
export const enableNoCloningMemoCache = false;
export const enableUseEffectEventHook = false;
-export const favorSafetyOverHydrationPerf = true;
export const enableLegacyFBSupport = false;
export const enableMoveBefore = false;
export const enableHiddenSubtreeInsertionEffectCleanup = true;
diff --git a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js
index 2f4da5916e860..db9fa0f2cb3f9 100644
--- a/packages/shared/forks/ReactFeatureFlags.www-dynamic.js
+++ b/packages/shared/forks/ReactFeatureFlags.www-dynamic.js
@@ -21,7 +21,6 @@ export const enableNoCloningMemoCache = __VARIANT__;
export const enableObjectFiber = __VARIANT__;
export const enableRetryLaneExpiration = __VARIANT__;
export const enableTransitionTracing = __VARIANT__;
-export const favorSafetyOverHydrationPerf = __VARIANT__;
export const renameElementSymbol = __VARIANT__;
export const retryLaneExpirationMs = 5000;
export const syncLaneExpirationMs = 250;
diff --git a/packages/shared/forks/ReactFeatureFlags.www.js b/packages/shared/forks/ReactFeatureFlags.www.js
index 4acdf65a92274..994ffc40d9ba9 100644
--- a/packages/shared/forks/ReactFeatureFlags.www.js
+++ b/packages/shared/forks/ReactFeatureFlags.www.js
@@ -25,7 +25,6 @@ export const {
enableRetryLaneExpiration,
enableTransitionTracing,
enableTrustedTypesIntegration,
- favorSafetyOverHydrationPerf,
renameElementSymbol,
retryLaneExpirationMs,
syncLaneExpirationMs,