NPM-AUDIT rileva le vulnerabilità elevate. Cosa dovrei fare?


13

npm audit corri sul mio progetto e me lo procuro


Dipendenza dell'iniezione di comando elevata di @ angular-devkit / build-angular [dev]

Path @ angular-devkit / build-angular> @ ngtools / webpack> tree-kill

Maggiori informazioni https://npmjs.com/advisories/1432

Iniezione ad alto comando

Pacchetto tree-kill

Rattoppato in> = 1.2.2

Dipendenza di @ angular-devkit / build-angular [dev]

Path @ angular-devkit / build-angular> tree-kill

Maggiori informazioni https://npmjs.com/advisories/1432

L'uccisione degli alberi deve essere aggiornata, ma è un aspetto angolare, non mio. E allora? Devi aspettare che il team angolare aggiorni il proprio pacchetto.json a una versione più recente di tree-kill?

Risposte:


11

È possibile risolvere questo problema senza attendere una nuova versione del pacchetto @angular-devkit/build-angular.

Basta fare i seguenti passi:

  1. Aggiorna il tuo package.jsonfile aggiungendo la resolutionssezione con la versione corretta del pacchetto tree-kill:
"resolutions": {
  "tree-kill": "1.2.2"
}
  1. Aggiorna package-lock.jsoneseguendo il comando:
npx npm-force-resolutions
  1. Reinstalla i pacchetti NPM nel tuo progetto:
rm -r node_modules
npm install

Esegui npm auditper verificare che il tuo progetto non abbia più questo problema. E non dimenticare di eseguire il commit di file modificati package.jsone package-lock.json.

Ulteriori informazioni su NPM Force Resolutions .


11

Stavo avendo lo stesso problema oggi e l'ho risolto con:

  1. elimina il pacchetto tree-kill dalla cartella node_modules.
  2. elimina il file package-lock.json.
  3. vai alla cartella @ angular-devkit / build-angular nella cartella node_modules e modifica il file package.json; cambia la versione tree-kill da 1.2.1 a 1.2.2
  4. vai alla cartella @ngtools / webpack nella cartella node_modules e fai lo stesso del passaggio 3.

dopo eseguire npm install.


1
Quindi, con questa correzione, devo mantenere la cartella node_modules con Git giusto?
Loki,

Non sono sicuro che la tua domanda sia corretta, ma è necessario eseguire il commit delle nuove modifiche dopo la nuova installazione.
saleem

1
modificare manualmente le tue dipendenze non è una buona idea, poiché fare una nuova installazione del progetto rappresenterà il problema
Nemus

2

Ho appena avuto questo problema e dopo alcune ricerche, ho trovato qualcosa:

NPM genera un errore su "correzione correzione" - Il registro configurato non è supportato

Certo, si tratta di un altro problema ma, adattando la soluzione fornita, ha risolto il mio problema.

Così :

  • Elimina la cartella node_modules di tree-kill
  • Modifica il file package-lock.json come è fatto, ma con il modulo tree-kill.
  • Non dimenticare di eseguire npm install alla fine

Spero di essere stato abbastanza chiaro.


Come potrei modificare il pacchetto-lock.json nel secondo passaggio se dovesse essere eliminato durante l'eliminazione della cartella node_modules di tree-kill nel passaggio 1?
Mauricio Martinez,


0
  1. Rimuovere il pacchetto tree-kill dalla cartella node_modules ed eliminare
    il file package-lock.json.

  2. Trova la cartella @ angular-devkit / build-angular nella cartella node_modules e modifica il file package.json; cambia la versione tree-kill da 1.2.1 a 1.2.2
    Trova @ ngtools / webpack nella cartella node_modules e modifica il file package.json; cambia la versione tree-kill da 1.2.1 a 1.2.2

  3. eseguire npm install.

0

Aggiungi il codice qui sotto a package.json

"resolutions": {
"tree-kill":"1.2.2"
}

Rimuovi tutti i moduli nodo:

rm -r node_modules

Aggiorna pacchetto-lock.json per la nuova versione 1.2.2 come:

npx npm-force-resolutions

Ora installa i moduli nodo:

npm install

Questo funziona per me.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.