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: 5d904f2d3c3a843a3f98f82babb29d0b47652214
Choose a base ref
...
head repository: facebook/react
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 42aff59d42b4c9b61b8e228d8b373aef976f47b9
Choose a head ref
  • 5 commits
  • 45 files changed
  • 3 contributors

Commits on Oct 21, 2022

  1. [Float] support meta tags as Resources (#25514)

    Stacked on #25508
    
    This PR adds meta tags as a resource type.
    
    metas are classified in the following priority
    
    1. charset
    2. http-equiv
    3. property
    4. name
    5. itemprop
    
    when using property, there is special logic for og type properties where
    a `property="og:image:height"` following a `property="og:image"` will
    inherit the key of the previous tag. this relies on timing effects to
    stay consistent so when mounting new metas it is important that if
    structured properties are being used all members of a structure mount
    together. This is similarly true for arrays where the implicit
    sequential order defines the array structure. if you need an array you
    need to mount all array members in the same pass.
    gnoff authored Oct 21, 2022
    Configuration menu
    Copy the full SHA
    973b90b View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2022

  1. [DevTools] upgrade to Manifest V3 (#25145)

    ## Summary
    
    resolves #24522
    
    To upgrade to Manifest V3, one of the biggest issue is that we are no
    longer allowed to add a script element with code in textContent so that
    it would run synchronously. It's necessary for us because we need to
    inject a global hook for react reconciler to detect whether devtools
    exist.
    To do that, we'll leverage a new API
    `chrome.scripting.registerContentScripts` in V3. Particularly, we rely
    on the "world" option (added in Chrome v102
    [commit](https://chromium.googlesource.com/chromium/src/+/e5ad3451c17b21341b0b9019b074801c44c92c9f))
    to run it in the "main world" on the page.
    
    This PR also renames a few content script files so that it's easier to
    tell them apart from other extension scripts and understand the purpose
    of each of them.
    
    Manifest V3 is not yet ready for Firefox, so we need to keep some code
    for compatibility.
    
    ## How did you test this change?
    
    `yarn build:chrome && yarn test:chrome`
    `yarn build:edge && yarn test:edge`
    `yarn build:firefox && yarn test:firefox`
    mondaychen authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    6dbccb9 View commit details
    Browse the repository at this point in the history
  2. [Float] support all links as Resources (#25515)

    stacked on #25514
    
    This PR adds support for any type of Link as long as it has a string rel
    and href and does not include an onLoad or onError property.
    
    The semantics for generic link resources matches other head resources,
    they will be inserted and removed as their ref counts go positive and
    back to zero.
    
    Keys are based on rel, href, sizes, and media.
    
    on the server preconnect and prefetch-dns are privileged and will emit
    near the start of the stream.
    gnoff authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    d1ced9f View commit details
    Browse the repository at this point in the history
  3. fix transposed escape functions (#25534)

    escapeTextForBrowser accepts any type so flow did not identify that we
    were escaping a Chunk rather than a string. It's tricky because we
    sometimes want to be able to escape non strings.
    
    I've also updated the types for `Chunk` and `escapeTextForBrowser`
    so that we should be able to catch this statically in the future.
    
    The reason this did not show up in tests is almost all of our tests of
    float (the areas affected by transpositions) are tested using the Node
    runtime where a chunk type is a string. It may be wise to run these
    tests in every runtime in the future or at least make sure there is
    broad representation of resources in each specific runtime test suite.
    gnoff authored Oct 22, 2022
    Configuration menu
    Copy the full SHA
    9341775 View commit details
    Browse the repository at this point in the history
  4. Rename "Wakeable" modules to "Thenable"

    The distinction between "wakeable" and "thenable" isn't really
    important in these files anymore so we should just pick one.
    acdlite committed Oct 22, 2022
    Configuration menu
    Copy the full SHA
    42aff59 View commit details
    Browse the repository at this point in the history
Loading