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

Upgrade React from 5b51a2b9-20250116 to 18eaf51b-20250118 #75110

Closed

Conversation

@ijjk
Copy link
Member

ijjk commented Jan 20, 2025

Failing test suites

Commit: 9bc1934

pnpm test-dev-turbo test/development/acceptance-app/dynamic-error.test.ts (turbopack)

  • dynamic = "error" in devmode > should show error overlay when dynamic is forced
Expand output

● dynamic = "error" in devmode › should show error overlay when dynamic is forced

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `dynamic = "error" in devmode should show error overlay when dynamic is forced 1`

- Snapshot  - 1
+ Received  + 1

- "[ Server ] Error: Route /server with `dynamic = "error"` couldn't be rendered statically because it used `cookies`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering"
+ "[ Server ] undefined: Route /server with `dynamic = "error"` couldn't be rendered statically because it used `cookies`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering"

  32 |     const { session } = sandbox
  33 |     await session.assertHasRedbox()
> 34 |     expect(await session.getRedboxDescription()).toMatchInlineSnapshot(
     |                                                  ^
  35 |       `"[ Server ] Error: Route /server with \`dynamic = "error"\` couldn't be rendered statically because it used \`cookies\`. See more info here: https://nextjs.org/docs/app/building-your-application/rendering/static-and-dynamic#dynamic-rendering"`
  36 |     )
  37 |   })

  at Object.toMatchInlineSnapshot (development/acceptance-app/dynamic-error.test.ts:34:50)

Read more about building and testing Next.js in contributing.md.

pnpm test-dev-turbo test/development/app-dir/serialize-circular-error/serialize-circular-error.test.ts (turbopack)

  • serialize-circular-error > should serialize the object from server component in console correctly
Expand output

● serialize-circular-error › should serialize the object from server component in console correctly

expect(received).toBe(expected) // Object.is equality

Expected: "[ Server ] Error: An error occurred but serializing the error message failed."
Received: "[ Server ] undefined: An error occurred but serializing the error message failed."

  17 |     const description = await getRedboxDescription(browser)
  18 |     // React cannot serialize thrown objects with circular references
> 19 |     expect(description).toBe(
     |                         ^
  20 |       '[ Server ] Error: An error occurred but serializing the error message failed.'
  21 |     )
  22 |

  at Object.toBe (development/app-dir/serialize-circular-error/serialize-circular-error.test.ts:19:25)

Read more about building and testing Next.js in contributing.md.

pnpm test-dev test/development/acceptance-app/rsc-runtime-errors.test.ts

  • Error overlay - RSC runtime errors > should show runtime errors if invalid client API from node_modules is executed
  • Error overlay - RSC runtime errors > should show source code for jsx errors from server component
Expand output

● Error overlay - RSC runtime errors › should show runtime errors if invalid client API from node_modules is executed

expect(received).toContain(expected) // indexOf

Expected substring: "Error: useState only works in Client Components. Add the \"use client\" directive at the top of the file to use it. Read more: https://nextjs.org/docs/messages/react-client-hook-in-server-component"
Received string:    "[ Server ] undefined: useState only works in Client Components. Add the \"use client\" directive at the top of the file to use it. Read more: https://nextjs.org/docs/messages/react-client-hook-in-server-component"

  31 |     const errorDescription = await getRedboxDescription(browser)
  32 |
> 33 |     expect(errorDescription).toContain(
     |                              ^
  34 |       `Error: useState only works in Client Components. Add the "use client" directive at the top of the file to use it. Read more: https://nextjs.org/docs/messages/react-client-hook-in-server-component`
  35 |     )
  36 |   })

  at Object.toContain (development/acceptance-app/rsc-runtime-errors.test.ts:33:30)

● Error overlay - RSC runtime errors › should show source code for jsx errors from server component

expect(received).toContain(expected) // indexOf

Expected substring: "Error: alert is not defined"
Received string:    "[ Server ] undefined: alert is not defined"

  74 |     const errorDescription = await getRedboxDescription(browser)
  75 |
> 76 |     expect(errorDescription).toContain(`Error: alert is not defined`)
     |                              ^
  77 |   })
  78 |
  79 |   it('should show the userland code error trace when fetch failed error occurred', async () => {

  at Object.toContain (development/acceptance-app/rsc-runtime-errors.test.ts:76:30)

Read more about building and testing Next.js in contributing.md.

pnpm test-dev-turbo test/e2e/app-dir/global-error/layout-error/index.test.ts (turbopack)

  • app dir - global error - layout error > should render global error for error in server components
Expand output

● app dir - global error - layout error › should render global error for error in server components

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `app dir - global error - layout error should render global error for error in server components 1`

Snapshot: "[ Server ] Error: layout error"
Received: "[ Server ] undefined: layout error"

  18 |       await assertHasRedbox(browser)
  19 |       const description = await getRedboxDescription(browser)
> 20 |       expect(description).toMatchInlineSnapshot(
     |                           ^
  21 |         `"[ Server ] Error: layout error"`
  22 |       )
  23 |     }

  at Object.toMatchInlineSnapshot (e2e/app-dir/global-error/layout-error/index.test.ts:20:27)

Read more about building and testing Next.js in contributing.md.

__NEXT_EXPERIMENTAL_PPR=true pnpm test-dev test/e2e/app-dir/global-error/basic/index.test.ts (PPR)

  • app dir - global error > should render global error for error in server components
  • app dir - global error > should catch metadata error in global-error if no error boundary is presented
Expand output

● app dir - global error › should render global error for error in server components

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `app dir - global error should render global error for error in server components 1`

Snapshot: "[ Server ] Error: server page error"
Received: "[ Server ] undefined: server page error"

  31 |       await assertHasRedbox(browser)
  32 |       const description = await getRedboxDescription(browser)
> 33 |       expect(description).toMatchInlineSnapshot(
     |                           ^
  34 |         `"[ Server ] Error: server page error"`
  35 |       )
  36 |     }

  at Object.toMatchInlineSnapshot (e2e/app-dir/global-error/basic/index.test.ts:33:27)

● app dir - global error › should catch metadata error in global-error if no error boundary is presented

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `app dir - global error should catch metadata error in global-error if no error boundary is presented 1`

Snapshot: "[ Server ] Error: Metadata error"
Received: "[ Server ] undefined: Metadata error"

  75 |       await assertHasRedbox(browser)
  76 |       const description = await getRedboxDescription(browser)
> 77 |       expect(description).toMatchInlineSnapshot(
     |                           ^
  78 |         `"[ Server ] Error: Metadata error"`
  79 |       )
  80 |     }

  at Object.toMatchInlineSnapshot (e2e/app-dir/global-error/basic/index.test.ts:77:27)

Read more about building and testing Next.js in contributing.md.

pnpm test-dev test/e2e/app-dir/use-cache-close-over-function/use-cache-close-over-function.test.ts

  • use-cache-close-over-function > should show the error overlay for server-side usage
Expand output

● use-cache-close-over-function › should show the error overlay for server-side usage

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `use-cache-close-over-function should show the error overlay for server-side usage 1`

- Snapshot  - 1
+ Received  + 1

- "[ Prerender ] Error: Functions cannot be passed directly to Client Components unless you explicitly expose it by marking it with "use server". Or maybe you meant to call this function rather than return it.
+ "[ Prerender ] undefined: Functions cannot be passed directly to Client Components unless you explicitly expose it by marking it with "use server". Or maybe you meant to call this function rather than return it.
    [function fn]
     ^^^^^^^^^^^"

  87 |       const errorSource = await getRedboxSource(browser)
  88 |
> 89 |       expect(errorDescription).toMatchInlineSnapshot(`
     |                                ^
  90 |         "[ Prerender ] Error: Functions cannot be passed directly to Client Components unless you explicitly expose it by marking it with "use server". Or maybe you meant to call this function rather than return it.
  91 |           [function fn]
  92 |            ^^^^^^^^^^^"

  at Object.toMatchInlineSnapshot (e2e/app-dir/use-cache-close-over-function/use-cache-close-over-function.test.ts:89:32)

Read more about building and testing Next.js in contributing.md.

@ijjk
Copy link
Member

ijjk commented Jan 20, 2025

Stats from current PR

Default Build (Increase detected ⚠️)
General Overall increase ⚠️
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
buildDuration 17.5s 15.5s N/A
buildDurationCached 14.6s 12.4s N/A
nodeModulesSize 418 MB 419 MB ⚠️ +564 kB
nextStartRea..uration (ms) 399ms 398ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
5306-HASH.js gzip 54 kB 54 kB N/A
8276.HASH.js gzip 169 B 168 B N/A
8377-HASH.js gzip 5.44 kB 5.44 kB N/A
bccd1874-HASH.js gzip 52.9 kB 52.9 kB
framework-HASH.js gzip 57.5 kB 57.5 kB N/A
main-app-HASH.js gzip 240 B 242 B N/A
main-HASH.js gzip 34.4 kB 34.4 kB N/A
webpack-HASH.js gzip 1.71 kB 1.71 kB N/A
Overall change 52.9 kB 52.9 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
polyfills-HASH.js gzip 39.4 kB 39.4 kB
Overall change 39.4 kB 39.4 kB
Client Pages
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
_app-HASH.js gzip 193 B 193 B
_error-HASH.js gzip 193 B 193 B
amp-HASH.js gzip 512 B 510 B N/A
css-HASH.js gzip 343 B 342 B N/A
dynamic-HASH.js gzip 1.84 kB 1.84 kB
edge-ssr-HASH.js gzip 265 B 265 B
head-HASH.js gzip 363 B 362 B N/A
hooks-HASH.js gzip 393 B 392 B N/A
image-HASH.js gzip 4.57 kB 4.57 kB N/A
index-HASH.js gzip 268 B 268 B
link-HASH.js gzip 2.35 kB 2.34 kB N/A
routerDirect..HASH.js gzip 328 B 328 B
script-HASH.js gzip 397 B 397 B
withRouter-HASH.js gzip 323 B 326 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 3.59 kB 3.59 kB
Client Build Manifests
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
_buildManifest.js gzip 749 B 747 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
index.html gzip 524 B 524 B
link.html gzip 539 B 536 B N/A
withRouter.html gzip 520 B 520 B
Overall change 1.04 kB 1.04 kB
Edge SSR bundle Size Overall increase ⚠️
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
edge-ssr.js gzip 129 kB 129 kB N/A
page.js gzip 208 kB 209 kB ⚠️ +687 B
Overall change 208 kB 209 kB ⚠️ +687 B
Middleware size
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
middleware-b..fest.js gzip 670 B 667 B N/A
middleware-r..fest.js gzip 155 B 156 B N/A
middleware.js gzip 31.3 kB 31.3 kB N/A
edge-runtime..pack.js gzip 844 B 844 B
Overall change 844 B 844 B
Next Runtimes Overall increase ⚠️
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
274-experime...dev.js gzip 322 B 322 B
274.runtime.dev.js gzip 314 B 314 B
app-page-exp...dev.js gzip 375 kB 376 kB ⚠️ +1.1 kB
app-page-exp..prod.js gzip 130 kB 131 kB ⚠️ +736 B
app-page-tur..prod.js gzip 143 kB 144 kB ⚠️ +737 B
app-page-tur..prod.js gzip 139 kB 140 kB ⚠️ +744 B
app-page.run...dev.js gzip 363 kB 364 kB ⚠️ +950 B
app-page.run..prod.js gzip 126 kB 127 kB ⚠️ +744 B
app-route-ex...dev.js gzip 37.6 kB 37.6 kB N/A
app-route-ex..prod.js gzip 25.6 kB 25.6 kB N/A
app-route-tu..prod.js gzip 25.6 kB 25.6 kB N/A
app-route-tu..prod.js gzip 25.4 kB 25.4 kB N/A
app-route.ru...dev.js gzip 39.2 kB 39.2 kB
app-route.ru..prod.js gzip 25.4 kB 25.4 kB N/A
pages-api-tu..prod.js gzip 9.69 kB 9.69 kB
pages-api.ru...dev.js gzip 11.6 kB 11.6 kB
pages-api.ru..prod.js gzip 9.68 kB 9.68 kB
pages-turbo...prod.js gzip 21.9 kB 21.9 kB
pages.runtim...dev.js gzip 27.7 kB 27.7 kB
pages.runtim..prod.js gzip 21.9 kB 21.9 kB
server.runti..prod.js gzip 916 kB 916 kB
Overall change 2.33 MB 2.34 MB ⚠️ +5.01 kB
build cache Overall increase ⚠️
vercel/next.js canary vercel/next.js update/react/19.1.0-canary-18eaf51b-20250118 Change
0.pack gzip 2.1 MB 2.1 MB N/A
index.pack gzip 74.3 kB 75.1 kB ⚠️ +841 B
Overall change 74.3 kB 75.1 kB ⚠️ +841 B
Diff details
Diff for main-HASH.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

Diff for app-page-tur..time.prod.js

Diff too large to display

Diff for app-page.runtime.dev.js
failed to diff
Diff for app-page.runtime.prod.js

Diff too large to display

Diff for server.runtime.prod.js
failed to diff
Commit: 9bc1934

@eps1lon
Copy link
Member

eps1lon commented Jan 22, 2025

Blocked by facebook/react#32157

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants