Programavimas

NPM prideda daugelio paketų tvarkymo darbo sritis

„NPM 7.0.0“, „JavaScript“ paketų tvarkyklės naujinys, šią savaitę turėtų būti išleistas kartu su „Node.js 15“, paryškintu „Workspaces“.

„Workspaces“ yra ilgai reikalinga funkcija, suteikianti NPM funkcijų rinkinį valdyti kelis paketus iš vieno aukščiausiojo lygio šakninio paketo. Šios galimybės papildymas yra noras valdyti kelis paketus, kurie gali būti naudojami kartu ir nenaudojami.

Be to, 7.0.0 versijoje NPM automatiškai įdiegia tarpusavio priklausomybes. Anksčiau kūrėjai turėjo juos valdyti patys. Naujas priklausomybės nuo tarpusavio algoritmas užtikrina, kad tinkamai suderinta bendraamžių priklausomybė būtų surasta medžio mazgas_moduliai medyje nuo bendraamžių priklausomos vietos arba virš jos. Atminkite, kad automatinis tarpusavio priklausomybių diegimas gali sugadinti tam tikras darbo eigas.

Kitos naujos „NPM v7.0.0“ galimybės yra:

  • Naujas paketo užrakto formatas įgalins deterministiškai atkuriamus kūrinius ir turės tai, ko NPM reikia paketų medžiui sukurti. „NPM CLI“ dabar gali naudoti „yarn.lock“ kaip paketo metaduomenų ir skiriamosios gebos gavimo šaltinį.
  • NPM vidinių dalių pertvarkymas, akcentuojant rūpesčių atskyrimą. Vidiniai pakeitimai skirti užtikrinti, kad NPM kodų bazė būtų laikui bėgant patikimesnė ir lengviau prižiūrima. Atliekant šį pertvarkymą, medžio „node_modules“ tikrinimas ir valdymas, pavyzdžiui, buvo perkeltas į „Arborist“ modulį. Tikimasi, kad pertvarkius, NPM atnaujinimai bus pristatyti greičiau.
  • Keičiant pokyčius, npm auditas žymiai pasikeitė tiek žmonėms skaitant, tiek - Json išvesties stiliai.

Norėdami išbandyti „NPM v7.0.0“ dabar, kūrėjai gali jį įdiegti paleisdami npm i -g npm @ 7 jų terminale. Bandant nenutraukti NPM darbo eigos, laikui bėgant bus įdiegta „NPM v7.0.0“. Jis nebus pažymėtas kaip vėliausiai. Darbo eiga pagal numatytuosius nustatymus negaus NPM v7.0.0, nebent vartotojas pasirinks paleisdamas npm įdiegti -g npm @ 7 arba diegdami „Node.js“ 15.

$config[zx-auto] not found$config[zx-overlay] not found