NPM dodaje obszary robocze do zarządzania wieloma pakietami

NPM 7.0.0, uaktualnienie do menedżera pakietów JavaScript, ma zostać wydane w tym tygodniu wraz z Node.js 15, o czym wspomina Workspaces.

Obszary robocze to długo oczekiwana funkcja, która zapewnia NPM zestaw funkcji do zarządzania wieloma pakietami z jednego pakietu głównego najwyższego poziomu. Dodatkową zaletą tej możliwości jest chęć zarządzania wieloma pakietami, które mogą być używane razem lub nie.

Również w wersji 7.0.0 NPM automatycznie instaluje zależności równorzędne. Wcześniej programiści musieli zarządzać nimi samodzielnie. Nowy algorytm zależności między urządzeniami równorzędnymi zapewnia, że ​​prawidłowo dopasowana zależność równorzędna zostanie znaleziona w lub powyżej lokalizacji zależnej od peera w drzewie node_modules. Zwróć uwagę, że automatyczna instalacja współzależności może potencjalnie zakłócić niektóre przepływy pracy.

Inne nowe możliwości w NPM 7.0.0 obejmują:

  • Nowy format blokady pakietów umożliwi deterministycznie odtwarzalne budowanie i ma to, czego potrzebuje NPM do zbudowania drzewa pakietów. Interfejs wiersza polecenia NPM może teraz używać yarn.lock jako źródła metadanych pakietu i wskazówek dotyczących rozdzielczości.
  • Refaktoryzacja elementów wewnętrznych NPM, z naciskiem na oddzielenie problemów. Zmiany wewnętrzne mają na celu zapewnienie, że baza kodu NPM będzie bardziej niezawodna w czasie i łatwiejsza w utrzymaniu. Dzięki tej refaktoryzacji inspekcja i zarządzanie drzewem node_modules zostało przeniesione na przykład do modułu Arborist. Oczekuje się, że refaktoryzacja spowoduje szybsze dostarczanie aktualizacji NPM.
  • Podczas przełomowej zmiany wydajność programu npm auditznacznie się zmieniła, zarówno w stylu czytelnym dla człowieka, jak i --jsonstylu wyjściowym.

Aby wypróbować NPM v7.0.0 teraz, programiści mogą go zainstalować, uruchamiając npm i -g [email protected]w swoim terminalu. Aby nie przerywać przepływów pracy NPM, NPM w wersji 7.0.0 zostanie z czasem wdrożony. Nie zostanie oznaczony jako latest. Przepływy pracy nie otrzymają domyślnie NPM 7.0.0, chyba że użytkownik wyrazi zgodę, uruchamiając npm install -g [email protected]lub instalując Node.js 15.