nextjs - ✅(Solved) Fix [Flight] chunk.reason.error is not a function [10 pull requests, 6 comments, 6 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
vercel/next.js#90954Fetched 2026-04-08 00:19:08
View on GitHub
Comments
6
Participants
6
Timeline
10
Reactions
1
Author
Timeline (top)
commented ×5closed ×1comment_deleted ×1cross-referenced ×1

Error Message

TypeError: chunk.reason.error is not a function at ignore-listed frames ⨯ uncaughtException: TypeError: chunk.reason.error is not a function at ignore-listed frames ⨯ uncaughtException: TypeError: chunk.reason.error is not a function at ignore-listed frames

Fix Action

Fixed

PR fix notes

PR #91272: Upgrade React from 46103596-20260305 to 5e9eedb5-20260312

Description (problem / solution / changelog)

diff facebook/[email protected]

<details> <summary>React upstream changes</summary> </details>

fixes #90954

Changed files

  • package.json (modified, +15/-15)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.development.js (modified, +25/-7)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-client.production.js (modified, +41/-18)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.development.js (modified, +25/-7)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-profiling.profiling.js (modified, +41/-18)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.browser.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server-legacy.node.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.browser.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.bun.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.edge.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-server.node.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.development.js (modified, +25/-7)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom-unstable_testing.production.js (modified, +41/-18)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/cjs/react-dom.react-server.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom-experimental/package.json (modified, +2/-2)
  • packages/next/src/compiled/react-dom/cjs/react-dom-client.development.js (modified, +25/-7)
  • packages/next/src/compiled/react-dom/cjs/react-dom-client.production.js (modified, +41/-18)
  • packages/next/src/compiled/react-dom/cjs/react-dom-profiling.development.js (modified, +25/-7)
  • packages/next/src/compiled/react-dom/cjs/react-dom-profiling.profiling.js (modified, +41/-18)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.browser.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server-legacy.node.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.browser.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.bun.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.edge.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.node.development.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom-server.node.production.js (modified, +3/-3)
  • packages/next/src/compiled/react-dom/cjs/react-dom.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom.react-server.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/cjs/react-dom.react-server.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-dom/package.json (modified, +2/-2)
  • packages/next/src/compiled/react-experimental/cjs/react.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-experimental/cjs/react.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-experimental/cjs/react.react-server.development.js (modified, +1/-1)
  • packages/next/src/compiled/react-experimental/cjs/react.react-server.production.js (modified, +1/-1)
  • packages/next/src/compiled/react-is/package.json (modified, +1/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.development.js (modified, +4/-2)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.browser.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.edge.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-client.node.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.browser.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.edge.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/cjs/react-server-dom-turbopack-server.node.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack-experimental/package.json (modified, +2/-2)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.development.js (modified, +4/-2)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.browser.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.edge.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.browser.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.edge.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-server.node.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-turbopack/package.json (modified, +2/-2)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.development.js (modified, +4/-2)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.browser.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.edge.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-client.node.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.browser.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.edge.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/cjs/react-server-dom-webpack-server.node.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack-experimental/package.json (modified, +2/-2)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.development.js (modified, +4/-2)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.browser.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.edge.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.development.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-client.node.production.js (modified, +2/-0)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.browser.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.edge.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.production.js (modified, +3/-1)
  • packages/next/src/compiled/react-server-dom-webpack/package.json (modified, +2/-2)

PR #35810: [Flight] Add support for transporting Error.cause

Description (problem / solution / changelog)

Summary

Adds support for transporting Error.cause (e.g. new Error(message, { cause }). React supports arbitrary values in .cause since .cause doesn't need to be an Error instance (see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/cause#description)

How did you test this change?

  • Added test

Changed files

  • packages/react-client/src/ReactFlightClient.js (modified, +14/-8)
  • packages/react-client/src/__tests__/ReactFlight-test.js (modified, +133/-0)
  • packages/react-server/src/ReactFlightServer.js (modified, +29/-10)
  • packages/shared/ReactTypes.js (modified, +9/-0)

Code Example

TypeError: chunk.reason.error is not a function
    at ignore-listed frames
⨯ uncaughtException: TypeError: chunk.reason.error is not a function
    at ignore-listed frames
⨯ uncaughtException:  TypeError: chunk.reason.error is not a function
    at ignore-listed frames

---

[TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]
⨯ uncaughtException: [TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]
⨯ uncaughtException:  [TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]

---

Operating System:
  Platform: darwin
  Arch: arm64
  Version: Darwin Kernel Version 25.3.0: Wed Jan 28 20:53:05 PST 2026; root:xnu-12377.81.4~5/RELEASE_ARM64_T6020
  Available memory (MB): 32768
  Available CPU cores: 12
Binaries:
  Node: 25.8.0
  npm: 11.11.0
  Yarn: 1.22.22
  pnpm: 10.30.3
Relevant Packages:
  next: 16.1.6 // Latest available version is detected (16.1.6).
  eslint-config-next: N/A
  react: 19.2.4
  react-dom: 19.2.4
  typescript: N/A
Next.js Config:
  output: N/A
RAW_BUFFERClick to expand / collapse

Link to the code that reproduces this issue

https://github.com/apostolos/next.js-repro/tree/repro-chunk-reason-error

To Reproduce

  1. Start the application in development pnpm run dev
  2. open http://localhost:3000/repro
  3. change any line of text in ./app/repro/page.tsx and save the file
  4. notice the error in the stdout

Current vs. Expected behavior

HMR appears to work but the following error appears in the stdout:

TypeError: chunk.reason.error is not a function
    at ignore-listed frames
⨯ uncaughtException: TypeError: chunk.reason.error is not a function
    at ignore-listed frames
⨯ uncaughtException:  TypeError: chunk.reason.error is not a function
    at ignore-listed frames

After enabling adding __NEXT_SHOW_IGNORE_LISTED=true in my .env file, the error becomes:

[TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]
⨯ uncaughtException: [TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]
⨯ uncaughtException:  [TypeError: chunk.reason.error is not a function
    at <unknown> (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2066:28)
    at Map.forEach (<anonymous>)
    at reportGlobalError (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:2061:26)
    at close (webpack://next/dist/compiled/react-server-dom-turbopack/cjs/react-server-dom-turbopack-client.node.development.js:4940:13)
    at Readable.emit (node:events:508:20)
    at endReadableNT (node:internal/streams/readable:1729:12)
    at process.processTicksAndRejections (node:internal/process/task_queues:90:21)]

It looks to be related to this React PR: https://github.com/facebook/react/pull/35810

More specifically this line: https://github.com/facebook/react/blob/main/packages/react-client/src/ReactFlightClient.js#L1127

Additional notes:

  • cacheComponents must be turned on
  • I can replicate it reliably by rendering a base-ui component. I'm not sure if there is something in base-ui that causes the problem, but it shouldn't cause an unhandled exception in Flight.

Provide environment information

Operating System:
  Platform: darwin
  Arch: arm64
  Version: Darwin Kernel Version 25.3.0: Wed Jan 28 20:53:05 PST 2026; root:xnu-12377.81.4~5/RELEASE_ARM64_T6020
  Available memory (MB): 32768
  Available CPU cores: 12
Binaries:
  Node: 25.8.0
  npm: 11.11.0
  Yarn: 1.22.22
  pnpm: 10.30.3
Relevant Packages:
  next: 16.1.6 // Latest available version is detected (16.1.6).
  eslint-config-next: N/A
  react: 19.2.4
  react-dom: 19.2.4
  typescript: N/A
Next.js Config:
  output: N/A

Which area(s) are affected? (Select all that apply)

Not sure

Which stage(s) are affected? (Select all that apply)

next dev (local)

Additional context

No response

extent analysis

Fix Summary

The crash is caused by a mismatch between React 19.2.4 (which expects chunk.reason to be an Error object with an .error method) and the version of React‑Server‑DOM Turbopack bundled with Next 16.1.6.
The quickest, production‑ready fix is to downgrade React/React‑DOM to 19.2.3 (or any 19.2.x < 19.2.4), which restores the old chunk.reason shape.
If you need to stay on 19.2.4, apply a tiny monkey‑patch to the Turbopack client that guards against the missing method.

Both approaches are described below.


1️⃣ Downgrade React & React‑DOM (recommended)

# 1️⃣ Pin the versions in package.json
#   (or run the command directly)
pnpm add [email protected] [email protected]

# 2️⃣ Remove the stale build artefacts
pnpm exec rimraf .next node_modules/.cache

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

nextjs - ✅(Solved) Fix [Flight] chunk.reason.error is not a function [10 pull requests, 6 comments, 6 participants]