U gestore di pacchetti NPM 7.0 dispunibule

publicatu liberazione di u gestore di pacchetti NPM 7.0, inclusu cù Node.js è utilizatu per distribuisce moduli in JavaScript. U repositariu NPM serve più di 1.3 milioni di pacchetti, utilizati da circa 12 milioni di sviluppatori. Circa 75 miliardi di download sò registrati per mese. NPM 7.0 hè stata a prima liberazione significativa formata dopu shopping NPM Inc da GitHub. A nova versione serà inclusa in a consegna di una futura versione di a piattaforma Node.js 15, chì hè previstu u 20 d'ottobre. Per installà NPM 7.0 senza aspittà per una nova versione di Node.js, pudete eseguisce u cumandimu "npm i -g npm@7".

Chjave innovazioni:

  • Spazi di travagliu (Spazii di work), chì vi permette di aggregate dipendenze da parechji pacchetti in un pacchettu per installallu in un passu.
  • Installazione automatica dipendenze di i pari (utilizatu in i plugins per determinà i pacchetti di basa chì u pacchettu attuale hè pensatu per travaglià, ancu s'ellu ùn hè micca utilizatu direttamente in questu). Peer dependencies sò specificate in u schedariu package.json in a sezione "peerDependencies". In precedenza, tali dependenzii sò stati installati manualmente da i sviluppatori, ma NPM 7.0 implementa un algoritmu per assicurà chì una dependenza di peer definita currettamente si trova à u listessu livellu o sopra u pacchettu dipendente in l'arburu node_modules.
  • A seconda versione di u furmatu di serratura (package-lock v2) è supportu per u schedariu di serratura yarn.lock. U novu formatu permette custruzzioni ripetibili è include tuttu ciò chì hè necessariu per custruisce cumplettamente un arbulu di pacchettu. NPM pò ancu avà aduprà i fugliali yarn.lock cum'è una fonte di metadati di pacchettu è informazioni di bloccu.
  • Un refactoring significativu di cumpunenti interni hè statu realizatu, destinatu à separà e funziunalità per simplificà u mantenimentu è aumentà l'affidabilità. Per esempiu, u codice per inspeccionà è gestisce l'arburu node_modules hè statu spustatu in un modulu separatu. Arboristu.
  • Avemu cambiatu à usà u campu package.exports, chì rende impussibile di cunnette i moduli interni per via di a chjamata require().
  • U pacchettu hè statu completamente riscritto npx, chì avà usa u cumandimu "npm exec" per eseguisce eseguibili da i pacchetti.
  • L'output di u cumandamentu "npm audit" hè statu cambiatu significativamente, sia quandu a pruduzzioni in u formatu leggibile umanu sia quandu u modu "--json" hè sceltu.

Source: opennet.ru

Add a comment