# Next.js v16.4.0-canary.1 - Product: Next.js (https://whatsnew.fyi/product/next-js) - Vendor: Vercel - Date: 2026-08-21 - Version: v16.4.0-canary.1 - Original notes: https://github.com/vercel/next.js/releases/tag/v16.4.0-canary.1 - Permalink: https://whatsnew.fyi/product/next-js/releases/v16.4.0-canary.1 - 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** — Fix parallelRouteKey parameter name in useSelectedLayoutSegment(s) - **changed** — Avoid cloning paths in fs watcher if the path is already in a map - **removed** — Remove generated error codes - **added** — Add instant validation for unstable_navigation() - **changed** — Trace graceful-fs calls in Turbopack - **changed** — Migrate some async blocks to async closures - **added** — Add scope_unbounded, a scoped execution primitive that allows more work to be discovered - **added** — Add a Turbopack error for missing root layouts - **changed** — Improve Partial Prefetching adoption checks - **changed** — Correct the upper stale bound for App Shell exclusion in cacheLife - **added** — Add unstable_prefetch() function for Partial Prefetching - **changed** — Clarify beforeInteractive placement for root layouts - **fixed** — Give eager import.meta.glob values the ESM namespace ###### Misc Changes - docs: fix parallelRouteKey parameter name in useSelectedLayoutSegment(s): #97710 - Turbopack: Avoid cloning paths in fs watcher if the path is already in a map: #97655 - Remove generated error codes: #97687 - [PPF] Instant validation for unstable_navigation(): #97309 - Turbopack: trace graceful-fs calls: #97694 - Migrate some async blocks to async closures: #97666 - turbo-tasks: add scope_unbounded, a scoped execution primitive that allows more work to be discovered: #95974 - test: make app-document-import-order more robust: #97682 - Add a Turbopack error for missing root layouts: #97639 - Improve Partial Prefetching adoption checks: #97637 - test: stabilize poisoned proxy error overlay: #97609 - docs: correct the upper stale bound for App Shell exclusion in cacheLife: #97653 - docs: Adapters entry page lists its children pages twice: #97677 - [PPF] unstable_prefetch(): #97622 - [PPF] Scaffold unstable_prefetch(): #97618 - docs: clarify beforeInteractive placement for root layouts: #97643 - fix(turbopack): give eager `import.meta.glob` values the ESM namespace: #96559 ###### Credits Huge thanks to @marcoshernanz, @bgw, @devjiwonchoi, @lubieowoce, @mischnic, @lukesandberg, @DavidIlie, @aurorascharff, @sokra, and @icyJoseph for helping!