lansarea managerului de pachete , care este inclus în distribuția Node.js și este utilizat pentru distribuția modulelor în JavaScript. Repozitoriul NPM susține peste 1,3 milioane de pachete, utilizate de aproximativ 12 milioane de dezvoltatori. În fiecare lună se înregistrează aproximativ 75 de miliarde de descărcări. NPM 7.0 a fost prima lansare semnificativă realizată după NPM Inc de către GitHub. Noua versiune va fi inclusă în distribuția viitoarei versiuni a platformei , care se așteaptă să fie lansată pe 20 octombrie. Pentru a instala NPM 7.0, fără a aștepta noua versiune a Node.js, se poate executa comanda „npm i -g npm@7”.
:
- Spațiilor de lucru (), care permit agregarea dependențelor din mai multe pachete pentru a le instala într-un singur pas.
- Instalare automată (utilizate în pluginuri pentru a defini pachetele de bază pentru care este destinat pachetul curent, chiar dacă acesta nu este folosit direct). Dependințele peer sunt specificate în fișierul package.json în secțiunea «peerDependencies». Anterior, astfel de dependențe erau instalate manual de către dezvoltatori, însă NPM 7.0 a implementat un algoritm care garantează că o dependență peer corect definită este găsită la același nivel sau mai sus de pachetul dependent în arborele node_modules.
- A doua versiune a formatului de blocare (package-lock v2) și suport pentru fișierul de blocare yarn.lock. Noul format permite realizarea de build-uri repetabile și include tot ce este necesar pentru construirea completă a arborelui de pachete. NPM poate acum, de asemenea, să utilizeze fișierele yarn.lock ca sursă de metadate ale pachetelor și informații despre blocare.
- A fost efectuat un refactor semnificativ al componentelor interne, destinat divizării funcționalității pentru a simplifica întreținerea și a crește fiabilitatea. De exemplu, codul pentru inspectarea și gestionarea arborelui node_modules a fost mutat într-un modul separat .
- S-a realizat trecerea la utilizarea câmpului package.exports, care face imposibilă conectarea modulelor interne prin apeluri require().
- Pachetul , care acum folosește comanda „npm exec” pentru a rula fișiere executabile din pachete.
- Ieșirea comenzii „npm audit” a fost modificată semnificativ, atât în format lizibil, cât și în modul de selecție „—json”.
Sursa: opennet.ro
