Skip to content

[Fizz] Track boundaries in future rows as postponed #33329

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

Merged
merged 2 commits into from
May 22, 2025

Conversation

sebmarkbage
Copy link
Collaborator

@sebmarkbage sebmarkbage commented May 21, 2025

Follow up to #33321.

We can mark boundaries that were blocked in the prerender as postponed but without anything to replayed inside them. That way they're not emitted in the prerender but is unblocked when replayed.

Technically this does some unnecessary replaying of the path to the otherwise already completed boundary but it simplifies our model by just marking the boundary as needing replaying.

@sebmarkbage sebmarkbage requested a review from eps1lon May 21, 2025 22:16
@github-actions github-actions bot added the React Core Team Opened by a member of the React Core Team label May 21, 2025
@react-sizebot
Copy link

Comparing: 459a2c4...4e244c8

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.js = 6.68 kB 6.68 kB +0.05% 1.83 kB 1.83 kB
oss-stable/react-dom/cjs/react-dom-client.production.js = 529.83 kB 529.83 kB = 93.52 kB 93.51 kB
oss-experimental/react-dom/cjs/react-dom.production.js = 6.69 kB 6.69 kB = 1.83 kB 1.83 kB
oss-experimental/react-dom/cjs/react-dom-client.production.js = 651.62 kB 651.62 kB = 114.80 kB 114.80 kB
facebook-www/ReactDOM-prod.classic.js = 675.87 kB 675.87 kB = 118.93 kB 118.93 kB
facebook-www/ReactDOM-prod.modern.js = 666.15 kB 666.15 kB = 117.31 kB 117.31 kB
oss-stable-semver/react-server/cjs/react-server.production.js +2.12% 131.47 kB 134.25 kB +2.19% 23.03 kB 23.53 kB
oss-stable/react-server/cjs/react-server.production.js +2.12% 131.47 kB 134.25 kB +2.19% 23.03 kB 23.53 kB

Significant size changes

Includes any change greater than 0.2%:

Expand to show
Name +/- Base Current +/- gzip Base gzip Current gzip
oss-stable-semver/react-server/cjs/react-server.production.js +2.12% 131.47 kB 134.25 kB +2.19% 23.03 kB 23.53 kB
oss-stable/react-server/cjs/react-server.production.js +2.12% 131.47 kB 134.25 kB +2.19% 23.03 kB 23.53 kB
oss-stable-semver/react-server/cjs/react-server.development.js +1.70% 189.70 kB 192.92 kB +1.59% 33.68 kB 34.21 kB
oss-stable/react-server/cjs/react-server.development.js +1.70% 189.70 kB 192.92 kB +1.59% 33.68 kB 34.21 kB
oss-stable-semver/react-dom/cjs/react-dom-server-legacy.node.production.js +1.13% 232.02 kB 234.64 kB +1.22% 42.94 kB 43.47 kB
oss-stable/react-dom/cjs/react-dom-server-legacy.node.production.js +1.13% 232.04 kB 234.66 kB +1.21% 42.97 kB 43.49 kB
oss-stable-semver/react-dom/cjs/react-dom-server.bun.production.js +1.12% 233.95 kB 236.58 kB +1.22% 42.67 kB 43.19 kB
oss-stable/react-dom/cjs/react-dom-server.bun.production.js +1.12% 234.03 kB 236.65 kB +1.21% 42.70 kB 43.22 kB
oss-stable-semver/react-dom/cjs/react-dom-server-legacy.browser.production.js +1.11% 227.50 kB 230.02 kB +1.18% 41.18 kB 41.67 kB
oss-stable/react-dom/cjs/react-dom-server-legacy.browser.production.js +1.11% 227.53 kB 230.04 kB +1.17% 41.21 kB 41.69 kB
oss-stable-semver/react-dom/cjs/react-dom-server.node.production.js +1.05% 249.86 kB 252.48 kB +1.16% 45.34 kB 45.87 kB
oss-stable/react-dom/cjs/react-dom-server.node.production.js +1.05% 249.94 kB 252.56 kB +1.16% 45.37 kB 45.89 kB
facebook-www/ReactDOMServer-prod.modern.js +1.05% 240.55 kB 243.07 kB +1.13% 42.96 kB 43.44 kB
facebook-www/ReactDOMServerStreaming-prod.modern.js +1.04% 251.77 kB 254.40 kB +1.08% 45.69 kB 46.18 kB
oss-stable-semver/react-dom/cjs/react-dom-server.edge.production.js +1.04% 253.27 kB 255.89 kB +1.13% 46.30 kB 46.82 kB
oss-stable/react-dom/cjs/react-dom-server.edge.production.js +1.04% 253.34 kB 255.96 kB +1.13% 46.32 kB 46.85 kB
facebook-www/ReactDOMServer-prod.classic.js +1.02% 245.99 kB 248.51 kB +1.11% 43.70 kB 44.18 kB
oss-stable-semver/react-dom/cjs/react-dom-server.browser.production.js +1.01% 248.06 kB 250.58 kB +1.13% 44.35 kB 44.85 kB
oss-stable/react-dom/cjs/react-dom-server.browser.production.js +1.01% 248.14 kB 250.65 kB +1.12% 44.38 kB 44.88 kB
oss-stable-semver/react-dom/cjs/react-dom-server-legacy.node.development.js +0.85% 380.94 kB 384.19 kB +0.79% 68.98 kB 69.53 kB
oss-stable-semver/react-dom/cjs/react-dom-server-legacy.browser.development.js +0.85% 380.95 kB 384.20 kB +0.78% 68.98 kB 69.53 kB
oss-stable/react-dom/cjs/react-dom-server-legacy.node.development.js +0.85% 380.97 kB 384.22 kB +0.79% 69.01 kB 69.55 kB
oss-stable/react-dom/cjs/react-dom-server-legacy.browser.development.js +0.85% 380.97 kB 384.22 kB +0.79% 69.01 kB 69.55 kB
oss-stable-semver/react-dom/cjs/react-dom-server.node.development.js +0.82% 395.84 kB 399.09 kB +0.76% 70.98 kB 71.52 kB
oss-stable/react-dom/cjs/react-dom-server.node.development.js +0.82% 395.92 kB 399.17 kB +0.76% 71.03 kB 71.57 kB
facebook-www/ReactDOMServerStreaming-dev.modern.js +0.81% 395.52 kB 398.74 kB +0.80% 70.63 kB 71.20 kB
oss-stable-semver/react-dom/cjs/react-dom-server.browser.development.js +0.81% 399.28 kB 402.53 kB +0.77% 71.61 kB 72.16 kB
oss-stable/react-dom/cjs/react-dom-server.browser.development.js +0.81% 399.36 kB 402.61 kB +0.77% 71.66 kB 72.21 kB
facebook-www/ReactDOMServer-dev.modern.js +0.81% 399.70 kB 402.95 kB +0.78% 71.34 kB 71.90 kB
oss-stable-semver/react-dom/cjs/react-dom-server.edge.development.js +0.81% 400.06 kB 403.31 kB +0.77% 71.76 kB 72.31 kB
oss-stable/react-dom/cjs/react-dom-server.edge.development.js +0.81% 400.14 kB 403.39 kB +0.76% 71.81 kB 72.36 kB
oss-stable-semver/react-dom/cjs/react-dom-server.bun.development.js +0.81% 341.25 kB 344.02 kB +0.79% 66.19 kB 66.72 kB
oss-stable/react-dom/cjs/react-dom-server.bun.development.js +0.81% 341.33 kB 344.10 kB +0.79% 66.22 kB 66.74 kB
facebook-www/ReactDOMServer-dev.classic.js +0.81% 403.15 kB 406.40 kB +0.78% 71.90 kB 72.46 kB

Generated by 🚫 dangerJS against 4e244c8

@sebmarkbage sebmarkbage merged commit 99781d6 into facebook:main May 22, 2025
246 checks passed
github-actions bot pushed a commit that referenced this pull request May 22, 2025
Follow up to #33321.

We can mark boundaries that were blocked in the prerender as postponed
but without anything to replayed inside them. That way they're not
emitted in the prerender but is unblocked when replayed.

Technically this does some unnecessary replaying of the path to the
otherwise already completed boundary but it simplifies our model by just
marking the boundary as needing replaying.

DiffTrain build for [99781d6](99781d6)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed React Core Team Opened by a member of the React Core Team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants