HeadlinesBriefing favicon HeadlinesBriefing.com

Rust React コンパイラが Vite でネイティブ対応

Hacker News •
×

oxc チームが 2026 年 8 月 4 日に Rust React コンパイラの公式サポートをリリースした後、私たちは 1,036 ファイルの React Router コードベース(Outlyne、ウェブサイトビルダー)をそれに切り替え、ビルドのコンパイラ部分で約 17.6 倍の高速化を確認しました。@vitejs/plugin-react の v6.1.0 リリースは「実験的なネイティブ React コンパイラサポート」をもたらし、Vite 設定でプラグインに { compiler: true } を渡すことでオプトインできます。また、Vite React プラグインを使用できない方(例えば、私たちのようにフレームワークモードで React Router を使用している場合)のために、@acusti/vite-plugin-react-compiler は、ビルドパイプラインの残りに関係なくコードベースを React コンパイルする最小限の Vite プラグインです。

より速いビルド = より幸せな開発者 + より安い CI。見出しの機能は高速化です。oxc プロジェクトリーダーの Boshen 氏によると:予備ベンチマークでは Babel より 10 倍以上高速です。私たちは 17 倍以上の高速化を確認し、1,036 ファイルが Babel でビルドしたときの 14.3 秒からネイティブで 0.81 秒(シングルスレッド)になりました。これは私たちにとって大きな意味があります。なぜなら、エージェント支援ソフトウェア開発では、CI 使用量と GitHub Actions の分数が実際のコストセンターになっているからです。これらの高速化はコンパイラ部分にのみ適用されることに注意してください。全体のビルド時間は約 2.4 倍改善されました(22.1 秒 → 9.3 秒)。

速度が見出しであるにもかかわらず、私は最新の React コンパイラを使用することの利点にさらに興奮しています。これは JavaScript サポートの実質的な制限を修正しました。try/catch ブロック内の条件ロジック、ネストされたクロージャで使用される分割代入された props の再割り当て、計算されたオブジェクトプロパティキーなどが含まれます。これらの修正により、コンパイラの互換性が 7 つの追加関数に拡張されます。それでも、制限は残っています:try ブロック内からのスローと論理代入演算子(??=、&&=、||=)はスキップを引き起こしますが、Rust コンパイラはそれらが到着したときにこれらの修正を取得します。

最後に、私の完全なツールチェーンは現在、同等の機能サポートを持つ同じ React コンパイラバージョンを使用しており、Oxlint の React コンパイラサポートを採用した後のカバレッジギャップを回避しています。

主要エンティティ:企業:oxc、Outlyne、Vite、Babel | 人物:Boshen