惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
www.infosecurity-magazine.com
www.infosecurity-magazine.com
博客园 - 聂微东
博客园 - 【当耐特】
Last Week in AI
Last Week in AI
量子位
S
SegmentFault 最新的问题
Hugging Face - Blog
Hugging Face - Blog
B
Blog RSS Feed
V
V2EX
酷 壳 – CoolShell
酷 壳 – CoolShell
雷峰网
雷峰网
GbyAI
GbyAI
Jina AI
Jina AI
宝玉的分享
宝玉的分享
腾讯CDC
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
D
Docker
博客园_首页
N
News and Events Feed by Topic
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Help Net Security
Help Net Security
Recent Commits to openclaw:main
Recent Commits to openclaw:main
C
Cisco Blogs
F
Fortinet All Blogs
SecWiki News
SecWiki News
AI
AI
S
Schneier on Security
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The Last Watchdog
The Last Watchdog
Martin Fowler
Martin Fowler
A
About on SuperTechFans
T
Troy Hunt's Blog
P
Proofpoint News Feed
Blog — PlanetScale
Blog — PlanetScale
Hacker News: Ask HN
Hacker News: Ask HN
F
Full Disclosure
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
I
InfoQ
S
Security @ Cisco Blogs
Project Zero
Project Zero
Simon Willison's Weblog
Simon Willison's Weblog
C
Cyber Attacks, Cyber Crime and Cyber Security
J
Java Code Geeks
N
News | PayPal Newsroom
IT之家
IT之家
大猫的无限游戏
大猫的无限游戏
H
Hacker News: Front Page

Next.js Blog

Next.js Security Release and Our Next Patch Release Turbopack: What's New in Next.js 16.3 Next.js 16.3: AI Improvements Next.js 16.3: Instant Navigations Next.js Across Platforms: Adapters, OpenNext, and Our Commitments Next.js 16.2: AI Improvements Turbopack: What's New in Next.js 16.2 Building Next.js for an agentic future Inside Turbopack: Building Faster by Building Less Next.js 16.1 Next.js Security Update: December 11, 2025 Security Advisory: CVE-2025-66478 Next.js 16 Next.js 16 (beta) Next.js 15.5 Next.js 15.4 Next.js 15.3 Building APIs with Next.js Next.js 15.2 Composable Caching with Next.js Next.js 15.1 Our Journey with Caching Next.js 15 Turbopack Dev is Now Stable Next.js 15 RC 2 Next.js 15 RC Next.js 14.2 Next.js 14.1 Next.js 14 How to Think About Security in Next.js Next.js 13.5 Next.js App Router Update Next.js 13.4 Next.js 13.3 Next.js 13.2 Next.js 13.1 Next.js 13 Next.js 12.3 Next.js 12.2 Layouts RFC Next.js 12.1 Next.js 12 Next.js 11.1 Next.js 11 Next.js 10.2 Next.js 10.1 Incrementally Adopting Next.js Next.js 10 Next.js 9.5 Next.js 9.4 Next.js 9.3 Next.js 9.2 Next.js 9.1.7 Introducing Create Next App Next.js 9.1 Next.js 9.0.7 Next.js 9 Next.js 8.1 Next.js 8.0.4 Styling Next.js with Styled JSX Next.js 8 Webpack Memory Improvements Next.js 8 Next.js 7 Next.js 6.1 Next.js 6 and Nextjs.org Next.js 5.1: Faster Page Resolution, Environment Config & More Next.js 5: Universal Webpack, CSS Imports, Plugins and Zones
Next.js 16.2
Jimmy Lai, Tim Neutkens · 2026-03-19 · via Next.js Blog

Next.js 16.2 includes performance improvements, better debugging, improvements for Agents, and over 200 Turbopack fixes and improvements.

  • Faster Time-to-URL: ~400% faster next dev startup
  • Faster Rendering: ~50% faster rendering
  • New Default Error Page: Redesigned built-in 500 page
  • Server Function Logging: Dev terminal logs for Server Function execution
  • Hydration Diff Indicator: Clear server/client diff in the error overlay
  • --inspect for next start: Attach the Node.js debugger to your production server

We also published dedicated deep-dive posts for two major areas of this release:

  • Turbopack: Faster builds, SRI support, postcss.config.ts, tree shaking improvements, Server Fast Refresh, and 200+ bug fixes
  • AI Improvements: AGENTS.md in create-next-app, browser log forwarding, and next-browser (experimental)

Upgrade today, or get started with:

Faster Time-to-URL in Development

We've significantly improved the time it takes before localhost:3000 is ready during next dev. On the same machine and project, startup is ~87% faster compared to Next.js 16.1 on the default application.

Faster Rendering

We contributed a change to React that makes Server Components payload deserialization up to 350% faster. The previous implementation used a JSON.parse reviver callback, which crosses the C++/JavaScript boundary in V8 for every key-value pair in the parsed JSON. Even a trivial no-op reviver makes JSON.parse roughly 4x slower than without one.

The new approach uses a two-step process: plain JSON.parse() followed by a recursive walk in pure JavaScript. This eliminates the boundary-crossing overhead and adds optimizations like short-circuiting plain strings that don't need transformation.

In real-world Next.js applications, this translates to 25% to 60% faster rendering to HTML, depending on the RSC payload size.

New Default Error Page

The default error page shown in production has been redesigned. When your application encounters an error and you haven't defined a custom global-error.tsx or error.tsx, Next.js renders a built-in fallback page. This fallback has been updated with a cleaner, more modern design.

The redesigned default error page in Next.js 16.2

Server Function Logging

Next.js now logs Server Function execution in the terminal during development. Each log shows the function name, its arguments, execution time, and the file it's defined in.

Server Function execution logs in the development terminal

Hydration Diff Indicator

When a hydration mismatch occurs, the error overlay now clearly labels which content came from the server and which from the client. The diff uses a + Client / - Server legend, making it immediately clear what diverged.

The hydration diff indicator showing client/server content differences

--inspect for next start

Next.js 16.1 introduced next dev --inspect for attaching the Node.js debugger during development. In 16.2, this extends to next start, allowing you to attach a Node.js debugger to your production server.

This is useful for debugging issues or profiling CPU and memory usage.

For more information on how to use the Node.js debugger, see the Chrome documentation.

The <Link> component now accepts a transitionTypes prop — an array of strings that specifies the types of View Transitions to apply when navigating. Each type is passed to React.addTransitionType during the navigation Transition, allowing you to trigger different animations based on the navigation direction or context.

This is only supported in the App Router, since the Pages Router does not use React Transitions for navigation. transitionTypes on Pages Router links is silently ignored, so shared link components work across both routers.

To learn more about view transitions, see the documentation.

Faster ImageResponse

ImageResponse has been updated with significant improvements:

  • 2x faster ImageResponse for basic images, up to 20x faster for complex images
  • Improved CSS and SVG coverage, including support for inline CSS variables, text-indent, text-decoration-skip-ink, box-sizing, display: contents, position: static, and percentage values for gap
  • Default font changed from Noto Sans to Geist Sans

Learn more about ImageResponse.

Error Causes in the Dev Overlay

The error overlay now displays Error.cause chains, making it easier to debug errors that wrap other errors. Causes are shown in a flat list below the top-level error, up to 5 levels deep.

The error overlay showing the full error cause chain

Adapters

Adapters are now stable. This is a new API that allows platforms to customize the build process.

This is useful for deployment platforms or custom build integrations that need to modify the Next.js configuration or process the build output.

We will share a more detailed overview of Adapters next week.

Multiple Icon Formats

Multiple icon files with the same base name but different extensions are now handled automatically in your app directory (e.g., icon.png and icon.svg). This is useful for browser fallback support. Modern browsers can use SVG icons while older browsers fall back to PNG. Both formats are rendered as separate <link> tags.

Experimental Features

unstable_catchError()

Extending the error recovery experience with the error.js file convention, unstable_catchError() provides more granular control of the error boundaries on the component level. By creating a custom error boundary using unstable_catchError(), you can place it anywhere in your component tree.

Compared to a custom React error boundary, unstable_catchError() is designed to work with Next.js out of the box:

  • Built-in error recovery: unstable_retry() re-renders the page from the server in transition.
  • Framework-aware integration: APIs like redirect() and notFound() work by throwing special errors under the hood. unstable_catchError() handles these seamlessly, so they're not accidentally caught by your error boundary.
  • Client navigation handling: The error state automatically clears when you do a client navigation to a different route.

The error boundary created by unstable_catchError() receives the props passed from the call site and the ErrorInfo value as the second argument, which is the same shape as the props passed to the error.js file convention.

Just like error.js, unstable_catchError() can only be called from Client Components.

unstable_retry() in error.tsx

A new unstable_retry() prop is now available in error.tsx components. Previously, the reset() prop only cleared the error state and re-rendered the children, which works for temporary rendering errors but doesn't help when the error originates from data fetching or the RSC phase.

unstable_retry() calls router.refresh() and reset() within a startTransition(), providing built-in retry logic that re-fetches data and re-renders the segment. This is expected to be preferred over reset() for most error recovery scenarios.

experimental.prefetchInlining

Next.js 16 introduced per-segment prefetching, where the client issues individual requests for each segment in the route tree. This improves cache efficiency as shared layouts between sibling routes are fetched once and reused, but increases request volume.

The new experimental.prefetchInlining option bundles all segment data for a route into a single response, reducing the number of prefetch requests to one per link. The trade-off is that shared layout data is duplicated across inlined responses rather than being cached and reused.

This is a stepping stone toward a size-based heuristic where small segments are inlined automatically and larger segments remain separate.

experimental.cachedNavigations

This flag independently controls the Cached Navigations behavior, which caches static and dynamic Server Components data from navigations and the initial HTML loads so that repeat visits can be served instantly. Requires cacheComponents to be enabled.

experimental.appNewScrollHandler

A reworked scroll and focus management system for App Router using React Fragment refs. The new handler improves how focus is managed after navigations. Instead of focusing the first focusable descendant deep within a segment (which could skip past content), it now blurs the active element, matching how browser navigations work.

Feedback and Community

Share your feedback and help shape the future of Next.js:

Contributors

Next.js is the result of the combined work of over 3,770 individual developers. This release was brought to you by:

Huge thanks to @acdlite, @unstubbable, @mischnic, @sokra, @ztanner, @mmastrac, @bgw, @lukesandberg, @wyattjoh, @huozhi, @eps1lon, @jwueller, @brookemosby, @delbaoliveira, @icyJoseph, @gaojude, @hanzala-sohrab, @dango0812, @ijjk, @msmx-mnakagawa, @Juneezee, @davidgolden, @LucianBuzzo, @devjiwonchoi, @alexcarpenter, @jaffarkeikei, @BradErz, @mintydev789, @naaa760, @Suhaib3100, @pavan-sh, @amannn, @fireairforce, @JamBalaya56562, @wheresrhys, @ericrav, @lubieowoce, @Thomas465xd, @bgub, @wbinnssmith, @Netail, @robert-j-webb, @bencmbrook, @shadcn, @sigmachirality, @abhishekmardiya, @vvscode, @feedthejim, @freek-boon-greenberry, @andrewimm, @alubbe, @FurryR, @01-binary, @andrewdamelio, @swarnava, @gnoff, @kristiyan-velkov, @styfle, @haydenbleasel, @rishishanbhag, @tdarthur, @lavanitha, and @karlhorky for helping!