NPM 7.0 рдкреЕрдХреЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЙрдкрд▓рдмреНрдз

рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░ рд░рд┐рд▓реАрдЭ рдПрдирдкреАрдПрдо 7.0, Node.js рд╕рд╣ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ рдЖрдгрд┐ JavaScript рдордзреНрдпреЗ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рддрд░реАрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ. NPM рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рдЕрдВрджрд╛рдЬреЗ 1.3 рджрд╢рд▓рдХреНрд╖ рд╡рд┐рдХрд╕рдХрд╛рдВрджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ 12 рджрд╢рд▓рдХреНрд╖ рдкреЕрдХреЗрдЬреЗрд╕рдЪреА рд╕реЗрд╡рд╛ рджреЗрддреЗ. рджрд░рдорд╣рд╛ рд╕реБрдорд╛рд░реЗ 75 рдЕрдмреНрдЬ рдбрд╛рдЙрдирд▓реЛрдб рд░реЗрдХреЙрд░реНрдб рдХреЗрд▓реЗ рдЬрд╛рддрд╛рдд. NPM 7.0 рдирдВрддрд░ рддрдпрд╛рд░ рдЭрд╛рд▓реЗрд▓реЗ рдкрд╣рд┐рд▓реЗ рд▓рдХреНрд╖рдгреАрдп рдкреНрд░рдХрд╛рд╢рди рд╣реЛрддреЗ рдЦрд░реЗрджреА GitHub рджреНрд╡рд╛рд░реЗ NPM Inc. рдирд╡реАрди рдЖрд╡реГрддреНрддреА рдкреНрд▓реЕрдЯрдлреЙрд░реНрдордЪреНрдпрд╛ рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рдкреНрд░рдХрд╛рд╢рдирд╛рдЪреНрдпрд╛ рд╡рд┐рддрд░рдгрд╛рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХреЗрд▓реА рдЬрд╛рдИрд▓ рдиреЛрдб.рдЬреЗрдПрд╕ 15, рдЬреЗ 20 рдСрдХреНрдЯреЛрдмрд░ рд░реЛрдЬреА рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗ. Node.js рдЪреНрдпрд╛ рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдЪреА рд╡рд╛рдЯ рди рдкрд╛рд╣рддрд╛ NPM 7.0 рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рддреБрдореНрд╣реА тАЬnpm i -g npm@7тАЭ рдХрдорд╛рдВрдб рдЪрд╛рд▓рд╡реВ рд╢рдХрддрд╛.

рдХрд│ рдирд╡рдХрд▓реНрдкрдирд╛:

  • рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░реЗ (рд╡рд░реНрдХрд╕реНрдкреЗрд╕реЗрд╕), рддреБрдореНрд╣рд╛рд▓рд╛ рдЕрдиреЗрдХ рдкреЕрдХреЗрдЬреЗрд╕рдордзреАрд▓ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡рд╛рдВрдирд╛ рдПрдХрд╛ рдкреЕрдХреЗрдЬрдордзреНрдпреЗ рдПрдХрд╛ рдЪрд░рдгрд╛рдд рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ.
  • рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рд╕реНрдерд╛рдкрдирд╛ рд╕рдорд╡рдпрд╕реНрдХ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ (рд╕рдзреНрдпрд╛рдЪреЗ рдкреЕрдХреЗрдЬ рдХрд╛рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗрд▓реЗ рдмреЗрд╕ рдкреЕрдХреЗрдЬ рдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд▓рдЧрдЗрдирдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддреЗ, рдЬрд░реА рддреЗ рдереЗрдЯ рд╡рд╛рдкрд░рд▓реЗрд▓реЗ рдирд╕рд▓реЗ рддрд░реАрд╣реА). "peerDependencies" рд╡рд┐рднрд╛рдЧрд╛рддреАрд▓ package.json рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдкреАрдЕрд░ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рдирдореВрдж рдХреЗрд▓реЗ рдЖрд╣реЗ. рдкреВрд░реНрд╡реА, рдЕрд╢рд╛ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рд╡рд┐рдХрд╛рд╕рдХрд╛рдВрджреНрд╡рд╛рд░реЗ рд╕реНрд╡рд╣рд╕реНрддреЗ рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ, рдкрд░рдВрддреБ NPM 7.0 рдпреЛрдЧреНрдпрд░рд┐рддреНрдпрд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреАрдЕрд░ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рд╕рдорд╛рди рд╕реНрддрд░рд╛рд╡рд░ рдХрд┐рдВрд╡рд╛ node_modules рдЯреНрд░реА рдордзреНрдпреЗ рдЕрд╡рд▓рдВрдмреВрди рдкреЕрдХреЗрдЬрдЪреНрдпрд╛ рд╡рд░ рдЖрдврд│рд▓реЗ рдЖрд╣реЗ рдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рд▓рд╛рдЧреВ рдХрд░рддреЗ.
  • рд▓реЙрдХ рдлреЙрд░рдореЕрдЯрдЪреА рджреБрд╕рд░реА рдЖрд╡реГрддреНрддреА (рдкреЕрдХреЗрдЬ-рд▓реЙрдХ v2) рдЖрдгрд┐ yarn.lock рд▓реЙрдХ рдлрд╛рдЗрд▓рд╕рд╛рдареА рд╕рдорд░реНрдерди. рдирд╡реАрди рдлреЙрд░рдореЕрдЯ рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХрд░рддрд╛ рдпреЗрдгреНрдпрд╛рдЬреЛрдЧреНрдпрд╛ рдмрд┐рд▓реНрдбрд▓рд╛ рдЕрдиреБрдорддреА рджреЗрддреЗ рдЖрдгрд┐ рдкреЕрдХреЗрдЬ рдЯреНрд░реА рдкреВрд░реНрдгрдкрдгреЗ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдЧреЛрд╖реНрдЯреАрдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдХрд░рддреЗ. NPM рдЖрддрд╛ yarn.lock рдлрд╛рдЗрд▓реНрд╕рдЪрд╛ рд╡рд╛рдкрд░ рдкреЕрдХреЗрдЬ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЖрдгрд┐ рд▓реЙрдХрд┐рдВрдЧ рдорд╛рд╣рд┐рддреАрдЪрд╛ рд╕реНрд░реЛрдд рдореНрд╣рдгреВрди рдХрд░реВ рд╢рдХрддреЗ.
  • рджреЗрдЦрднрд╛рд▓ рд╕реБрд▓рдн рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рд╡рд╛рдврд╡рдгреНрдпрд╛рд╕рд╛рдареА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡реЗрдЧрд│реЗ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рдиреЗ рдЕрдВрддрд░реНрдЧрдд рдШрдЯрдХрд╛рдВрдЪреЗ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рд░рд┐рдлреЕрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, node_modules рдЯреНрд░реАрдЪреА рддрдкрд╛рд╕рдгреА рдЖрдгрд┐ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЛрдб рд╡реЗрдЧрд│реНрдпрд╛ рдореЙрдбреНрдпреВрд▓рдордзреНрдпреЗ рд╣рд▓рд╡рд┐рд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ. рдЖрд░реНрдмреЛрд░рд┐рд╕реНрдЯ.
  • рдЖрдореНрд╣реА package.exports рдлреАрд▓реНрдб рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕реНрд╡рд┐рдЪ рдХреЗрд▓реЗ, рдЬреЗ рдЖрд╡рд╢реНрдпрдХ() рдХреЙрд▓рджреНрд╡рд╛рд░реЗ рдЕрдВрддрд░реНрдЧрдд рдореЙрдбреНрдпреВрд▓ рдХрдиреЗрдХреНрдЯ рдХрд░рдгреЗ рдЕрд╢рдХреНрдп рдХрд░рддреЗ.
  • рдкреЕрдХреЗрдЬ рдкреВрд░реНрдгрдкрдгреЗ рдкреБрдиреНрд╣рд╛ рд▓рд┐рд╣рд┐рд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ рдПрдирдкреАрдПрдХреНрд╕, рдЬреЗ рдЖрддрд╛ рдкреЕрдХреЗрдЬреЗрд╕рдордзреВрди рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдЪрд╛рд▓рд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА "npm exec" рдХрдорд╛рдВрдб рд╡рд╛рдкрд░рддреЗ.
  • "npm рдСрдбрд┐рдЯ" рдХрдорд╛рдВрдбрдЪреЗ рдЖрдЙрдЯрдкреБрдЯ рд▓рдХреНрд╖рдгреАрдпрд░реАрддреНрдпрд╛ рдмрджрд▓рд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗрд╡реНрд╣рд╛ рдорд╛рдирд╡реА рд╡рд╛рдЪрдиреАрдп рд╕реНрд╡рд░реВрдкрд╛рддреАрд▓ рдЖрдЙрдЯрдкреБрдЯ рдЖрдгрд┐ рдЬреЗрд╡реНрд╣рд╛ "--json" рдореЛрдб рдирд┐рд╡рдбрд▓рд╛ рдЬрд╛рддреЛ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛