Di penghujung tahun ini dan tahun ini merupakan sebuah tahun yang baik untuk pnpm, mari kita lihat bagaimana kelanjutannya.
Penggunaan
Statistik Unduhan
Tujuan saya tahun ini adalah untuk mengalahkan Bower dengan jumlah unduhan. Kami dapat mencapai tujuan ini pada bulan November:
pnpm telah diunduh sekitar 3 kali lebih banyak pada tahun 2021 dibandingkan tahun 2020:
Statistik ini tidak mengukur berbagai cara yang digunakan untuk menginstal pnpm! Tetapi hanya mengukur jumlah unduhan dari pnpm npm package. Tahun ini kami juga menambahkan versi compiled binary dari pnpm, yang dikirimkan secara berbeda.
Kunjungan Dokumentasi
Kami mengambil beberapa statistik yang tidak dipersonalisasi dari dokumentasi kami menggunakan Google Analytics. Pada tahun 2021, terkadang kami memiliki lebih dari 2,000 pengunjung unik setiap minggunya.
Kebanyakan pengguna kami berasal dari Amerika Serikat dan Tiongkok.
GitHub stars
Repositori utama GitHub kami mendapat +5,000 bintang tahun ini.
Pengguna baru
Our biggest new user this year is Bytedance (the company behind TikTok).
Juga, banyak proyek open-source hebat yang mulai menggunakan pnpm. Beberapa beralih ke pnpm karena dukungannya yang luar biasa dari monorepos:
Beberapa beralih karena mereka menyukai pnpm yang efisien, cepat, dan indah:
Fitur yang diunggulkan
Format lockfile baru (mulai v6.0.0)
Salah satu perubahan yang pertama dan paling penting tahun ini adalah format pnpm-lock.yaml
yang baru. Ini merupakan perubahan yang fantastis, jadi kami putuskan merilis v6. Dan itu berhasil. Lockfile yang lama seringkali menyebabkan Git conflicts. Sejak diperkenalkan format yang baru, kami tidak pernah menerima komplain tentang Git conflict.
Mengelola versi Node.js (sejak v6.12.0)
Kami menambahkan perintah baru (pnpm env
) yang dapat mengelola versi Node.js. Jadi kamu bisa menggunakan pnpm dari pada pengelola versi Node.js seperti nvm atau Volta.
Selain itu, pnpm juga ditambahkan agar dapat berdiri sendiri, jadi kamu bisa menjalankannya tanpa Node.js terinstall pada sistem.
Menambahkan lokal dependencies (mulai v6.20.0)
Kamu bisa "menyuntikkan " sebuah lokal dependency. Secara default, dependensi lokal disinkronkan ke node_modules
tetapi dengan fitur baru ini kamu bisa menyuruh pnpm untuk menghubungkan langsung ke file dependencynya.
Peningkatan pelaporan masalah peer dependency (mulai v6.24.0)
Masalah peer dependency biasanya ditampilkan dalam plain teks dan sulit untuk memahaminya. Mereka semua sekarang digabung dan ditampilkan di dalam sebuah struktur hirarki yang bagus.
Kompetisi
Yarn
Yarn menambahkan sebuah penaut pnpm di v3.1. Sehingga Yarn dapat membuat struktur direktori node-modules yang serupa ke dalam sesuatu yang pnpm buat.
Tim Yarn juga berencana untuk menerapkan sebuah penyimpanan konten yang dapat dialamatkan agar ruang penyimpanan lebih efisien.
npm
Tim npm memutuskan untuk mengadopsi juga symlinked struktur direktori node-modules yang pnpm gunakan (terkait RFC).
Lainnya
Bun dibuat menggunakan Zig dan Volt dibuat menggunakan Rust, keduanya mengklaim lebih cepat dari npm/Yarn/pnpm. Saya belum melakukan benchmark beberapa package manager baru ini.
Rencana Kedepan
Lebih cepat, lebih baik, terbaik.