dillon1000/react

Commit

[Scheduler] Profiler Features (second try) (#16542)

* Revert "Revert "[Scheduler] Profiling features (#16145)" (#16392)"

This reverts commit 4ba1412305be3c77b625a70e3c0b9a8638626bd0.

* Fix copy paste mistake

* Remove init path dependency on ArrayBuffer

* Add a regression test for cancelling multiple tasks

* Prevent deopt from adding isQueued later

* Remove pop() calls that were added for profiling

* Verify that Suspend/Unsuspend events match up in tests

This currently breaks tests.

* Treat Suspend and Resume as exiting and entering work loop

Their definitions used to be more fuzzy. For example, Suspend didn't always fire on exit, and sometimes fired when we did _not_ exit (such as at task enqueue).

I chatted to Boone, and he's saying treating Suspend and Resume as strictly exiting and entering the loop is fine for their use case.

* Revert "Prevent deopt from adding isQueued later"

This reverts commit 9c30b0b695d81e9c43b296ab93d895e4416ef713.

Unnecessary because GCC

* Start counter with 1

* Group exports into unstable_Profiling namespace

* No catch in PROD codepath

* No label TODO

* No null checks
Browse files
Changed paths18 files
First-parent comparison
M .eslintrc.js ModifiedM packages/react-reconciler/src/__tests__/ReactIncrementalPerf-test.internal.js ModifiedM packages/scheduler/npm/umd/scheduler.development.js ModifiedM packages/scheduler/npm/umd/scheduler.production.min.js ModifiedM packages/scheduler/npm/umd/scheduler.profiling.min.js ModifiedM packages/scheduler/src/Scheduler.js ModifiedM packages/scheduler/src/SchedulerFeatureFlags.js ModifiedA packages/scheduler/src/SchedulerPriorities.js AddedA packages/scheduler/src/SchedulerProfiling.js AddedM packages/scheduler/src/__tests__/SchedulerDOM-test.js ModifiedA packages/scheduler/src/__tests__/SchedulerProfiling-test.js AddedM packages/scheduler/src/forks/SchedulerFeatureFlags.www.js ModifiedM packages/scheduler/src/forks/SchedulerHostConfig.default.js ModifiedM scripts/rollup/bundles.js ModifiedM scripts/rollup/validate/eslintrc.cjs.js ModifiedM scripts/rollup/validate/eslintrc.fb.js ModifiedM scripts/rollup/validate/eslintrc.rn.js ModifiedM scripts/rollup/validate/eslintrc.umd.js Modified
Patch

Files changed

Rendering syntax-highlighted changes…