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: 9c32622cf04e70dd40463ece25e83b7cc311b0ed
Choose a base ref
...
head repository: facebook/react
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: a30d15f8df39b9140283a88cdae58ac02435826a
Choose a head ref
  • 1 commit
  • 10 files changed
  • 1 contributor

Commits on Jan 27, 2021

  1. Entangle overlapping transitions per queue

    When multiple transitions update the same queue, only the most recent
    one should be allowed to finish. We shouldn't show intermediate states.
    
    See #17418 for background on why this is important.
    
    The way this currently works is that we always assign the same lane to
    all transitions. It's impossible for one transition to finish without
    also finishing all the others.
    
    The downside of the current approach is that it's too aggressive. Not
    all transitions are related to each other, so one should not block
    the other.
    
    The new approach is to only entangle transitions if they update one or
    more of the same state hooks (or class components), because this
    indicates that they are related. If they are unrelated, then they can
    finish in any order, as long as they have different lanes.
    
    However, this commit does not change anything about how the lanes are
    assigned. All it does is add the mechanism to entangle per queue. So it
    doesn't actually change any behavior, yet. But it's a requirement for my
    next step, which is to assign different lanes to consecutive transitions
    until we run out and cycle back to the beginning.
    acdlite committed Jan 27, 2021
    Configuration menu
    Copy the full SHA
    a30d15f View commit details
    Browse the repository at this point in the history
Loading