Skip to content

Commit 518d06d

Browse files
authored
Turn off enableYieldingBeforePassive (facebook#31857)
1 parent 36d15d5 commit 518d06d

File tree

2 files changed

+44
-1
lines changed

2 files changed

+44
-1
lines changed

packages/react-reconciler/src/__tests__/ReactSuspenseyCommitPhase-test.js

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,4 +491,46 @@ describe('ReactSuspenseyCommitPhase', () => {
491491
</>,
492492
);
493493
});
494+
495+
// FIXME: Should pass with `enableYieldingBeforePassive`
496+
// @gate !enableYieldingBeforePassive
497+
it('runs passive effects after suspended commit resolves', async () => {
498+
function Effect() {
499+
React.useEffect(() => {
500+
Scheduler.log('flush effect');
501+
});
502+
return <Text text="render effect" />;
503+
}
504+
505+
const root = ReactNoop.createRoot();
506+
507+
await act(() => {
508+
root.render(
509+
<Suspense fallback={<Text text="Loading..." />}>
510+
<Effect />
511+
<SuspenseyImage src="A" />
512+
</Suspense>,
513+
);
514+
});
515+
516+
assertLog([
517+
'render effect',
518+
'Image requested [A]',
519+
'Loading...',
520+
'render effect',
521+
]);
522+
expect(root).toMatchRenderedOutput('Loading...');
523+
524+
await act(() => {
525+
resolveSuspenseyThing('A');
526+
});
527+
528+
assertLog(['flush effect']);
529+
expect(root).toMatchRenderedOutput(
530+
<>
531+
{'render effect'}
532+
<suspensey-thing src="A" />
533+
</>,
534+
);
535+
});
494536
});

packages/shared/ReactFeatureFlags.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,8 @@ export const enableLegacyFBSupport = false;
7878
// -----------------------------------------------------------------------------
7979

8080
// Yield to the browser event loop and not just the scheduler event loop before passive effects.
81-
export const enableYieldingBeforePassive = __EXPERIMENTAL__;
81+
// Fix gated tests that fail with this flag enabled before turning it back on.
82+
export const enableYieldingBeforePassive = false;
8283

8384
export const enableLegacyCache = __EXPERIMENTAL__;
8485

0 commit comments

Comments
 (0)