Parcel 2.9.0 リリース、ゼロ構成ビルド ツール

Parcel は、Web 用のゼロ構成ビルド ツールです。これは、すぐに使える優れた開発エクスペリエンスと、プロジェクトをゼロから大規模な運用アプリケーションまで成長させることができる拡張可能なアーキテクチャを組み合わせたものです。

Parcel 2.9 がリリースされまし! Parcel v2.9.0 には、package.json の「エクスポート」と tsconfig.json 機能をサポートする新しいパーサー、ESM プラグインと構成のサポート、ネイティブ Parcel プラグインなど、待望の機能が多数含まれています。

このリリースでは、SWC を利用した新しいデフォルトの JS ミニファイア、増分シンボル伝播、バンドラー データ構造の改善によりパフォーマンスも向上し、新しいビルド パフォーマンス追跡機能が含まれています。

更新内容は次のとおりです。

新しいパーサー

Parcel v2.9.0 には、Rust で最初から書かれた新しいパーサー実装が含まれています。これは、既存のすべての Parcel 解析機能をサポートすると同時に、package.json の「エクスポート」と「インポート」、および tsconfig.json の「baseUrl」、「paths」、「moduleSuffixes」のサポートを追加します。

ESM プラグインと構成

CommonJS の既存のサポートに加えて、Parcel はネイティブ ES モジュールとして作成されたプラグインと構成ファイルをサポートするようになりました。これは、プラグインをこの形式を使用して npm に公開したり .mjs 、package.json で使用して ファイル内の ESM 構文を有効にしたり"type": "module" できることを意味します。 などのプロファイル.js もサポートされるようになりました。 postcss.config.mjs 

ローカルプラグイン

Parcel v2.9.0 以降、プラグインは .parcelrc 設定から​​の相対パスとして参照できます。独自の package.json を用意する必要はありません。JavaScript ファイルを直接参照するだけです。

プラグインは変更を加えるときにホットリロードされるため、開発中に Parcel を再起動する必要さえありません。

プラグインを npm に公開することは引き続き推奨されます。

SWCコンプレッサー

Parcel v2.9.0 では、デフォルトのコンプレッサーが Terser から SWC に切り替えられました。

SWC コンプレッサーは、Terser よりも約 7 倍高速ですが、出力サイズはさらに小さくなります。SWC はほとんどの Terser 構成オプションもサポートしているため、Terser 構成オプションがある場合は .terserrc 引き続き機能するはずです。

インクリメンタル符号伝播

シンボル伝播は、プロジェクトの完全な依存関係グラフをたどって、各モジュールのエクスポートのどれが実際に使用され、どれがツリーから振り落とされるかを決定するアルゴリズムです。Parcel v2.9.0 では、このアルゴリズムはインクリメンタルになりました。

 変更を加えるたびにグラフ全体を走査するのではなく、変更したファイル内でどの依存関係が変更されたかを追跡し、既存のグラフを更新します。

ビルドパフォーマンスの追跡

Parcel には、 --trace ビルドの各段階で費やされる時間、呼び出されるプラグイン、および各段階にかかる時間を追跡する CLI フラグが含まれるようになりました。データを Chrome トレース形式で出力し、Chrome Dev Tools や Perfetto などのより高度な分析ツールに読み込むことができます。

 

このリリースには多くの小さな機能やバグ修正もあります。詳細については完全なリリース ノートを確認してください

おすすめ

転載: www.oschina.net/news/242696/parcel-2-9-0-released