ClaudeNext.js2025/07/14 20:00

Next.js 15.4

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

claudejamodel: claude-sonnet-4-20250514

Next.js 15.4リリース - Turbopackビルドの統合テスト100%対応とNext.js 16プレビュー

Key Points

  • Turbopackビルドが全統合テストに対応
  • Next.js 16のCache Components機能プレビュー
  • クライアントサイドルーティングの最適化

Summary

Next.js 15.4がリリースされ、パフォーマンス、安定性、Turbopack互換性の向上が図られました。主要な改善点として、Turbopackビルドが全8298の統合テストに対応し、vercel.comでも本格運用されています。また、Next.js 16の早期プレビューも公開されています。

Key Points

Turbopackビルド

  • next build --turbopackが全統合テストに対応(8298テスト)
  • vercel.comで本格運用開始
  • Next.js 16でベータ版リリース予定

Next.js 16プレビュー機能

  • Cache Components (beta): Dynamic IO、use cache、PPRを統合したキャッシュ機能
  • 最適化されたクライアントサイドルーティング: プリフェッチとキャッシュ無効化の改善
  • DevTools & デバッグ: ルート情報の検査とブラウザログのターミナル転送
  • Node.js Middleware (stable): 実験的機能から安定版に昇格
  • Deployment Adapters (alpha): カスタムデプロイアダプターの作成が可能

主要な変更点

  • RSCクエリのリダイレクト時保持
  • ボットに対するエラーフォールバック改善
  • プリフェッチエントリのstaleTime伝播修正
  • 開発サーバーの再起動機能追加

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

claudejamodel: claude-sonnet-4-20250514

Next.js 15.4

Next.js 15.4

投稿者: Jimmy Lai @ feedthejim、Zack Tanner @ zt1072
公開日: 2025年7月14日(月)

Next.js 15.4には、パフォーマンス、安定性、およびTurbopackの互換性に関するアップデートが含まれています。

このリリースのハイライト

  • Turbopackビルド: next build --turbopackの統合テスト互換性が100%達成
  • 安定性の向上: Next.jsとTurbopackの安定性とパフォーマンスに関する数多くの改善

このブログ投稿では、次のメジャーリリースであるNext.js 16の早期プレビューも含まれています。

アップグレード方法

今すぐアップグレードするか、以下のコマンドで開始してください:

# 自動アップグレードCLIを使用
npx @next/codemod@canary upgrade latest

# ...または手動でアップグレード
npm install next@latest react@latest react-dom@latest

# ...または新しいプロジェクトを開始
npx create-next-app@latest

Turbopackビルド

next build --turbopackは現在、プロダクションビルドの8298の統合テストすべてに合格し、vercel.comを支えています。これは、Next.jsでTurbopackを安定版としてマークするための重要なマイルストーンです。

チームの現在の優先事項は、プロダクションチャンキングによるバンドル最適化の完成と、Alphaリリースの早期採用者から報告されたバグの修正です。

また、Turbopackの内部で数多くの安定性とパフォーマンスの改善を行いました。Turbopackがまもなくプロダクション使用の準備が整うと確信しており、Next.js 16でのベータリリースに向けて取り組んでいます。

以前にTurbopackを試したことがある場合は、今が再度試すのに良いタイミングです。問題が発生した場合は、GitHub Issuesでお知らせください。

今後の展望:Next.js 16

過去数ヶ月間、私たちはNext.jsの大幅な改善に取り組んできました。TurbopackによるDXの向上と、PPRとuse cacheによるApp Routerのコア機能に焦点を当てています。これらの機能をデフォルトで有効にする準備はまだ整っていませんが、この夏のNext.js 16でユーザーが試せるよう基盤を整えることを目指しています。

Next.js 16の予定機能プレビュー

  • Cache Components(ベータ): 実験的なキャッシュ機能(Dynamic IO、use cache、Partial Prerendering)を統一されたcacheComponentsフラグに統合し、パフォーマンス最適化戦略を簡素化
  • Turbopackビルド(ベータ): next build --turbopackを導入し、統合テストに完全合格、vercel.comなどの高トラフィックサイトで内部検証済み
  • 最適化されたクライアントサイドルーティング: よりスマートなプリフェッチ、改善されたキャッシュ無効化戦略、帯域幅使用量の削減により、App Routerナビゲーションを強化
  • DevTools & デバッグ: アプリ構造を検査し、loading.tsxなどのコンポーネントを切り替えるRoute Infoを追加。AI駆動のデバッグワークフローをサポートする実験的なブラウザログのターミナル転送を追加
  • Node.js Middleware(安定版): Next.js 15.2で導入された実験的なNode.jsランタイムサポートを安定版に昇格
  • Deployment Adapters(アルファ): ビルドとデプロイターゲットをより細かく制御するためのカスタムデプロイメントアダプターの作成を可能に
  • 軽微な非推奨化と変更: Node.js 18サポート、AMP、および一部のnext/image APIの非推奨化と適切な移行ガイダンス

私たちの目標は、このアップデートを可能な限りスムーズで分かりやすいものにすることです。これらの変更を慎重に管理して混乱を最小限に抑え、Next.js 16への移行をサポートする明確なガイダンスとツールを提供します。

今後の機能をプレビュー

canaryチャンネルを使用し、next.config.jsで以下のフラグを有効にすることで、これらの機能の多くを今日から試すことができます:

import type { NextConfig } from 'next';

const nextConfig: NextConfig = {
  experimental: {
    // デバッグを簡単にするためブラウザログをターミナルに転送
    browserDebugInfoInTerminal: true,
    // 新しいキャッシュと事前レンダリング動作を有効化
    dynamicIO: true, // Next.js 16でcacheComponentsに名前変更予定
    // 新しいクライアントサイドルーターの改善を有効化
    clientSegmentCache: true,
    // DevToolsを通じてルート構成とセグメントオーバーライドを探索
    devtoolSegmentExplorer: true,
    // グローバル404ページをより簡単に定義できる`global-not-found`のサポートを有効化
    globalNotFound: true,
    // turbopack開発サーバーとビルドの永続キャッシュを有効化
    turbopackPersistentCaching: true,
  },
};

export default nextConfig;

注目すべき変更点

改善

  • リダイレクト時のRSCクエリの保持 (#77963)
  • ボット向けの優雅なエラーフォールバック (#77916)
  • クライアントコンポーネントでのunstable_rootParamsの禁止 (#79471)
  • bodySizeLimitエラーと非マルチパートアクションの修正 (#77746)
  • 不明なアクションIDに対する404レスポンス (#77012)
  • RSCリクエストでのキャッシュバスティングパラメータのチェック (#80669)
  • Vercel OGを0.7.2にアップグレード (#81447)
  • assert/strictを外部として一覧表示 (#80884)
  • 転送前にFlightRouterStateからsearchParamデータを省略 (#80734)
  • トップレベルでのストリーミングメタデータのレンダリング (#80566)

修正

  • 変更を避けるためのconfigモジュールのクローン (#80573)
  • シードされたプリフェッチエントリへのstaleTimeの伝播 (#81263)
  • varyの復活 (#79939)
  • React Compilerの興味深さ検出の修正 (#79558)
  • React Compiler有用性検出器の修正 (#79480)
  • launchEditorでのエッジケースファイルパスのより良い処理 (#79526)
  • 静的ページの古いプリフェッチエントリをクライアントルーターが破棄 (#79362)

新機能

  • router.prefetchにonInvalidateを追加 (#77880)
  • Linkにprefetch="auto"をprefetch={undefined}のエイリアスとして追加 (#78689)
  • global-not-foundでのメタデータサポート (#78961)
  • エラーオーバーレイからの開発サーバー再起動 (#80060)
  • インジケーター設定からの開発サーバー再起動 (#80072)
  • next buildに--debug-prerenderオプションを追加 (#80667)
  • サーバー外部にhtmlrewriterを追加 (#80819)
  • インターセプトされた動的ルートの部分的事前レンダリングを許可 (#80851)

パフォーマンス

  • React Compilerの前にSWCでファイルをチェック (#75605)
  • 静的パス生成パフォーマンスとパラメータ処理の改善 (#81254)

その他

  • CPUトレースのキャプチャを可能にするための開発中のNEXT_CPU_PROF使用の修正 (#81248)

フィードバックの共有

Next.jsの未来を形作るためのフィードバックをお寄せください:

貢献者

Next.jsは3,000人を超える個人開発者の共同作業の結果です。このリリースは以下の方々によってもたらされました:

Next.jsチーム: Andrew、Ben、Hendrik、Janka、Jiachi、Jimmy、Jiwon、JJ、Josh、Jude、Rob、Sam、Sebastian、Sebbie、Wyatt、Zack

Turbopackチーム: Benjamin、Donny、Josh、Luke、Maia、Niklas、Tim、Tobias、Will

Next.js Docsチーム: Delba、Rich、Ismael、Joseph、Lee

そして、@sokra、@huozhi、@Marukome0743、@mischnic、@wbinnssmith、@eps1lon、@razzeee、@delbaoliveira、@kdy1、@wyattjoh、@acdlite、@ztanner、@bgw、@jantimon、@lubieowoce、@Fonger、@ospira、@gnoff、@styfle、@Cy-Tek、@timneutkens、@raunofreiberg、@devchaudhary24k、@Neschadin、@OreQr、@drewlong314、@ijjk、@praizjosh、@unstubbable、@lukesandberg、@ScriptedAlchemy、@sqidermad、@Juneezee、@devjiwonchoi、@Kamitenshi、@feedthejim、@leerob、@mauerbac、@miki-tebe、@gaearon、@mrbadri、@luwes、@lucacasonato、@M4xymm、@jirihofman、@vicb、@jackwilson323、@SyMind、@kevva、@xyf7、@gaojude、@dario-piotrowicz、@mastoj、@nicole0707、@lourd、@Karibash、@chipit24、@icyJoseph、@xusd320、@fireairforce、@GenhaoLi、@igas、@Macw07、@amannn、@bcdipesh、@r34son、@ivasilov、@lpalmes、@imskyleen、@teamleaderleo、@vitaliemiron、@agadzik、@chdeskur、@nakanoh、@luiscobot、@GameRoMan、@dferber90、@maurobonfietti、@navandstokes、@sajadtorkamani、@bobziroll、@lumirlumir、@KkOoSsTtAa、@msabramo、@sommeeeer、@schoenwaldnils、@remcohaszing、@HerringtonDarkholme、@bgub、@RobPruzan、@lmammino、@MohammedYehia、@extoci、@padmaia、@aacosta11、@vercel-release-bot、@maral、@ethanniser、@MichalMoravik、@rajrawat37、@kidonng、@dnhn、@kristian240、@rachnac-emeritus、@rortan134、@nick20name17の皆様に心から感謝いたします!