Releases: vercel/next.js
v16.0.0-canary.12
Core Changes
- Add rendered search to router state: #84983
- [segment cache]: delay revalidation prefetch pings 300ms: #84981
- Show relative path from cwd for Proxy Middleware file conflict error: #84993
- [Cache Components] fix docs for cacheLife("seconds"): #85004
- Rename MiddlewareMatcher to ProxyMatcher: #85005
- [Breaking] Rename instrumentation onRequestError
context.routeTypefrommiddlewaretoproxy: #85006 - [turbopack] Prevent accidental access to
.next: #84714
Misc Changes
- Turbopack: Track errored tasks as dependency when using untracked(): #84914
Credits
Huge thanks to @sokra, @acdlite, @ztanner, @devjiwonchoi, @lubieowoce, and @lukesandberg for helping!
v16.0.0-canary.11
Core Changes
- Relax default.tsx validation for parallel routes leaf segments: #84767
- Add codemod for removing
unstable_prefix: #84974 - Interception routes match from nested route navigation: #84898
- [Cache Components] Allow unstable prefix for cacheLife and cacheTag: #84934
- Add codemod for removing
experimental_ppr: #84979 - fix: throw error during build when invalid export for Proxy: #84886
- [cache components]: prevent expired entries from being served: #84975
- Delete old prefetch cache related code: #84977
- docs: Deprecation of Middleware: #84710
Misc Changes
- Docs/sync with new features 0: #84861
- Turbopack: transpile runtime with swc: #84931
- docs: x-nextjs-stale-time header: #84901
- docs: Templates on navigation: #84493
- chore: Attempt to fix ppr-partial-hydration flakiness: #84672
- Update Rspack production test manifest: #84939
- Turbopack: rename Persistent Caching: #84896
- Turbopack: Add ChunkedVec test case: #84756
- docs: Add missing codemod docs: #84980
- Update prefetching.mdx providing more clarity on the usage of
router.prefetch(): #84903 - docs: getting started installation and next lint removal: #84781
- docs: Split "Get Started: Route Handlers and Middleware" to Route Handlers and Proxy: #84708
- docs: Replace Middleware docs to Proxy: #84709
- chore: Remove redundant copy of rust reqwest crate: #84982
- [turbopack] Allow withRspack to work even if you already have NEXT_RSPACK set: #84987
Credits
Huge thanks to @icyJoseph, @wyattjoh, @mischnic, @devjiwonchoi, @gnoff, @bgw, @vercel-release-bot, @sokra, @ztanner, @acdlite, @hallucinogenizer, and @lukesandberg for helping!
v15.5.6
v16.0.0-canary.9
Core Changes
- [Cache Components] Remove
unstableprefix fromunstable_cacheTag: #84880 - [Cache Components] separate runtime stage in dev render: #84644
- Reland "Include server latency in debug info": #84950
- Update codemod ESLint template to Flat config: #84919
- Upgrade React from
56e84692-20251014to93f85932-20251016: #84963 - [dev] Fix Middleware and Proxy file conflict: #84965
Credits
Huge thanks to @gnoff, @lubieowoce, @eps1lon, and @devjiwonchoi for helping!
v16.0.0-canary.8
Core Changes
- Revert "Include server latency in debug info": #84932
- Development: Use process.hrtime for request time calculation: #84905
- Use correct JSX runtime for library-owned JSX in React Server: #84869
- Development: Implement request log time details: #84906
Credits
Huge thanks to @ztanner, @timneutkens, and @eps1lon for helping!
v16.0.0-canary.10
Core Changes
- stabilize experimental.enablePrerenderSourcemaps: #84916
- Stop manually setting stacktrace limit: #84968
- Turbopack: respect
--profileCLI param: #84920 - Relax default.tsx validation for parallel routes leaf segments: #84767
- Add codemod for removing
unstable_prefix: #84974 - Interception routes match from nested route navigation: #84898
- [Cache Components] Allow unstable prefix for cacheLife and cacheTag: #84934
Misc Changes
- Turbopack: fix pageExtensions precedence: #84926
- Turbopack: fix client reference order for shared references: #84760
- Turbopack: turn panic into bail: #84927
- Docs/sync with new features 0: #84861
- Turbopack: transpile runtime with swc: #84931
- docs: x-nextjs-stale-time header: #84901
- docs: Templates on navigation: #84493
Credits
Huge thanks to @mischnic, @ztanner, @eps1lon, @icyJoseph, @wyattjoh, @devjiwonchoi, and @gnoff for helping!
v16.0.0-canary.7
Core Changes
- [Cache Components] Remove
unstableprefix fromunstable_cacheLife: #84877 - fix: always use the safe stable stringify: #84909
- [Cache Components] Fix cacheSignal in dev render: #84846
- [dev-overlay] Never dedupe errors with different names or messages: #84908
- Remove deprecated experimental_ppr route-level configuration: #84871
- Include server latency in debug info: #84580
- Fix parallel routes ignoring generateStaticParams from primary route: #84889
Misc Changes
- Turbopack: expose client static assets correctly: #84695
- Turbopack: better errors for strip_prefix_len: #84882
- Turbopack: improve missing factory message: #84881
- CNA: Update template to use ESLint Flat config: #84917
- fix: process.env.TURBOPACK maybe undefined: #84885
- Turbopack: fix spacing on EcmascriptModuleAssetType: #84915
- Update Rspack development test manifest: #84890
- Update Rspack production test manifest: #84891
- Fix url-imports test: #84922
Credits
Huge thanks to @gnoff, @huozhi, @mischnic, @lubieowoce, @eps1lon, @wyattjoh, @devjiwonchoi, @SyMind, @sokra, @acdlite, and @vercel-release-bot for helping!
v16.0.0-canary.6
Core Changes
- Add nextjs condition when cacheComponents is enabled: #84843
- remove rdcForNavigations configuration & bundle with cacheComponents: #84870
- Convert eslint-config-next project to TypeScript: #84839
- [eslint-config] [Breaking] Use Flat config by default: #84874
Misc Changes
- Update turborepo env in workflows: #84879
- Turbopack: take task cache log before starting snapshot: #84755
- Turbopack: allow gzip compression on trace files: #84685
- Turbopack: process task result as part of the task completion: #84638
- Add test for eslint-config-next: #84838
- Turbopack: lower level drop collectibles: #84895
- docs: next/dynamic headings: #84492
Credits
Huge thanks to @gnoff, @ijjk, @ztanner, @sokra, @devjiwonchoi, and @icyJoseph for helping!
v16.0.0-canary.5
Core Changes
- feat: using @next/rspack-core: #84221
- Upgrade React from
ead92181-20251010tod7215b49-20251013: #84850 - Turbopack build: Switch to using workerthreads for process: #84818
- [Cache Components] Dev - restart render on cache miss: #84088
- Update font data: #84785
- Fix build compile mode if pages dir does not exist in Next.js 16: #84783
- improve next config schema validation errors: #84847
- Upgrade React from
d7215b49-20251013to56e84692-20251014: #84860 - warnOnce for Middleware deprecation: #84862
- Add codemod for Middleware API to Proxy API: #84824
- Deprecate Middleware API and add Proxy API: #84764
- remove
clientParamParsingconfiguration & bundle it withcacheComponents: #84763 - remove dynamicIO flag: #84872
- Bump eslint-plugin-react to 7.37.0: #84876
Misc Changes
- docs: soft 404's, Suspense and loading.tsx: #83867
- [turbopack] Discuss Core Web vitals in our bundle size gap docs: #84837
- [turbopack] document missing webpack loader features: #84849
- [turbopack] fix typo in docs: #84868
- [turbopack] Remove the implementation of
TaskInputfromAutoSet: #84867
Credits
Huge thanks to @SyMind, @icyJoseph, @timneutkens, @lubieowoce, @vercel-release-bot, @greguintow, @huozhi, @devjiwonchoi, @lukesandberg, and @ztanner for helping!
v16.0.0-canary.4
Core Changes
- Use ESLint Flat Config: #84800
- fix missing flight-router-state-tree header normalization: #84718
- Write
.next/dev/types/**/*.d.tsto default tsconfig: #84747 - Upgrade React from
9724e3e6-20251008toead92181-20251010: #84793 - [mcp] capture next config schema errors: #84832
Example Changes
- [docs] fix(with-supabase): Update README env variables: #84745
Misc Changes
- Update test/CNA templates React version to 19.2.0: #84736
- Turbopack: use the same serialization method for lookup as for storing: #84765
- Turbopack: update petgraph: #84757
- [turbopack] Issue 'too many matches' warning for DirAssets also: #84768
- Revert "Fix flakey overlay feedback test": #84819
- [test]: de-flake client-cache.original.test.ts: #84831
- [ci]: set NEXT_TEST_VERSION to release tag for deploy tests: #84840
Credits
Huge thanks to @eps1lon, @devjiwonchoi, @CarloQuick, @sokra, @lukesandberg, @ztanner, and @huozhi for helping!