NPM 7.0 hadir dengan penginstalan dependensi otomatis dan banyak lagi

Baru-baru ini rilis versi baru pengelola paket NPM 7.0, disertakan dalam distribusi Node.js dan digunakan untuk mendistribusikan modul JavaScript.

Versi baru NPM 7.0 ini tiba dengan Workspaces(sekumpulan fitur npm CLI), yang menyediakan dukungan untuk mengelola banyak paket, bergantung pada beberapa paket yang akan diinstal dalam satu langkah.

Selamat diluncurkan pada hari Selasa! Hari ini menandai tonggak penting bagi tim CLI npm - kami telah secara resmi menghentikan npm@7.0.0. Jika Anda telah mengikuti ini tahun lalu, atau lebih lama, sekarang kami telah bekerja keras untuk menghadirkan versi ini untuk Anda.

Itu instalasi dependensi otomatis peer-to-peer (digunakan dalam plugin untuk menentukan paket dasar tempat paket saat ini dirancang untuk bekerja, meskipun tidak digunakan secara langsung di dalamnya).

Dependensi peer yang tepat untuk paket sekarang secara otomatis ditemukan, karena sebelumnya pengembang harus menginstalnya secara manual.

Dependensi peer ditentukan dalam file package.json di bagian "peerDependencies". NPM 7.0 mengimplementasikan algoritme untuk memastikan bahwa dependensi peer yang ditentukan dengan benar ditemukan pada atau di atas level paket dependen di pohon node_modules.

Fokus dan tekad kami melampaui 3 bulan terakhir karena kami mengambil irama rilis mingguan dan mulai menangani bug / komentar selama jendela beta / rc kami.

Seperti yang saya sebutkan sebelumnya, kami masih memiliki banyak ruang untuk perbaikan, tetapi menurut kami cli berada di tempat yang sangat stabil saat ini dan siap digunakan. npm v7 akan dikirimkan dengan Node.js v15 (PR untuk mendapatkan pekerjaan ini akan segera dibuka) dan kami berharap dapat melanjutkan laju perubahan / peningkatan saat mendekati kuartal terakhir tahun ini.

Di sisi lain versi kedua dari format kunci disajikan (paket-kunci v2) dan dukungan untuk file kunci yarn.lock.

Format pemblokiran paket telah direvisi hingga sekarang tampaknya berisi semua yang dibutuhkan npm untuk membangun pohon paket sepenuhnya. Sejauh ini file yarn.lock tampaknya telah diabaikan, sejak V7 klien npm juga dapat membaca metadata paket dan informasi resolusi darinya.

Format baru memungkinkan pembangunan berulang dan menyertakan semua yang Anda butuhkan untuk membangun pohon paket lengkap.

Selain itu, disebutkan bahwa meskipun internal npm telah diperbaiki secara besar-besaran, tim telah bekerja tanpa lelah untuk memastikan bahwa ada gangguan minimal pada sebagian besar alur kerja.

Utama refactoring komponen internal, dengan tujuan memisahkan fungsionalitas untuk menyederhanakan perawatan dan meningkatkan keandalan.

Misalnya, kode untuk memeriksa dan mengelola pohon node_modules telah dipindahkan ke modul Arborist terpisah.

Ditransisi ke menggunakan bidang package.exports, yang membuatnya tidak mungkin untuk menghubungkan modul internal melalui panggilan require ().
Paket npx yang sepenuhnya ditulis ulang, yang sekarang menggunakan perintah "npm exec" untuk menjalankan file yang dapat dieksekusi dari paket.

Output dari perintah "npm audit" telah berubah secara signifikan, baik saat dibuat dalam format yang dapat dibaca manusia maupun saat mode "–json" dipilih.

Melaksanakan

Versi baru sekarang tersedia untuk umum dan Anda dapat dengan cepat memperbarui versi sebelumnya atau menginstal sepenuhnya versi baru ini.

Terakhir, penting untuk diketahui bahwa repositori NPM melayani lebih dari 1,3 juta paket, yang digunakan oleh sekitar 12 juta pengembang. Sekitar 75 miliar unduhan dicatat setiap bulan. NPM 7.0 adalah rilis signifikan pertama yang dibentuk setelah pembelian NPM Inc oleh GitHub.

Versi baru akan dikirimkan dengan versi mendatang dari platform Node.js 15, dijadwalkan pada 20 Oktober. Untuk menginstal NPM 7.0 tanpa menunggu versi baru Node.js, ini dapat dilakukan dengan menjalankan perintah di terminal Anda:

npm i -g npm@7

Jika Anda ingin tahu lebih banyak tentang itu Tentang versi baru yang dirilis, Anda dapat memeriksa detailnya di pengumuman resmi.

Tautannya adalah ini.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.