From 66f06d6137fbda75eca625aecff621a3d6ef05a0 Mon Sep 17 00:00:00 2001 From: Jun Shindo <46585162+jay-es@users.noreply.github.com> Date: Sun, 8 Jun 2025 15:17:04 +0900 Subject: [PATCH] docs(rolldown): add manualChunks to advancedChunks migration guide --- guide/rolldown.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/guide/rolldown.md b/guide/rolldown.md index ab6b6a39..f1e31d90 100644 --- a/guide/rolldown.md +++ b/guide/rolldown.md @@ -99,6 +99,42 @@ Rolldown は不明または無効なオプションが渡されるとエラー このオプションを自身で設定していない場合は、使用しているフレームワークで修正される可能性があります。それまでの間、`ROLLDOWN_OPTIONS_VALIDATION=loose` 環境変数を設定することでこのエラーを抑制できます。 +### API の違い + +#### `manualChunks` から `advancedChunks` へ + +Rolldown は Rollup で利用可能だった `manualChunks` オプションをサポートしていません。代わりに、webpack の `splitChunk` に似た、よりきめ細かい設定を [`advancedChunks` オプション](https://rolldown.rs/guide/in-depth/advanced-chunks#advanced-chunks) を通じて提供します: + +```js +// 以前の設定 (Rollup) +export default { + build: { + rollupOptions: { + output: { + manualChunks(id) { + if (/\/react(?:-dom)?/.test(id)) { + return 'vendor' + } + } + } + } + } +} + +// 新しい設定 (Rolldown) +export default { + build: { + rollupOptions: { + output: { + advancedChunks: { + groups: [{ name: 'vendor', test: /\/react(?:-dom)?// }] + } + } + } + } +} +``` + ## パフォーマンス `rolldown-vite` は既存のエコシステムとの互換性を確保することに重点を置いており、デフォルトはスムーズな移行を目的としています。より高速な Rust ベースの内部プラグインやその他のカスタマイズに切り替えることで、さらなるパフォーマンス向上を得ることができます。