wydanie menedżera pakietów , wchodzącego w skład Node.js i stosowanego do dystrybucji modułów napisanych w języku JavaScript. Repozytorium NPM obsługuje ponad 1,3 miliona pakietów, z których korzysta około 12 milionów deweloperów. W miesiącu rejestrowane jest około 75 miliardów pobrań. NPM 7.0 stał się pierwszym istotnym wydaniem, opracowanym po NPM Inc przez firmę GitHub. Nowa wersja zostanie włączona w dostawę przyszłego wydania platformy , które oczekiwane jest 20 października. Aby zainstalować NPM 7.0, bez oczekiwania na nową wersję Node.js, można wykonać polecenie „npm i -g npm@7”.
:
- Obszary robocze (), pozwalają na agregowanie w jeden pakiet zależności z kilku pakietów w celu ich zainstalowania za jednym razem.
- Automatyczna instalacja (używanych w wtyczkach do określenia podstawowych pakietów, z którymi obecny pakiet jest zaprojektowany do współpracy, nawet jeśli nie jest bezpośrednio w nim używany). Peer-zależności są określane w pliku package.json w sekcji „peerDependencies”. Wcześniej takie zależności były instalowane ręcznie przez programistów, ale w NPM 7.0 wprowadzono algorytm, który zapewnia, że poprawnie określona peer-zależność jest odnajdywana na tym samym poziomie lub wyżej w drzewie node_modules.
- Druga wersja formatu blokady (package-lock v2) i wsparcie dla pliku blokady yarn.lock. Nowy format umożliwia realizację powtarzalnych kompilacji i obejmuje wszystko, co potrzebne do pełnej budowy drzewa pakietów. NPM może teraz również używać plików yarn.lock jako źródła metadanych pakietu i informacji o blokadach.
- Przeprowadzono istotny refaktoring komponentów wewnętrznych, mający na celu podział funkcjonalności dla uproszczenia konserwacji i zwiększenia niezawodności. Na przykład kod do inspekcji i zarządzania drzewem node_modules został przeniesiony do osobnego modułu .
- Zrealizowano przejście na użycie pola package.exports, co uniemożliwia ładowanie wewnętrznych modułów za pomocą wywołania require().
- Całkowicie przepisano pakiet , który teraz wykorzystuje polecenie „npm exec” do uruchamiania plików wykonywalnych z pakietów.
- Znacząco zmieniono wynik polecenia „npm audit”, zarówno w formacie czytelnym, jak i w trybie „—json”.
Źródło: opennet.ru
