Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: facebook/react
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: b5bac18219636112a450d392c02102ec56262c74
Choose a base ref
...
head repository: facebook/react
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 261cf29afb9ed3f14038f7af27dc909117e29fb3
Choose a head ref
  • 2 commits
  • 6 files changed
  • 1 contributor

Commits on Feb 8, 2021

  1. Land enableTransitionEntanglement changes

    Leaving the flag though because I plan to reuse it for additional,
    similar changes.
    acdlite committed Feb 8, 2021
    Configuration menu
    Copy the full SHA
    cb328f5 View commit details
    Browse the repository at this point in the history
  2. Assign different lanes to consecutive transitions

    Currently we always assign the same lane to all transitions. This means
    if there are two pending transitions at the same time, neither
    transition can finish until both can finish, even if they affect
    completely separate parts of the UI.
    
    The new approach is to assign a different lane to each consecutive
    transition, by shifting the bit to the right each time. When we reach
    the end of the bit range, we cycle back to the first bit. In practice,
    this should mean that all transitions get their own dedicated lane,
    unless we have more pending transitions than lanes, which should
    be rare.
    
    We retain our existing behavior of assigning the same lane to all
    transitions within the same event. This is achieved by caching the first
    lane assigned to a transition, then re-using that one until the next
    React task, by which point the event must have finished. This preserves
    the guarantee that all transition updates that result from a single
    event will be consistent.
    acdlite committed Feb 8, 2021
    Configuration menu
    Copy the full SHA
    261cf29 View commit details
    Browse the repository at this point in the history
Loading