dillon1000/react
Commit
Browse files Bugfix: Flush legacy sync passive effects at beginning of event (#21846)
* Re-land recent flushSync changes Adds back #21776 and #21775, which were removed due to an internal e2e test failure. Will attempt to fix in subsequent commits. * Failing test: Legacy mode sync passive effects In concurrent roots, if a render is synchronous, we flush its passive effects synchronously. In legacy roots, we don't do this because all updates are synchronous — so we need to flush at the beginning of the next event. This is how `discreteUpdates` worked. * Flush legacy passive effects at beginning of event Fixes test added in previous commit.
Changed paths17 files
First-parent comparisonpackages/react-devtools-shared/src/__tests__/__snapshots__/profilingCache-test.js.snap ModifiedM packages/react-dom/src/__tests__/ReactDOMFiber-test.js ModifiedM packages/react-dom/src/__tests__/ReactMount-test.js ModifiedM packages/react-dom/src/client/ReactDOM.js ModifiedM packages/react-dom/src/client/ReactDOMLegacy.js ModifiedM packages/react-dom/src/events/ReactDOMUpdateBatching.js ModifiedM packages/react-noop-renderer/src/ReactNoop.js ModifiedM packages/react-noop-renderer/src/ReactNoopPersistent.js ModifiedM packages/react-noop-renderer/src/createReactNoop.js ModifiedM packages/react-reconciler/src/ReactFiberReconciler.js ModifiedM packages/react-reconciler/src/ReactFiberReconciler.new.js ModifiedM packages/react-reconciler/src/ReactFiberReconciler.old.js ModifiedM packages/react-reconciler/src/ReactFiberWorkLoop.new.js ModifiedM packages/react-reconciler/src/ReactFiberWorkLoop.old.js ModifiedM packages/react-reconciler/src/__tests__/ReactFlushSync-test.js ModifiedM packages/react-reconciler/src/__tests__/ReactHooksWithNoopRenderer-test.js ModifiedM packages/react-reconciler/src/__tests__/ReactIncrementalScheduling-test.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…