HeadlinesBriefing favicon HeadlinesBriefing.com

Kompiler Rust React Native di Vite

Hacker News •
×

Setelah rilis dukungan resmi untuk kompiler Rust React oleh tim oxc pada 4 Agustus 2026, kami mengalihkan basis kode React Router kami yang terdiri dari 1.036 file (Outlyne, pembuat situs web) ke kompiler tersebut dan melihat percepatan ~17,6× pada bagian kompiler dari build kami. Rilis v6.1.0 dari @vitejs/plugin-react membawa "dukungan kompiler React native eksperimental", yang dapat Anda pilih dengan meneruskan { compiler: true } ke plugin di konfigurasi Vite Anda. Dan bagi mereka yang tidak dapat menggunakan plugin Vite React (misalnya, jika Anda, seperti kami, menggunakan React Router dalam mode kerangka kerja), @acusti/vite-plugin-react-compiler adalah plugin Vite minimal untuk mengompilasi basis kode Anda dengan React terlepas dari sisa pipeline build Anda.

Build Lebih Cepat = Pengembang Lebih Bahagia + CI Lebih Murah. Fitur utama adalah percepatan. Menurut Boshen, pemimpin proyek oxc: Ini lebih dari 10 kali lebih cepat daripada Babel dalam benchmark awal kami. Kami melihat percepatan lebih dari 17×, dengan 1.036 file dari 14,3 detik saat dibangun dengan Babel menjadi 0,81 detik secara native (single-threaded). Ini sangat besar bagi kami karena, dengan pengembangan perangkat lunak berbantuan agen, penggunaan CI dan menit GitHub Actions telah menjadi pusat biaya nyata. Perhatikan bahwa percepatan tersebut hanya berlaku untuk bagian kompiler; waktu build keseluruhan meningkat sekitar 2,4× (22,1 detik → 9,3 detik).

Meskipun kecepatan menjadi berita utama, saya lebih bersemangat tentang manfaat menggunakan kompiler React terbaru, yang telah memperbaiki keterbatasan substansial dalam dukungan JavaScript, termasuk logika kondisional dalam blok try/catch, menetapkan ulang props yang didestrukturisasi yang digunakan dalam penutupan bersarang, dan kunci properti objek yang dihitung. Perbaikan ini memperluas kompatibilitas kompiler dengan tujuh fungsi tambahan. Namun, keterbatasan tetap ada: melempar dari dalam blok try dan operator penugasan logis (??=, &&=, ||=) menyebabkan lompatan, tetapi kompiler Rust akan mendapatkan perbaikan tersebut ketika tiba.

Akhirnya, rantai alat lengkap saya sekarang menggunakan versi kompiler React yang sama dengan dukungan fitur yang setara, menghindari kesenjangan cakupan setelah mengadopsi dukungan kompiler React Oxlint.

Entitas Kunci: Perusahaan: oxc, Outlyne, Vite, Babel | Orang: Boshen