Skip to content

Upgrade React from 5d87cd22-20250704 to befc1246-20250708#81426

Closed
nextjs-bot wants to merge 7 commits intocanaryfrom
update/react/19.2.0-canary-befc1246-20250708
Closed

Upgrade React from 5d87cd22-20250704 to befc1246-20250708#81426
nextjs-bot wants to merge 7 commits intocanaryfrom
update/react/19.2.0-canary-befc1246-20250708

Conversation

@nextjs-bot
Copy link
Collaborator

@nextjs-bot nextjs-bot requested a review from eps1lon July 8, 2025 16:26
@ijjk ijjk added CI approved Approve running CI for fork type: next labels Jul 8, 2025
@ijjk
Copy link
Member

ijjk commented Jul 8, 2025

Failing test suites

Commit: edbbfe5

pnpm test-start test/e2e/app-dir/dynamic-io-errors/dynamic-io-errors.test.ts

  • Dynamic IO Errors - Build With --prerender-debug > Dynamic Metadata - Static Route With Suspense > should error the build if generateMetadata is dynamic when the rest of the route is prerenderable
Expand output

● Dynamic IO Errors - Build With --prerender-debug › Dynamic Metadata - Static Route With Suspense › should error the build if generateMetadata is dynamic when the rest of the route is prerenderable

expect(received).toMatchInlineSnapshot(snapshot)

Snapshot name: `Dynamic IO Errors - Build With --prerender-debug Dynamic Metadata - Static Route With Suspense should error the build if generateMetadata is dynamic when the rest of the route is prerenderable 1`

- Snapshot  - 3
+ Received  + 0

- Route "/" has a `generateMetadata` that depends on Request data (`cookies()`, etc...) or uncached external data (`fetch(...)`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata
- Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
-
  > Export encountered errors on following paths:
  	/page: /

  321 |         } else {
  322 |           if (inPrerenderDebugMode) {
> 323 |             expect(output).toMatchInlineSnapshot(`
      |                            ^
  324 |              "Route "/" has a \`generateMetadata\` that depends on Request data (\`cookies()\`, etc...) or uncached external data (\`fetch(...)\`, etc...) when the rest of the route does not. See more info here: https://nextjs.org/docs/messages/next-prerender-dynamic-metadata
  325 |              Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
  326 | 

  at Object.toMatchInlineSnapshot (e2e/app-dir/dynamic-io-errors/dynamic-io-errors.test.ts:323:28)

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

__NEXT_EXPERIMENTAL_PPR=true pnpm test-dev test/e2e/app-dir/use-cache-dev/use-cache-dev.test.ts (PPR)

  • use-cache-dev > should update cached data after editing a file
Expand output

● use-cache-dev › should update cached data after editing a file

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#fetchedRandom')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Playwright.elementByCss [as elementById] (lib/browsers/playwright.ts:379:17)
  at Object.elementById (e2e/app-dir/use-cache-dev/use-cache-dev.test.ts:20:19)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache-dev/use-cache-dev.test.ts:20:48)

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

__NEXT_EXPERIMENTAL_PPR=true pnpm test-dev test/e2e/app-dir/use-cache/use-cache.test.ts (PPR)

  • use-cache > should update after unstable_expireTag correctly
  • use-cache > should use revalidate config in fetch
  • use-cache > should cache fetch without no-store
  • use-cache > should override fetch with no-store in use cache properly
  • use-cache > should override fetch with cookies/auth in use cache properly
Expand output

● use-cache › should update after unstable_expireTag correctly

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#a')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Object.elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:253:35)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:253:54)

● use-cache › should use revalidate config in fetch

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#random')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Object.elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:616:40)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:616:64)

● use-cache › should cache fetch without no-store

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#random')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Object.elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:625:40)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:625:64)

● use-cache › should override fetch with no-store in use cache properly

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#random')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Object.elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:634:40)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:634:64)

● use-cache › should override fetch with cookies/auth in use cache properly

page.waitForSelector: Timeout 5000ms exceeded.
Call log:
  - waiting for locator('#random')

  454 |   waitForElementByCss(selector: string, timeout = 10_000) {
  455 |     return this.startChain(async () => {
> 456 |       const el = await page.waitForSelector(selector, {
      |                             ^
  457 |         timeout,
  458 |         state: 'attached',
  459 |       })

  at waitForSelector (lib/browsers/playwright.ts:456:29)
  at Playwright._chain (lib/browsers/playwright.ts:568:23)
  at Playwright._chain [as startChain] (lib/browsers/playwright.ts:549:17)
  at Playwright.startChain [as waitForElementByCss] (lib/browsers/playwright.ts:455:17)
  at Playwright.waitForElementByCss [as elementByCss] (lib/browsers/playwright.ts:375:17)
  at Object.elementByCss (e2e/app-dir/use-cache/use-cache.test.ts:665:40)
  at Proxy._chain (lib/browsers/playwright.ts:568:23)
  at Proxy._chain (lib/browsers/playwright.ts:544:17)
  at Proxy.continueChain (lib/browsers/playwright.ts:387:17)
  at Object.text (e2e/app-dir/use-cache/use-cache.test.ts:665:64)

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

pnpm test-dev test/e2e/app-dir/use-cache-hanging-inputs/use-cache-hanging-inputs.test.ts

  • use-cache-hanging-inputs > when a "use cache" function is closing over an uncached promise > should show an error toast after a timeout
Expand output

● use-cache-hanging-inputs › when a "use cache" function is closing over an uncached promise › should show an error toast after a timeout

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

Expected: "Filling a cache during prerender timed out, likely because request-specific arguments such as params, searchParams, cookies() or dynamic data were used inside \"use cache\"."
Received: "Route \"/bound-args\": A component accessed data, headers, params, searchParams, or a short-lived cache without a Suspense boundary nor a \"use cache\" above it. See more info: https://nextjs.org/docs/messages/next-prerender-missing-suspense"

  270 |         const cliOutput = stripAnsi(next.cliOutput.slice(outputIndex))
  271 |
> 272 |         expect(errorDescription).toBe(expectedTimeoutErrorMessage)
      |                                  ^
  273 |
  274 |         if (isTurbopack) {
  275 |           expect(errorSource).toMatchInlineSnapshot(`

  at Object.toBe (e2e/app-dir/use-cache-hanging-inputs/use-cache-hanging-inputs.test.ts:272:34)

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

@ijjk ijjk added the tests label Jul 8, 2025
@eps1lon
Copy link
Member

eps1lon commented Jul 8, 2025

Requires facebook/react#33733

@unstubbable
Copy link
Contributor

Also requires #81427

@eps1lon eps1lon closed this Jul 8, 2025
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jul 23, 2025
@eps1lon eps1lon deleted the update/react/19.2.0-canary-befc1246-20250708 branch January 24, 2026 00:25
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants