Yarn: `рдЗрдВрд╕реНрдЯреЙрд▓` рдХреЗ рд▓рд┐рдП `--pure-lockfile` рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдирд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 10 рдЕрдХреНрддреВре░ 2016  ┬╖  54рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: yarnpkg/yarn

рдХреНрдпрд╛ рдЖрдк _feature_ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ _bug_ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

_рд╡рд┐рд╢реЗрд╖рддрд╛_

рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ?

--pure-lockfile рд▓рд┐рдП install рдХрдорд╛рдВрдб рдкрд╛рд╕ рдирд╣реАрдВ рдХрд░рдирд╛ рдореБрдЭреЗ рднреНрд░рдорд┐рдд рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╣рдо рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░ рдкрд░ рд╕рд╣рдордд рд╣реБрдП рдХрд┐ add/upgrade/remove рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдВ рдФрд░ install рд▓реЙрдХрдлрд╛рдЗрд▓ рд╕реЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╣реИред

рдЬрдм рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛рд░реНрди рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рдВрдЧрддрд┐ рдЦреЛ рдЬрд╛рддреА рд╣реИред

рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ?

yarn install рдХрд░рддреЗ рд╕рдордп рдпрд╛рд░реНрди.рд▓реЙрдХ рдпрд╛ package.json рди рд▓рд┐рдЦреЗрдВред
рдпрд╛рд░реНрди.рд▓реЙрдХ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП yarn upgrade

рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдиреЛрдб.рдЬреЗрдПрд╕, рдпрд╛рд░реНрди рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░реЗрдВред

рдпрд╛рд░реНрди 0.14

cat-feature needs-discussion

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдпрд╣рд╛рдБ рд╡рд┐рднрд┐рдиреНрди рдЪреАрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ (рдХреЛрдИ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ)ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд▓реЛрдЧреЛрдВ рдиреЗ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдЙрдард╛рдпрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИрдВ (рдФрд░ рдЬреЛ рдХреБрдЫ рдореМрдЬреВрджрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЬрд▓реНрдж рд╣реА рдкреНрд░рд╛рдкреНрдд рдХрд░реВрдВрдЧрд╛)ред

рдореВрд▓ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рд╕реЗред

рдЬрдм рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛рд░реНрди рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рдВрдЧрддрд┐ рдЦреЛ рдЬрд╛рддреА рд╣реИред
рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ?
рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╛рд░реНрди.рд▓реЙрдХ рдпрд╛ рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рди рд▓рд┐рдЦреЗрдВред
рдпрд╛рд░реНрди рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд▓реЙрдХ рдпрд╛рд░реНрди рдЕрдкрдЧреНрд░реЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкреЗрдХреНрд╖рд┐рдд рд╢рдмреНрджрд╛рд░реНрде, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╣реИрдВ:

  • рдпрджрд┐ package.json рдкрд┐рдЫрд▓реА рдмрд╛рд░ yarn.lock рдмрджрд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рддреЛ yarn.lock рд╕рддреНрдп рдХрд╛ рд╕реНрд░реЛрдд рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдпрджрд┐ package.json , рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреЗ рдмрд╛рдж рд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ yarn.lock рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЕрджреНрдпрддрди yarn.lock рдпрд╣ рдЗрддрдирд╛ рд╕рдВрддреБрд╖реНрдЯ package.json рдФрд░ рдЕрджреНрдпрддрди node_modules ред
  • рдпрджрд┐ yarn update рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╣рд▓ рдХрд░реЗрдВ рдФрд░ package.json рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАрдЬ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдХрд┐рд╕реА рдорд╢реАрди рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдпрджрд┐ yarn.lock рдХреЛ рдЪреЗрдХ рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╛рд░реНрди рдХреЛ рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛрдЪрд╛рд╣рд┐рдП, рди рдХрд┐ yarn.lock рдЕрдкрдбреЗрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛, рдФрд░ рдХреВрджрдирд╛ рд╕реАрдзреЗ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдоред

рдЗрд╕ рд╣рдж рддрдХ рдХрд┐ рдпрд╣ рдпрд╛рд░реНрди рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реИ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реЛрдЧрд╛ред


@esphen рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВред рдЗрд╕ рдмрд╛рдд рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпреЛрдВ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрдкреВрд░реНрдг рд▓реЙрдХрдлрд╛рдЗрд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рдзрд╛рдУрдВ рдкрд░ рд▓рдЧрддрд╛ рд╣реИред рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреНрдпреЛрдВ рд╣реИ рдпрджрд┐ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд▓реЙрдХ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореМрдЬреВрджрд╛ рдЕрднреА рднреА рдЕрджреНрдпрддрд┐рдд рд╣реИ рддреЛ рдпрд╛рд░реНрди рдХреЛ рдПрдХ рдирдпрд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЗрд╕рд╕реЗ рд╕рд╣рдордд рд╣реВрдБред

рдореИрдВ @bestander рдХреА рд░рд╛рдп рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдХреЗрд╡рд▓ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ

рдпрд╣рд╛рдВ рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ package.json рдмрджрд▓рд╛рд╡ рдХреЗ рдХрд╛рд░рдг yarn.lock рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрджрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди package.json рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ yarn.lock , рдпрд╣ рдЕрджреНрдпрддрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ yarn.lock ред

рдпрд╛рд░реНрди рдЬреИрд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдпрд╣ рд╣реИ рдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ package.json рдХреЛ yarn.lock рд╕рд╛рде рд╕рд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдЬрд╛рдирдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдорд╛рдирд╡ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП yarn.lock рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛ред

рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд░рдирд┐рдВрдЧ рдпрд╛рд░реНрди рдХрд╛ рдПрдХ рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ рд╣реИ рдЬреЛ рдЙрди рд╕рднреА рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд╕рдЯреАрдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди package.json рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдереЗред рдЗрд╕реЗ рдЪреЗрдХ рдЗрди рдХрд░рдХреЗ, рдЕрдиреНрдп рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ, рд╕реАрдЖрдИ, рдФрд░ рдкреНрд░реЛрдбрдХреНрд╢рди рдХреЛрдб рдХреЛ рдЙрдиреНрд╣реАрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЖрд╢реНрд╡рд╛рд╕рди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


@ рдЧреБрдЬрд╝ рдиреЗ рдХрд╣рд╛:

рддреЛ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ:
рдпрд╛рд░реНрди рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕реАрдЖрдИ рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдкрдХреЛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ -- рдкреНрдпреЛрд░-рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдпрд╣ рдкреНрд░рд╢реНрди рдЙрд╕ рднрд╛рд╡рдирд╛ рдХреЛ рдкреНрд░рддрд┐рдзреНрд╡рдирд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдмрдирд╛рдпрд╛ рд╣реИред

рдХрд╛рд░реНрдЧреЛ рдореЗрдВ --locked рдзреНрд╡рдЬ рд╣реИ рдЬреЛ рдХрд╣рддрд╛ рд╣реИ "рдпрджрд┐ package.json yarn.lock рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдХрдард┐рди рддреНрд░реБрдЯрд┐ рд╣реИ"ред рдмрдВрдбрд▓рд░ рдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рди рдзреНрд╡рдЬ ( --frozen ) рд╣реИ, рдЬрд┐рд╕реЗ рддрдм рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм рд╣реЗрд░реЛрдХреВ рдиреЗ рдмрдВрдбрд▓рд░ рдХреЛ рдЕрдкрдирд╛рдпрд╛ рдерд╛, рддрд╛рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЙрдирдХреЗ Gemfile рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдФрд░ Gemfile.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЬрд╛рдиреЗ рдкрд░ рдПрдХ рдХрдард┐рди рддреНрд░реБрдЯрд┐ рджреА рдЬрд╛ рд╕рдХреЗред

рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди, рдЖрдк package.json рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдпрд╛рд░реНрди рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ yarn.lock рд╕рд┐рдВрдХ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ (рдлрд┐рд░ рд╕реЗ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг package.json рд╣рдореЗрд╢рд╛ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдЪреАрдЬрд╝реЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ)ред

рд▓реЗрдХрд┐рди рддреИрдирд╛рддреА рдХрд░рддреЗ рд╕рдордп, рдпрд╣ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдиреЗ package.json рдмрджрд▓рд╛рд╡ рдХрд┐рдпрд╛ рд╣реИ, рдПрдХ рд╕реНрдерд╛рдиреАрдп yarn рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛, рдФрд░ yarn.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЧрдП . рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ package.json рд╕рдВрд╕реНрдХрд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ рд╣реИрдВ , рдЬреЛ рд╣рдордиреЗ рдХрд╣рд╛ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди рдХреЗ рдПрдХ рдореМрд▓рд┐рдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИред


@esphen рдиреЗ рдХрд╣рд╛:

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рджреНрд╡рд╛рд░рд╛ рднрд░реА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднреВрдорд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХреЛ рд╡реЗ рд╕рднреА рдкреИрдХреЗрдЬ рдорд┐рд▓рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреНрд░рдо рдХреЗред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЧреИрд░-рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИред

рдПрдирдкреАрдПрдо рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рдкрд╛рд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпреЗ рдЙрджрд╛рд╣рд░рдг рдХреНрд╖рдгрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реБрдП рд╣реИрдВ рдЬреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЯрдХрд░рд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдмрд╕ рд╕реЗрд╡рд░ рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдпрд╛рд░реНрди рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЯреЗрдХрдЕрд╡реЗ рдпрд╣ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ - рдкреНрдпреЛрд░-рд▓реЙрдХрдлрд╛рдЗрд▓ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ 100% рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред

yarn install --pure-lockfile рдЪрд▓рд╛рдиреЗ рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рд╕рдореНрдорд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рднрд▓реЗ рд╣реА рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг package.json рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░реЗрдВред рдпрд╣ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдЙрдарддрд╛ рд╣реИ, рддреЛ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рднреВрд▓ рдЙрдирдХреЗ рдЪреЗрдХ рдЗрди рдХрд░рдиреЗ рдЪрд╛рд╣рд┐рдП yarn.lock рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж package.json ред

рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреА рдПрдХ рдЕрдиреНрдп рднреВрдорд┐рдХрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рджреЗрдирд╛ рд╣реИред рдпрджрд┐ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рдпрд╛рд░реНрди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдХрд┐рд╕реА рднреА рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдиреЛрдЯреЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд╕реНрдорд┐рдХ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрдорд┐рдЯреНрд╕ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ git рдХрдорд┐рдЯ-рдП рдХрд░рдиреЗ рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рджрд┐рдП рдЧрдП рд░рд┐рд▓реАрдЬрд╝ рдЯрд╛рдЗрдордлреНрд░реЗрдо рдореЗрдВ рдХреЗрд╡рд▓ рдмрдВрдк рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рджреЗрдЧрд╛ред

рдпрджрд┐ package.json рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рддреЛ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ рдпрджрд┐ yarn.lock рдЕрдкрдбреЗрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдмрдЧ рдХрд╛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдорд╛рдорд▓рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ:

рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛рд░реНрди рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмрд╛рдж рдореЗрдВ рд╕реВрддреНрд░ рдореЗрдВ, @thejameskyle рдиреЗ рдХрд╣рд╛:

рдПрдХ рдореЗрдореЛрдЗрдЬрд╝ рдлрд╝рдВрдХреНрд╢рди рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЗрдирдкреБрдЯ рдПрдХ package.json рд╣реИ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдпрд╛рд░реНрди.рд▓реЙрдХ рд╣реИред

рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдорд╛рдирд╕рд┐рдХ рдореЙрдбрд▓ рд╣реИ, рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ (" yarn.lock рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ package.json рдмрджрд▓ рдЧрдпрд╛"), рдФрд░ рдЕрдЧрд░ рдЕрдореВрд░реНрдд рд▓реАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред


@adamchainz рдиреЗ рдХрд╣рд╛:

рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА: рд╣рдорд╛рд░реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЬреАрдердм рд╕реЗ рдПрдХ рдЙрдк-рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдХреБрдЫ рдХрдорд┐рдЯреНрд╕ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдФрд░ рд╣рдореЗрдВ рдПрдХ рд╕рдВрд╢реЛрдзрд┐рдд рдпрд╛рд░реНрди рдорд┐рд▓рд╛ред рд╣рдорд╛рд░реА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рд┐рд░реНрдл рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдЪрд▓рд╛рдиреЗ рд╕реЗ рд▓реЙрдХ рдХрд░реЗрдВ

рдФрд░ рдмрд╛рджрдореЗрдВ:

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЬреАрдердм рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдмреБрд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдмрддрд╛рдпрд╛ рд╣реИ

рдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди git sha рдХреЛ git рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓реЙрдХ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдорд╛рдирддрд╛ рд╣реИред рдХрд╛рд░реНрдЧреЛ рдФрд░ рдмрдВрдбрд▓рд░ рджреЛрдиреЛрдВ рдореЗрдВ "рд╕рдЯреАрдХ" рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ; рдЧрд┐рдЯ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд▓рд┐рдП, "рд╕рдЯреАрдХ" рд╕рдВрд╕реНрдХрд░рдг SHA рд╣реИред рддрдм, рдЬрдм рдЖрдк рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рдЬрд╛ рдХреНрд▓реЛрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ package.json рдФрд░ yarn.lock рдФрд░ рдЪрд▓рд╛рдиреЗ yarn , рдареАрдХ рдХреЛрдб рдХреА рдЬрд░реВрд░рдд рд╣реИ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рднреА рд╣реИред

рдореБрдЭреЗ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореВрд▓ рдЧрд┐рдЯ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛; рдХреЛрдб рдореЗрдВ рдХреБрдЫ SHA рдЯреНрд░реИрдХрд┐рдВрдЧ рд╣реИ, рд▓реЗрдХрд┐рди yarn install рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рдЗрдбреНрд░реЗрдЯреЗрдб рдирд┐рд░реНрднрд░рддрд╛ рдЧреНрд░рд╛рдл рдЗрд╕рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рддрд╛ рд╣реИред


рдЯреАрдПрд▓; рдбреАрдЖрд░

рдореИрдВ @thejameskyle рдФрд░ @kittens рд╕рд╛рде рд╕рд╣рдордд рд╣реИрдВ рдХрд┐ yarn.lock рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП package.json рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдЙрди рд╣реИ рдХрд┐ рд╕рдВрд╕реНрдХрд░рдг рдЙрдирдХреЗ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧреНрд░рд╣рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП package.json рдЙрдирдХреЗ рдРрдк рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдЕрдк рдХрд░реЗрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдмрдЧ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ yarn.lock рдореЗрдВ рдЕрдиреБрдЪрд┐рдд рдордВрдерди рдХрд╛ рдХрд╛рд░рдг рдмрди рд░рд╣реЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА package.json рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ:

  • рдорд╢реАрдиреЛрдВ рдореЗрдВ рдпрд╛рд░реНрди рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ
  • package.json рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рднреА git рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ, рдЬреЛ рддрдм рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ

рд╣рдореЗрдВ рдХрд╛рд░реНрдЧреЛ рдХреЗ --locked рдзреНрд╡рдЬ рдЬреИрд╕реЗ рдХреБрдЫ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рд╕реАрдЖрдИ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдХреЛрдИ рдбреЗрд╡рд▓рдкрд░ package.json рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП yarn.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИред

рд╕рднреА 54 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВред рдЗрд╕ рдмрд╛рдд рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпреЛрдВ yarn install рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрдкреВрд░реНрдг рд▓реЙрдХрдлрд╛рдЗрд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рдзрд╛рдУрдВ рдкрд░ рд▓рдЧрддрд╛ рд╣реИред рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреНрдпреЛрдВ рд╣реИ рдпрджрд┐ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд▓реЙрдХ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ?

рдпрджрд┐ рдХреЛрдИ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ рддреЛ yarn install рд▓реЙрдХрдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдЬрдм рдХреЛрдИ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ yarn рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдФрдЪрд┐рддреНрдп рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдореИрдВ @bestander рдХреА рд░рд╛рдп рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдХреЗрд╡рд▓ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ add/upgrade/remove ред

рдХреНрдпрд╛ add/remove/upgrade рдкреВрд░реНрд╡ рдХреЗ рдмрд┐рдирд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдЙрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдЬрдм рдЖрдк рдпрд╛рд░реНрди рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдПрдХ рдирдП рд▓реЙрдХрдлрд╛рдЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдХрд▓реНрдк рдЙрд▓рдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

yarn install --save-lockfile

рдкрд░ 17 рдЕрдХреНрдЯреВрдмрд░ рд╡рд░реНрд╖ 2016 18:53 рдкрд░, рдЬреЗрдореНрд╕ рдЗрджреЗ [email protected] рд▓рд┐рдЦрд╛ рд╣реИ:

рдХреНрдпрд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЬреЛрдбрд╝рдиреЗ/рдирд┐рдХрд╛рд▓рдиреЗ/рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рдЙрджрд╛рд╣рд░рдг: рдЙрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдЬрдм рдЖрдк рдпрд╛рд░реНрди рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдПрдХ рдирдП рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
рд╕рдВрд╕реНрдХрд░рдг?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/yarnpkg/yarn/issues/570#issuecomment -254282256, рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/ACBdWJLpdvqiwcBwqE4KB3x3f4oCn_nVks5q07YYgaJpZM4KSlSw
.

рдореИрдВ рднреА рдЗрд╕рд╕реЗ рднреНрд░рдорд┐рдд рд╣реВрдВред рд╡рд░реНрддрдорд╛рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рддрд░реНрдХ рдХреНрдпрд╛ рд╣реИ?

рдЕрдлреИрдХ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдордЬрдмреВрдд рдХрд╛рд░рдг рдирд╣реАрдВ рдерд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдЪрд╛рд░ рд▓реЛрдЧреЛрдВ рдХреА рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ "рд╕рджрд╛рдмрд╣рд╛рд░" рд░рдЦрдирд╛ рд╣реИред

рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ рдкреАрдЖрд░ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рдерд╛ рдХрд┐ рдпрд╛рд░реНрди рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХ install рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕реЗ install/add/upgrade рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

рддреЛ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ:

yarn рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕реАрдЖрдИ рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдкрдХреЛ yarn install --pure-lockfile рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?
рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЗ рджреМрд░рд╛рди рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдЪреВрдВрдХрд┐ рдЖрдк рдХреБрдЫ рднреА рдЕрдкрдЧреНрд░реЗрдб рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ... рдпрд╛рд░реНрди рдХреЛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣реИ рдирд╛?

рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рд╣реИ рддреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рдПрдВрдЧреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдХрдорд╛рдВрдб рд╣реЛрдЧрд╛ред

@kittens рдХреНрдпрд╛ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХреЗрд╡рд▓ рдХрд┐рд╕реА рдкреИрдХреЗрдЬ рдХреЛ рдЬреЛрдбрд╝рдиреЗ/рдирд┐рдХрд╛рд▓рдиреЗ/рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдкрд░ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдЙрдиреНрд╣реЗрдВ рд╣рдореЗрд╢рд╛ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╕рд╛рде рд╣реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЗрдВрд╕реНрдЯреЙрд▓ рднреА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рд╣реИ рддреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рдПрдВрдЧреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдХрдорд╛рдВрдб рд╣реЛрдЧрд╛

рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдирд╛ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХрд╛ рдореБрдЦреНрдп рдЙрджреНрджреЗрд╢реНрдп рдХреНрдпрд╛ рдорд╛рдирддреЗ рд╣реИрдВред

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рджреНрд╡рд╛рд░рд╛ рднрд░реА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднреВрдорд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг yarn install рдХреЛ рд╡реЗ рд╕рднреА рдкреИрдХреЗрдЬ рдорд┐рд▓рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЖрдкрдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рд╣рд┐рдП, рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреНрд░рдо рдХреЗред

npm рдореЗрд░реЗ рдкрд╛рд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпреЗ рдЙрджрд╛рд╣рд░рдг рдХреНрд╖рдгрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реБрдП рд╣реИрдВ рдЬреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЯрдХрд░рд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдмрд╕ рд╕реЗрд╡рд░ рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ yarn рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЯреЗрдХрдЕрд╡реЗ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ yarn install --pure-lockfile рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ 100% рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХреЗ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдорд╛рдорд▓рд╛ред

рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреА рдПрдХ рдЕрдиреНрдп рднреВрдорд┐рдХрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рджреЗрдирд╛ рд╣реИред рдпрджрд┐ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП yarn outdated рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдХрд┐рд╕реА рднреА рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдиреЛрдЯреЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд╕реНрдорд┐рдХ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрдорд┐рдЯ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ git commit -a рдХрд░рдиреЗ рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд░рд┐рд▓реАрдЬрд╝ рд╕рдордп рд╕реАрдорд╛ рдореЗрдВ рдХреЗрд╡рд▓ рдмрдВрдк рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рджреЗрдЧрд╛ред

рдореИрдВ @esphen рдХреА рд╣рд░ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рд╢реБрджреНрдз рд╡реНрдпрд╡рд╣рд╛рд░ рдпрд╛рд░реНрди рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╣реАрдВ рд╣реИ - рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдПрдирдкреАрдПрдо рдкрд░ рдпрд╛рд░реНрди рдХрд╛ рдкреНрд░рдореБрдЦ рд▓рд╛рдн рдерд╛ред рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдореИрдВ рдЗрд╕реЗ рджреЗрдЦрддрд╛ рд╣реВрдВ, рдПрдирдкреАрдПрдо рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдпрд╣ рд╕рдмрд╕реЗ рд╕рдореНрдореЛрд╣рдХ рдХрд╛рд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП yarn рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмрд┐рд▓реНрдб рдХреЛ рддреЛрдбрд╝рдХрд░ рд╣рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдореИрдВрдиреЗ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ --pure-lockfile рдмрд╣реБрдд рд╕рд╛рд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдерд╛ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рд╕рд┐рдХреБрдбрд╝рддреЗ рд╣реБрдП npm рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред рдХреГрдкрдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдирд╛рдПрдВ :)

@ide рдПрдХ рдРрд╕реЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХреЗрд╡рд▓ package.json рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реЛ, yarn.lock рдХреЛ рдХреИрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдХреНрдпрд╛ рдХреЛрдИ рдХреГрдкрдпрд╛ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдХрд╛рд░рдг рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдПрдХ рдЧрдВрднреАрд░ рдПрдХ рд╣реИ рдФрд░ рд╕реНрдкрд╖реНрдЯ рдЬреЛ рдпрд╛рдж рдореЗрдВ рднреВрдорд┐ рдХреЗ рдКрдкрд░ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдХреНрдпрд╛ рдЖрдкрд░реЗрд╢рдиреЛрдВ рдореЗрдВ рдпрд╣ рдЕрджреНрдпрддрди рдЖрджрд┐ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдорддрд▓рдм рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рджреНрд╡рд╛рд░рд╛ lockfile рдПрдХ рджреНрд╡рд┐рддреАрдп рд╢реНрд░реЗрдгреА рдХреЗ рдирд╛рдЧрд░рд┐рдХ рдкрдбрд╝рддрд╛ рд╣реИ

рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА: рд╣рдорд╛рд░реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЬреАрдердм рд╕реЗ рдПрдХ рдЙрдк-рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдХреБрдЫ рдХрд╛рдореЛрдВ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдФрд░ рд╣рдореЗрдВ рдЕрдкрдиреА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреЗрд╡рд▓ yarn install рдЪрд▓рд╛рдиреЗ рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд yarn.lock рдорд┐рд▓рд╛:

diff --git a/foo/yarn.lock b/foo/yarn.lock
index ec667fa..bb1f6ae 100644
--- a/foo/yarn.lock
+++ b/foo/yarn.lock
@@ -930,9 +930,9 @@ code-point-at@^1.0.0:
   version "1.6.3"
   resolved "https://registry.yarnpkg.com/coffee-script/-/coffee-script-1.6.3.tgz#6355d32cf1b04cdff6b484e5e711782b2f0c39be"

-"coffee-script<strong i="8">@github</strong>:jashkenas/coffeescript":
+coffee-script@jashkenas/coffeescript:
   version "1.11.1"
-  resolved "https://codeload.github.com/jashkenas/coffeescript/tar.gz/887052de079b2f0af9f080031a00bb7544eaca08"
+  resolved "https://codeload.github.com/jashkenas/coffeescript/tar.gz/0d132318ce8f7116a436d97db1f2a5c8b1dedf28"

 [email protected]:
   version "0.3.0"

рдХреНрдпрд╛ рдХреЛрдИ рдХреГрдкрдпрд╛ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХреЛ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдХрд╛рд░рдг рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдПрдХ рдЧрдВрднреАрд░ рд╣реИ рдФрд░ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдПрдХ рджреНрд╡рд┐рддреАрдп рд╢реНрд░реЗрдгреА рдХрд╛ рдирд╛рдЧрд░рд┐рдХ рдмрдирд╛ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрдиреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдпрд╛рдж рд░рдЦрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдУрд╡рд░рд╣реЗрдб рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рдСрдкрд░реЗрд╢рди рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЖрджрд┐ред

рдореИрдВ yarn install рдХреЛ рдПрдХ рдХрдорд╛рдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рддрд╛ рд╣реИред
рдпрд╣ yarn add рдФрд░ yarn remove рд╡рд┐рдкрд░реАрдд рд╣реИ рдЬреЛ package.json, рдпрд╛рд░реНрди.рд▓реЙрдХ рдФрд░ рдХреНрд▓реАрдирдЕрдк node_modules рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред
add рдФрд░ remove рд╡рд┐рд░реЛрдз рдореЗрдВ рдореИрдВ install 100 рдЧреБрдирд╛ рдЕрдзрд┐рдХ рдмрд╛рд░ рджреМрдбрд╝рддрд╛ рд╣реВрдВ, рдЦрд╛рд╕рдХрд░ рд╕реАрдЖрдИ рдореЗрдВ рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдХрднреА рднреА рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдЬрдм рдореИрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХрд░рддрд╛:

  1. рдореИрдВ рдпрд╛рд░реНрди 0.15.0 рдкрд░ рд╣реВрдВ, рдореЗрд░реА рдЯреАрдо рдХреЗ рд╕рд╛рдереА рдпрд╛рд░реНрди 0.16.0 рдкрд░ рд╣реИрдВред
    рдХреНрдпреЛрдВрдХрд┐ 0.16.0 рдиреЗ рдпрд╛рд░реНрди рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдЬреЛрдбрд╝рд╛ред рд╣рд░ рдмрд╛рд░ рдЬрдм рдореИрдВ рдпрд╛рд░реНрди рдХреЗ рдЦрд┐рд▓рд╛рдл yarn install рдЪрд▓рд╛рддрд╛ рд╣реВрдВред рдореЗрд░реА рдЯреАрдо рдХреЗ рд╕рд╛рдереА рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рд▓реЙрдХ рдореБрдЭреЗ рдПрдХ рд╕рдВрд╢реЛрдзрд┐рдд рдпрд╛рд░реНрдиред рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓рддреА рд╣реИ рдЬрд┐рд╕реЗ рдореБрдЭреЗ рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
    рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред
  2. рдореЗрд░реЗ рдЕрдиреНрдп рдирд┐рд░реНрдорд╛рдг рдЙрдкрдХрд░рдг node_modules рд░рд╛рдЬреНрдп рдХреЗ "рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд" рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╛рд░реНрди.рд▓реЙрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд░ рдпрд╣ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдмрджрд▓рддрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдЕрдкрдиреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЧреИрд░ рдирд┐рдпрддрддреНрд╡рд╡рд╛рдж рдорд┐рд▓реЗрдЧрд╛

@ рдмрд┐рд▓реНрд▓реА рдХреЗ рдмрдЪреНрдЪреЗ

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рд╣реИ рддреЛ рд▓реЛрдЧ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рднреВрд▓ рдЬрд╛рдПрдВрдЧреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдХрдорд╛рдВрдб рд╣реЛрдЧрд╛ред

рдРрд╕реЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдХреЗрд╡рд▓ npm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реЛ рдФрд░ package.json рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реЛ, рддреЛ рдпрд╛рд░реНрди.рд▓реЙрдХ рдХреЛ рдХреИрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдпрджрд┐ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ yarn install рдХреЛ yarn.lock рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдпрд╣ рднреА рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ yarn.lock рдЗрд╕ рддрдереНрдп рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП package.json рд╕рд╛рде рд╕рд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ рдХрд┐ рдПрдХ yarn install --save-lockfile рд╕рдм рдХреБрдЫ рд╡рд╛рдкрд╕ рд╕рд┐рдВрдХ рдореЗрдВ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП

+1 рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдпрд╛рд░реНрди рдХреЛ рдореНрдпреВрдЯреЗрдЯ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПредрд▓реЙрдХ

  1. рдбрд┐рдмрдЧрд░ рдПрдХ oss рдРрдк рд╣реИред рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХрд░ рд╕рдХреЗрдВ рдФрд░ _good_ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХреЗрдВред рд╣рдордиреЗ рд▓реЛрдЧреЛрдВ рдХреЛ npm рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕рдХрд░реНрдордХ рдЧреБрдгреЛрдВ рдХреЗ рдХрд╛рд░рдг рдЯреВрдЯ рд░рд╣рд╛ рд╣реИред рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЗ рд╕рд╛рде, рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдпрд╛рд░реНрди рд▓реЙрдХ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

рдореИрдВ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рдирд╣реАрдВ рд╣реВрдВред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдЧреНрд░реАрдирдХреАрдкрд░ рдРрд╕рд╛ рддрдм рдХрд░реЗрдЧрд╛ рдЬрдм рдбреАрдкреАрдПрд╕ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╣рдо рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдорд░реНрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЕрджреНрдпрддрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред @kittens рдФрд░ рдореИрдВ рджреЛрдиреЛрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рд╕реЗ --pure-lockfile _not_ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рдЬреЛрдбрд╝рддреЗ/рд╣рдЯрд╛рддреЗ/рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЬрдмрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрджреЗрд╢ рд╣реИрдВ, package.json рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдпрд╛ рддреЛ рд╣рд╛рде рд╕реЗ рдпрд╛ Lerna рдЬреИрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреВрд▓ рджреНрд╡рд╛рд░рд╛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЖрдо рдмрд╛рдд рд╣реИред

рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ package.json рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд▓реЗрддреЗ рд╣реИрдВ рддреЛ рдпрд╛рд░реНрди рдФрд░ npm рджреЛрдиреЛрдВ рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд╛ рдпрд╣ рд╣реЛрддреА рд╣реИ рдХрд┐ рдЬрдм рдЖрдк рджреВрд╕рд░рд╛ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдЗрд╕реЗ package.json рд╕рд╛рде _syncs_ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред рдЙрд╕ рдЕрд░реНрде рдореЗрдВ yarn install рдХрд╛ рд▓рдЧрднрдЧ рдирд╛рдо рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ yarn sync ред

рд╕рдордиреНрд╡рдпрди рдХреЗ рд╡рд┐рд╖рдп рдкрд░, рдЬрдм рдЖрдк рдирдИ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд╕реНрдерд╛рдкрди рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдЖрдк node_modules рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рдЙрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ yarn.lock node_modules рд╕рд╣рд╛рдпрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ,

рдЖрдкрдХрд╛ package.json рд╕рддреНрдп рдХрд╛ рдЕрдВрддрд┐рдо рд╕реНрд░реЛрдд рд╣реИ, рдпрд╣ рдпрд╛рд░реНрди рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИ, рдпрд╣ рдЖрдкрдХрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИ рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдкрдХреЛ рдХрднреА рднреА рдЪрд┐рдВрддрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдЖрджрд░реНрд╢ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЖрдк рдмрд╕ рдЕрдкрдирд╛ yarn.lock рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдлрд┐рд░ рдХрднреА рдирд╣реАрдВ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред


рдПрдХ рддрд░рдл рдзреНрдпрд╛рди рджреЗрдВ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рдорд░реНрдерди рдореЗрдВ рдЖрд╡рд╛рдЬ рдЙрдард╛ рд░рд╣реЗ рд╣реИрдВ, рд╡реЗ рднреНрд░рдорд┐рдд рд╣реИрдВ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ --pure-lockfile рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди рд╕реБрд╕рдВрдЧрдд рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рд╡рд╣реА package.json рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╡рд╣реА yarn.lock рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╡рд╣реА node_modules 100% рд╕рдордп рд╣реЛрдЧрд╛ред

рдЬрдм рдЖрдк рдЕрдкрдиреЗ package.json рдЕрдкрдиреЗ yarn.lock рдлрд╝рд╛рдЗрд▓ рдЕрдкрдбреЗрдЯ рдФрд░ рдлрд┐рд░ рдЕрдкрдиреЗ node_modules рдЕрдкрдбреЗрдЯ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рдХреНрд░рдо рд╣реИ рдФрд░ рд╣рдореЗрдВ рдЗрд╕реЗ рдЗрд╕реА рддрд░рд╣ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП


рдЬрдм рдЖрдкрдиреЗ рдЕрдкрдирд╛ package.json рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реАрдЖрдИ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рд╕рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП yarn install рдирд╣реАрдВ рдЪрд▓рд╛рдпрд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдХреЛрдИ рд▓рд╛рдПрдЧрд╛ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдРрд╕рд╛ рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИ рдПрдХ рдореБрджреНрджрд╛) - рдореИрдВ рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧ рдпрд╛рд░реНрди рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕реАрдЖрдИ рдЯреВрд▓ рд╕реЗ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЕрдЧрд░ рд▓реЛрдЧ рдЗрд╕реЗ рдПрдХ рдмрдбрд╝реЗ рдореБрджреНрджреЗ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ --pure-lockfile рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рдиреА рд╕реЗ рдзрдХреНрдХрд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред


рдпрджрд┐ рд╣рдо рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдирд┐рд░реНрднрд░рддрд╛ рдмрджрд▓рддреЗ рд╕рдордп рдЗрд╕рдХрд╛ рдЕрдзрд┐рдХ рдмрд╛рд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝реЗрдЧрд╛ред рдЬрд┐рди рдХрд╛рд░рдгреЛрдВ рдХреЛ рдореИрдВрдиреЗ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рд╣реИ, рдЙрдирдХреЗ рд▓рд┐рдП рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

@thejameskyle рдЕрдЧрд░ рдЖрдк рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ:

  1. рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдПрдХ package.json рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ "foo": "^1.0.0"
  2. рдбреЗрд╡рд▓рдкрд░ yarn install рдЪрд▓рд╛рддрд╛ рд╣реИред foo рдкреИрдХреЗрдЬ рд╡рд░реНрддрдорд╛рди рдореЗрдВ 1.0.0 рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ yarn.lock рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ [email protected] рдореЗрдВ рд▓реЙрдХ рд╣реЛ рдЬрд╛рддреА рд╣реИ
  3. рдбреЗрд╡рд▓рдкрд░ Git рдореЗрдВ yarn.lock рдЬреЛрдбрд╝рддрд╛ рд╣реИред
  4. рдбреЗрд╡рд▓рдкрд░ рд░реЗрдкреЛ рдХреА рдЕрдкрдиреА рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐ рдкрд░ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реИ, рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
  5. рдбреЗрд╡рд▓рдкрд░ рдЕрдкрдиреЗ рд░реЗрдкреЛ рдХреЛ CI (рдЬреИрд╕реЗ рдЯреНрд░реИрд╡рд┐рд╕) рдкрд░ рдзрдХреЗрд▓рддрд╛ рд╣реИред
  6. рд╕реАрдЖрдИ yarn install рдЪрд▓рд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди foo рдЕрдм рд╕рдВрд╕реНрдХрд░рдг 1.1.0 рдЕрдкрдбреЗрдЯ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╛рд░реНрди [email protected] рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ yarn.lock рдХреЛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИ foo
  7. рд╕реАрдЖрдИ рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ foo рдореЗрдВ 1.1.0 . рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдерд╛

рдпрд╣рд╛рдВ рдРрд╕реА рд╣реА рд╕реНрдерд┐рддрд┐ рд╣реИ:

  1. рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдкрд╛рд╕ рдПрдХ package.json рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ "foo": "^1.0.0" , рдЬрд┐рд╕реЗ [email protected] рд░реВрдк рдореЗрдВ рд▓реЙрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ yarn.lock рдХреЛ Git рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред
  2. рд░реЗрдкреЛ рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдХреА рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐ рдкрд░ рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рдареАрдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
  3. рдПрдХ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рд░реЗрдкреЛ рдХреЛ рдПрдХ рд╕рдВрд╢реЛрдзрди + рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рдЗрд░рд╛рджреЗ рд╕реЗ рдХреНрд▓реЛрди рдХрд░рддрд╛ рд╣реИред
  4. рдЬрдм рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ yarn install рдЪрд▓рд╛рддрд╛ рд╣реИ рддреЛ рдЙрдиреНрд╣реЗрдВ рд╕рдВрд╕реНрдХрд░рдг [email protected] рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг yarn.lock рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  5. рдЕрдм рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ foo рд╕рдВрд╕реНрдХрд░рдг 1.1.0 рдореЗрдВ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдерд╛

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рд▓реЛрдЧ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВред

рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рд╕реНрдкрд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ yarn install рдХреЗ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╕реНрдпрд╛рдПрдВ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рд╣рдорд╛рд░реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбрд░ рджреВрд░ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред :+1:

рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЧрдИ рд╣реИ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдХреЗрд╡рд▓ рдЕрдЧрд░ рдЖрдкрдиреЗ рдЕрдкрдиреЗ package.json рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рд╣реИрдВред

рдореИрдВ рд╕рд┐рд░реНрдл рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреА рдпрд╣реА рдПрдХрдорд╛рддреНрд░ рдЪрд┐рдВрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣рд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рджреГрд╢реНрдп рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╢рд╛рдпрдж рдФрд░ рдЕрдзрд┐рдХ рднреНрд░рдо рдкреИрджрд╛ рдХрд░ рд░рд╣реА рд╣реИред

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЬреАрдердм рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдмреБрд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдмрддрд╛рдпрд╛ рд╣реИ

@adamchainz рдЗрд╕реЗ рдЕрд▓рдЧ рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рдо рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрдорд┐рдЯ рдореЗрдВ рд▓реЙрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЧрдИ рд╣реИ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдХреЗрд╡рд▓ рдЕрдЧрд░ рдЖрдкрдиреЗ рдЕрдкрдиреЗ package.json рдкрд░рд┐рд╡рд░реНрддрди рдХрд┐рдП рд╣реИрдВред

@thejameskyle : рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рджреГрд╢реНрдп рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рд╡рд┐рд╕реНрддреГрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдПрдХ рдЬреНрдЮрд╛рдкрди рд╕рдорд╛рд░реЛрд╣ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЗрдирдкреБрдЯ package.json рдФрд░ рдЖрдЙрдЯрдкреБрдЯ yarn.lock ред

  1. рдкрд╣рд▓реА рдмрд╛рд░ рдЬрдм рдЖрдк package.json рдпрд╣ yarn.lock рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИред
  2. рдЕрдЧрд▓реА рдмрд╛рд░ рдЬрдм рдЖрдк _рд╡рд╣реА_ package.json рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдкрд░рд┐рдгрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рд╡реИрд╕рд╛ рд╣реА рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреИрд╢реНрдб рд╣реИред
  3. рдЬрдм рдЖрдк package.json рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдиреЗ рдХреИрд╢ рдХреЛ рдЕрдорд╛рдиреНрдп рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдм yarn.lock рдХреА рдкреБрдирд░реНрдЧрдгрдирд╛ рдХреА рдЬрд╛рдПрдЧреАред

рд╣рдо рдЕрднреА рдЬрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ # 3 рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп yarn.lock рдЗрд▓рд╛рдЬ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдЗрд╕реЗ рдмрджрд▓реЗ рдЧрдП package.json рджреНрд╡рд╛рд░рд╛ рдЕрдорд╛рдиреНрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореЗрдореЛрдЗрдЬрд╝ рдлрдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬреАрдм рд╣реЛрдЧрд╛ рдФрд░ рдпрд╛рд░реНрди рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬреАрдм рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдЧрд╛ред

рдХрдорд┐рдЯ рдФрд░ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ _ should_ _ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реЛ (рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ git рдХрдорд┐рдЯ рдХреЗ рд╕рд╛рде рдмрдЧ рд╣реИ рддреЛ рд╣рдореЗрдВ рдЗрд╕реЗ рдЕрд▓рдЧ рд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЕрд╕рдВрдмрдВрдзрд┐рдд рд╣реИ)ред

рдпрд╣ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рдмрдирд╛рдпрд╛ рд╣реИ рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИ (рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ "рдпрд╛рджрдЧрд╛рд░" рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рдкреИрдХреЗрдЬ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рдмрд╛рдХреА рдХреЛ рдЕрдорд╛рдиреНрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдм рд╕рднреА рдХреЛ рдмрд┐рдВрджреБ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ред

@thejameskyle : рд╕реНрдкрд╖реНрдЯрддрд╛ (рдФрд░ рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛) рдХреЗ рд▓рд┐рдП, рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ yarn.lock рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд▓рд╛ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдФрд░ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдиреАрдЪреЗ рдЦреАрдВрдЪрддрд╛ рд╣реИред yarn install рдпрд╛ npm install рдЪрд▓рд╛рдП рдмрд┐рдирд╛, рдпрд╣ рд╡реНрдпрдХреНрддрд┐ package.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдирдИ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ yarn install рдЪрд▓рд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдореМрдЬреВрджрд╛ yarn.lock рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬрд╝ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдпрд╣рд╛рдБ рд╡рд┐рднрд┐рдиреНрди рдЪреАрдЬреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╕реБрд▓рдЭрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ (рдХреЛрдИ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ)ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд▓реЛрдЧреЛрдВ рдиреЗ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдЙрдард╛рдпрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИрдВ (рдФрд░ рдЬреЛ рдХреБрдЫ рдореМрдЬреВрджрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЬрд▓реНрдж рд╣реА рдкреНрд░рд╛рдкреНрдд рдХрд░реВрдВрдЧрд╛)ред

рдореВрд▓ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рд╕реЗред

рдЬрдм рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛рд░реНрди рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рдВрдЧрддрд┐ рдЦреЛ рдЬрд╛рддреА рд╣реИред
рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реИ?
рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╛рд░реНрди.рд▓реЙрдХ рдпрд╛ рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рди рд▓рд┐рдЦреЗрдВред
рдпрд╛рд░реНрди рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рд▓реЙрдХ рдпрд╛рд░реНрди рдЕрдкрдЧреНрд░реЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкреЗрдХреНрд╖рд┐рдд рд╢рдмреНрджрд╛рд░реНрде, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╣реИрдВ:

  • рдпрджрд┐ package.json рдкрд┐рдЫрд▓реА рдмрд╛рд░ yarn.lock рдмрджрд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рддреЛ yarn.lock рд╕рддреНрдп рдХрд╛ рд╕реНрд░реЛрдд рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдпрджрд┐ package.json , рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреЗ рдмрд╛рдж рд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ yarn.lock рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЕрджреНрдпрддрди yarn.lock рдпрд╣ рдЗрддрдирд╛ рд╕рдВрддреБрд╖реНрдЯ package.json рдФрд░ рдЕрджреНрдпрддрди node_modules ред
  • рдпрджрд┐ yarn update рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╣рд▓ рдХрд░реЗрдВ рдФрд░ package.json рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАрдЬ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдХрд┐рд╕реА рдорд╢реАрди рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдпрджрд┐ yarn.lock рдХреЛ рдЪреЗрдХ рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╛рд░реНрди рдХреЛ рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛрдЪрд╛рд╣рд┐рдП, рди рдХрд┐ yarn.lock рдЕрдкрдбреЗрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛, рдФрд░ рдХреВрджрдирд╛ рд╕реАрдзреЗ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдоред

рдЗрд╕ рд╣рдж рддрдХ рдХрд┐ рдпрд╣ рдпрд╛рд░реНрди рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реИ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реЛрдЧрд╛ред


@esphen рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВред рдЗрд╕ рдмрд╛рдд рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпреЛрдВ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрдкреВрд░реНрдг рд▓реЙрдХрдлрд╛рдЗрд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рд╛рде рдмрд╛рдзрд╛рдУрдВ рдкрд░ рд▓рдЧрддрд╛ рд╣реИред рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреНрдпреЛрдВ рд╣реИ рдпрджрд┐ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд▓реЙрдХ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореМрдЬреВрджрд╛ рдЕрднреА рднреА рдЕрджреНрдпрддрд┐рдд рд╣реИ рддреЛ рдпрд╛рд░реНрди рдХреЛ рдПрдХ рдирдпрд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдирд╣реАрдВ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЗрд╕рд╕реЗ рд╕рд╣рдордд рд╣реВрдБред

рдореИрдВ @bestander рдХреА рд░рд╛рдп рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдХреЗрд╡рд▓ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ

рдпрд╣рд╛рдВ рдореБрдЦреНрдп рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ package.json рдмрджрд▓рд╛рд╡ рдХреЗ рдХрд╛рд░рдг yarn.lock рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрджрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди package.json рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ yarn.lock , рдпрд╣ рдЕрджреНрдпрддрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ yarn.lock ред

рдпрд╛рд░реНрди рдЬреИрд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдпрд╣ рд╣реИ рдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ package.json рдХреЛ yarn.lock рд╕рд╛рде рд╕рд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдЬрд╛рдирдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдорд╛рдирд╡ рдкрд╛рдардХреЛрдВ рдХреЗ рд▓рд┐рдП yarn.lock рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛ред

рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд░рдирд┐рдВрдЧ рдпрд╛рд░реНрди рдХрд╛ рдПрдХ рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ рд╣реИ рдЬреЛ рдЙрди рд╕рднреА рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд╕рдЯреАрдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди package.json рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдереЗред рдЗрд╕реЗ рдЪреЗрдХ рдЗрди рдХрд░рдХреЗ, рдЕрдиреНрдп рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ, рд╕реАрдЖрдИ, рдФрд░ рдкреНрд░реЛрдбрдХреНрд╢рди рдХреЛрдб рдХреЛ рдЙрдиреНрд╣реАрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЖрд╢реНрд╡рд╛рд╕рди рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред


@ рдЧреБрдЬрд╝ рдиреЗ рдХрд╣рд╛:

рддреЛ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ:
рдпрд╛рд░реНрди рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рднреА рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕реАрдЖрдИ рд╕рд░реНрд╡рд░ рдкрд░ рдЖрдкрдХреЛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ -- рдкреНрдпреЛрд░-рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдпрд╣ рдкреНрд░рд╢реНрди рдЙрд╕ рднрд╛рд╡рдирд╛ рдХреЛ рдкреНрд░рддрд┐рдзреНрд╡рдирд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдмрдирд╛рдпрд╛ рд╣реИред

рдХрд╛рд░реНрдЧреЛ рдореЗрдВ --locked рдзреНрд╡рдЬ рд╣реИ рдЬреЛ рдХрд╣рддрд╛ рд╣реИ "рдпрджрд┐ package.json yarn.lock рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдХрдард┐рди рддреНрд░реБрдЯрд┐ рд╣реИ"ред рдмрдВрдбрд▓рд░ рдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рди рдзреНрд╡рдЬ ( --frozen ) рд╣реИ, рдЬрд┐рд╕реЗ рддрдм рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм рд╣реЗрд░реЛрдХреВ рдиреЗ рдмрдВрдбрд▓рд░ рдХреЛ рдЕрдкрдирд╛рдпрд╛ рдерд╛, рддрд╛рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЙрдирдХреЗ Gemfile рд╕реНрдерд╛рдиреАрдп рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдФрд░ Gemfile.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЬрд╛рдиреЗ рдкрд░ рдПрдХ рдХрдард┐рди рддреНрд░реБрдЯрд┐ рджреА рдЬрд╛ рд╕рдХреЗред

рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди, рдЖрдк package.json рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдпрд╛рд░реНрди рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ yarn.lock рд╕рд┐рдВрдХ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ (рдлрд┐рд░ рд╕реЗ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг package.json рд╣рдореЗрд╢рд╛ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдЪреАрдЬрд╝реЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ)ред

рд▓реЗрдХрд┐рди рддреИрдирд╛рддреА рдХрд░рддреЗ рд╕рдордп, рдпрд╣ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдиреЗ package.json рдмрджрд▓рд╛рд╡ рдХрд┐рдпрд╛ рд╣реИ, рдПрдХ рд╕реНрдерд╛рдиреАрдп yarn рдХрдорд╛рдВрдб рдЪрд▓рд╛рдпрд╛, рдФрд░ yarn.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЧрдП . рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ package.json рд╕рдВрд╕реНрдХрд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЪрд▓рд╛рдиреЗ рдХреЗ рджреМрд░рд╛рди рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ рд╣реИрдВ , рдЬреЛ рд╣рдордиреЗ рдХрд╣рд╛ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди рдХреЗ рдПрдХ рдореМрд▓рд┐рдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд░рддрд╛ рд╣реИред


@esphen рдиреЗ рдХрд╣рд╛:

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдПрдХ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рджреНрд╡рд╛рд░рд╛ рднрд░реА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рднреВрдорд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХрд░рдирд╛ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХреЛ рд╡реЗ рд╕рднреА рдкреИрдХреЗрдЬ рдорд┐рд▓рдиреЗ рдЪрд╛рд╣рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдкрдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреНрд░рдо рдХреЗред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЧреИрд░-рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИред

рдПрдирдкреАрдПрдо рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рдкрд╛рд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рдХрдИ рдЙрджрд╛рд╣рд░рдг рд╣реИрдВ, рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпреЗ рдЙрджрд╛рд╣рд░рдг рдХреНрд╖рдгрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реБрдП рд╣реИрдВ рдЬреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЯрдХрд░рд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдмрд╕ рд╕реЗрд╡рд░ рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдпрд╛рд░реНрди рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЯреЗрдХрдЕрд╡реЗ рдпрд╣ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рднреА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ - рдкреНрдпреЛрд░-рд▓реЙрдХрдлрд╛рдЗрд▓ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ 100% рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдХрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред

yarn install --pure-lockfile рдЪрд▓рд╛рдиреЗ рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рд╕рдореНрдорд╛рди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рднрд▓реЗ рд╣реА рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг package.json рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░реЗрдВред рдпрд╣ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдЙрдарддрд╛ рд╣реИ, рддреЛ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рднреВрд▓ рдЙрдирдХреЗ рдЪреЗрдХ рдЗрди рдХрд░рдиреЗ рдЪрд╛рд╣рд┐рдП yarn.lock рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж package.json ред

рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХреА рдПрдХ рдЕрдиреНрдп рднреВрдорд┐рдХрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЙрдирдХреА рдирд┐рд░реНрднрд░рддрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рджреЗрдирд╛ рд╣реИред рдпрджрд┐ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╢реБрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рдпрд╛рд░реНрди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдХрд┐рд╕реА рднреА рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдиреЛрдЯреЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд╕реНрдорд┐рдХ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрдорд┐рдЯреНрд╕ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ git рдХрдорд┐рдЯ-рдП рдХрд░рдиреЗ рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рджрд┐рдП рдЧрдП рд░рд┐рд▓реАрдЬрд╝ рдЯрд╛рдЗрдордлреНрд░реЗрдо рдореЗрдВ рдХреЗрд╡рд▓ рдмрдВрдк рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рджреЗрдЧрд╛ред

рдпрджрд┐ package.json рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рддреЛ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдпрд╣ рдПрдХ рдмрдЧ рд╣реИ рдпрджрд┐ yarn.lock рдЕрдкрдбреЗрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдореВрд▓ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдмрдЧ рдХрд╛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдорд╛рдорд▓рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ:

рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдпрд╛рд░реНрди рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЧрд▓рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмрд╛рдж рдореЗрдВ рд╕реВрддреНрд░ рдореЗрдВ, @thejameskyle рдиреЗ рдХрд╣рд╛:

рдПрдХ рдореЗрдореЛрдЗрдЬрд╝ рдлрд╝рдВрдХреНрд╢рди рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЗрдирдкреБрдЯ рдПрдХ package.json рд╣реИ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдпрд╛рд░реНрди.рд▓реЙрдХ рд╣реИред

рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдорд╛рдирд╕рд┐рдХ рдореЙрдбрд▓ рд╣реИ, рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ (" yarn.lock рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ рдФрд░ рдХреЗрд╡рд▓ рдЕрдЧрд░ package.json рдмрджрд▓ рдЧрдпрд╛"), рдФрд░ рдЕрдЧрд░ рдЕрдореВрд░реНрдд рд▓реАрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред


@adamchainz рдиреЗ рдХрд╣рд╛:

рдЙрдкрд░реЛрдХреНрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА: рд╣рдорд╛рд░реЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЬреАрдердм рд╕реЗ рдПрдХ рдЙрдк-рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИред рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ рдХреБрдЫ рдХрдорд┐рдЯреНрд╕ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛рдпрд╛ рдФрд░ рд╣рдореЗрдВ рдПрдХ рд╕рдВрд╢реЛрдзрд┐рдд рдпрд╛рд░реНрди рдорд┐рд▓рд╛ред рд╣рдорд╛рд░реА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рд┐рд░реНрдл рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдЪрд▓рд╛рдиреЗ рд╕реЗ рд▓реЙрдХ рдХрд░реЗрдВ

рдФрд░ рдмрд╛рджрдореЗрдВ:

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЬреАрдердм рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдмреБрд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдмрддрд╛рдпрд╛ рд╣реИ

рдпрд╣рд╛рдБ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди git sha рдХреЛ git рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓реЙрдХ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рдорд╛рдирддрд╛ рд╣реИред рдХрд╛рд░реНрдЧреЛ рдФрд░ рдмрдВрдбрд▓рд░ рджреЛрдиреЛрдВ рдореЗрдВ "рд╕рдЯреАрдХ" рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ; рдЧрд┐рдЯ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд▓рд┐рдП, "рд╕рдЯреАрдХ" рд╕рдВрд╕реНрдХрд░рдг SHA рд╣реИред рддрдм, рдЬрдм рдЖрдк рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рдЬрд╛ рдХреНрд▓реЛрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ package.json рдФрд░ yarn.lock рдФрд░ рдЪрд▓рд╛рдиреЗ yarn , рдареАрдХ рдХреЛрдб рдХреА рдЬрд░реВрд░рдд рд╣реИ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рднреА рд╣реИред

рдореБрдЭреЗ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореВрд▓ рдЧрд┐рдЯ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛; рдХреЛрдб рдореЗрдВ рдХреБрдЫ SHA рдЯреНрд░реИрдХрд┐рдВрдЧ рд╣реИ, рд▓реЗрдХрд┐рди yarn install рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рдЗрдбреНрд░реЗрдЯреЗрдб рдирд┐рд░реНрднрд░рддрд╛ рдЧреНрд░рд╛рдл рдЗрд╕рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рддрд╛ рд╣реИред


рдЯреАрдПрд▓; рдбреАрдЖрд░

рдореИрдВ @thejameskyle рдФрд░ @kittens рд╕рд╛рде рд╕рд╣рдордд рд╣реИрдВ рдХрд┐ yarn.lock рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП package.json рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдЙрди рд╣реИ рдХрд┐ рд╕рдВрд╕реНрдХрд░рдг рдЙрдирдХреЗ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧреНрд░рд╣рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП package.json рдЙрдирдХреЗ рдРрдк рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдЕрдк рдХрд░реЗрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреБрдЫ рдмрдЧ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ yarn.lock рдореЗрдВ рдЕрдиреБрдЪрд┐рдд рдордВрдерди рдХрд╛ рдХрд╛рд░рдг рдмрди рд░рд╣реЗ рд╣реИрдВ, рднрд▓реЗ рд╣реА package.json рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ:

  • рдорд╢реАрдиреЛрдВ рдореЗрдВ рдпрд╛рд░реНрди рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ
  • package.json рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рднреА git рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЕрдкрдбреЗрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ, рдЬреЛ рддрдм рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ

рд╣рдореЗрдВ рдХрд╛рд░реНрдЧреЛ рдХреЗ --locked рдзреНрд╡рдЬ рдЬреИрд╕реЗ рдХреБрдЫ рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рд╕реАрдЖрдИ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдХреЛрдИ рдбреЗрд╡рд▓рдкрд░ package.json рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП yarn.lock рдореЗрдВ рдЬрд╛рдВрдЪрдирд╛ рднреВрд▓ рдЬрд╛рддрд╛ рд╣реИред

@thejameskyle рдзрдиреНрдпрд╡рд╛рдж! :heart: рдореИрдВ рдЖрдкрд╕реЗ рдФрд░ @kittens рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ yarn.lock рдХреЛ package.json рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

@wycats рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЧрд╣рди рдФрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдкреЛрд╕реНрдЯред :+1: рдореИрдВ рдЖрдкрд╕реЗ рд╕рд╣рдордд рд╣реВрдВ, рдФрд░ рдореБрдЭреЗ --locked рдзреНрд╡рдЬ (рдпрд╛ рд╕рдорд╛рди) рдХрд╛ рд╡рд┐рдЪрд╛рд░ рднреА рдкрд╕рдВрдж рд╣реИред рд╣рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

git SHA рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП #1568 рдмрдирд╛рдпрд╛ рдЧрдпрд╛

@wycats ,

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдХрд┐рд╕реА рдорд╢реАрди рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрджрд┐ рдпрд╛рд░реНрди.рд▓реЙрдХ рдХреЛ рдЪреЗрдХ рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╛рд░реНрди рдХреЛ рд╣рдореЗрд╢рд╛ рдЗрд╕реЗ рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛрдЪрд╛рд╣рд┐рдП, рдпрд╛рд░реНрди рдХреЛ рдЕрдкрдбреЗрдЯ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЙрдХ, рдФрд░ рд╕реАрдзреЗ рдлрд╝реЗрдЪ рд╕реНрдЯреЗрдк рдкрд░ рдЬрд╛рдПрдВред
рдЗрд╕ рд╣рдж рддрдХ рдХрд┐ рдпрд╣ рдпрд╛рд░реНрди рдХрд╛ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реИ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рд╣реЛрдЧрд╛ред

рдареАрдХ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрд▓рд╛ рдЧрдпрд╛ рд╣реИред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдВрдкрдиреА рдореЗрдВ рдпрд╛рд░реНрди рдХреЗ рдХреБрдЫ рд╕рдХреНрд░рд┐рдп рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдо рд╣рд░ рдЬрдЧрд╣ рдкрд░рдорд╛рдгреБ рдЕрдкрдбреЗрдЯ рдХрд░ рдкрд╛рдПрдВрдЧреЗред
рдпрд╛рд░реНрди рдкрд░ рдмрдирд╛рддрд╛ рд╣реИ 0.13, 0.14 рдФрд░ 0.15 рдиреЗ рдпрд╛рд░реНрди.рд▓реЙрдХ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдорд╛рдореВрд▓реА рдмрджрд▓рд╛рд╡ рдкреЗрд╢ рдХрд┐рдП, рднрд▓реЗ рд╣реА package.json рд╕рд┐рдВрдХ рдореЗрдВ рдерд╛ред
рдЗрд╕рдиреЗ рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрдХ рдмрд┐рд▓реНрдб рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╕реНрд░реЛрдд рдкреЗрдбрд╝ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреИрд╢ рдХреЛ рдЕрдорд╛рдиреНрдп рдХрд░ рджреЗрддрд╛ рд╣реИред
рдЗрд╕рдиреЗ рдореБрдЭреЗ рдФрд░ рдХреБрдЫ рдЯреАрдореЛрдВ рдХреЛ рдХреБрдЫ рдШрдВрдЯреЛрдВ рдХреЗ рдХрд╛рдо рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ рджрд┐рдпрд╛ред

@thejameskyle , рдЕрдкрдиреА рд░рд╛рдп рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдореИрдВрдиреЗ package.json рдХреЗ рдпрд╛рд░реНрди.рд▓реЙрдХ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рд╣реЛрдиреЗ рдХреЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рдЙрдЪрд┐рдд рдирд╣реАрдВ рдорд╛рдирд╛ред рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╡реИрдз рдмрд┐рдВрджреБ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐ рдЬреИрд╕рд╛ рдХрд┐ @wycats рдиреЗ рдмрддрд╛рдпрд╛, рдореВрд▓ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдорд╛рдиреНрдп рд╣реИред
рд╡реИрдз рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдФрд░ рдореИрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреЗ рдЗрд░рд╛рджреЗ рд╕реЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реВрдВрдЧрд╛ рдЬреЛ рд╕рднреА рдЗрдЪреНрдЫреБрдХ рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред

@wycats

рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдкреЗрдХреНрд╖рд┐рдд рд╢рдмреНрджрд╛рд░реНрде, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╣реИрдВ:

  • рдпрджрд┐ package.json рдкрд┐рдЫрд▓реА рдмрд╛рд░ yarn.lock рдмрджрд▓реЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, рддреЛ yarn.lock рд╕рддреНрдп рдХрд╛ рд╕реНрд░реЛрдд рд╣реИ рдФрд░ рдЗрд╕реЗ рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдпрджрд┐ package.json , рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреЗ рдмрд╛рдж рд╕реЗ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ yarn.lock рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЕрджреНрдпрддрди yarn.lock рдпрд╣ рдЗрддрдирд╛ рд╕рдВрддреБрд╖реНрдЯ package.json рдФрд░ рдЕрджреНрдпрддрди node_modules ред
  • рдпрджрд┐ yarn update рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╣рд▓ рдХрд░реЗрдВ рдФрд░ package.json рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣рд░ рдЪреАрдЬ рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдХрд┐рд╕реА рдорд╢реАрди рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдкрд╣рд▓реА рдмрд╛рд░ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ , рдпрджрд┐ yarn.lock рдХреЛ рдЪреЗрдХ рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╛рд░реНрди рдХреЛ рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдирд╛ тАЛтАЛрдЪрд╛рд╣рд┐рдП, рди рдХрд┐ yarn.lock рдЕрдкрдбреЗрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛, рдФрд░ рдХреВрджрдирд╛ рд╕реАрдзреЗ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдоред

рдпреЗ рд╡реЗ рд╢рдмреНрджрд╛рд░реНрде рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╣рдо рдЕрдиреБрд╕рд░рдг рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ #364 рдореЗрдВ рдЬреЛрдбрд╝рд╛ рд╣реИред

@bestander рдЖрдк рдкреАрдЖрд░ (#364) рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдереЗ рдЬрд┐рд╕рдиреЗ рдЗрди рд╣реЗрд░рд┐рд╕реНрдЯрд┐рдХреНрд╕ рдХреЛ рдЬрдЧрд╣ рдореЗрдВ рд░рдЦрд╛ред рдЖрдк рдХреМрди рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдпрд╣ рдореБрджреНрджрд╛ рдмрд╣реБрдд рд╡реНрдпрд╛рдкрдХ рд╣реИ рдФрд░ рд╣рдо рдкрд╣рд▓реЗ рд╣реА рд╕рд╣рдордд рд╣реЛ рдЪреБрдХреЗ рд╣реИрдВ рдХрд┐ --pure-lockfile рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдФрд░ рд╣рдо @wycats рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЕрдиреБрдорд╛рдиреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВрдЧреЗред рдпрджрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреБрд▓рд╛ рд░рдЦрдирд╛ рд╣реИ рддреЛ рд╢реАрд░реНрд╖рдХ рдХреЛ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рд╡рд░реНрддрдорд╛рди рдореБрджреНрджреЗ рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

@kittens рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ, рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджреВрдВрдЧрд╛ред
рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬрдм package.json рдирд╣реАрдВ рдмрджрд▓рд╛, рддреЛ рдореБрдЭреЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдмрджрд▓рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рдирдпрд╛ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП

рдХреНрдпрд╛ рд╣рдо рдПрдХ рдирдП рдореБрджреНрджреЗ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ? рдпрд╣рд╛рдВ рдпрд╣ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдХреЗрд╡рд▓ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ

рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ, @thejameskyle , рдореИрдВ рдЖрдЬ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛

рдирдпрд╛ рдХреЗрдВрджреНрд░рд┐рдд рдореБрджреНрджрд╛ рдмрдирд╛рдпрд╛ https://github.com/yarnpkg/yarn/issues/1576

yarn install рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдпрджрд┐ package.json рдореЗрдВ рдкреИрдХреЗрдЬ рдпрд╛рд░реНрди рдореЗрдВ рдирд╣реАрдВ рд╣реИред рд▓реЙрдХ, рдпрд╛рдиреАред рд╡рд┐рдлрд▓ рдЕрдЧрд░ рдХреЛрдИ рдкреИрдХреЗрдЬ рд▓реЙрдХ рдирд╣реАрдВ рд╣реИ

рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдЬреЛрдбрд╝рдирд╛ рдЬреЛ рдЙрдкрд░реЛрдХреНрдд рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдореЗрд░реЗ рд▓рд┐рдП рдЕрд╕реНрдкрд╖реНрдЯ рдерд╛:

рдЯреАрдбреАрдЖрд░; package.json рдореЗрдВ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдкреИрдХреЗрдЬ рдХреЛ рдЙрд╕рдХреЗ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд package.json рд╕реЗрдорд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреБрдЫ рд╢рдмреНрджреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ yarn.lock рдХреЛ package.json рд╣реИрд╢ рдкрд░ рдХреБрдВрдЬреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ yarn.lock рдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рдПрдЧрд╛ (рдЕрджреНрдпрддрди / рдХреИрд╢ рдЕрдорд╛рдиреНрдп ) рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ package.json , рдЬреЛ рдПрдХ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рд╡рд░реНрддрди (рдпрд╛рдиреА, "description" рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди) рдХреЗ рдмрд╛рдж рд╕реЗ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдЧрд╛, рдЙрд╕ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ yarn.lock рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЙрд╕реА рдореМрдЬреВрджрд╛ package.json рд╕реЗрд╡рд░ рдХреЗ рднреАрддрд░ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдгред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВрдиреЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдХреА yarn.lock рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреЗрд╡рд▓ рддрднреА рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИ рдЬрдм рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд package.json рд╕реЗрд╡рд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рднрд▓реЗ рд╣реА рдирдпрд╛ рд╕реЗрд╡рд░ рдореМрдЬреВрджрд╛ yarn.lock рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛ, рдФрд░ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдиреНрдпрдерд╛ рд╕рдВрд╕реНрдХрд░рдг рдЕрджреНрдпрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА)ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,

  • рдХрд╣реЗрдВ yarn add lodash@^4.17.1 рдЗрдВрд╕реНрдЯреЙрд▓ [email protected]
  • рдмрд╛рдж рдореЗрдВ, [email protected] рдЙрдкрд▓рдмреНрдз рд╣реИред
  • рдпрд╛рд░реНрди [email protected] рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛
  • рдЬрдм рддрдХ/рдЬрдм рддрдХ рд▓реЙрд╢ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдг package.json рдореЗрдВ рдмрджрд▓ рдирд╣реАрдВ рдЬрд╛рддрд╛ (рдпрд╛ рдпрд╛рд░реНрди рдРрдб/рдЕрдкрдЧреНрд░реЗрдб/рдирд┐рдХрд╛рд▓реЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд▓реЙрд╢ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред

рдмреНрд░реЗрдбрдХреНрд░рдВрдм #1576

рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ рдЕрдЧрд░ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рдЫреЛрдЯреЗ рд▓реЗрдЦреЛрдВ рдХреЗ рд╕рд╛рде рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ рдЬреЛ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред
рдХреЛрд░ рдЯреАрдо рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╡реНрдпрд╕реНрдд рд╣реИ рдФрд░ рдпрджрд┐ рд╕рдореБрджрд╛рдп рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рддреЛ рдЗрд╕рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдФрд░ рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ

@CrabDude рдЖрдкрдХреА рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ - рдЖрдкрдХреЗ рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ - рдХрд┐ рдХреЗрд╡рд▓ lodash рдФрд░ рдЗрд╕рдХреА рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЗ рд▓реЙрдХ рд╕рдВрд╕реНрдХрд░рдг yarn.lock рдореЗрдВ рдЕрдкрдбреЗрдЯ рд╣реЛрдВрдЧреЗ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдирдпрд╛ рд▓реЙрдХ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдпрд╣ рдЙрд╕реА рд╕рдордп рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛?

рдпрд╛ рджреВрд╕рд░рд╛ рдЙрджрд╛рд╣рд░рдг: рдорд╛рди рд▓реЗрдВ рдХрд┐ yarn.lock рдЧрдВрднреАрд░ рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдирд╛ рд╣реИ, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ package.json рдореЗрдВ рдПрдХ рдирдИ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП yarn add рдЪрд▓рд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЕрдиреНрдп рд╕рднреА рдкреБрд░рд╛рдиреЗ рдкреИрдХреЗрдЬ рдЕрдм yarn.lock рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдпрд╛ рд╡реЗ рд╡рд╣реА рд░рд╣реЗрдВрдЧреЗ?

@рд░рд╛рд░реНрдХрд┐рдиреНрд╕

рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ - рдЖрдкрдХреЗ рдЙрдкрд░реЛрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ - рдХрд┐ рдХреЗрд╡рд▓ рд▓реЙрд╢ рдФрд░ рдЗрд╕рдХреА рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЗ рд▓реЙрдХ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛рд░реНрди.рд▓реЙрдХ рдореЗрдВ рдЕрдкрдбреЗрдЯ рд╣реЛрдВрдЧреЗ?

рд╣рд╛рдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЗрд╕реЗ рдмрд░рдХрд░рд╛рд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИред

рдХреНрдпрд╛ рдЕрдиреНрдп рд╕рднреА рдкреБрд░рд╛рдиреЗ рдкреИрдХреЗрдЬ рдЕрдм рдпрд╛рд░реНрди.рд▓реЙрдХ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдпрд╛ рд╡реЗ рд╡рд╣реА рд░рд╣реЗрдВрдЧреЗ?

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧреИрд░- lodash рдирд┐рд░реНрднрд░рддрд╛ рдкреЗрдбрд╝/рдкреИрдХреЗрдЬ рдХреА рд▓реЙрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдВ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдВрдЧреА; рдХреЗрд╡рд▓ lodash рдХреА рдЙрдк-рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╣реЛрдВрдЧреАред

рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рдВрдЫрдиреАрдп рдФрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рджреЛрдиреЛрдВ рд╣реИред

рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛ : рдореБрдЭреЗ рд╕реВрдд рдкрд╕рдВрдж рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЭреЗ рдЕрдВрдд рддрдХ рдирд┐рд░рд╛рд╢ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реА рдХрдВрдкрдиреА рдореЗрдВ, yarn install рдЕрд▓рдЧ-рдЕрд▓рдЧ рдорд╢реАрдиреЛрдВ (рдкреНрд░рддреНрдпреЗрдХ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ) рдореЗрдВ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рд▓рдЧрд╛рддрд╛рд░ рдмрджрд▓рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрднреА рднреА package.json рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИред рдФрд░ рдЬрдм рд╣рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо yarn add рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕реАрдЖрдИ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдмрд┐рд▓реНрдб рдХреЗ рдмрд╛рдж рдЧрд┐рдЯ рд╕реНрдерд┐рддрд┐ рд╕рд╛рдл рд╣реИ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╣рдо рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЪреЗрдХ рдЬреИрд╕реА рдЪреАрдЬреЗрдВ рдХрд░рдирд╛ рдирд╣реАрдВ рднреВрд▓рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдЕрдХреНрд╕рд░ рдмрджрд▓рддрд╛ рд╣реИред

рдпрд╛рд░реНрди рд╕реЗ рдореЗрд░реА рдЕрдкреЗрдХреНрд╖рд╛ рдпрд╣ рдереА рдХрд┐ рдпрд╣ рд╕рднреА рдорд╢реАрдиреЛрдВ рдореЗрдВ _by default_ рд╕рдорд╛рди рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдЧрд╛ред рдЕрддрд┐рд░рд┐рдХреНрдд рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде рдирд╣реАрдВред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рд╢реБрджреНрдзрддрд╛ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдЧрд╛ред рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдЪрд╛рд╣рд┐рдП рддреЛ рдореИрдВ рд╕реАрдзреЗ npm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЬрдм рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдмрджрд▓рддреА рд╣реИ, рддреЛ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдХреБрдЫ рдиреЗ рдЗрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдирд╣реАрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреНрд░рд╢рди

  • рдХреНрдпрд╛ рдпрд╣ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рд╕рд╛рдордЧреНрд░реА рд╣рдореЗрд╢рд╛ рд╕рдорд╛рди рд╣реЛрдЧреА рдЬрдм рдЗрд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛? рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рднреНрд░рдо рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ - рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╛рд░реНрди рджрд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
  • рдЬрдм package.json рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рд▓реЙрдХрдлрд╝рд╛рдЗрд▓ рдкреБрди: рдЙрддреНрдкрдиреНрди рд╣реЛ рдЬрд╛рддреА рд╣реИред рдХреНрдпрд╛ рдЙрд╕ рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреАрдВ? рдпрд╛рд░реНрди рдХреЛ рдПрдХ рдбреЗрд▓реНрдЯрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдореМрдЬреВрджрд╛ рддрд╛рд▓реЛрдВ рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░реНрд╡реЛрддреНрддрдо рд░реВрдк рд╕реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдирд╣реАрдВ рд╣реИ)ред
  • рдХреНрдпреЛрдВ рдХрд░рддрд╛ рд╣реИ yarn add рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ package.json рдПрдХ рд╕рд╛рде ^ ? рдлрд┐рд░ рд╕реЗ, рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рдХрд┐ рдпрд╛рд░реНрди рдХрд╛ рд╡рд╛рджрд╛ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдерд╛ред

рд╕рдВрдмрдВрдзрд┐рдд рдХреАрдбрд╝реЗ

  • рдЬрдм node_modules рдореЗрдВ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреИрдХреЗрдЬ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ yarn install рдЗрд╕реЗ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдлрд▓рддрд╛ рдХрд╣рддрд╛ рд╣реИред рдЬрдм рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред npm рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЧрд╣рди рд╣реИред
  • рдпрджрд┐ рдЖрдк рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдХреНрд▓реАрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдкреБрди: рдЙрддреНрдкрдиреНрди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреЛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИ - рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд▓реЙрдХрдлрд╛рдЗрд▓ рдореЗрдВ рдареАрдХ рд╡рд╣реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдмрд┐рд▓реНрдХреБрд▓ рдХреБрдЫ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛)
  • рдпрджрд┐ рдЖрдк рдкреИрдХреЗрдЬ рдХреЛ рдЫреБрдП рдмрд┐рдирд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдпрд╛ рдХреНрд▓реАрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХреЗ рдмрд╛рдж node_modules , рддреЛ рдпрд╛рд░реНрди рдЗрд╕реЗ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рддрд░рд╣ рд╣реИ рдЬреЛ рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЕрд▓рдЧ рдХреЛрдб рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдпрд╛рд░реНрди рддреЗрдЬреА рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдореВрд▓ (рдЗрди) рдпреЛрдЧреНрдпрддрд╛ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛрддрд╛ рд╣реИ: рдлреНрд░реАрдЬрд┐рдВрдЧ рд╕рдВрд╕реНрдХрд░рдг, рд▓рдЧрд╛рддрд╛рд░, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗред рдореБрдЭреЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рдЗрд╕реЗ рдХрдИ рд╡рд░реНрд╖реЛрдВ рддрдХ рдПрдХ рдмрдбрд╝реА рдЯреАрдо рдореЗрдВ рдмрдирд╛рдП рд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИред рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕реНрдорд╛рд░реНрдЯ рдФрд░ рдЬрд╛рдирдмреВрдЭрдХрд░ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрдм рд╡реЗ рдмрджрд▓рд╛рд╡ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреВрдЫреЗрдВрдЧреЗред

рд▓рдЧрд╛рддрд╛рд░ рдмрджрд▓рддреА рд▓реЙрдХрдлрд╛рдЗрд▓ рдЖрддреНрдорд╡рд┐рд╢реНрд╡рд╛рд╕ рдкреИрджрд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛрддреА рд╣реИред рдореИрдВ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреВрдВрдЧрд╛ рдХрд┐ package.json рд▓реЙрдХрдлрд╛рдЗрд▓ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ, рдХрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ, рдХрд┐ рдПрдХ рд▓реЙрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдЕрдм рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдЖрджрд┐, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдореЗрд░реЗ рдмрд┐рд▓реНрдб рдХреЛ рдЙрдирдХреЗ рдЯреНрд░реИрдХ рдореЗрдВ рдореГрдд рдХрд░ рджреЗрддрд╛ рд╣реИ рдФрд░ рдореИрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдореЗрд░реА рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдмреВрдЭрдХрд░ рдирд┐рд░реНрдгрдп рд▓реЗрдВред

@jspiro , рдЗрд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдпрд╣рд╛рдВ рдХреБрдЫ рдореБрджреНрджреЗ рдЙрдард╛рдП рдЧрдП рд╣реИрдВред
рдкреНрд░рддреНрдпреЗрдХ рдЕрдВрдХ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рдЦреЛрд▓рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдЕрдиреНрдпрдерд╛ рд╡реЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЦреЛ рдЬрд╛рдПрдВрдЧреЗред

рдХреНрдпрд╛ рдЖрдк рдпрд╛рд░реНрди рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╣реИрдВ?
0.18-0.19 рддрдХ рд╣рдо рдорд╢реАрдиреЛрдВ рдХреЗ рдмреАрдЪ рдпрд╛рд░реНрди.рд▓реЙрдХ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрд╢реЛрдзрди рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВред

рдкреНрд░рд╢рди:

рдХреНрдпрд╛ рдпрд╣ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рд▓реЙрдХрдлрд╛рдЗрд▓ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рд╕рд╛рдордЧреНрд░реА рд╣рдореЗрд╢рд╛ рд╕рдорд╛рди рд╣реЛрдЧреА рдЬрдм рдЗрд╕реЗ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛? рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рднреНрд░рдо рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ - рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╛рд░реНрди рджрд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рджреЗрд╡ рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдПрдХ рд╣реА рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдЬреЛ рдмрд┐рдВрдЧ рд╕реНрдерд╛рдкрд┐рдд рд╣реИрдВ, рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдореЗрдВ рд╕рдорд╛рди рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рд╕рдорд╛рди рдкреИрдХреЗрдЬ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред

рдЬрдм package.json рдмрджрд▓рддрд╛ рд╣реИ, рддреЛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдкреБрди: рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЙрд╕ рд╡рд┐рд╢реЗрд╖ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреАрдВ? рдпрд╛рд░реНрди рдХреЛ рдПрдХ рдбреЗрд▓реНрдЯрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдореМрдЬреВрджрд╛ рддрд╛рд▓реЛрдВ рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░реНрд╡реЛрддреНрддрдо рд░реВрдк рд╕реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдпрджрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдирд╣реАрдВ рд╣реИ)ред

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдпрд╛рд░реНрди рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рдореЗрдВ ^ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреНрдпреЛрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИ? рдлрд┐рд░ рд╕реЗ, рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рдХрд┐ рдпрд╛рд░реНрди рдХрд╛ рд╡рд╛рджрд╛ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реНрдерд┐рд░ рдХрд░рдирд╛ рдерд╛ред

рдпрд╣ npm рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдЖрдк рд╕рдЯреАрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП yarn add [email protected] рдпрд╛ yarn add is-array --exact ред
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рд╣рдореЗрдВ рд╕рдЯреАрдХ рд╕рдВрд╕реНрдХрд░рдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдЖрд░рдПрдлрд╕реА рдореЗрдВ рдПрдХ рдЪрд░реНрдЪрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред

рдЬрдм рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдореЗрдВ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкреИрдХреЗрдЬ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╛рд░реНрди рдЗрдВрд╕реНрдЯреЙрд▓ рдЗрд╕реЗ рдмрд┐рдирд╛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рд╕рдлрд▓рддрд╛ рдХрд╣рддрд╛ рд╣реИред рдЬрдм рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ npm рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЧрд╣рди рд╣реИред

рдпрд╛рд░реНрди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдЙрдерд▓рд╛ рдЪреЗрдХ рдЪрд▓рд╛рддрд╛ рд╣реИред
рдЧрд╣рд░реА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдзреАрдорд╛ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдЕрдВрджрд╛рдЬрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХреИрд╕реЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдЧрд╣рд░реА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдкрдХреЛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реНрдкрд░реНрд╢ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмрд╣реБрдд рдзреАрдореА рдЧрддрд┐ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдЕрдиреБрднрд╡ рд╣реЛрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдЙрдерд▓реА рдЬрд╛рдБрдЪ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рд╕реНрдерд╛рдкрдирд╛ рд╕реЗ рдкрд╣рд▓реЗ node_modules/.yarn-integrity рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛ рджреЗрдВред рдпрд╣ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирд╣реАрдВ рд╣реИ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдЕрдзреАрди рд╣реИред
yarn install --force рдЪрд▓рд╛рдиреЗ рдХрд╛ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддрд░реАрдХрд╛ рд╣реИ, рдпрд╣ рдкреВрд░реНрдг рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЛ рдордЬрдмреВрд░ рдХрд░реЗрдЧрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╛рд░реНрди.рд▓реЙрдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рджреЗрдЧрд╛ред

рдпрджрд┐ рдЖрдк рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдХреНрд▓реАрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдкреБрди: рдЙрддреНрдкрдиреНрди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреЛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХреЗ рд╡рд┐рдкрд░реАрдд рд╣реИ - рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд▓реЙрдХрдлрд╛рдЗрд▓ рдореЗрдВ рдареАрдХ рд╡рд╣реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдмрд┐рд▓реНрдХреБрд▓ рдХреБрдЫ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛)

рдХреБрдЫ рд╕рдордп рд╕реЗ рдпрд╣ рдирд╣реАрдВ рджреЗрдЦрд╛ред
рдПрдХ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВ рдФрд░ рдЕрдЧрд░ рдЗрд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рд╕реАрд╕реА рдХрд░реЗрдВред

рдпрджрд┐ рдЖрдк рдХреНрд▓реАрди рдЗрдВрд╕реНрдЯрд╛рд▓ рдХреЗ рдмрд╛рдж рдкреИрдХреЗрдЬ рдпрд╛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЛ рдЫреБрдП рдмрд┐рдирд╛ рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╛рд░реНрди рдЗрд╕реЗ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреА рддрд░рд╣ рд╣реИ рдЬреЛ рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рддреЛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рдЕрд▓рдЧ рдХреЛрдб рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред

рдХреБрдЫ рд╕рдордп рдмрд╛рдж рд╕рдВрдХреНрд░рдордгреАрдп рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рд╣реЛрдВрдЧреЗред
рдЙрд╕рдХреЗ рдХрд╛рд░рдг рдЙрддреНрдерд╛рдкрди рддрд░реНрдХ рдХреЗ рдХрд╛рд░рдг рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рд╕рдВрд░рдЪрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдмрджрд▓ рд╕рдХрддреА рд╣реИред
рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
import рдХрдорд╛рдВрдб рдЖ рд░рд╣рд╛ рд╣реИ https://github.com/yarnpkg/yarn/pull/2580ред
рдпрд╣ рдЖрдкрдХреЛ рдореМрдЬреВрджрд╛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рд╕реЗ рд▓реЙрдХрдлрд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

@jspiro , рдпрд╛рд░реНрди рдПрдХ рдпреБрд╡рд╛ рд╕рдореБрджрд╛рдп рд╕рдВрдЪрд╛рд▓рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИ, рдЗрд╕реЗ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ

рд╡рд╛рдВрдЫрд┐рдд рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдореМрдХрд╛?

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдо рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░ рд░рд╣реЗ рд╣реИрдВ https://github.com/yarnpkg/yarn/issues/3490 , рдХрднреА-рдХрднреА yarn install рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╣рдо рдЗрд╕реЗ рдареАрдХ рдХрд░ рджреЗрдВрдЧреЗред
рдпрд╣реА рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВ, рдЕрдиреНрдпрдерд╛ рдпрд╛рд░реНрди.рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗрд╡рд▓ рддрднреА рдмрджрд▓рдиреА рдЪрд╛рд╣рд┐рдП рдЬрдм рдЖрдк рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ package.json рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддреЗ рд╣реИрдВред

рдЖрдк .yarnrc рдореЗрдВ --pure-lockfile/--frozen-lockfile рдХреЛ true рдкрд░ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ install рдХрдорд╛рдВрдб рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПрдЧрд╛:

--install.pure-lockfile true

рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рд╢реБрджреНрдз-рд▓реЙрдХрдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХрд╛ рдЧрд▓рдд рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЕрд╡рд╛рдВрдЫрд┐рдд рдпрд╛рд░реНрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИред рдкрд░рд┐рд╡рд░реНрддрди рд▓реЙрдХ рдХрд░реЗрдВ

рдХреНрдпрд╛ рдЖрдк рд░реЗрдкреНрд░реЛ рдЪрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рд╣рдо рдЗрд╕реЗ рд╕реБрд▓рдЭрд╛ рд▓реЗрдВрдЧреЗ

рдореИрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬрдм рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рдиреЗ рдХрд╛рдЯ рд▓рд┐рдпрд╛ рдерд╛ package.json рдФрд░ yarn.lock рд╡рдЬрд╣ рд╕реЗ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдЧрд▓рддреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░ рд╕рд┐рдВрдХ рдХреЗ рдорд┐рд▓ рдЧрдпрд╛ npm install --save рдХреЗ рдмрдЬрд╛рдп yarn add ред

рдореИрдВ рд╕рд╣рдордд рдирд╣реАрдВ рдХрд┐ рд╣рд╛рд▓рд╛рдВрдХрд┐ pure-lockfile рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рддрд░реНрдХ рд╣реИ рдХрд┐ рдмрдЬрд╛рдп рдЪрд╛рд╣рд┐рдП frozen-lockfile рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП yarn install ред

рдЪреВрдВрдХрд┐ frozen-lockfile рдПрдХ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рджреЗрддрд╛ рд╣реИ рдпрджрд┐ yarn.lock рдФрд░ package.json рд╕рд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИрдВред frozen-lockfile рдПрдХ рдмрд┐рд▓реНрдб рдорд╢реАрди (рдпрд╛рдиреА рдЬреЗрдирдХрд┐рдВрд╕) рдкрд░ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрди рдмрд┐рд▓реНрдб рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдЧрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВред

рдлрд┐рд░ рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡рд╣ package.json / рдпрд╛рд░реНрди.рд▓реЙрдХ рдореЗрдВ рдХреМрди рд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рдЬреЛрдбрд╝рдирд╛ рд╣реИред

yarn install рдХрд╛ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрднреА рддрдХ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рдмрдВрдж рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╕рдмрд╕реЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд▓рд╛рдПрдЧрд╛, рдФрд░ рдПрдХ рдЕрджреНрдпрддрди рд╕рдВрд╕реНрдХрд░рдг yarn.lock рд▓рд┐рдЦреЗрдЧрд╛, рдЬреЛ рдХрднреА рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕рд▓рд┐рдП рдПрдХ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдЯрдХреНрдХрд░ рдХреЗ рдХрд╛рд░рдг рднрд╡рд┐рд╖реНрдп рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╡рд┐рд░рд╛рдо рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЙрдХрдлрд╛рдЗрд▓ рд╣реИред

рд╕рд╛рд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

рдХреА рддрд░рд╣ рдХреЗрд╡рд▓ рдЖрджреЗрд╢ add , remove , рдФрд░ upgrade рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдЪрд╛рд╣рд┐рдП yarn.lock ред

install рдХреЛ рдмрд╕ рдЗрддрдирд╛ рд╣реА рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрд░реНрдерд╛рддреН рдпрд╛ рддреЛ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЙрдирдХреЗ рд▓реЙрдХ рдХрд┐рдП рдЧрдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдпрд╛ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдВ рдпрджрд┐ рдпрд╣ package.json рдФрд░ yarn.lock рдмреАрдЪ рдПрдХ рдмреЗрдореЗрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИред (рдПрдХрдорд╛рддреНрд░ рдЕрдкрд╡рд╛рдж рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдХреЛрдИ yarn.lock рд╣реИред рддрдм, рдФрд░ рдХреЗрд╡рд▓ рддрднреА, рдпрд╣ рдПрдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдЗрд╕реЗ рдХрднреА рднреА рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЫреВрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред)

рдлреНрд░реЛрдЬрди-рд▓реЙрдХрдлрд╛рдЗрд▓ рдЗрд╕рд▓рд┐рдП рдмрд┐рд▓реНрдб рдорд╢реАрди (рдпрд╛рдиреА рдЬреЗрдирдХрд┐рдВрд╕) рдкрд░ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмрд┐рд▓реНрдб рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕реАрдЖрдИ рдореЛрдб рдореЗрдВ рд╣реИрдВ рддреЛ рд╣рдо рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@BYK рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдпрд╣рд╛рдВ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдХреНрдпрд╛ рдореБрдЭреЗ рд╢рд╛рдпрдж рдПрдХ рдирдпрд╛ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдПрдХ рдирдпрд╛ рдЦреЛрд▓реЛ я╕П

рдореИрдВ @thejameskyle рд╕реЗ рд╕рд╣рдордд рдФрд░ @kittens рдХрд┐ yarn.lock рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ package.json рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл рдорд╛рдорд▓реЗ рдореЗрдВ: рдкреИрдХреЗрдЬ рдореЗрдВ рдХреБрдЫ рднреА рдмрджрд▓рдиреЗ рдкрд░ рдЖрдкрдХреЛ рдкреВрд░реЗ рдпрд╛рд░реНрди рдХреЛ рдЕрдорд╛рдиреНрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЬреЗрд╕рдиред рдЖрдк рдХреЗрд╡рд▓ рдЙрдиреНрд╣реАрдВ рдкреИрдХреЗрдЬреЛрдВ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЕрдорд╛рдиреНрдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ package.json рдХреЗ рдЕрдВрджрд░ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред Fe рдпрджрд┐ рдЖрдкрдиреЗ рдХреЗрд╡рд▓ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рдЕрдиреНрдп рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде)ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

catkins picture catkins  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sanex3339 picture sanex3339  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

danez picture danez  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

davidmaxwaterman picture davidmaxwaterman  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

chiedo picture chiedo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ