30秒で判断
- 対応すべき人: Vite 8系を利用しており、HMRのexport単位での受け入れ制御や、
chunkImportMapを有効化した非ルートbase構成、プリロード処理を利用している方 - 対応不要な人: Viteを使用していない方、8系で特に不具合に遭遇していない方
- 確認コマンド:
npx vite --version(またはcat node_modules/vite/package.json | grep '"version"')で現在のバージョンを確認
この変更が意味すること
Vite 8.3.4はバージョン番号上はパッチリリースですが、HMR関連の新機能1件と、ビルド・開発サーバー周りのバグ修正3件を含みます。破壊的変更はないため、通常のアップデートサイクルで取り込める内容です。
とくに import.meta.hot.acceptExports への対応により、HMR時にモジュールの特定exportだけを受け入れる制御が可能になりました。また、chunkImportMap を有効化した非ルートbase構成でのプリロードパス不整合や、スタイルシートの読み込みタイミングに関するバグ修正も含まれており、該当する構成を使っている場合は更新の効果があります。
主な変更点
Features: import.meta.hot.acceptExports のサポート
bundled-dev 環境で import.meta.hot.acceptExports がサポートされました(#23463)。HMR時にモジュール全体ではなく、特定のexportのみを受け入れる制御ができるようになります。
Bug Fixes: HMRデフォルト値の意図しない変更を修正
HMRのデフォルト設定オブジェクトが意図せず変更(mutate)されてしまう不具合が修正されました(#23575 / #23576)。
Bug Fixes: chunkImportMap有効時・非ルートbaseでのプリロード修正
chunkImportMap を有効化し、かつbaseがルート以外の場合に、プリロードパスが正しく解決されない問題が修正されました(#23698)。
Bug Fixes: プリロードヘルパーでのスタイルシート読み込み待機
プリロードヘルパー内で、処理中(in-flight)のスタイルシート読み込みを待機するよう修正されました(#23652 / #23662)。
EOL / サポート状況
endoflife.dateにはVite単体のサポートサイクル情報が収録されていないため、本ページではEOLテーブルを省略します。npmのdist-tagsでは latest が 8.3.4、previous が 6.4.4 となっています。
開発者への影響
import.meta.hot.acceptExportsにより、HMR時のexport単位の受け入れ制御が可能になり、カスタムHMRハンドラの実装がより柔軟になります。chunkImportMap+ 非ルートbase構成を使っているプロジェクトは、プリロードパスの不整合が解消されます。- プリロードヘルパーのスタイルシート待機修正により、ビルド成果物でのスタイル読み込みタイミングに関する不具合が改善します。
- 破壊的変更はないため、8系内でのアップデート負荷は小さい見込みです。
アップデート方法
npm install -D vite@8.3.4
# または
pnpm add -D vite@8.3.4
# yarn
yarn add -D vite@8.3.4
アップデート後は、開発サーバーの起動・HMR・ビルド・プレビューが正常に動作することを確認してください。
データソース: GitHub Releases API, npm Registry AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。
export const impactScoreData = {
"total": 22,
"level": "low",
"label": "影響度: 低(新機能1件・バグ修正3件)",
"factors": [
{"name": "Breaking Changes", "score": 0, "maxScore": 40},
{"name": "新機能", "score": 10, "maxScore": 25},
{"name": "バグ修正", "score": 12, "maxScore": 20},
{"name": "セキュリティ", "score": 0, "maxScore": 15},
{"name": "依存関係", "score": 0, "maxScore": 15}
]
};
export const eolData = [];
export const breakingChangesData = {
"count": 0,
"items": []
};
export const updateAdviceData = {
"rating": 3,
"maxRating": 5,
"label": "通常のメンテナンスサイクルでの更新を推奨",
"shouldUpdate": [
"import.meta.hot.acceptExportsを使ったHMR制御を取り入れたい",
"chunkImportMap有効化・非ルートbase構成を利用している",
"プリロード周りの不具合に遭遇している"
],
"canWait": [
"Viteを使用していない",
"8系で特に不具合に遭遇していない"
]
};
export const versionNavData = {
"previousVersion": "8.3.3",
"nextVersion": null
};
export const actionGuideData = {
"evaluation": {
"priority": "medium",
"actionRequired": "recommended"
},
"action": {
"steps": [
"テスト環境で8.3.4へ更新する",
"HMR・プリロード・スタイル読み込みの動作を確認する",
"本番環境に適用する"
],
"skipIf": [
"Viteを使用していない",
"8系で特に不具合に遭遇していない",
"すでに8.3.4以降を利用している"
],
"notes": ["破壊的変更はないため、通常のメンテナンスで更新して問題ありません"]
},
"impact": {
"targets": ["Vite 8利用者"],
"scope": "partial"
},
"changeCategory": "バグ修正"
};
