2023年8月24日
バージョン0.3では、Rspackは、experiments.css = true
を設定した場合のデフォルトのCSS処理の動作をwebpackに合わせます。これには、多くの組み込みのCSS変換ロジックの削除が含まれており、いくつかの破壊的な変更が導入されています。アプリケーションが以前にこれらの変換ロジックに依存していた場合は、以下の移行手順に注意してください。
Rspackがpostcss-loader
を完全にサポートする前に、Rspackは@rspack/postcss-loader
と組み込みのbuiltins.postcss
を実装して機能を実現していました。現在、Rspackはpostcss-loader
を完全にサポートしているため、@rspack/postcss-loader
とbuiltins.postcss
を廃止することにしました。@rspack/postcss-loader
のユーザーはpostcss-loader
にシームレスに移行でき、以前にpx2rem
変換機能にRspackのbuiltins.postcss
を使用していたユーザーは、postcss-loader
とpostcss-plugin-px2rem
に移行できます。移行プロセスは次のとおりです。
• 以前
• 以降
webpackのCSS処理により良く合わせるために、Rspackは0.3で組み込みのautoprefixer機能を削除します。postcss-loader
を使用してautoprefixer
を実現できます。
examples/postcss-loader の完全な例を参照してください。
Rspackの内部モジュールAPIの現在の不安定さのため、内部モジュールに直接アクセスすると、破壊的な変更が容易に発生する可能性があります。したがって、Rspackは内部モジュールに直接アクセスする機能を制限し、ルートモジュールからRspackのAPIへのアクセスのみをサポートします。
• 以前
• 以降
RspackはWeb Workersをネイティブにサポートしているため、worker-loaderを使用せずにWeb Workersをすぐに使用できます。使用方法は次のとおりです。
Web Workersのサポートの詳細については、web workersを参照してください。
builtin:swc-loader
のサポートRspackは多くのSWCコンパイル構成オプションを提供していますが、これらの構成はグローバルであり、異なるモジュールに異なるSWC変換ロジックを使用するという要件を満たすことができません。したがって、Rspackはbuiltin:swc-loader
をサポートして、よりきめ細かいSWC変換構成を提供します。JavaScript版のswc-loader
と比較して、builtin:swc-loader
はパフォーマンスが優れています。builtin:swc-loader
は次のように使用できます。
詳細については、examples/builtin-swc-loader を参照してください。現在、builtin:swc-loader
には、Wasmプラグインをサポートしないなど、まだ制限事項があります。Rspackは今後のバージョンでbuiltin:swc-loader
の機能をさらに反復し、より多くの機能をサポートします。
パフォーマンスの最適化は、ビジネスサポートにおける共通の要件です。ビジネスのパフォーマンス最適化のコストを削減するために、Rspack Profileのエクスペリエンスを改善しました。RSPACK_PROFILE環境変数を使用すると、パフォーマンス最適化のためのプロファイル関連ファイルを生成できます。
プロファイルの詳細については、パフォーマンスプロファイリングを参照してください。
より多くのAPIとの連携
splitChunks.chunks
が正規表現をサポートします。splitChunk.\{cacheGroup\}.type
をサポートします。splitChunk.\{cacheGroup\}.idHint
をサポートします。ensureChunkConditionsPlugin
をサポートします。rule.use
が関数をサポートします。configuration.profile
をサポートします。バージョン0.2と比較して、バージョン0.3ではより多くのプラグインAPIを実装し、より多くのプラグインの互換性を改善しました。同時に、webpackのプラグインAPIサポートの進捗状況を洗練し、プラグインAPIのサポート進捗状況を透明化しました。プラグインAPIの実装進捗状況はここで追跡できます:plugin-api-progress。
バージョン0.3では、webpackアーキテクチャとの連携をさらに最適化し、元のASTベースのコード生成アーキテクチャから文字列変換ベースのアーキテクチャに移行しました。この連携作業により、コード生成段階でRspackがwebpackのより多くのフックAPIと連携し、より多くのコミュニティプラグインと互換性を持つことができるようになります。
バージョン0.2から、Rspackはvue-loaderのサポートを提供しています。ただし、vue-loaderに基づいて完全なVue.js CLIソリューションを作成することは複雑な作業になる可能性があります。Rspackを使用してVue.jsアプリケーションの開発を簡素化するために、すぐに使えるソリューションであるRsbuildを提供します。このソリューションは、開発者がRspackを使用してVue.jsアプリケーションを簡単に開発するのに役立ちます。