- Π Π°Π±ΠΎΡΠ½ΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° (
ΠΠ²ΠΎΡ-ΠΡΠΈΡΠΈ ), ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΎΠ±Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° Π² Π΅Π΄ΠΈΠ½ ΠΏΠ°ΠΊΠ΅Ρ, Π·Π° Π΄Π° Π³ΠΈ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°ΡΠ΅ Π² Π΅Π΄Π½Π° ΡΡΡΠΏΠΊΠ°. - ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡ
peer Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ Π² ΠΏΠ»ΡΠ³ΠΈΠ½ΠΈ Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π±Π°Π·ΠΎΠ²ΠΈΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠΈ, Ρ ΠΊΠΎΠΈΡΠΎ ΡΠ΅ΠΊΡΡΠΈΡΡ ΠΏΠ°ΠΊΠ΅Ρ Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ, Π΄ΠΎΡΠΈ Π°ΠΊΠΎ Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² Π½Π΅Π³ΠΎ). ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈΡΠ΅ ΠΎΡ ΡΠ°Π²Π½ΠΎΡΡΠΎΠΉΠ½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠ° ΠΏΠΎΡΠΎΡΠ΅Π½ΠΈ Π²ΡΠ² ΡΠ°ΠΉΠ»Π° package.json Π² ΡΠ΅ΠΊΡΠΈΡΡΠ° βpeerDependenciesβ. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΡΠ°ΠΊΠΈΠ²Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ Π° ΡΡΡΠ½ΠΎ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅, Π½ΠΎ NPM 7.0 ΠΏΡΠΈΠ»Π°Π³Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌ, Π·Π° Π΄Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π΅ΡΠΈΠ½ΠΈΡΠ°Π½Π° ΡΠ°Π²Π½ΠΎΡΡΠΎΠΉΠ½Π° Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΡΠ΅ Π½Π°ΠΌΠΈΡΠ° Π½Π° ΡΡΡΠΎΡΠΎ Π½ΠΈΠ²ΠΎ ΠΈΠ»ΠΈ Π½Π°Π΄ Π·Π°Π²ΠΈΡΠΈΠΌΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ Π² Π΄ΡΡΠ²ΠΎΡΠΎ node_modules. - ΠΡΠΎΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° ΡΠΎΡΠΌΠ°ΡΠ° Π·Π° Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅ (package-lock v2) ΠΈ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π·Π°ΠΊΠ»ΡΡΠ²Π°ΡΠΈΡ ΡΠ°ΠΉΠ» yarn.lock. ΠΠΎΠ²ΠΈΡΡ ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΠΈ ΠΈ Π²ΠΊΠ»ΡΡΠ²Π° Π²ΡΠΈΡΠΊΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° ΠΏΡΠ»Π½ΠΎ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎ Π΄ΡΡΠ²ΠΎ. NPM Π²Π΅ΡΠ΅ ΠΌΠΎΠΆΠ΅ ΡΡΡΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ yarn.lock ΠΊΠ°ΡΠΎ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅.
- ΠΠ·Π²ΡΡΡΠ΅Π½ΠΎ Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ, Π½Π°ΡΠΎΡΠ΅Π½ΠΎ ΠΊΡΠΌ ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π·Π° ΠΎΠΏΡΠΎΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° ΠΈ ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄ΡΡ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΡΡΠ²ΠΎΡΠΎ node_modules Π΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅Π½ Π² ΠΎΡΠ΄Π΅Π»Π΅Π½ ΠΌΠΎΠ΄ΡΠ»
Arborist . - ΠΡΠ΅ΠΌΠΈΠ½Π°Ρ ΠΌΠ΅ ΠΊΡΠΌ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ»Π΅ΡΠΎ package.exports, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ°Π²ΠΈ Π½Π΅Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΡΠ΅Π· ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° require().
- ΠΠ°ΠΊΠ΅ΡΡΡ Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½
npx , ΠΊΠΎΠΉΡΠΎ ΡΠ΅Π³Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "npm exec" Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ ΠΎΡ ΠΏΠ°ΠΊΠ΅ΡΠΈ. - Π Π΅Π·ΡΠ»ΡΠ°ΡΡΡ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° "npm audit" Π΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½, ΠΊΠ°ΠΊΡΠΎ ΠΊΠΎΠ³Π°ΡΠΎ ΡΠ΅ ΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π² ΡΠ΅ΡΠΈΠΌ ΠΎΡ ΡΠΎΠ²Π΅ΠΊΠ° ΡΠΎΡΠΌΠ°Ρ, ΡΠ°ΠΊΠ° ΠΈ ΠΊΠΎΠ³Π°ΡΠΎ Π΅ ΠΈΠ·Π±ΡΠ°Π½ ΡΠ΅ΠΆΠΈΠΌΡΡ "--json".
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru