Manajer paket NPM 7.0 tersedia

diterbitkan rilis manajer paket NPM 7.0, disertakan dengan Node.js dan digunakan untuk mendistribusikan modul dalam JavaScript. Repositori NPM melayani lebih dari 1.3 juta paket, digunakan oleh sekitar 12 juta pengembang. Sekitar 75 miliar unduhan tercatat per bulan. NPM 7.0 adalah rilis signifikan pertama yang dibentuk setelahnya pembelian NPM Inc oleh GitHub. Versi baru ini akan disertakan dalam pengiriman rilis platform mendatang Node.js 15, yang diperkirakan terjadi pada 20 Oktober. Untuk menginstal NPM 7.0 tanpa menunggu Node.js versi baru, Anda dapat menjalankan perintah β€œnpm i -g npm@7”.

Kunci inovasi:

  • Ruang Kerja (ruang kerja), memungkinkan Anda menggabungkan dependensi dari beberapa paket ke dalam satu paket untuk menginstalnya dalam satu langkah.
  • Instalasi otomatis ketergantungan rekan (digunakan dalam plugin untuk menentukan paket dasar yang dirancang untuk digunakan oleh paket saat ini, meskipun tidak digunakan secara langsung di dalamnya). Ketergantungan rekan ditentukan dalam file package.json di bagian β€œketergantungan rekan”. Sebelumnya, dependensi tersebut diinstal secara manual oleh pengembang, tetapi NPM 7.0 mengimplementasikan algoritme untuk memastikan bahwa dependensi rekan yang ditentukan dengan benar ditemukan pada level yang sama atau di atas paket dependen di pohon node_modules.
  • Versi kedua dari format kunci (package-lock v2) dan dukungan untuk file kunci benang.lock. Format baru ini memungkinkan pembangunan berulang dan mencakup semua yang diperlukan untuk membangun pohon paket sepenuhnya. NPM sekarang juga dapat menggunakan file benang.lock sebagai sumber metadata paket dan informasi penguncian.
  • Pemfaktoran ulang komponen internal secara signifikan telah dilakukan, yang bertujuan untuk memisahkan fungsionalitas guna menyederhanakan pemeliharaan dan meningkatkan keandalan. Misalnya, kode untuk memeriksa dan mengelola pohon node_modules telah dipindahkan ke modul terpisah Arborist.
  • Kami beralih menggunakan bidang package.exports, yang membuatnya tidak mungkin untuk menghubungkan modul internal melalui panggilan require().
  • Paket telah sepenuhnya ditulis ulang npx, yang sekarang menggunakan perintah "npm exec" untuk menjalankan executable dari paket.
  • Output dari perintah "npm audit" telah diubah secara signifikan, baik ketika output dalam format yang dapat dibaca manusia maupun ketika mode "--json" dipilih.

Sumber: opennet.ru

Tambah komentar