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

[Flight Reply] Add Reply Encoding #26360

Merged
merged 3 commits into from Mar 10, 2023
Merged

Conversation

sebmarkbage
Copy link
Collaborator

@sebmarkbage sebmarkbage commented Mar 9, 2023

This adds encodeReply to the Flight Client and decodeReply to the Flight Server.

Basically, it's a reverse Flight. It serializes values passed from the client to the server. I call this a "Reply". The tradeoffs and implementation details are a bit different so it requires its own implementation but is basically a clone of the Flight Server/Client but in reverse. Either through callServer or ServerContext.

The goal of this project is to provide the equivalent serialization as passing props through RSC to client. Except React Elements and Components and such. So that you can pass a value to the client and back and it should have the same serialization constraints so when we add features in one direction we should mostly add it in the other.

Browser support for streaming request bodies are currently very limited in that only Chrome supports it. So this doesn't produce a ReadableStream. Instead encodeReply produces either a JSON string or FormData. It uses a JSON string if it's a simple enough payload. For advanced features it uses FormData. This will also let the browser stream things like File objects (even though they're not yet supported since it follows the same rules as the other Flight).

On the server side, you can either consume this by blocking on generating a FormData object or you can stream in the multipart/form-data. Even if the client isn't streaming data, the network does. On Node.js busboy seems to be the canonical library for this, so I exposed a decodeReplyFromBusboy in the Node build. However, if there's ever a web-standard way to stream form data, or if a library wins in that space we can support it. We can also just build a multipart parser that takes a ReadableStream built-in.

On the server, server references passed as arguments are loaded from Node or Webpack just like the client or SSR does. This means that you can create higher order functions on the client or server. This can be tokenized when done from a server components but this is a security implication as it might be tempting to think that these are not fungible but you can swap one function for another on the client. So you have to basically treat an incoming argument as insecure, even if it's a function.

I'm not too happy with the naming parity:

Encode server.renderToReadableStream Decode: client.createFromFetch

Decode client.encodeReply Decode: server.decodeReply

This is mainly an implementation details of frameworks but it's annoying nonetheless. This comes from that renderToReadableStream does do some "rendering" by unwrapping server components etc. The create part comes from the parity with Fizz/Fiber where you render on the server and create a root on the client.

Open to bike-shedding this some more.

@react-sizebot
Copy link

react-sizebot commented Mar 9, 2023

Comparing: 2b003a5...aa16541

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 = 156.70 kB 156.70 kB = 49.58 kB 49.58 kB
oss-experimental/react-dom/cjs/react-dom.production.min.js = 158.70 kB 158.70 kB = 50.25 kB 50.25 kB
facebook-www/ReactDOM-prod.classic.js = 538.92 kB 538.92 kB = 95.86 kB 95.86 kB
facebook-www/ReactDOM-prod.modern.js = 522.78 kB 522.78 kB = 93.55 kB 93.55 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.42% 88.66 kB 104.10 kB +16.73% 21.69 kB 25.32 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.42% 88.66 kB 104.10 kB +16.73% 21.69 kB 25.32 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.41% 88.71 kB 104.15 kB +16.70% 21.71 kB 25.34 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.70% 25.19 kB 29.39 kB +15.99% 8.68 kB 10.07 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.70% 25.19 kB 29.39 kB +15.99% 8.68 kB 10.07 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.67% 25.23 kB 29.44 kB +15.91% 8.70 kB 10.09 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.41% 91.40 kB 106.39 kB +15.37% 21.75 kB 25.10 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.41% 91.40 kB 106.39 kB +15.37% 21.75 kB 25.10 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.39% 91.46 kB 106.45 kB +15.35% 21.78 kB 25.12 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.29% 86.91 kB 101.06 kB +15.56% 21.47 kB 24.81 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.29% 86.91 kB 101.06 kB +15.56% 21.47 kB 24.81 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.28% 86.96 kB 101.12 kB +15.54% 21.49 kB 24.83 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.20% 87.40 kB 101.55 kB +15.41% 21.62 kB 24.96 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.20% 87.40 kB 101.55 kB +15.41% 21.62 kB 24.96 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.18% 87.45 kB 101.61 kB +15.39% 21.64 kB 24.98 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.84% 88.67 kB 102.71 kB +14.93% 21.70 kB 24.94 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.84% 88.67 kB 102.71 kB +14.93% 21.70 kB 24.94 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.83% 88.72 kB 102.76 kB +14.91% 21.72 kB 24.96 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.69% 25.20 kB 29.15 kB +14.67% 8.69 kB 9.96 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.69% 25.20 kB 29.15 kB +14.67% 8.69 kB 9.96 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.66% 25.24 kB 29.20 kB +14.72% 8.71 kB 9.99 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.08% 24.53 kB 28.23 kB +13.96% 8.50 kB 9.68 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.08% 24.53 kB 28.23 kB +13.96% 8.50 kB 9.68 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.05% 24.58 kB 28.27 kB +13.91% 8.52 kB 9.71 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.90% 24.82 kB 28.51 kB +13.82% 8.60 kB 9.79 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.90% 24.82 kB 28.51 kB +13.82% 8.60 kB 9.79 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.87% 24.86 kB 28.56 kB +13.85% 8.62 kB 9.81 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.87% 24.76 kB 28.44 kB +13.98% 8.58 kB 9.78 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.87% 24.76 kB 28.44 kB +13.98% 8.58 kB 9.78 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.84% 24.80 kB 28.48 kB +13.94% 8.60 kB 9.80 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-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js +62.93% 26.06 kB 42.47 kB +54.74% 6.79 kB 10.51 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.development.js +61.98% 27.87 kB 45.15 kB +53.94% 6.94 kB 10.68 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.min.js +19.11% 7.10 kB 8.46 kB +17.83% 2.84 kB 3.34 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-client.browser.production.min.js +18.41% 7.36 kB 8.71 kB +16.78% 2.97 kB 3.47 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.42% 88.66 kB 104.10 kB +16.73% 21.69 kB 25.32 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.42% 88.66 kB 104.10 kB +16.73% 21.69 kB 25.32 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js +17.41% 88.71 kB 104.15 kB +16.70% 21.71 kB 25.34 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.70% 25.19 kB 29.39 kB +15.99% 8.68 kB 10.07 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.70% 25.19 kB 29.39 kB +15.99% 8.68 kB 10.07 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.min.js +16.67% 25.23 kB 29.44 kB +15.91% 8.70 kB 10.09 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.41% 91.40 kB 106.39 kB +15.37% 21.75 kB 25.10 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.41% 91.40 kB 106.39 kB +15.37% 21.75 kB 25.10 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.development.js +16.39% 91.46 kB 106.45 kB +15.35% 21.78 kB 25.12 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.29% 86.91 kB 101.06 kB +15.56% 21.47 kB 24.81 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.29% 86.91 kB 101.06 kB +15.56% 21.47 kB 24.81 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js +16.28% 86.96 kB 101.12 kB +15.54% 21.49 kB 24.83 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.20% 87.40 kB 101.55 kB +15.41% 21.62 kB 24.96 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.20% 87.40 kB 101.55 kB +15.41% 21.62 kB 24.96 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js +16.18% 87.45 kB 101.61 kB +15.39% 21.64 kB 24.98 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.84% 88.67 kB 102.71 kB +14.93% 21.70 kB 24.94 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.84% 88.67 kB 102.71 kB +14.93% 21.70 kB 24.94 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.development.js +15.83% 88.72 kB 102.76 kB +14.91% 21.72 kB 24.96 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.69% 25.20 kB 29.15 kB +14.67% 8.69 kB 9.96 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.69% 25.20 kB 29.15 kB +14.67% 8.69 kB 9.96 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.unbundled.production.min.js +15.66% 25.24 kB 29.20 kB +14.72% 8.71 kB 9.99 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.08% 24.53 kB 28.23 kB +13.96% 8.50 kB 9.68 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.08% 24.53 kB 28.23 kB +13.96% 8.50 kB 9.68 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.min.js +15.05% 24.58 kB 28.27 kB +13.91% 8.52 kB 9.71 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.90% 24.82 kB 28.51 kB +13.82% 8.60 kB 9.79 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.90% 24.82 kB 28.51 kB +13.82% 8.60 kB 9.79 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.min.js +14.87% 24.86 kB 28.56 kB +13.85% 8.62 kB 9.81 kB
oss-stable-semver/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.87% 24.76 kB 28.44 kB +13.98% 8.58 kB 9.78 kB
oss-stable/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.87% 24.76 kB 28.44 kB +13.98% 8.58 kB 9.78 kB
oss-experimental/react-server-dom-webpack/umd/react-server-dom-webpack-server.browser.production.min.js +14.84% 24.80 kB 28.48 kB +13.94% 8.60 kB 9.80 kB
oss-experimental/react-client/cjs/react-client-flight.production.min.js +1.16% 5.97 kB 6.04 kB +1.66% 2.35 kB 2.39 kB
oss-stable-semver/react-client/cjs/react-client-flight.production.min.js +1.16% 5.97 kB 6.04 kB +1.66% 2.35 kB 2.39 kB
oss-stable/react-client/cjs/react-client-flight.production.min.js +1.16% 5.97 kB 6.04 kB +1.66% 2.35 kB 2.39 kB
facebook-www/ReactFlightDOMRelayClient-prod.classic.js +0.83% 12.04 kB 12.14 kB +1.24% 3.07 kB 3.10 kB
facebook-www/ReactFlightDOMRelayClient-prod.modern.js +0.83% 12.04 kB 12.14 kB +1.24% 3.07 kB 3.10 kB
facebook-relay/flight/ReactFlightNativeRelayClient-prod.js +0.83% 12.05 kB 12.15 kB +1.37% 3.06 kB 3.10 kB
oss-experimental/react-client/cjs/react-client-flight.development.js +0.59% 21.82 kB 21.95 kB +0.62% 5.80 kB 5.84 kB
oss-stable-semver/react-client/cjs/react-client-flight.development.js +0.59% 21.82 kB 21.95 kB +0.62% 5.80 kB 5.84 kB
oss-stable/react-client/cjs/react-client-flight.development.js +0.59% 21.82 kB 21.95 kB +0.62% 5.80 kB 5.84 kB
facebook-www/ReactFlightDOMRelayClient-dev.classic.js +0.46% 19.60 kB 19.69 kB +0.53% 5.14 kB 5.16 kB
facebook-www/ReactFlightDOMRelayClient-dev.modern.js +0.46% 19.60 kB 19.69 kB +0.53% 5.14 kB 5.16 kB
facebook-relay/flight/ReactFlightNativeRelayClient-dev.js +0.46% 19.68 kB 19.77 kB +0.50% 5.15 kB 5.18 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.min.js +0.44% 6.31 kB 6.34 kB +0.96% 2.51 kB 2.53 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.min.js +0.44% 6.31 kB 6.34 kB +0.96% 2.51 kB 2.53 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.production.min.js +0.44% 6.31 kB 6.34 kB +0.96% 2.51 kB 2.53 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.min.js +0.41% 6.75 kB 6.78 kB +0.77% 2.72 kB 2.74 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.min.js +0.41% 6.75 kB 6.78 kB +0.77% 2.72 kB 2.74 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.min.js +0.41% 6.75 kB 6.78 kB +0.77% 2.72 kB 2.74 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.min.js +0.41% 6.82 kB 6.85 kB +0.80% 2.77 kB 2.79 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.min.js +0.41% 6.82 kB 6.85 kB +0.80% 2.77 kB 2.79 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.min.js +0.41% 6.82 kB 6.85 kB +0.80% 2.77 kB 2.79 kB
oss-experimental/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js +0.39% 23.22 kB 23.31 kB +0.48% 6.09 kB 6.12 kB
oss-stable-semver/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js +0.39% 23.22 kB 23.31 kB +0.48% 6.09 kB 6.12 kB
oss-stable/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.unbundled.development.js +0.39% 23.22 kB 23.31 kB +0.48% 6.09 kB 6.12 kB

Generated by 🚫 dangerJS against aa16541

These packages were renamed before but the tests fixtures didn't use this
terminology. It makes less sense after facebook#26360 since writing/reading happens
both ways.
});
return ReactServerDOMReader.createFromFetch(response);
return createFromFetch(response);
Copy link
Collaborator

Choose a reason for hiding this comment

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

Why do you model the resolve handling like this is a RSC render? I get that you may want to return a rendered tree but if this is just a "API" endpoint that returns JSON data or something it seems odd to process the response like it is a component tree. It's interesting that if you did render suspense boundaries you could get an object that could construct itself incrementally as bits stream in but I have a hard time wrapping my head around that as a general purpose response handler instead of something specifc to fetching and integrating flight payloads

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's not just a renderer. It's a general purpose serializer with much more rich options of the payload, and more to come. So it's used as a better alternative to JSON.stringify.

Since that implementation also happens to be what you'd use to render a real response which likely contains an update to the current page, it's conveniently the same thing.

Copy link
Collaborator

Choose a reason for hiding this comment

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

right but if I send { eager: "eager", lazy: sleep(5000).then(() => "lazy") }

i still have to wait 5 seconds to see the result because there is no way to expose an incomplete value and then update it to a complete value. We use Suspense boundaries for React trees and we can re-evaluate the value on each render attempt, but for a general purpose response object we'd need some similar kind of construct which groups a value into revealable. I mean we could literally use suspense but that just feels kind strange

Do you have a vision for what this more generalizable type is so you can really take advantage of the unique characteristics of the flight format and runtime?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think you're just describing Promises? The consumer can just const value = await result.lazy?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's not really anything fancy. It's just passing values that are already common place in the language so you just use it as if it was local.

Copy link
Contributor

Choose a reason for hiding this comment

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

So this basically allows us to stream JSON back to the client by serialising some properties as promises, which is pretty cool, I must say. 🎉 Although this is already working in main and has nothing to do with this change, but I'm just now realising this. So this example would be serialised to

0:"$@1"
1:{"eager":"eager","lazy":"$@2"}
2:"lazy"

where the eager chunk is sent immediately, and the lazy chunk is sent after 5 seconds. With async iterators soon to be serialisable, I guess you could use that e.g. to render the progress of a long running task?

}
}

export function processReply(
Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm struggling with the framing of reply. It requires a context that I'm not sure everyone is going to have initially. Reply to what exactly? In trying to make it make sense to me I think of it as "The server sent some data to me and since I am sending data in reverse I am replying". But that doesn't really make a lot of sense.

If we always position our names from the perspective of the client then we make a Request (client -> server) and get a Response (server -> client). If we call the analog of Request Reply then we have Reply and Response which just seems odd.

I assume that calling it Reply is because Flight goes in a certain direction today and so to make a reverse flight protocol using reply seems kinda natural. But that's sort of a temporal detail (one existed before the other).

If we developed both at the same time I think we might come up with

Flight Response : server -> client
Flight Request : client -> server

But Flight Request may hew too closely to a regular request which is not a Flight Request so maybe we call it Flight Call since it models calling functions on the server?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The client can only reply to something that the server already sent. It's still server centric. E.g. you can't call a server function first. It's also locked in version so even if you've received a function in an earlier visit, it might not be valid anymore. You must get a new handle to something that you can reply to. Similarly the Server can pass any Client References it wants. The Client can just reply with what it has already been given and prompted with.

It's not always a call to functions on the server. E.g. updates/navigations that serializes Server Context or params also contain a "reply".

Request/Response as terminology doesn't make sense since it's overloaded with the HTTP request/response that happens in both directions.

Copy link
Collaborator

Choose a reason for hiding this comment

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

Is Postback a similar concept?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yea but we're also going to have literal postbacks which is not this, so it'd be overloaded.

typo

Co-authored-by: Josh Story <josh.c.story@gmail.com>
@acdlite
Copy link
Collaborator

acdlite commented Mar 10, 2023

Encode server.renderToReadableStream Decode: client.createFromFetch

Decode client.encodeReply Decode: server.decodeReply

I suppose the lack of parity is because renderToReadableStream was chosen to match the Fizz API. Which seems like an OK trade off. But if you'd rather these match, the encode/decode makes sense to me.

Is "Flight" the public name for the format or do we consider that an internal codename? One option is

  • Encode: server.encodeFlight, Decode: client.decodeFlight
  • Encode: client.encodeFlightReply, Decode: server.decodeFlightReply

The fact that they're slightly different formats with different constraints is a bit awkward in terms of naming but I really like the "reply" terminology.

const result = action.apply(null, args);
let args;
if (req.is('multipart/form-data')) {
// Use busboy to streamingly parse the reply from form-data.
Copy link
Collaborator

Choose a reason for hiding this comment

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

React Server Components: Streamingly Fast.

Streaming means good.

// eslint-disable-next-line react-internal/safe-string-coercion
data.append('' + promiseId, partJSON);
pendingParts--;
if (pendingParts === 0) {
Copy link
Collaborator

Choose a reason for hiding this comment

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

Are we going to trust the thenables to not be evil and call resolve multiple times? This came up with Suspensey CSS/Images too but we can punt there because we control the implementation. In this case the thenables are from userspace.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yea, I think it's fair to assume that. I don't think this be used much without real promises anyway. Mainly the ones we vendor which are also real-ish.

This is also the implementation on the server already.

Copy link
Collaborator

@acdlite acdlite left a comment

Choose a reason for hiding this comment

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

This is streamingly exciting

@sebmarkbage sebmarkbage merged commit ef8bdbe into facebook:main Mar 10, 2023
github-actions bot pushed a commit that referenced this pull request Mar 10, 2023
This adds `encodeReply` to the Flight Client and `decodeReply` to the
Flight Server.

Basically, it's a reverse Flight. It serializes values passed from the
client to the server. I call this a "Reply". The tradeoffs and
implementation details are a bit different so it requires its own
implementation but is basically a clone of the Flight Server/Client but
in reverse. Either through callServer or ServerContext.

The goal of this project is to provide the equivalent serialization as
passing props through RSC to client. Except React Elements and
Components and such. So that you can pass a value to the client and back
and it should have the same serialization constraints so when we add
features in one direction we should mostly add it in the other.

Browser support for streaming request bodies are currently very limited
in that only Chrome supports it. So this doesn't produce a
ReadableStream. Instead `encodeReply` produces either a JSON string or
FormData. It uses a JSON string if it's a simple enough payload. For
advanced features it uses FormData. This will also let the browser
stream things like File objects (even though they're not yet supported
since it follows the same rules as the other Flight).

On the server side, you can either consume this by blocking on
generating a FormData object or you can stream in the
`multipart/form-data`. Even if the client isn't streaming data, the
network does. On Node.js busboy seems to be the canonical library for
this, so I exposed a `decodeReplyFromBusboy` in the Node build. However,
if there's ever a web-standard way to stream form data, or if a library
wins in that space we can support it. We can also just build a multipart
parser that takes a ReadableStream built-in.

On the server, server references passed as arguments are loaded from
Node or Webpack just like the client or SSR does. This means that you
can create higher order functions on the client or server. This can be
tokenized when done from a server components but this is a security
implication as it might be tempting to think that these are not fungible
but you can swap one function for another on the client. So you have to
basically treat an incoming argument as insecure, even if it's a
function.

I'm not too happy with the naming parity:

Encode `server.renderToReadableStream` Decode: `client.createFromFetch`

Decode `client.encodeReply` Decode: `server.decodeReply`

This is mainly an implementation details of frameworks but it's annoying
nonetheless. This comes from that `renderToReadableStream` does do some
"rendering" by unwrapping server components etc. The `create` part comes
from the parity with Fizz/Fiber where you `render` on the server and
`create` a root on the client.

Open to bike-shedding this some more.

---------

Co-authored-by: Josh Story <josh.c.story@gmail.com>

DiffTrain build for [ef8bdbe](ef8bdbe)
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull request Mar 14, 2023
Summary:
This sync includes the following changes:
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...f828bad

jest_e2e[run_all_tests]

Reviewed By: robhogan, rshest

Differential Revision: D44024996

fbshipit-source-id: 8ac9754c5ffe12bd5d9c3499515c0925bd411f70
unstubbable added a commit to unstubbable/mfng that referenced this pull request Mar 14, 2023
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull request Mar 15, 2023
Summary:
This sync includes the following changes:
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...47cf4e5

jest_e2e[run_all_tests]

Reviewed By: sammy-SC

Differential Revision: D44090004

fbshipit-source-id: 6ac2d1d22a078d07ce011481063e78843bded28e
facebook-github-bot pushed a commit to facebook/react-native that referenced this pull request Mar 21, 2023
Summary:
This sync includes the following changes:
- **[3554c8852](facebook/react@3554c8852 )**: Clean interface for public instances between React and React Native ([#26416](facebook/react#26416)) //<Rubén Norte>//
- **[db281b3d9](facebook/react@db281b3d9 )**: Feature: Suspend commit without blocking render ([#26398](facebook/react#26398)) //<Andrew Clark>//
- **[55308554e](facebook/react@55308554e )**: [www] enable enableFilterEmptyStringAttributesDOM flag ([#26410](facebook/react#26410)) //<Jan Kassens>//
- **[163d86e19](facebook/react@163d86e19 )**: Updated comment message ([#26158](facebook/react#26158)) //<Ibrahim Amin>//
- **[108aed083](facebook/react@108aed083 )**: Fix use of stale props in Fabric events ([#26408](facebook/react#26408)) //<Rubén Norte>//
- **[8fa41ffa2](facebook/react@8fa41ffa2 )**: Don't "fix up" mismatched text content with suppressedHydrationWarning ([#26391](facebook/react#26391)) //<Sebastian Markbåge>//
- **[05777ffb0](facebook/react@05777ffb0 )**: Setting transition pending flag shouldn't be part of a surrounding transition ([#26243](facebook/react#26243)) //<Sophie Alpert>//
- **[99aa082be](facebook/react@99aa082be )**: Remove unstable_flushControlled ([#26397](facebook/react#26397)) //<Jan Kassens>//
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...3554c88

jest_e2e[run_all_tests]
bypass-github-export-checks

@public

Fixes tests for current React version.

Reviewed By: sammy-SC

Differential Revision: D44216371

fbshipit-source-id: a569c9aeaf2d96d150219e148f06dcde9ba6f7cd
facebook-github-bot pushed a commit to facebook/relay that referenced this pull request Mar 21, 2023
Summary:
This sync includes the following changes:
- **[3554c8852](facebook/react@3554c8852 )**: Clean interface for public instances between React and React Native ([#26416](facebook/react#26416)) //<Rubén Norte>//
- **[db281b3d9](facebook/react@db281b3d9 )**: Feature: Suspend commit without blocking render ([#26398](facebook/react#26398)) //<Andrew Clark>//
- **[55308554e](facebook/react@55308554e )**: [www] enable enableFilterEmptyStringAttributesDOM flag ([#26410](facebook/react#26410)) //<Jan Kassens>//
- **[163d86e19](facebook/react@163d86e19 )**: Updated comment message ([#26158](facebook/react#26158)) //<Ibrahim Amin>//
- **[108aed083](facebook/react@108aed083 )**: Fix use of stale props in Fabric events ([#26408](facebook/react#26408)) //<Rubén Norte>//
- **[8fa41ffa2](facebook/react@8fa41ffa2 )**: Don't "fix up" mismatched text content with suppressedHydrationWarning ([#26391](facebook/react#26391)) //<Sebastian Markbåge>//
- **[05777ffb0](facebook/react@05777ffb0 )**: Setting transition pending flag shouldn't be part of a surrounding transition ([#26243](facebook/react#26243)) //<Sophie Alpert>//
- **[99aa082be](facebook/react@99aa082be )**: Remove unstable_flushControlled ([#26397](facebook/react#26397)) //<Jan Kassens>//
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...3554c88

jest_e2e[run_all_tests]
bypass-github-export-checks

Fixes tests for current React version.

Reviewed By: sammy-SC

Differential Revision: D44216371

fbshipit-source-id: a569c9aeaf2d96d150219e148f06dcde9ba6f7cd
jeongshin pushed a commit to jeongshin/react-native that referenced this pull request May 7, 2023
Summary:
This sync includes the following changes:
- **[3554c8852](facebook/react@3554c8852 )**: Clean interface for public instances between React and React Native ([facebook#26416](facebook/react#26416)) //<Rubén Norte>//
- **[db281b3d9](facebook/react@db281b3d9 )**: Feature: Suspend commit without blocking render ([facebook#26398](facebook/react#26398)) //<Andrew Clark>//
- **[55308554e](facebook/react@55308554e )**: [www] enable enableFilterEmptyStringAttributesDOM flag ([facebook#26410](facebook/react#26410)) //<Jan Kassens>//
- **[163d86e19](facebook/react@163d86e19 )**: Updated comment message ([facebook#26158](facebook/react#26158)) //<Ibrahim Amin>//
- **[108aed083](facebook/react@108aed083 )**: Fix use of stale props in Fabric events ([facebook#26408](facebook/react#26408)) //<Rubén Norte>//
- **[8fa41ffa2](facebook/react@8fa41ffa2 )**: Don't "fix up" mismatched text content with suppressedHydrationWarning ([facebook#26391](facebook/react#26391)) //<Sebastian Markbåge>//
- **[05777ffb0](facebook/react@05777ffb0 )**: Setting transition pending flag shouldn't be part of a surrounding transition ([facebook#26243](facebook/react#26243)) //<Sophie Alpert>//
- **[99aa082be](facebook/react@99aa082be )**: Remove unstable_flushControlled ([facebook#26397](facebook/react#26397)) //<Jan Kassens>//
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([facebook#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([facebook#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([facebook#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([facebook#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([facebook#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([facebook#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([facebook#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([facebook#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([facebook#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([facebook#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([facebook#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([facebook#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([facebook#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([facebook#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([facebook#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([facebook#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([facebook#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([facebook#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([facebook#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([facebook#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([facebook#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([facebook#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([facebook#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([facebook#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([facebook#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([facebook#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([facebook#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([facebook#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([facebook#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([facebook#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([facebook#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([facebook#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([facebook#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([facebook#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([facebook#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([facebook#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([facebook#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([facebook#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([facebook#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([facebook#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([facebook#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([facebook#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([facebook#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([facebook#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([facebook#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([facebook#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([facebook#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([facebook#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([facebook#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([facebook#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([facebook#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([facebook#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([facebook#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([facebook#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([facebook#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([facebook#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([facebook#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([facebook#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([facebook#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([facebook#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([facebook#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([facebook#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([facebook#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([facebook#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([facebook#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([facebook#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([facebook#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([facebook#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([facebook#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([facebook#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([facebook#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([facebook#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([facebook#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([facebook#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([facebook#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([facebook#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([facebook#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([facebook#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([facebook#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([facebook#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([facebook#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...3554c88

jest_e2e[run_all_tests]
bypass-github-export-checks

@public

Fixes tests for current React version.

Reviewed By: sammy-SC

Differential Revision: D44216371

fbshipit-source-id: a569c9aeaf2d96d150219e148f06dcde9ba6f7cd
OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
Summary:
This sync includes the following changes:
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([facebook#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([facebook#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([facebook#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([facebook#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([facebook#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([facebook#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([facebook#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([facebook#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([facebook#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([facebook#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([facebook#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([facebook#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([facebook#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([facebook#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([facebook#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([facebook#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([facebook#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([facebook#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([facebook#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([facebook#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([facebook#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([facebook#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([facebook#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([facebook#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([facebook#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([facebook#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([facebook#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([facebook#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([facebook#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([facebook#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([facebook#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([facebook#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([facebook#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([facebook#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([facebook#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([facebook#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([facebook#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([facebook#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([facebook#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([facebook#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([facebook#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([facebook#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([facebook#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([facebook#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([facebook#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([facebook#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([facebook#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([facebook#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([facebook#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([facebook#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([facebook#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([facebook#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([facebook#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([facebook#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([facebook#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([facebook#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([facebook#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([facebook#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([facebook#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([facebook#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([facebook#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([facebook#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([facebook#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([facebook#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([facebook#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([facebook#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([facebook#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([facebook#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([facebook#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([facebook#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([facebook#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([facebook#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([facebook#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([facebook#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...f828bad

jest_e2e[run_all_tests]

Reviewed By: robhogan, rshest

Differential Revision: D44024996

fbshipit-source-id: 8ac9754c5ffe12bd5d9c3499515c0925bd411f70
OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
Summary:
This sync includes the following changes:
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([facebook#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([facebook#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([facebook#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([facebook#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([facebook#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([facebook#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([facebook#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([facebook#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([facebook#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([facebook#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([facebook#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([facebook#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([facebook#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([facebook#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([facebook#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([facebook#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([facebook#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([facebook#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([facebook#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([facebook#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([facebook#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([facebook#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([facebook#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([facebook#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([facebook#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([facebook#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([facebook#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([facebook#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([facebook#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([facebook#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([facebook#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([facebook#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([facebook#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([facebook#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([facebook#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([facebook#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([facebook#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([facebook#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([facebook#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([facebook#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([facebook#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([facebook#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([facebook#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([facebook#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([facebook#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([facebook#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([facebook#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([facebook#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([facebook#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([facebook#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([facebook#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([facebook#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([facebook#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([facebook#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([facebook#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([facebook#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([facebook#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([facebook#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([facebook#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([facebook#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([facebook#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([facebook#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([facebook#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([facebook#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([facebook#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([facebook#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([facebook#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([facebook#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([facebook#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([facebook#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([facebook#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([facebook#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([facebook#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([facebook#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([facebook#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([facebook#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([facebook#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([facebook#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([facebook#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([facebook#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([facebook#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...47cf4e5

jest_e2e[run_all_tests]

Reviewed By: sammy-SC

Differential Revision: D44090004

fbshipit-source-id: 6ac2d1d22a078d07ce011481063e78843bded28e
OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
Summary:
This sync includes the following changes:
- **[3554c8852](facebook/react@3554c8852 )**: Clean interface for public instances between React and React Native ([facebook#26416](facebook/react#26416)) //<Rubén Norte>//
- **[db281b3d9](facebook/react@db281b3d9 )**: Feature: Suspend commit without blocking render ([facebook#26398](facebook/react#26398)) //<Andrew Clark>//
- **[55308554e](facebook/react@55308554e )**: [www] enable enableFilterEmptyStringAttributesDOM flag ([facebook#26410](facebook/react#26410)) //<Jan Kassens>//
- **[163d86e19](facebook/react@163d86e19 )**: Updated comment message ([facebook#26158](facebook/react#26158)) //<Ibrahim Amin>//
- **[108aed083](facebook/react@108aed083 )**: Fix use of stale props in Fabric events ([facebook#26408](facebook/react#26408)) //<Rubén Norte>//
- **[8fa41ffa2](facebook/react@8fa41ffa2 )**: Don't "fix up" mismatched text content with suppressedHydrationWarning ([facebook#26391](facebook/react#26391)) //<Sebastian Markbåge>//
- **[05777ffb0](facebook/react@05777ffb0 )**: Setting transition pending flag shouldn't be part of a surrounding transition ([facebook#26243](facebook/react#26243)) //<Sophie Alpert>//
- **[99aa082be](facebook/react@99aa082be )**: Remove unstable_flushControlled ([facebook#26397](facebook/react#26397)) //<Jan Kassens>//
- **[47cf4e578](facebook/react@47cf4e578 )**: Restore some guards in ReactFabricGlobalResponderHandler after refactor ([facebook#26394](facebook/react#26394)) //<Rubén Norte>//
- **[cfc1274e3](facebook/react@cfc1274e3 )**: Disable IE innerHTML workaround behind a flag ([facebook#26390](facebook/react#26390)) //<Sebastian Markbåge>//
- **[a57f40d83](facebook/react@a57f40d83 )**: Undo dependency injection of batching ([facebook#26389](facebook/react#26389)) //<Sebastian Markbåge>//
- **[d310d654a](facebook/react@d310d654a )**: Avoid meta programming to initialize functions in module scope  ([facebook#26388](facebook/react#26388)) //<Sebastian Markbåge>//
- **[21aee59e4](facebook/react@21aee59e4 )**: Delete unused DOM files ([facebook#26387](facebook/react#26387)) //<Sebastian Markbåge>//
- **[6bd53a5bd](facebook/react@6bd53a5bd )**: Remove FeatureFlags fork for `react-dom/unstable_testing` ([facebook#26383](facebook/react#26383)) //<Sebastian Markbåge>//
- **[2788d0d8d](facebook/react@2788d0d8d )**: Allow empty string to be passed to formAction ([facebook#26379](facebook/react#26379)) //<Sebastian Markbåge>//
- **[f828bad38](facebook/react@f828bad38 )**: Extracted definition and access to public instances to a separate module in Fabric ([facebook#26321](facebook/react#26321)) //<Rubén Norte>//
- **[131768166](facebook/react@131768166 )**: Support Context as renderable node ([facebook#25641](facebook/react#25641)) //<Andrew Clark>//
- **[d4f58c3b8](facebook/react@d4f58c3b8 )**: Support Promise as a renderable node  ([facebook#25634](facebook/react#25634)) //<Andrew Clark>//
- **[633461486](facebook/react@633461486 )**: Add disableLegacyContext test gates where needed ([facebook#26371](facebook/react#26371)) //<Andrew Clark>//
- **[432ffc9d0](facebook/react@432ffc9d0 )**: Convert more Scheduler.unstable_flushAll in tests to new test utils ([facebook#26369](facebook/react#26369)) //<Tianyu Yao>//
- **[69fd78fe3](facebook/react@69fd78fe3 )**: Update Float tests to check for specific errors ([facebook#26367](facebook/react#26367)) //<Andrew Clark>//
- **[93c10dfa6](facebook/react@93c10dfa6 )**: flushSync: Exhaust queue even if something throws ([facebook#26366](facebook/react#26366)) //<Andrew Clark>//
- **[be353d251](facebook/react@be353d251 )**: [Flight Reply] Add undefined and Iterable Support ([facebook#26365](facebook/react#26365)) //<Sebastian Markbåge>//
- **[ef8bdbecb](facebook/react@ef8bdbecb )**: [Flight Reply] Add Reply Encoding ([facebook#26360](facebook/react#26360)) //<Sebastian Markbåge>//
- **[a8875eab7](facebook/react@a8875eab7 )**: Update more tests to not rely on sync queuing ([facebook#26358](facebook/react#26358)) //<Andrew Clark>//
- **[d1ad984db](facebook/react@d1ad984db )**: [Flight] Add support for returning `undefined` from render ([facebook#26349](facebook/react#26349)) //<Sebastian Silbermann>//
- **[39d4b9365](facebook/react@39d4b9365 )**: [Internal tests] Close MessageChannel port to prevent leak ([facebook#26357](facebook/react#26357)) //<Andrew Clark>//
- **[3706edb81](facebook/react@3706edb81 )**: [Float][Fizz]: Don't preload nomodule scripts ([facebook#26353](facebook/react#26353)) //<Josh Story>//
- **[2b003a5cc](facebook/react@2b003a5cc )**: Split out ServerReferenceMetadata into Id and Bound Arguments ([facebook#26351](facebook/react#26351)) //<Sebastian Markbåge>//
- **[62cd5af08](facebook/react@62cd5af08 )**: Codemod redundant async act scopes ([facebook#26350](facebook/react#26350)) //<Andrew Clark>//
- **[037378202](facebook/react@037378202 )**: Internal `act`: Call scope function after an async gap ([facebook#26347](facebook/react#26347)) //<Andrew Clark>//
- **[d8e49f2af](facebook/react@d8e49f2af )**: Use setTimeout to schedule work on the server in Edge environments ([facebook#26348](facebook/react#26348)) //<Sebastian Markbåge>//
- **[83643778b](facebook/react@83643778b )**: Internal test helpers: Use Node's MessageChannel to queue task ([facebook#26345](facebook/react#26345)) //<Andrew Clark>//
- **[44d380794](facebook/react@44d380794 )**: Move internalAct to internal-test-utils package ([facebook#26344](facebook/react#26344)) //<Andrew Clark>//
- **[d81447304](facebook/react@d81447304 )**: [Internal API only] Delete non-awaited form of act ([facebook#26339](facebook/react#26339)) //<Andrew Clark>//
- **[702fc984e](facebook/react@702fc984e )**: Codemod act -> await act (4/?) ([facebook#26338](facebook/react#26338)) //<Andrew Clark>//
- **[9fb2469a6](facebook/react@9fb2469a6 )**: Restore definition of NativeMethods as an object for React Native ([facebook#26341](facebook/react#26341)) //<Rubén Norte>//
- **[161f6ae42](facebook/react@161f6ae42 )**: Codemod act -> await act (3/?) ([facebook#26336](facebook/react#26336)) //<Andrew Clark>//
- **[58605f798](facebook/react@58605f798 )**: Codemod act -> await act (2/?) ([facebook#26335](facebook/react#26335)) //<Andrew Clark>//
- **[703c67560](facebook/react@703c67560 )**: Codemod act -> await act (1/?) ([facebook#26334](facebook/react#26334)) //<Andrew Clark>//
- **[b380c2485](facebook/react@b380c2485 )**: Convert class equivlance tests to flushSync ([facebook#26333](facebook/react#26333)) //<Andrew Clark>//
- **[8f812e75d](facebook/react@8f812e75d )**: Refactor ReactFabricHostComponent ([facebook#26323](facebook/react#26323)) //<Rubén Norte>//
- **[978fae4b4](facebook/react@978fae4b4 )**: [Float][Fiber] implement a faster hydration match for hoistable elements ([facebook#26154](facebook/react#26154)) //<Josh Story>//
- **[8a9f82ed5](facebook/react@8a9f82ed5 )**: [Float][Fizz][Fiber] - Do not hoist elements with `itemProp` & hydrate more tolerantly in hoist contexts ([facebook#26256](facebook/react#26256)) //<Josh Story>//
- **[3cad3a54e](facebook/react@3cad3a54e )**: Use content hash for facebook-www builds ([facebook#26331](facebook/react#26331)) //<Jan Kassens>//
- **[ba353a50a](facebook/react@ba353a50a )**: Build: make version in build artifacts match ([facebook#26329](facebook/react#26329)) //<Jan Kassens>//
- **[6e1756a5a](facebook/react@6e1756a5a )**: Move suspended render logic to ensureRootIsScheduled ([facebook#26328](facebook/react#26328)) //<Andrew Clark>//
- **[1528c5ccd](facebook/react@1528c5ccd )**: SchedulerMock.unstable_yieldValue -> SchedulerMock.log ([facebook#26312](facebook/react#26312)) //<Andrew Clark>//
- **[4bbac04cd](facebook/react@4bbac04cd )**: Upgrade Flow to 0.201 ([facebook#26326](facebook/react#26326)) //<Jan Kassens>//
- **[eb616a12f](facebook/react@eb616a12f )**: Extract duplicated methods in Fabric and the legacy renderer to a shared module ([facebook#26319](facebook/react#26319)) //<Rubén Norte>//
- **[49f741046](facebook/react@49f741046 )**: Fix: Infinite act loop caused by wrong shouldYield ([facebook#26317](facebook/react#26317)) //<Andrew Clark>//
- **[106ea1c58](facebook/react@106ea1c58 )**: Support Iterables in Flight ([facebook#26313](facebook/react#26313)) //<Sebastian Markbåge>//
- **[f905da227](facebook/react@f905da227 )**: [Flight] Send server reference error chunks to the client ([facebook#26293](facebook/react#26293)) //<Hendrik Liebau>//
- **[e0241b660](facebook/react@e0241b660 )**: Simplify Webpack References by encoding file path + export name as single id ([facebook#26300](facebook/react#26300)) //<Sebastian Markbåge>//
- **[25685d8a9](facebook/react@25685d8a9 )**: Codemod tests to waitFor pattern (9/?) ([facebook#26309](facebook/react#26309)) //<Andrew Clark>//
- **[64dde7082](facebook/react@64dde7082 )**: Codemod tests to waitFor pattern (8/?) ([facebook#26308](facebook/react#26308)) //<Andrew Clark>//
- **[3cb5afb82](facebook/react@3cb5afb82 )**: Codemod tests to waitFor pattern (7/?) ([facebook#26307](facebook/react#26307)) //<Andrew Clark>//
- **[e98695db9](facebook/react@e98695db9 )**: Codemod tests to waitFor pattern (6/?) ([facebook#26305](facebook/react#26305)) //<Andrew Clark>//
- **[9a52cc8bc](facebook/react@9a52cc8bc )**: Convert ReactLazy-test to waitFor pattern ([facebook#26304](facebook/react#26304)) //<Andrew Clark>//
- **[03462cfc7](facebook/react@03462cfc7 )**: [Fizz] External runtime: fix bug in processing existing elements ([facebook#26303](facebook/react#26303)) //<mofeiZ>//
- **[faacefb4d](facebook/react@faacefb4d )**: Codemod tests to waitFor pattern (4/?) ([facebook#26302](facebook/react#26302)) //<Andrew Clark>//
- **[06460b6fb](facebook/react@06460b6fb )**: Remove unnecessary (and incorrect) code for compatibility with Paper in the Fabric version of GlobalResponderHandler ([facebook#26290](facebook/react#26290)) //<Rubén Norte>//
- **[ce8a72fd4](facebook/react@ce8a72fd4 )**: Codemod tests to waitFor pattern (2/?) ([facebook#26296](facebook/react#26296)) //<Andrew Clark>//
- **[1f1f8eb55](facebook/react@1f1f8eb55 )**: [Float][Fizz][Fiber]: Refactor <style> Resource implementation to group on flush ([facebook#26280](facebook/react#26280)) //<Josh Story>//
- **[5c633a48f](facebook/react@5c633a48f )**: Add back accidentally deleted test comments ([facebook#26294](facebook/react#26294)) //<Andrew Clark>//
- **[b72ed698f](facebook/react@b72ed698f )**: Fixed incorrect value returned as public instance from reconciler ([facebook#26283](facebook/react#26283)) //<Rubén Norte>//
- **[25a8b9735](facebook/react@25a8b9735 )**: Codemod tests to waitFor pattern (1/?) ([facebook#26288](facebook/react#26288)) //<Andrew Clark>//
- **[e52446733](facebook/react@e52446733 )**: New internal testing helpers: waitFor, waitForAll, waitForPaint ([facebook#26285](facebook/react#26285)) //<Andrew Clark>//
- **[d49e0e0be](facebook/react@d49e0e0be )**: Removed unused imperative events implementation from React Native renderer ([facebook#26282](facebook/react#26282)) //<Rubén Norte>//
- **[41110021f](facebook/react@41110021f )**: Fix: Selective hydration causing incorrect thenable type passed to DevTools ([facebook#26275](facebook/react#26275)) //<Andrew Clark>//
- **[67a61d5bd](facebook/react@67a61d5bd )**: [Flight Fixture] Show SSR Support with CSS ([facebook#26263](facebook/react#26263)) //<Sebastian Markbåge>//
- **[40755c01a](facebook/react@40755c01a )**: [Flight Fixture] Proxy requests through the global server instead of directly ([facebook#26257](facebook/react#26257)) //<Sebastian Markbåge>//
- **[b2ae9ddb3](facebook/react@b2ae9ddb3 )**: Cleanup enableSyncDefaultUpdate flag ([facebook#26236](facebook/react#26236)) //<Jan Kassens>//
- **[6ff1733e6](facebook/react@6ff1733e6 )**: [Float][Fizz][Fiber] support type for ReactDOM.preload() options ([facebook#26239](facebook/react#26239)) //<Josh Story>//
- **[1173a17e6](facebook/react@1173a17e6 )**: [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods ([facebook#26237](facebook/react#26237)) //<Josh Story>//
- **[a8f971b7a](facebook/react@a8f971b7a )**: Switch to mount dispatcher after use() when needed ([facebook#26232](facebook/react#26232)) //<Sophie Alpert>//
- **[96cdeaf89](facebook/react@96cdeaf89 )**: [Fizz Node] Fix null bytes written at text chunk boundaries ([facebook#26228](facebook/react#26228)) //<Sophie Alpert>//
- **[c04b18070](facebook/react@c04b18070 )**: Remove eventTime field from class Update type ([facebook#26219](facebook/react#26219)) //<Andrew Clark>//
- **[60144a04d](facebook/react@60144a04d )**: Split out Edge and Node implementations of the Flight Client ([facebook#26187](facebook/react#26187)) //<Sebastian Markbåge>//
- **[70b0bbda7](facebook/react@70b0bbda7 )**: [fizz][external-runtime] Fix: process mutation records before disconnecting ([facebook#26169](facebook/react#26169)) //<mofeiZ>//
- **[c7967b194](facebook/react@c7967b194 )**: Distribute bundles more evenly into CI shards ([facebook#26208](facebook/react#26208)) //<Sebastian Silbermann>//
- **[bb1e3d0e1](facebook/react@bb1e3d0e1 )**: Fail yarn build if any bundle fails to build ([facebook#26207](facebook/react#26207)) //<Sebastian Silbermann>//
- **[62e6c4612](facebook/react@62e6c4612 )**: Move Mutation/Persistence fork inline into the functions ([facebook#26206](facebook/react#26206)) //<Sebastian Markbåge>//
- **[80cf4a099](facebook/react@80cf4a099 )**: Update Closure Compiler ([facebook#26205](facebook/react#26205)) //<Sebastian Markbåge>//
- **[6b6d0617e](facebook/react@6b6d0617e )**: Update Rollup and related plugins to their most recent versions ([facebook#24916](facebook/react#24916)) //<Glenn 'devalias' Grant>//
- **[bc38a3dfa](facebook/react@bc38a3dfa )**: Update rollup config to use moduleSideEffects ([facebook#26199](facebook/react#26199)) //<Ming Ye>//
- **[c9d9f524d](facebook/react@c9d9f524d )**: Make enableCustomElementPropertySupport a dynamic flag in www build ([facebook#26194](facebook/react#26194)) //<Andrew Clark>//
- **[189f70e17](facebook/react@189f70e17 )**: Create a bunch of custom webpack vs unbundled node bundles ([facebook#26172](facebook/react#26172)) //<Sebastian Markbåge>//
- **[fbf3bc315](facebook/react@fbf3bc315 )**: Add `scale` as a unitless property ([facebook#25601](facebook/react#25601)) //<Jonny Burger>//

Changelog:
[General][Changed] - React Native sync for revisions fccf3a9...3554c88

jest_e2e[run_all_tests]
bypass-github-export-checks

@public

Fixes tests for current React version.

Reviewed By: sammy-SC

Differential Revision: D44216371

fbshipit-source-id: a569c9aeaf2d96d150219e148f06dcde9ba6f7cd
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.

None yet

7 participants