-
Notifications
You must be signed in to change notification settings - Fork 27k
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
Use consistent import of vendored React within vendored React #64806
base: canary
Are you sure you want to change the base?
Conversation
Failing test suitesCommit: d206021
Expand output● app dir client cache semantics › should renew the 30s cache once the data is revalidated
Read more about building and testing Next.js in contributing.md.
Expand output● app-dir - missing required html tags › should show error overlay
● app-dir - missing required html tags › should hmr when you fix the error
Read more about building and testing Next.js in contributing.md.
Expand output● app dir - basepath › should only make a single RSC call to the current page (/base/refresh)
● app dir - basepath › should only make a single RSC call to the current page (/base/refresh?foo=bar)
Read more about building and testing Next.js in contributing.md.
Expand output● app-dir - esm js extension › should be able to render nextjs api in app router
Read more about building and testing Next.js in contributing.md.
Expand output● app-dir action allowed origins › should pass if localhost is set as a safe origin
Read more about building and testing Next.js in contributing.md.
Expand output● useReportWebVitals hook › should send web-vitals
Read more about building and testing Next.js in contributing.md.
Expand output● app dir - metadata › basic › should support other basic tags (edge)
Read more about building and testing Next.js in contributing.md.
Expand output● avoid-popstate-flash › does not flash back to partial PPR data during back/forward navigation
Read more about building and testing Next.js in contributing.md.
Expand output● interception-dynamic-segment-middleware › should work when interception route is paired with a dynamic segment & middleware
Read more about building and testing Next.js in contributing.md.
Expand output● ppr-full › Dynamic Data pages › Optimistic UI › should initially render with optimistic UI
● ppr-full › Dynamic Data pages › Incidental postpones › should initially render with optimistic UI
Read more about building and testing Next.js in contributing.md.
Expand output● stale-prefetch-entry › works if a prefetched route entry has become stale (too much time has elapsed since it was prefetched)
Read more about building and testing Next.js in contributing.md.
Expand output● app dir - next/dynamic › no SSR › should not render client component imported through ssr: false in client components in edge runtime
Read more about building and testing Next.js in contributing.md.
Expand output● app dir - taint › should error when passing process env to client component
Read more about building and testing Next.js in contributing.md.
Expand output● loading-tsx-no-partial-rendering › when PPR is enabled, loading.tsx boundaries do not cause a partial prefetch
Read more about building and testing Next.js in contributing.md. |
Stats from current PRDefault Build (Increase detected
|
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
buildDuration | 15.8s | 14.5s | N/A |
buildDurationCached | 8.6s | 7s | N/A |
nodeModulesSize | 360 MB | 370 MB | |
nextStartRea..uration (ms) | 392ms | 391ms | N/A |
Client Bundles (main, webpack)
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
1103-HASH.js gzip | 31.8 kB | 31.8 kB | N/A |
1a9f679d-HASH.js gzip | 53.5 kB | 53.5 kB | N/A |
335-HASH.js gzip | 5.09 kB | 5.09 kB | N/A |
7953.HASH.js gzip | 169 B | 169 B | ✓ |
framework-HASH.js gzip | 45.2 kB | 45.2 kB | ✓ |
main-app-HASH.js gzip | 231 B | 229 B | N/A |
main-HASH.js gzip | 31.5 kB | 31.5 kB | N/A |
webpack-HASH.js gzip | 1.65 kB | 1.65 kB | N/A |
Overall change | 45.4 kB | 45.4 kB | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 31 kB | 31 kB | ✓ |
Overall change | 31 kB | 31 kB | ✓ |
Client Pages
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
_app-HASH.js gzip | 192 B | 193 B | N/A |
_error-HASH.js gzip | 192 B | 193 B | N/A |
amp-HASH.js gzip | 507 B | 511 B | N/A |
css-HASH.js gzip | 341 B | 343 B | N/A |
dynamic-HASH.js gzip | 2.52 kB | 2.52 kB | ✓ |
edge-ssr-HASH.js gzip | 266 B | 265 B | N/A |
head-HASH.js gzip | 362 B | 365 B | N/A |
hooks-HASH.js gzip | 392 B | 392 B | ✓ |
image-HASH.js gzip | 4.32 kB | 4.32 kB | N/A |
index-HASH.js gzip | 268 B | 268 B | ✓ |
link-HASH.js gzip | 2.69 kB | 2.7 kB | N/A |
routerDirect..HASH.js gzip | 329 B | 328 B | N/A |
script-HASH.js gzip | 397 B | 397 B | ✓ |
withRouter-HASH.js gzip | 324 B | 324 B | ✓ |
1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
Overall change | 4 kB | 4 kB | ✓ |
Client Build Manifests
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
_buildManifest.js gzip | 483 B | 484 B | N/A |
Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
index.html gzip | 527 B | 527 B | ✓ |
link.html gzip | 542 B | 541 B | N/A |
withRouter.html gzip | 524 B | 524 B | ✓ |
Overall change | 1.05 kB | 1.05 kB | ✓ |
Edge SSR bundle Size
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
edge-ssr.js gzip | 94.7 kB | 94.7 kB | N/A |
page.js gzip | 181 kB | 179 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Middleware size
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
middleware-b..fest.js gzip | 624 B | 622 B | N/A |
middleware-r..fest.js gzip | 156 B | 156 B | ✓ |
middleware.js gzip | 25.7 kB | 25.7 kB | N/A |
edge-runtime..pack.js gzip | 839 B | 839 B | ✓ |
Overall change | 995 B | 995 B | ✓ |
Next Runtimes Overall increase ⚠️
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
app-page-exp...dev.js gzip | 171 kB | 264 kB | |
app-page-exp..prod.js gzip | 98.4 kB | 150 kB | |
app-page-tur..prod.js gzip | 99.9 kB | 151 kB | |
app-page-tur..prod.js gzip | 94.3 kB | 94.3 kB | ✓ |
app-page.run...dev.js gzip | 157 kB | 157 kB | ✓ |
app-page.run..prod.js gzip | 93 kB | 93 kB | ✓ |
app-route-ex...dev.js gzip | 21.5 kB | 21.5 kB | ✓ |
app-route-ex..prod.js gzip | 15.2 kB | 15.2 kB | ✓ |
app-route-tu..prod.js gzip | 15.2 kB | 15.2 kB | ✓ |
app-route-tu..prod.js gzip | 15 kB | 15 kB | ✓ |
app-route.ru...dev.js gzip | 21.3 kB | 21.3 kB | ✓ |
app-route.ru..prod.js gzip | 15 kB | 15 kB | ✓ |
pages-api-tu..prod.js gzip | 9.55 kB | 9.55 kB | ✓ |
pages-api.ru...dev.js gzip | 9.82 kB | 9.82 kB | ✓ |
pages-api.ru..prod.js gzip | 9.55 kB | 9.55 kB | ✓ |
pages-turbo...prod.js gzip | 21.5 kB | 21.5 kB | ✓ |
pages.runtim...dev.js gzip | 22.1 kB | 22.1 kB | ✓ |
pages.runtim..prod.js gzip | 21.5 kB | 21.5 kB | ✓ |
server.runti..prod.js gzip | 51.6 kB | 51.6 kB | ✓ |
Overall change | 962 kB | 1.16 MB |
build cache Overall increase ⚠️
vercel/next.js canary | vercel/next.js sebbie/react-dom-versions | Change | |
---|---|---|---|
0.pack gzip | 1.62 MB | 1.62 MB | |
index.pack gzip | 112 kB | 116 kB | |
Overall change | 1.73 MB | 1.73 MB |
Diff details
Diff for edge-ssr.js
Diff too large to display
Diff for app-page-exp..ntime.dev.js
failed to diff
Diff for app-page-exp..time.prod.js
Diff too large to display
Diff for app-page-tur..time.prod.js
Diff too large to display
@@ -35,6 +35,7 @@ function makeAppAliases(reactChannel = '') { | |||
'react/react.react-server$': `next/dist/compiled/react${reactChannel}/react.react-server`, | |||
'react-dom/server-rendering-stub$': `next/dist/compiled/react-dom${reactChannel}/server-rendering-stub`, | |||
'react-dom$': `next/dist/compiled/react-dom${reactChannel}/server-rendering-stub`, | |||
'next/dist/compiled/react-dom$': `next/dist/compiled/react-dom${reactChannel}/server-rendering-stub`, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming that this is needed to resolve the comment in the taskfile:
// Note that we don't replace
react-dom
withnext/dist/compiled/react-dom
// as it mighe be aliased to the server rendering stub.
test/development/app-dir/missing-required-html-tags/index.test.ts
Outdated
Show resolved
Hide resolved
264a433
to
724c39d
Compare
724c39d
to
bb88355
Compare
7d465e1
to
eb482a1
Compare
Abandoning this for now. Too many hard to debug issues and |
It would take precedence over any potential subsequent alias of `next/*` e.g. aliasing `next/dist/compiled/react` to react.react-server
This reverts commit 6c7d16e. Now it errors?
This reverts commit 98f02ec42df4fd0ea84b05c529d5b1d3fb70fd7c. Try to find out why it's not aliased in the first place
eb482a1
to
d206021
Compare
Required for #64798
The previous import source was incorrect since it resulted in multiple versions of react-dom being bundled. I
For starters, we should stop installing React in our test fixtures and ensure pnpm doesn't auto-install peer deps which it currently does in our test fixtures for unknown reasons.
failing test investigation
Reproducible. Unclear how to fix. Build errors are no longer displayed on the client
Reproducible. Some webpack builds don't seem to alias
next/dist/compiled/react-dom
tonext/dist/server/future/route-modules/app-page/vendored/${layer}/react-dom
for unknown reasons.The case where I tracked it down to was
next/dist/server/app-render/rsc/preloads.js
resolving ReactDOM tonext/dist/compiled/react-dom/index.js
instead ofnext/dist/server/future/route-modules/app-page/vendored/rsc/react-dom.js
in the Server bundles.Closes NEXT-3176