@@ -89,15 +89,15 @@ Vitepress や Vite をピア依存関係として持つメタフレームワー
89
89
90
90
Rolldown は Rollup の代替として機能することを目指していますが、まだ実装中の機能や意図的な動作の違いがあります。包括的なリストについては、定期的に更新される[ この GitHub PR] ( https://github.com/vitejs/rolldown-vite/pull/84#issue-2903144667 ) を参照してください。
91
91
92
- ### オプション検証エラー {#option-validation-errors}
92
+ ### オプション検証警告 {#option-validation-errors}
93
93
94
- Rolldown は不明または無効なオプションが渡されるとエラーをスローします 。Rollup で利用可能な一部のオプションは Rolldown ではサポートされていないため、使用しているメタフレームワークや自身が設定したオプションに応じてエラーが発生する可能性があります 。以下に、このようなエラーメッセージの例を示します :
94
+ Rolldown は不明または無効なオプションが渡されると警告を出力します 。Rollup で利用可能な一部のオプションは Rolldown ではサポートされていないため、使用しているメタフレームワークや自身が設定したオプションに応じて警告が発生する可能性があります 。以下に、このような警告メッセージの例を示します :
95
95
96
- > Error: Failed validate input options.
96
+ > Warning validate output options.
97
97
>
98
- > - For the "preserveEntrySignatures ". Invalid key: Expected never but received "preserveEntrySignatures ".
98
+ > - For the "generatedCode ". Invalid key: Expected never but received "generatedCode ".
99
99
100
- このオプションを自身で設定していない場合は、使用しているフレームワークで修正される可能性があります。それまでの間、 ` ROLLDOWN_OPTIONS_VALIDATION=loose ` 環境変数を設定することでこのエラーを抑制できます 。
100
+ このオプションを自身で設定していない場合は、使用しているフレームワークで修正される必要があります 。
101
101
102
102
### API の違い
103
103
@@ -257,6 +257,12 @@ const plugin = {
257
257
}
258
258
```
259
259
260
+ ::: tip
261
+
262
+ Vite 7.0.0 以降、` this.meta ` はすべてのフックで利用可能です。以前のバージョンでは、` this.meta ` は ` config ` フックのような Vite 固有のフックでは利用できませんでした。
263
+
264
+ :::
265
+
260
266
<br >
261
267
262
268
` rolldownversion ` エクスポートの存在を確認する:
@@ -275,16 +281,15 @@ if (vite.rolldownVersion) {
275
281
276
282
### Rolldown のオプション検証を無視するには
277
283
278
- [ 上記で述べたように] ( #option-validation-errors ) 、Rolldown は不明または無効なオプションが渡されるとエラーをスローします 。
284
+ [ 上記で述べたように] ( #option-validation-errors ) 、Rolldown は不明または無効なオプションが渡されると警告を出力します 。
279
285
280
286
これは[ 上記のように] ( #detecting-rolldown-vite ) 、` rolldown-vite ` で実行されているかどうかを確認することでオプションを条件的に渡すことで修正できます。
281
287
282
- この場合、` ROLLDOWN_OPTIONS_VALIDATION=loose ` 環境変数を設定してエラーを抑制することもできます。
283
- ただし、** 最終的には Rolldown でサポートされていないオプションを渡さないようにする必要がある** ことに注意してください。
284
-
285
288
### ` transformwithesbuild ` は ` esbuild ` を個別にインストールする必要があります
286
289
287
- ` esbuild ` の代わりに Oxc を使用する ` transformWithOxc ` と呼ばれる同様の関数は、` rolldown-vite ` からエクスポートされます。
290
+ Vite 自体はもう ` esbuild ` を使用しないため、` esbuild ` はオプションのピア依存関係になりました。プラグインが ` transformWithEsbuild ` を使用する場合、プラグインは ` esbuild ` を依存関係に追加するか、ユーザーが手動でインストールする必要があります。
291
+
292
+ 推奨される移行方法は、新しくエクスポートされた ` transformWithOxc ` 関数を使用することです。これは ` esbuild ` の代わりに Oxc を利用します。
288
293
289
294
### ` esbuild ` オプションの互換性レイヤー
290
295
@@ -306,6 +311,12 @@ const plugin = {
306
311
Rolldown は[ フックフィルター機能] ( https://rolldown.rs/guide/plugin-development#plugin-hook-filters ) を導入して、Rust と JavaScript のランタイムの間の通信を縮小しました。この機能を使用することで、プラグインのパフォーマンスを向上させることができます。
307
312
これは、Rollup 4.38.0+ および Vite 6.3.0+ によってサポートされています。プラグインを古いバージョンとの後方互換性を持たせるには、フックハンドラー内でフィルターを実行してください。
308
313
314
+ ::: tip
315
+
316
+ [ ` @rolldown/pluginutils ` ] ( https://www.npmjs.com/package/@rolldown/pluginutils ) は、` exactRegex ` や ` prefixRegex ` のようなフックフィルター用のいくつかのユーティリティーをエクスポートしています。
317
+
318
+ :::
319
+
309
320
### ` load ` または ` transform ` フックでコンテンツを JavaScript に変換する
310
321
311
322
` load ` または ` Transform ` フックでコンテンツを他のタイプから JavaScript に変換する場合、` moduleType: 'js' ` を返された値に追加する必要がある場合があります。
@@ -325,4 +336,4 @@ const plugin = {
325
336
}
326
337
```
327
338
328
- これは、[ Rolldown は JavaScript 以外のモジュールもサポート] ( https://rolldown.rs/guide/in-depth/module-types ) しており、指定がない限り拡張子からモジュールタイプを拡張するためです。` rolldown-vite ` は開発時にはモジュールタイプをサポートしていないことに注意してください。
339
+ これは、[ Rolldown は JavaScript 以外のモジュールもサポート] ( https://rolldown.rs/guide/in-depth/module-types ) しており、指定がない限り拡張子からモジュールタイプを拡張するためです。
0 commit comments