Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clean up isInputPending in Scheduler #28444

Merged
merged 3 commits into from
Feb 27, 2024
Merged

clean up isInputPending in Scheduler #28444

merged 3 commits into from
Feb 27, 2024

Conversation

noahlemen
Copy link
Member

@noahlemen noahlemen commented Feb 26, 2024

Summary

isInputPending is not in use. This PR cleans up the flags controlling its gating and parameters to simplify Scheduler.

Makes frameYieldMs feature flag static, set to 10ms in www, which we found built on the wins provided by a broader yield interval via isInputPending. Flag remains set to 5ms in OSS builds.

How did you test this change?

yarn test Scheduler

@facebook-github-bot facebook-github-bot added CLA Signed React Core Team Opened by a member of the React Core Team labels Feb 26, 2024

// Since we yield every frame regardless, `requestPaint` has no effect.
}
function requestPaint() {}
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i expected to be able to clean this up too, but there are tests that rely on SchedulerMock's implementation of this

Copy link
Member

@rickhanlonii rickhanlonii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

@react-sizebot
Copy link

react-sizebot commented Feb 26, 2024

Comparing: 8fb0233...18e220b

Critical size changes

Includes critical production bundles, as well as any change greater than 2%:

Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable/react-dom/cjs/react-dom.production.min.js = 176.86 kB 176.86 kB = 55.14 kB 55.14 kB
oss-experimental/react-dom/cjs/react-dom.production.min.js = 179.01 kB 179.01 kB = 55.78 kB 55.78 kB
facebook-www/ReactDOM-prod.classic.js = 592.40 kB 592.40 kB = 104.67 kB 104.67 kB
facebook-www/ReactDOM-prod.modern.js = 575.68 kB 575.68 kB = 101.66 kB 101.66 kB
facebook-react-native/scheduler/cjs/Scheduler-dev.js = 19.67 kB 19.26 kB = 5.08 kB 4.97 kB
oss-experimental/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-stable-semver/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-stable/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-experimental/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-stable-semver/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-stable/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-experimental/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-stable-semver/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-stable/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-experimental/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-stable-semver/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-stable/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-experimental/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-stable-semver/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-stable/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-experimental/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
oss-stable-semver/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
oss-stable/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
facebook-www/Scheduler-profiling.classic.js = 16.00 kB 14.82 kB = 3.70 kB 3.47 kB
facebook-www/Scheduler-profiling.modern.js = 16.00 kB 14.82 kB = 3.70 kB 3.47 kB
facebook-www/Scheduler-prod.classic.js = 12.03 kB 10.84 kB = 2.90 kB 2.67 kB
facebook-www/Scheduler-prod.modern.js = 12.03 kB 10.84 kB = 2.90 kB 2.67 kB
facebook-www/Scheduler-dev.classic.js = 28.47 kB 25.49 kB = 6.81 kB 6.07 kB
facebook-www/Scheduler-dev.modern.js = 28.47 kB 25.49 kB = 6.81 kB 6.07 kB
test_utils/ReactAllWarnings.js Deleted 66.59 kB 0.00 kB Deleted 16.30 kB 0.00 kB

Significant size changes

Includes any change greater than 0.2%:

Expand to show
Name +/- Base Current +/- gzip Base gzip Current gzip
oss-experimental/react/umd/react.development.js = 125.98 kB 125.58 kB = 32.51 kB 32.40 kB
oss-stable/react/umd/react.development.js = 122.18 kB 121.78 kB = 31.39 kB 31.28 kB
oss-stable-semver/react/umd/react.development.js = 122.15 kB 121.75 kB = 31.36 kB 31.25 kB
facebook-www/SchedulerPostTask-dev.classic.js = 7.66 kB 7.56 kB = 2.10 kB 2.06 kB
facebook-www/SchedulerPostTask-dev.modern.js = 7.66 kB 7.56 kB = 2.10 kB 2.06 kB
oss-experimental/react/umd/react.production.min.js = 13.32 kB 13.14 kB = 5.08 kB 5.03 kB
oss-experimental/react/umd/react.profiling.min.js = 13.32 kB 13.14 kB = 5.08 kB 5.03 kB
oss-experimental/scheduler/cjs/scheduler-unstable_post_task.development.js = 6.79 kB 6.69 kB = 2.05 kB 2.01 kB
oss-stable-semver/scheduler/cjs/scheduler-unstable_post_task.development.js = 6.79 kB 6.69 kB = 2.05 kB 2.01 kB
oss-stable/scheduler/cjs/scheduler-unstable_post_task.development.js = 6.79 kB 6.69 kB = 2.05 kB 2.01 kB
oss-experimental/scheduler/cjs/scheduler-unstable_post_task.production.js = 6.74 kB 6.65 kB = 2.02 kB 1.97 kB
oss-stable-semver/scheduler/cjs/scheduler-unstable_post_task.production.js = 6.74 kB 6.65 kB = 2.02 kB 1.97 kB
oss-stable/scheduler/cjs/scheduler-unstable_post_task.production.js = 6.74 kB 6.65 kB = 2.02 kB 1.97 kB
oss-stable/react/umd/react.production.min.js = 12.44 kB 12.26 kB = 4.81 kB 4.76 kB
oss-stable/react/umd/react.profiling.min.js = 12.44 kB 12.26 kB = 4.81 kB 4.76 kB
oss-stable-semver/react/umd/react.production.min.js = 12.42 kB 12.24 kB = 4.78 kB 4.73 kB
oss-stable-semver/react/umd/react.profiling.min.js = 12.42 kB 12.24 kB = 4.78 kB 4.73 kB
facebook-react-native/scheduler/cjs/Scheduler-profiling.js = 11.03 kB 10.84 kB = 2.76 kB 2.70 kB
facebook-react-native/scheduler/cjs/Scheduler-prod.js = 10.60 kB 10.40 kB = 2.65 kB 2.60 kB
facebook-react-native/scheduler/cjs/Scheduler-dev.js = 19.67 kB 19.26 kB = 5.08 kB 4.97 kB
oss-experimental/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-stable-semver/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-stable/scheduler/cjs/scheduler.development.js = 17.58 kB 17.19 kB = 4.97 kB 4.86 kB
oss-experimental/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-stable-semver/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-stable/scheduler/cjs/scheduler.native.development.js = 17.18 kB 16.79 kB = 4.75 kB 4.64 kB
oss-experimental/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-stable-semver/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-stable/scheduler/cjs/scheduler.native.production.js = 17.07 kB 16.68 kB = 4.72 kB 4.60 kB
oss-experimental/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-stable-semver/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-stable/scheduler/cjs/scheduler.production.js = 16.84 kB 16.45 kB = 4.80 kB 4.69 kB
oss-experimental/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-stable-semver/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-stable/scheduler/cjs/scheduler.native.production.min.js = 4.69 kB 4.51 kB = 1.73 kB 1.68 kB
oss-experimental/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
oss-stable-semver/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
oss-stable/scheduler/cjs/scheduler.production.min.js = 4.26 kB 4.08 kB = 1.79 kB 1.74 kB
facebook-www/Scheduler-profiling.classic.js = 16.00 kB 14.82 kB = 3.70 kB 3.47 kB
facebook-www/Scheduler-profiling.modern.js = 16.00 kB 14.82 kB = 3.70 kB 3.47 kB
facebook-www/Scheduler-prod.classic.js = 12.03 kB 10.84 kB = 2.90 kB 2.67 kB
facebook-www/Scheduler-prod.modern.js = 12.03 kB 10.84 kB = 2.90 kB 2.67 kB
facebook-www/Scheduler-dev.classic.js = 28.47 kB 25.49 kB = 6.81 kB 6.07 kB
facebook-www/Scheduler-dev.modern.js = 28.47 kB 25.49 kB = 6.81 kB 6.07 kB
test_utils/ReactAllWarnings.js Deleted 66.59 kB 0.00 kB Deleted 16.30 kB 0.00 kB

Generated by 🚫 dangerJS against 18e220b

@noahlemen noahlemen merged commit 3bcd2de into main Feb 27, 2024
37 checks passed
@noahlemen noahlemen deleted the noahlemen/remove-iip branch February 27, 2024 15:39
github-actions bot pushed a commit that referenced this pull request Feb 27, 2024
## Summary

`isInputPending` is not in use. This PR cleans up the flags controlling
its gating and parameters to simplify Scheduler.

Makes `frameYieldMs` feature flag static, set to 10ms in www, which we
found built on the wins provided by a broader yield interval via
`isInputPending`. Flag remains set to 5ms in OSS builds.

## How did you test this change?
`yarn test Scheduler`

DiffTrain build for [3bcd2de](3bcd2de)
gnoff added a commit to gnoff/next.js that referenced this pull request Mar 25, 2024
- facebook/react#28596
- facebook/react#28625
- facebook/react#28616
- facebook/react#28491
- facebook/react#28583
- facebook/react#28427
- facebook/react#28613
- facebook/react#28599
- facebook/react#28611
- facebook/react#28610
- facebook/react#28606
- facebook/react#28598
- facebook/react#28549
- facebook/react#28557
- facebook/react#28467
- facebook/react#28591
- facebook/react#28459
- facebook/react#28590
- facebook/react#28564
- facebook/react#28582
- facebook/react#28579
- facebook/react#28578
- facebook/react#28521
- facebook/react#28550
- facebook/react#28576
- facebook/react#28577
- facebook/react#28571
- facebook/react#28572
- facebook/react#28560
- facebook/react#28569
- facebook/react#28573
- facebook/react#28546
- facebook/react#28568
- facebook/react#28562
- facebook/react#28566
- facebook/react#28565
- facebook/react#28559
- facebook/react#28508
- facebook/react#20432
- facebook/react#28555
- facebook/react#24730
- facebook/react#28472
- facebook/react#27991
- facebook/react#28514
- facebook/react#28548
- facebook/react#28526
- facebook/react#28515
- facebook/react#28533
- facebook/react#28532
- facebook/react#28531
- facebook/react#28407
- facebook/react#28522
- facebook/react#28538
- facebook/react#28509
- facebook/react#28534
- facebook/react#28527
- facebook/react#28528
- facebook/react#28519
- facebook/react#28411
- facebook/react#28520
- facebook/react#28518
- facebook/react#28493
- facebook/react#28504
- facebook/react#28499
- facebook/react#28501
- facebook/react#28496
- facebook/react#28471
- facebook/react#28351
- facebook/react#28486
- facebook/react#28490
- facebook/react#28488
- facebook/react#28468
- facebook/react#28321
- facebook/react#28477
- facebook/react#28479
- facebook/react#28480
- facebook/react#28478
- facebook/react#28464
- facebook/react#28475
- facebook/react#28456
- facebook/react#28319
- facebook/react#28345
- facebook/react#28337
- facebook/react#28335
- facebook/react#28466
- facebook/react#28462
- facebook/react#28322
- facebook/react#28444
- facebook/react#28448
- facebook/react#28449
- facebook/react#28446
- facebook/react#28447
- facebook/react#24580
- facebook/react#28514
- facebook/react#28548
- facebook/react#28526
- facebook/react#28515
- facebook/react#28533
- facebook/react#28532
- facebook/react#28531
- facebook/react#28407
- facebook/react#28522
- facebook/react#28538
- facebook/react#28509
- facebook/react#28534
- facebook/react#28527
- facebook/react#28528
- facebook/react#28519
- facebook/react#28411
- facebook/react#28520
- facebook/react#28518
- facebook/react#28493
- facebook/react#28504
- facebook/react#28499
- facebook/react#28501
- facebook/react#28496
- facebook/react#28471
- facebook/react#28351
- facebook/react#28486
- facebook/react#28490
- facebook/react#28488
- facebook/react#28468
- facebook/react#28321
- facebook/react#28477
- facebook/react#28479
- facebook/react#28480
- facebook/react#28478
- facebook/react#28464
- facebook/react#28475
- facebook/react#28456
- facebook/react#28319
- facebook/react#28345
- facebook/react#28337
- facebook/react#28335
- facebook/react#28466
- facebook/react#28462
- facebook/react#28322
- facebook/react#28444
- facebook/react#28448
- facebook/react#28449
- facebook/react#28446
- facebook/react#28447
- facebook/react#24580
gnoff added a commit to gnoff/next.js that referenced this pull request Mar 25, 2024
- facebook/react#28596
- facebook/react#28625
- facebook/react#28616
- facebook/react#28491
- facebook/react#28583
- facebook/react#28427
- facebook/react#28613
- facebook/react#28599
- facebook/react#28611
- facebook/react#28610
- facebook/react#28606
- facebook/react#28598
- facebook/react#28549
- facebook/react#28557
- facebook/react#28467
- facebook/react#28591
- facebook/react#28459
- facebook/react#28590
- facebook/react#28564
- facebook/react#28582
- facebook/react#28579
- facebook/react#28578
- facebook/react#28521
- facebook/react#28550
- facebook/react#28576
- facebook/react#28577
- facebook/react#28571
- facebook/react#28572
- facebook/react#28560
- facebook/react#28569
- facebook/react#28573
- facebook/react#28546
- facebook/react#28568
- facebook/react#28562
- facebook/react#28566
- facebook/react#28565
- facebook/react#28559
- facebook/react#28508
- facebook/react#20432
- facebook/react#28555
- facebook/react#24730
- facebook/react#28472
- facebook/react#27991
- facebook/react#28514
- facebook/react#28548
- facebook/react#28526
- facebook/react#28515
- facebook/react#28533
- facebook/react#28532
- facebook/react#28531
- facebook/react#28407
- facebook/react#28522
- facebook/react#28538
- facebook/react#28509
- facebook/react#28534
- facebook/react#28527
- facebook/react#28528
- facebook/react#28519
- facebook/react#28411
- facebook/react#28520
- facebook/react#28518
- facebook/react#28493
- facebook/react#28504
- facebook/react#28499
- facebook/react#28501
- facebook/react#28496
- facebook/react#28471
- facebook/react#28351
- facebook/react#28486
- facebook/react#28490
- facebook/react#28488
- facebook/react#28468
- facebook/react#28321
- facebook/react#28477
- facebook/react#28479
- facebook/react#28480
- facebook/react#28478
- facebook/react#28464
- facebook/react#28475
- facebook/react#28456
- facebook/react#28319
- facebook/react#28345
- facebook/react#28337
- facebook/react#28335
- facebook/react#28466
- facebook/react#28462
- facebook/react#28322
- facebook/react#28444
- facebook/react#28448
- facebook/react#28449
- facebook/react#28446
- facebook/react#28447
- facebook/react#24580
EdisonVan pushed a commit to EdisonVan/react that referenced this pull request Apr 15, 2024
## Summary

`isInputPending` is not in use. This PR cleans up the flags controlling
its gating and parameters to simplify Scheduler.

Makes `frameYieldMs` feature flag static, set to 10ms in www, which we
found built on the wins provided by a broader yield interval via
`isInputPending`. Flag remains set to 5ms in OSS builds.

## How did you test this change?
`yarn test Scheduler`
bigfootjon pushed a commit that referenced this pull request Apr 18, 2024
## Summary

`isInputPending` is not in use. This PR cleans up the flags controlling
its gating and parameters to simplify Scheduler.

Makes `frameYieldMs` feature flag static, set to 10ms in www, which we
found built on the wins provided by a broader yield interval via
`isInputPending`. Flag remains set to 5ms in OSS builds.

## How did you test this change?
`yarn test Scheduler`

DiffTrain build for commit 3bcd2de.
eps1lon added a commit to vercel/next.js that referenced this pull request Apr 19, 2024
### React upstream changes

- facebook/react#28643
- facebook/react#28628
- facebook/react#28361
- facebook/react#28513
- facebook/react#28299
- facebook/react#28617
- facebook/react#28618
- facebook/react#28621
- facebook/react#28614
- facebook/react#28596
- facebook/react#28625
- facebook/react#28616
- facebook/react#28491
- facebook/react#28583
- facebook/react#28427
- facebook/react#28613
- facebook/react#28599
- facebook/react#28611
- facebook/react#28610
- facebook/react#28606
- facebook/react#28598
- facebook/react#28549
- facebook/react#28557
- facebook/react#28467
- facebook/react#28591
- facebook/react#28459
- facebook/react#28590
- facebook/react#28564
- facebook/react#28582
- facebook/react#28579
- facebook/react#28578
- facebook/react#28521
- facebook/react#28550
- facebook/react#28576
- facebook/react#28577
- facebook/react#28571
- facebook/react#28572
- facebook/react#28560
- facebook/react#28569
- facebook/react#28573
- facebook/react#28546
- facebook/react#28568
- facebook/react#28562
- facebook/react#28566
- facebook/react#28565
- facebook/react#28559
- facebook/react#28508
- facebook/react#20432
- facebook/react#28555
- facebook/react#24730
- facebook/react#28472
- facebook/react#27991
- facebook/react#28514
- facebook/react#28548
- facebook/react#28526
- facebook/react#28515
- facebook/react#28533
- facebook/react#28532
- facebook/react#28531
- facebook/react#28407
- facebook/react#28522
- facebook/react#28538
- facebook/react#28509
- facebook/react#28534
- facebook/react#28527
- facebook/react#28528
- facebook/react#28519
- facebook/react#28411
- facebook/react#28520
- facebook/react#28518
- facebook/react#28493
- facebook/react#28504
- facebook/react#28499
- facebook/react#28501
- facebook/react#28496
- facebook/react#28471
- facebook/react#28351
- facebook/react#28486
- facebook/react#28490
- facebook/react#28488
- facebook/react#28468
- facebook/react#28321
- facebook/react#28477
- facebook/react#28479
- facebook/react#28480
- facebook/react#28478
- facebook/react#28464
- facebook/react#28475
- facebook/react#28456
- facebook/react#28319
- facebook/react#28345
- facebook/react#28337
- facebook/react#28335
- facebook/react#28466
- facebook/react#28462
- facebook/react#28322
- facebook/react#28444
- facebook/react#28448
- facebook/react#28449
- facebook/react#28446
- facebook/react#28447
- facebook/react#24580
- facebook/react#28514
- facebook/react#28548
- facebook/react#28526
- facebook/react#28515
- facebook/react#28533
- facebook/react#28532
- facebook/react#28531
- facebook/react#28407
- facebook/react#28522
- facebook/react#28538
- facebook/react#28509
- facebook/react#28534
- facebook/react#28527
- facebook/react#28528
- facebook/react#28519
- facebook/react#28411
- facebook/react#28520
- facebook/react#28518
- facebook/react#28493
- facebook/react#28504
- facebook/react#28499
- facebook/react#28501
- facebook/react#28496
- facebook/react#28471
- facebook/react#28351
- facebook/react#28486
- facebook/react#28490
- facebook/react#28488
- facebook/react#28468
- facebook/react#28321
- facebook/react#28477
- facebook/react#28479
- facebook/react#28480
- facebook/react#28478
- facebook/react#28464
- facebook/react#28475
- facebook/react#28456
- facebook/react#28319
- facebook/react#28345
- facebook/react#28337
- facebook/react#28335
- facebook/react#28466
- facebook/react#28462
- facebook/react#28322
- facebook/react#28444
- facebook/react#28448
- facebook/react#28449
- facebook/react#28446
- facebook/react#28447
- facebook/react#24580
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed React Core Team Opened by a member of the React Core Team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants