Odświeżanie pakietów – npm audit

Brałam ostatnio udział w warsztatach z Node.js, na których poznałam przydatną komendę npm audit. Pozwala ona na sprawdzenie pakietów wykorzystywanych w projekcie pod względem nieprawidłowości. Ale zacznijmy od początku.

Error: Cannot audit a project without a lockfile

Na sam początek próbowałam uruchomić komendę w pewnym starym projekcie. Okazało się, że niestety nie działa:

Przyczyna okazała się prosta – mój projekt nie zawierał pliku package-lock.json.

Error: Object.entries is not a function

Zmieniłam więc projekt na taki, który zawierał plik package-lock.json, ale niestety znowu pojawił się błąd:

Na szczęście jest to znany i zgłoszony błąd. Wystarczy zaktualizować npm komendą:

npm i npm

Ja miałam wersję 6.0.0, a po update – 6.9.0.

npm audit

Wzięłam na warsztat stary projekt, w którym ostatnie zmiany robiłam w lutym 2018 (czyli od roku nie był ruszany). Oto, co zwróciła komenda:t

Trochę tego się znalazło. Powyżej podsumowania wypisane zostały również nazwy pakietów i stopień zagrożenia, np.:

Były też propozycje rozwiązania problemów:

npm audit fix

Okazuje się, że naprawa vulnerabilities jest prosta. Wystarczy powyższa komenda:

Jest i działa.

Podsumowanie

Powyższy post pokazuje najprostsze zastosowanie npm audit. Można dodatkowo użyć parametrów, żeby zrobić dry-run, albo wygenerować podsumowanie w formacie json. Ale o tym możecie przeczytać w dokumentacji.


Podoba Ci się to, co tworzę? Chcesz dostawać informacje o:
– wydarzeniach, które organizuję lub wspieram (np. konferencje, meetupy, webinary)
– inicjatywach, które organizuję lub wspieram (np. GeekWeekWro, DevAdventCalendar)
– moich prelekcjach, kursach i szkoleniach
– wyróżnionych artykułach z mojego bloga

0% SPAMu, 100% informacji! Krótko i na temat.

2 uwagi do wpisu “Odświeżanie pakietów – npm audit

  1. piecioshka

    Warto dodać, że audyt paczek wykonuje się podczas instalacji zależności za pomocą npm install. Kiedy używamy CI nie ma sensu korzystania z audytu, dlatego też istnieje polecenie npm ci, które instaluje zależności, ale nie uruchamia audytu, dzięki czemu instalacja zależności przebiega szybciej.

    PS. Mi się czasem zdarza uruchomić nawet npm audit fix --force 🙂

    Polubione przez 1 osoba

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s