# Next.js v16.4.0-canary.9 - Product: Next.js (https://whatsnew.fyi/product/next-js) - Vendor: Vercel - Date: 2026-08-27 - Version: v16.4.0-canary.9 - Original notes: https://github.com/vercel/next.js/releases/tag/v16.4.0-canary.9 - Permalink: https://whatsnew.fyi/product/next-js/releases/v16.4.0-canary.9 - Labels: Pre-release What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — Don't drop client references when the concatenated module id is 0 - **changed** — Replace resumed render bailout error with ReactDOM.browser behind a flag - **changed** — Replace useSearchParams bailout error with ReactDOM.browser behind a flag - **changed** — Replace CSRBailout error with ReactDOM.browser behind a flag - **fixed** — Reject non-2xx internal image responses in next/image - **changed** — Re-enable AVIF image optimization - **fixed** — Don't report a client-aborted RSC stream as a render error - **fixed** — Fix Turbopack re-export cycle deadlock - **added** — Turbopack expose list of non-inlined env vars - **added** — Stub HTTP on wasm targets in turbo-tasks-fetch - **fixed** — Make TaggedValue usable on wasm in turbo-rcstr - **changed** — Improve Pat::Assign modelling in Turbopack analyzer - **changed** — Upgrade rustc to nightly-2026-08-20 - **changed** — Upgrade React from bd6ea412-20260824 to f789f203-20260825 ###### Misc Changes - fix: don't drop client references when the concatenated module id is 0: #97936 - Replace resumed render bailout error with ReactDOM.browser behind a flag: #96844 - Replace useSearchParams bailout error with ReactDOM.browser behind a flag: #96843 - Replace CSRBailout error with `ReactDOM.browser` behind a flag: #96826 - fix(next/image): reject non-2xx internal image responses: #97957 - [test] Pin Vercel CLI to Node 20.9 compatible version: #97960 - Re-enable AVIF image optimization: #97931 - Don't report a client-aborted RSC stream as a render error: #96715 - [PPF] Only track runtime accesses when the promise is used: #97165 - Fix Turbopack re-export cycle deadlock: #97933 - Port React's @gate test directive to the e2e harness: #96228 - Migrate from box_patterns to deref_patterns: #97924 - Turbopack: expose list of non-inlined env vars: #95310 - feat(turbo-tasks-fetch): stub HTTP on wasm targets: #97585 - fix(turbo-rcstr): make TaggedValue usable on wasm: #97577 - docs: explain origin matching for allowedOrigins and allowedDevOrigins: #97805 - Turbopack: improve Pat::Assign modelling in analyzer: #97867 - Upgrade rustc to nightly-2026-08-20: #97665 - Upgrade React from `bd6ea412-20260824` to `f789f203-20260825`: #97887 - [test] Fix flaky build CLI output capture: #97900 - turbo-tasks-backend: parent_count reference counting: #95976 ###### Credits Huge thanks to @jgruica, @devjiwonchoi, @zeeshan56656, @eps1lon, @lazerg, @lubieowoce, @sokra, @acdlite, @mischnic, @icyJoseph, and @lukesandberg for helping!