Tim inti pnpm sedang meluncurkan penulisan ulang berbasis Rust untuk v12, memangkas waktu instalasi warm dari 381 ms menjadi 12 ms dan instalasi clean dari 6,5 s menjadi 2,2 s. Peningkatan kecepatan ini sangat berarti bagi pengembang yang menjalankan paket dalam alur kerja continuous-integration (CI), di mana setiap detik sangat berharga.
Mengapa penulisan ulang ini penting sekarang
pnpm sudah mengungguli banyak pesaing dalam hal kecepatan, tetapi ia berjalan di atas Node.js, yang memaksakan biaya startup setiap kali perintah dijalankan. Biaya tersebut muncul sebagai jeda yang nyata pada pekerjaan CI yang berulang kali mengambil (fetch) dan menautkan (link) dependensi. Dengan memindahkan beban kerja berat ke biner Rust asli—dengan nama sandi pacquet—tim tersebut menghilangkan proses bootstrap Node.js dan membiarkan Rust menangani perubahan sistem berkas yang masif dengan satu thread.
Penulisan ulang ini adalah sebuah porting, bukan desain ulang. Semua flag, format lockfile, dan tata letak node_modules yang sudah dikenal tetap sama persis, sehingga skrip dan alur kerja yang ada tidak memerlukan perubahan. Di v11, Anda sudah dapat memilih untuk menggunakan backend pacquet; v12 menjadikannya sebagai standar untuk proses fetching dan linking.
Peningkatan performa yang terukur
Benchmark yang disediakan oleh para pemelihara menunjukkan:
- Warm install (pengulangan dengan cache): 381 ms → 12 ms, peningkatan 30 kali lipat.
- Clean install (tanpa cache): 6,5 s → 2,2 s, memangkas waktu lebih dari setengahnya.
Risiko dan konsekuensi
Mesin Rust ini masih dalam tahap alfa. Tim menyarankan untuk tidak menggunakan v12 di lingkungan produksi hingga ia lulus dari tahap pra-rilis.
Cara mencobanya hari ini
Pengembang dapat menguji backend baru dengan menjalankan pnpm self-update next-12, yang akan menarik biner pra-rilis terbaru. Perintah tersebut mengganti mesin JavaScript dengan mesin Rust tanpa mengubah pnpm-lock.yaml atau tata letak node_modules proyek. Tim yang ingin mengevaluasi dampaknya pada alur kerja CI mereka sebaiknya menjalankan runner sementara, mengaktifkan backend pacquet, dan membandingkan waktu build dengan pengaturan saat ini.
Tren yang lebih luas
Langkah pnpm mencerminkan gelombang migrasi alat (tooling) menuju bahasa pemrograman terkompilasi. Proyek-proyek seperti Biome, Oxc, dan Deno semuanya telah membangun kembali komponen-komponen kritis performa dalam Rust atau Go untuk mengurangi latensi pada alur kerja pengembang.
Apa yang perlu diperhatikan selanjutnya
- Milestone stabilitas: Memantau rilis akan memberi tahu kapan versi ini aman untuk penggunaan produksi.
- Paritas fitur: Pengguna harus memperhatikan changelog untuk melihat jika ada celah fitur.
Intinya: penulisan ulang Rust pada pnpm mengubah manajer paket yang sudah cepat menjadi hampir instan untuk instalasi berulang, dan memangkas waktu lebih dari setengahnya untuk instalasi baru. Bagi tim yang menghabiskan waktu beritit-menit untuk resolusi dependensi setiap malam, pembaruan ini menjanjikan pengurangan biaya CI yang terukur tanpa menuntut perombakan alur kerja.
