Next.js 14.2正式リリース、webpack後継ビルドツールのTurbopackがリリース候補版に
Vercelは同社が開発するWebアプリケーションフレームワークの最新版となる「Next.js 14.2」の正式リリースを発表しました。
Next.jsは、ReactをベースとしたオープンソースのWebアプリケーションフレームワークです。ルーティングやサーバサイドレンダリング(SSR)、静的サイト生成(SSG)など多数の機能を備えています。
Next.js 14.2では、webpack後継のRust製のビルドツール「Turbopack」がリリース候補に到達。ビルドの性能向上やキャッシュ、エラーメッセージの改善などが行われています。
Next.js 14.2
— Next.js (@nextjs) April 11, 2024
◆ Turbopack (RC): 99.8% of tests passing for `next dev --turbo`
◆ Build / Production Improvements: Reduced memory usage
◆ Caching Improvements: Configurable client-side cache revalidation
◆ Errors DX: Better hydration mismatch messageshttps://t.co/5HmBItDal2
Turbopackは、代表的なバンドルツールの1つであるwebpackの開発者であるTobias Koppers氏らが、Next.jsの開発元であるVercelに参加して開発しているバンドツールで、webpackの後継を名乗っています。
参考:webpackの後継となる新バンドルツール「Turbopack」が登場。Rust製のネイティブアプリケーションでWebpackの700倍高速に。Next.js Conf 2022
バンドルツールとは多数のJavaScriptやTypeScriptなどのコードを1つにまとめる機能を備えたツールです。多数のライブラリやコンポーネントなどを用いてチームで開発する大規模なWebアプリケーションの開発には欠かせません。
Webアプリケーションが大規模かつ複雑になるにつれて、バンドルツールによるビルドの時間が長くなることは開発者体験や開発スピードの劣化につながります。
Turbopackはこれを改善するためRust言語で開発され、さらにソースコードの中で変更された部分だけを再ビルドすることで瞬時にビルドが終了するような最適化などを行うなどにより、高速な処理を実現しています。
Turbopackがリリース候補版に到達
Next.js 14.2では、このTurbopackがリリース候補版に到達したと発表されました。
約6000種類のテストの99.8%にパスし(エラーは3種類のみ)、Next.jsのアプリケーションで使われている上位300までのnpmパッケージがコンパイルできることが確認され、すべてのNext.jsのサンプルが動作することも確認されました。
ビルド時のメモリ使用量やキャッシングの動作も改良されています。
また、Next.js自体もサーバコンポーネントとクライアントコンポーネントの境界を最適化することで、JavaScriptバンドルサイズの大幅な削減を実現。
さらに、非常に大規模なNext.jsアプリケーションで本番ビルド中にメモリ不足によるクラッシュが発生する問題に対して、バンドルロジックをリファクタリングしコンパイラを最適化したと説明されています。
開発モードでのエラーメッセージの改良
エラーの内容などを確認するために開発モードでNext.jsアプリケーションを起動する「next dev」コマンドでは、より分かりやすいエラーメッセージとスタックトレースの表示、より明確な開発ログとビルドログの表示、表示時のオーバーレイデザインの改良、表示のダークモードサポート対応などが行われています。
あわせて読みたい
「Tailscale SSH」が正式版に到達。面倒な鍵管理が不要のSSH、VSCode拡張機能でリモートファイルも編集可能
≪前の記事
オープンソースによるFirebase代替を名乗るBaaS「Supabase」が正式サービスとして提供開始