Nuxt4正式リリース概要、いま移行すべきか
つい先日、ついにNuxt 4が正式リリースされました🎉
今回はその更新内容とNuxt 3からの移行手順、さらに次のNuxt 5に関連して、いま移行すべきなのかついて簡単にまとめてみます。
(実際どの程度パフォーマンスが向上したか、などについては取り上げません)
Nuxt 4のポイント
- 主に開発者体験の向上に関する改善がなされている
- 具体的には以下の通り
- 標準のディレクトリ構造の変更(srcDirがデフォルトで
app/
になる) useAsyncData
やuseFetch
の動作改善- アプリケーションのコードとサーバーサイドのコードなどの分離により、TypeScriptの使用感の向上
- CLIの速度改善
- 標準のディレクトリ構造の変更(srcDirがデフォルトで
https://nuxt.com/blog/v4#whats-new
アップグレード手順
npx nuxt upgrade --dedupe
コマンドを実行- これはいつも通り
- (任意)
npx codemod@latest nuxt/4/migration-recipe
コマンドを実行 - 動作確認
https://nuxt.com/blog/v4#how-to-upgrade
ステップ2のコマンド内容はNuxt/4/Migration Recipeの中をたどると分かります。
また、公式のより詳細なアップグレードガイドがあるため、こちらも確認しておくとよいです。
Nuxt 2 -> 3の時に比べると、ほとんど手間がかからない内容となっています。
というのも、このNuxt 4は次のNuxt 5に向けたもののため、破壊的変更を最小限に抑えてあるためです。
Nuxtの今後の動き
主に以下の公式記事にまとめてあります。
そもそもNuxt 4は、当初の計画から1年遅れたリリースとなっています。
(どうも年イチの周期でメジャーリリースを出していきたかったっぽい)
そんな背景もあり、今回のメジャーリリースは、Nuxt 5に向けて一度破壊的変更のステップを踏んでおくためのものとなっていそうです。
今後の各メジャーバージョンは以下のような扱いになるようです。
- Nuxt 3
- 2025年末まで更新が続く
- 実質的なサポート期限
- Nuxt 4
- 2026年半ばまでサポート予定
- Nuxt 5
- LTSとなるバージョン
Nuxt 5はNitro v3の開発状況次第ではありますが、今後数ヶ月以内にリリースされる見込みと捉えられます。
そんなペースで本当にリリースまで持っていけるのか若干不安ではありますが、
Nuxtといえば先日Vercelと統合したこともあり、多少は期待できるかもしれません。
いまNuxt 4に移行しとくべきか?
結論から申し上げると、
「半年以内にやっておいた方が無難だが、Nuxt 5の情報が出てくるまで様子見でもよい」です。
先述のとおり、これはNuxt 5への移行をスムーズにする目的も含まれており、
そのために破壊的変更も最小限に抑えられているものです。
したがって、いまNuxt 3 -> 4に上げておいて、Nuxt 5が出た際に改めて移行するのが安心感は高いと考えられます。
といっても、大規模なプロジェクトではそう簡単に動けないこともあります。
なのでぶっちゃけ、Nuxt 5の情報がもう少し出てきてから考えるのでも全然遅くないかな、という感想です。