рдЬрдм рдЪрд▓ yarn install --production
рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ forever
ред рдпрд╣ nodemon
devDependencies
рд╣реЛрдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред
рддреНрд░реБрдЯрд┐ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛:
> forever app.js
module.js:457
throw err;
^
Error: Cannot find module 'minimatch'
рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдпрд╛ рд╣реИ:
https://github.com/donovan-graham/yarn-example-app
# Steps to reproduce error
git clone https://github.com/donovan-graham/yarn-example-app.git
cd yarn-example-app
yarn install --production
npm start
# temporary step to bypass error
rm -rf node_modules
yarn remove nodemon
yarn install --production
npm start
@ рдбреИрдирд┐рдпрд▓ резрел рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рд╡рдЬрд╣ рдпрд╣ рд╣реИ рдХрд┐ рдиреНрдпреВрдбреЗрдореЛрди рдХрд╛ рдиреНрдпреВрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдирд╡реАрдирддрдо рд╣реИред
рд▓рд┐рдВрдХрд░ рдлрдВрдХреНрд╢рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдбрд┐рдкреНрд╕ рдФрд░ рджреЗрд╡ рдбрд┐рдкреНрд╕ рджреЛрдиреЛрдВ рдореЗрдВ рд▓реЗрддрд╛ рд╣реИред рддрд░реНрдХ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рд░реЛрдХрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рд╛рдорд╛рдиреНрдп рдпрд╛рд░реНрди рдкрд░ рднреА рдЙрддреНрдкрд╛рджрди рддрд░реНрдХ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрде рдореЗрдВ рдХреЗрд╡рд▓ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдЗрд╕рдХреА рднреА рдЬрд╛рдБрдЪ рдХрд░рдиреА рд╣реИред
рдЬрдм yarn install --production
рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ рдлрд┐рд░ webpack
( yarn install
рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
> NODE_ENV=production webpack -p --config webpack/production.config.js
module.js:457
throw err;
^
Error: Cannot find module 'graceful-fs'
at Function.Module._resolveFilename (module.js:455:15)
at Function.Module._load (module.js:403:25)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
рдФрд░ рдЕрдЧрд░ рдореБрдЭреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдпрд╛рдж рд╣реИ, рддреЛ рдкрд┐рдЫрд▓реЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдиреЗ рдПрдХ рдФрд░ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджрд┐рдЦрд╛рдИрдВ (рди рдХреЗрд╡рд▓ graceful-fs
)
рдореИрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реЛ рд░рд╣рд╛ рд╣реВрдБ ... yarn install
рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди --production
рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдореБрдЭреЗ рдпрд╣ рдорд┐рд▓рддрд╛ рд╣реИ:
> yarn install --production
yarn install v0.15.1
error npm-shrinkwrap.json found. This will not be updated or respected. See [TODO] for more information.
[1/4] Resolving packages...
[2/4] Fetching packages...
warning [email protected]: The engine "rhino" appears to be invalid.
warning [email protected]: The platform "win32" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
warning [email protected]: The engine "rhino" appears to be invalid.
warning [email protected]: The engine "rhino" appears to be invalid.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
[1/1] таР node-sass: at Module.require (module.js:367:17)
[-/1] таР waiting...
[-/1] таР waiting...
[-/1] таР waiting...
error C:\vagrant\ebroker-quoteengine\node_modules\node-sass: Command failed.
Exit code: 1
Command: C:\WINDOWS\system32\cmd.exe
Arguments: /d /s /c node scripts/install.js
Directory: C:\vagrant\ebroker-quoteengine\node_modules\node-sass
Output:
module.js:341
throw err;
^
Error: Cannot find module 'tough-cookie'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (C:\vagrant\ebroker-quoteengine\node_modules\node-sass\node_modules\request\lib\cookies.js:3:13)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at SpawnError (C:\Users\nathan.white\AppData\Roaming\npm\node_modules\yarnpkg\lib\errors.js:18:1)
at ChildProcess.<anonymous> (C:\Users\nathan.white\AppData\Roaming\npm\node_modules\yarnpkg\lib\util\child.js:107:15)
at emitTwo (events.js:100:13)
at ChildProcess.emit (events.js:185:7)
at maybeClose (internal/child_process.js:827:16)
at Socket.<anonymous> (internal/child_process.js:319:11)
at emitOne (events.js:90:13)
at Socket.emit (events.js:182:7)
at Pipe._onclose (net.js:471:12)
рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
npm init --yes
yarn add --dev nodemon
yarn add gulp
rm -rf node_modules
yarn install --production
рдпрд╣ is-glob
рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдЧрд╛ рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ is-extglob
:
> yarn why is-glob
yarn why v0.16.0
# ...
info Reasons this module exists
- "nodemon#chokidar" depends on it
- "gulp#liftoff#findup-sync" depends on it
> yarn why is-extglob
yarn why v0.16.0
# ...
info This module exists because "nodemon#chokidar#is-glob" depends on it.
рд▓рдЧрддрд╛ рд╣реИ "рднреВрд▓" gulp#liftoff
рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд╣реИ рдЬрдмрдХрд┐ ..?
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЫреЛрдЯрд╛ рдЙрджрд╛рд╣рд░рдг:
npm init --yes
yarn add --dev [email protected]
yarn add [email protected]
rm -rf node_modules
yarn --prod
node -e "require('is-glob')"
рдпрд╣ рднреА рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ рдХрд┐ devDependencies
рдЪрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ yarn --prod
рд╕рд╣реА рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдЯреНрд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдореЗрд░реА рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдЯреАрдо рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рднрд╛рдЧ рдЧрдИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬ prr
рдЬреЛ less
рдФрд░ pouchdb
рджреЛрдиреЛрдВ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред рдХрдИ рдЕрдиреНрдп рдкреИрдХреЗрдЬ рднреА --production
рдмрд┐рд▓реНрдб рд╕реЗ рдЧрд╛рдпрдм рдереЗ рд▓реЗрдХрд┐рди prr
рд╣рдорд╛рд░реЗ рдЙрддреНрдкрд╛рдж рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рдереЗред рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдПрдХ рд╢реЛрд╕реНрдЯреЙрдкрд░ рд░рд╣реА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЕрдЧрд░ рд╣рдо рджреЗрд╡ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдорд╛рд░реЗ рдЗрдВрд╕реНрдЯреЙрд▓рд░ рдХрд╛ рдЖрдХрд╛рд░ рдХрд╛рдлреА рдмрдврд╝ рдЬрд╛рдПрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рдПрдирдкреАрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реМрдЯ рдЖрдП рд╣реИрдВред
FWIW: рдореИрдВ рдкреИрдХреЗрдЬ рдореЗрдВ devDependencies
рдЕрдиреБрднрд╛рдЧ рд╣рдЯрд╛рдХрд░ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЙрддреНрдкрд╛рджрди рдореЗрдВ yarn
рдЪрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗред
рдЬреИрд╕рд╛ рдХрд┐ @gihrig рдиреЗ рдХрд╣рд╛ рдХрд┐ npm prune --production
рдЪрд▓рдиреЗ рд╕реЗ рдЙрди рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рджреВрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИрдВред
рдЬреИрд╕рд╛ рдХрд┐ @gihrig рдиреЗ рдХрд╣рд╛ рдХрд┐
Npm рдкрд░ рдпрд╛рд░реНрди рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдПрдХ рдирд┐рд░реНрдзрд╛рд░рдХ node_modules
dir рд╣реИ рдЕрд░реНрдерд╛рдд рджреЗрд╡, CI рдФрд░ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛ рдЙрддреНрдкрд╛рджрдиред рдХреНрдпрд╛ npm prune --production
рдЪрд▓рдиреЗ рд╕реЗ рд╡рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрддрд╛ рд╣реИ?
рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди рдХреЗрд╡рд▓ рдЙрддреНрдкрд╛рджрди рдореЗрдВ devDependencies
рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реИред рдбрд┐рд╕реНрдХ рд╕рд╕реНрддрд╛ рд╣реИ (рд╡рд┐рд╢реЗрд╖рдХрд░ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдкрд░) рдФрд░ рдбрд┐рд╕реНрдХ рд╕реНрдкреЗрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдирд┐рдпрддрд╛рддреНрдордХ рд╕реНрдерд╛рдкрд┐рдд рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рддреЛ рдореЗрд░рд╛ "рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб" рд╕рд┐рд░реНрдл yarn --production
рддрд░рд╣ рдХрд╛рд░реНрдп рдХрд░рдирд╛ рд╣реИ
@tanx npm prune --production
рд╕рд┐рд░реНрдл рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рджреВрд░ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╣рдореЗрд╢рд╛ рд╕рдорд╛рди рдореЙрдбреНрдпреВрд▓ рд╣рдЯрд╛ рджрд┐рдП рдЧрдП рдереЗред рджреВрд╕рд░реА рдУрд░, рд╣рд╛рдБ рдбрд┐рд╕реНрдХ рд╕реНрдерд╛рди рд╕рд╕реНрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдЕрднрд┐рдирдп рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЧрд░ yarn --production
рдмрд╛рд╣рд░ рдирд╣реАрдВ рдирд┐рдХрд▓рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ :)
@tanx npm prune --production рд╕рд┐рд░реНрдл рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдореЗрд░реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╣рдореЗрд╢рд╛ рд╕рдорд╛рди рдореЙрдбреНрдпреВрд▓ рд╣рдЯрд╛ рджрд┐рдП рдЧрдП рдереЗред
рдпрд╣ рдареАрдХ рдпрд╛рд░реНрди рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╡рд░реНрдгрд┐рдд "рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ" рдорд╛рдирд╕рд┐рдХрддрд╛ рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк npm рдХреЛ node_modules
рдпрд╛рд░реНрди рдХреА рдЕрдЦрдВрдбрддрд╛ рдЬрд╛рдБрдЪ рдХреЗ рдмрд┐рдирд╛ yarn.lock
рдлрд╝рд╛рдЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗ рд░рд╣реЗ рд╣реИрдВред
рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╡рд░реНрдХрдЖрд░реНрдореНрд╕ рдХреЛ рджреЗрд╡ рдмрдирд╛рдо рдкреНрд░реЛрдбрдХреНрд╢рди рдбрд┐рдкреНрд╕ рдХреЗ рд╕рдореНрдорд╛рди рдХреЗ рд▓рд┐рдП рдпрд╛рд░реНрди рдЕрдкрдбреЗрдЯ рджреНрд╡рд╛рд░рд╛ рдЬрд▓реНрдж рд╣реА рдореНрдпреВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдмреАрдЪ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рдПрдирдкреАрдПрдо рдкреНрд░реВрди" рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╣реИрдХ рдХреЗ рд╕рд╛рде рдХрд░рд╛рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реИред
рдКрдкрд░ рд╡рд░реНрдгрд┐рдд yarn why
рд╡рд╕реНрддреБ рдЕрд╕рдВрдмрдВрдзрд┐рдд рдЕрдлреЗрдХреНрдЯ рд╣реИред рдпрд╣ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП why
рдХреЛрдб рдХреИрд╕реЗ рдЦреЛрдЬ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рдХрд╛ рд╕рд┐рд░реНрдл рдПрдХ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рджрд┐рдЦрддрд╛ рд╣реИред
рдЧреНрд░рд╛рдлрд╝ рдХреЗ рдПрдХ рдмрд╛рд░ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж рджреГрд╢реНрдпрддрд╛ рдХреЛ рдлреИрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдкрд╛рд╕ рдЬреЛрдбрд╝реЗ рдмрд┐рдирд╛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рдХрд┐ рдХреНрдпрд╛ рджреГрд╢реНрдпрддрд╛ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдЪрд░рдг рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реЛрдЧрд╛ ..?
рд╡рд╣рд╛рдБ рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдмрдврд╝рдд рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╣реИ, рдпрд╣ рдареАрдХ рд╕реЗ рджреГрд╢реНрдпрддрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ:
рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ C рдХрд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ рдзреНрд╡рдЬ рджреЗрд╡ рдмрдирд╛рдо рдЙрддреНрдкрд╛рджреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рджреЗрд╡ рдореЗрдВ рдпрд╣ рдЧреИрд░-рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЛрдЧрд╛, рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рдпрд╣ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЛрдЧрд╛ред рдмрд╕ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЭрдВрдбреЗ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ (рдпрд╛ рд╣рдореЗрд╢рд╛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛) рд╕реЗ рдЕрдЬреАрдмрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдпрд╣ рдЕрднреА рднреА 0.17.2 in рдореЗрдВ рддрдп рдирд╣реАрдВ рд╣реИ
рд░реЗрдкреНрд░реЛ: https://gist.github.com/SimenB/2b179f3b6bca7373824e1273ea38aed3
yarn
node index.js # works
yarn --prod
node index.js # explodes
/ cc @jkrems
рдореЗрд░реЗ рд▓рд┐рдП реж.рез seem.реи рдореЗрдВ рднреА рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ (рд╣рд░реНрддреНрд╕рд┐рдо / рдЬреЛрдб # резрем реп)ред
рдореИрдВ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ @SimenB рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
@wyze рд╕рдорд╕реНрдпрд╛ рд╕реНрд╡рдпрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИ, рди рдХрд┐
rm -rf node_modules/ && yarn && npm prune --production && node index.js
рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
rm -rf node_modules/ && npm i && npm prune --production && node index.js
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╛рд░реНрди рдФрд░ рдПрдирдкреАрдПрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рд╕рдВрдпреЛрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИред
node_modules
npm i
рдФрд░ yarn
"_requiredBy"
npm prune
yarn install
ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рд▓реЙрдХрдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпрд╛ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
рдпрд╣рд╛рдБ рдПрдХ рд╣реА рдореБрджреНрджрд╛, рд╣рдо рдбреЙрдХрдЯрд░ рдкрд░ рдЙрддреНрдкрд╛рджрди рднрд╡рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рдереЗ рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд░рд╣реЗ рдереЗ рдХрд┐ yarn --production
рдкреИрдХреЗрдЬ mime
рднреА рдЧрд╛рдпрдм рдерд╛, рднрд▓реЗ рд╣реА рдореВрд▓ рдореЙрдбреНрдпреВрд▓ send
(рдПрдХреНрд╕рдкреНрд░реЗрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛) рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрдзрд┐рдХрддрдо рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдирд┐рд░реНрдорд╛рдг рд╣реЛрддрд╛ рд╣реИред
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдмрд╕ рдЕрдкрдиреА рдмрд┐рд▓реНрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ package.json рд╕реЗ рдбрд┐рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рд╕реЗрдХреНрд╢рди рдХреЛ рд╣рдЯрд╛ рд░рд╣рд╛ рд╣реВрдВред
$ jq 'del(.devDependencies)' package.json > tmp.json && mv tmp.json package.json
@ рдбрд╛рдИ-рдбреАрдПрдХреНрд╕ рд╕рд▓рд╛рд╣ рдХреЗ рдмрд╛рдж рдореИрдВрдиреЗ рдбреЙрдХрдЯрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╕реНрдЯрдо рдПрдВрдЯреНрд░реА рдкреЙрдЗрдВрдЯ рд▓рд┐рдЦрд╛ рд╣реИ:
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдЕрдкрдиреЗ Dockerfile рдореЗрдВ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рдЬреЛрдбрд╝рдХрд░ jq рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:
RUN apt-get update && \
apt-get install -y jq
рдлрд┐рд░ рдЗрд╕ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд╣реАрдВ рдФрд░ рдЬреЛрдбрд╝ рджреЗрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдбреЙрдХрд░реАрдлрд╛рдЗрд▓ [ENTRYPOINT]
рдпрд╛ docker-compose entrypoint
entrypoint.sh рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░реЗрдВред
Dockerfile рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдкрд╕рдВрджреАрджрд╛ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ [CMD]
рдпрд╛ docker-рд▓рд┐рдЦреЗрдВ command
Eg npm start
рдЫрд╡рд┐ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде CI рдореЗрдВ рдПрдХ рд╣реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
@SimenB рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ entries-test
рдкреИрдХреЗрдЬ рд╕реЗ node_modules
рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
V1.0.1 рдЯрд╛рд░ рдмреЙрд▓ рдирд┐рдХрд╛рд▓реЗрдВ, define-properties
рдФрд░ рдЕрдиреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде node_modules
рдлрд╝реЛрд▓реНрдбрд░ рд╣реИред рдФрд░, рдЙрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА *.js
рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИред
@torifat рд╣реБрд╣, рдпрд╣ рднреА рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рд╣реИ? рдпрд╣ рдПрдХ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП node_modules
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ bundledDependencies
...
рдПрдХ рд╕реНрд╡рдЪреНрдЫ рдПрдХ рдзрдХреНрдХрд╛ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ (рдореИрдВрдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ, рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛)ред
@torifat рдпрд╣ рдпрд╛рд░реНрди рдХреА рдЧрд▓рддреА рд╣реИ рдпрд╣ рдРрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред
$ mkdir some-dir && cd some-dir && yarn init -y && yarn add object.entries && yarn pack && tar -ztvf some-dir-v1.0.0.tgz
drwxr-xr-x 0 0 0 0 Nov 27 10:36 package
-rw-r--r-- 0 0 0 972 Oct 15 2015 package/node_modules/define-properties/CHANGELOG.md
-rw-r--r-- 0 0 0 1080 Oct 15 2015 package/node_modules/define-properties/LICENSE
-rw-r--r-- 0 0 0 2725 Oct 15 2015 package/node_modules/define-properties/README.md
-rw-r--r-- 0 0 0 1593 Oct 15 2015 package/node_modules/define-properties/package.json
-rw-r--r-- 0 0 0 3798 Aug 21 11:09 package/node_modules/es-abstract/CHANGELOG.md
-rw-r--r-- 0 0 0 1080 Jul 29 2015 package/node_modules/es-abstract/LICENSE
-rw-r--r-- 0 0 0 1812 Aug 13 2015 package/node_modules/es-abstract/README.md
-rw-r--r-- 0 0 0 1989 Aug 21 11:09 package/node_modules/es-abstract/package.json
-rw-r--r-- 0 0 0 1207 Jan 4 2016 package/node_modules/es-to-primitive/CHANGELOG.md
-rw-r--r-- 0 0 0 1082 Nov 1 2015 package/node_modules/es-to-primitive/LICENSE
-rw-r--r-- 0 0 0 2180 Nov 1 2015 package/node_modules/es-to-primitive/README.md
-rw-r--r-- 0 0 0 1558 Jan 4 2016 package/node_modules/es-to-primitive/package.json
-rw-r--r-- 0 0 0 1074 Sep 22 2014 package/node_modules/foreach/LICENSE
-rw-r--r-- 0 0 0 593 Sep 22 2014 package/node_modules/foreach/Readme.md
-rw-r--r-- 0 0 0 1297 Sep 22 2014 package/node_modules/foreach/package.json
-rw-r--r-- 0 0 0 1052 Feb 14 2016 package/node_modules/function-bind/LICENSE
-rw-r--r-- 0 0 0 1488 Feb 14 2016 package/node_modules/function-bind/README.md
-rw-r--r-- 0 0 0 1619 Feb 14 2016 package/node_modules/function-bind/package.json
-rw-r--r-- 0 0 0 1060 Jul 24 2015 package/node_modules/has/LICENSE-MIT
-rw-r--r-- 0 0 0 239 Jul 24 2015 package/node_modules/has/README.mkd
-rw-r--r-- 0 0 0 782 Jul 24 2015 package/node_modules/has/package.json
-rw-r--r-- 0 0 0 1839 Feb 28 2016 package/node_modules/is-callable/CHANGELOG.md
-rw-r--r-- 0 0 0 1082 May 19 2015 package/node_modules/is-callable/LICENSE
-rw-r--r-- 0 0 0 1978 Aug 12 2015 package/node_modules/is-callable/README.md
-rw-r--r-- 0 0 0 1983 Feb 28 2016 package/node_modules/is-callable/package.json
-rw-r--r-- 0 0 0 421 Sep 27 2015 package/node_modules/is-date-object/CHANGELOG.md
-rw-r--r-- 0 0 0 1082 Mar 13 2015 package/node_modules/is-date-object/LICENSE
-rw-r--r-- 0 0 0 1751 Aug 12 2015 package/node_modules/is-date-object/README.md
-rw-r--r-- 0 0 0 1420 Sep 27 2015 package/node_modules/is-date-object/package.json
-rw-r--r-- 0 0 0 482 Jan 30 2015 package/node_modules/is-regex/CHANGELOG.md
-rw-r--r-- 0 0 0 1081 Jan 15 2014 package/node_modules/is-regex/LICENSE
-rw-r--r-- 0 0 0 1623 Jan 28 2015 package/node_modules/is-regex/README.md
-rw-r--r-- 0 0 0 1512 Jan 30 2015 package/node_modules/is-regex/package.json
-rw-r--r-- 0 0 0 121 Jan 26 2015 package/node_modules/is-symbol/CHANGELOG.md
-rw-r--r-- 0 0 0 1082 Jan 24 2015 package/node_modules/is-symbol/LICENSE
-rw-r--r-- 0 0 0 1469 Jan 24 2015 package/node_modules/is-symbol/README.md
-rw-r--r-- 0 0 0 1214 Jan 26 2015 package/node_modules/is-symbol/package.json
-rw-r--r-- 0 0 0 6992 Jul 5 19:14 package/node_modules/object-keys/CHANGELOG.md
-rw-r--r-- 0 0 0 1080 Oct 15 2015 package/node_modules/object-keys/LICENSE
-rw-r--r-- 0 0 0 2460 Oct 15 2015 package/node_modules/object-keys/README.md
-rw-r--r-- 0 0 0 1955 Jul 5 19:14 package/node_modules/object-keys/package.json
-rw-r--r-- 0 0 0 560 Oct 6 2015 package/node_modules/object.entries/CHANGELOG.md
-rw-r--r-- 0 0 0 1082 Sep 2 2015 package/node_modules/object.entries/LICENSE
-rw-r--r-- 0 0 0 2339 Sep 2 2015 package/node_modules/object.entries/README.md
-rw-r--r-- 0 0 0 1636 Oct 6 2015 package/node_modules/object.entries/package.json
-rw-r--r-- 0 0 0 145 Nov 27 10:36 package/package.json
npm pack
рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдкреЗрдХреНрд╖рд┐рдд (рдЙрд╕реА dir рдореЗрдВ) рдХреЗ рд░реВрдк рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред
$ npm pack && tar -ztvf some-dir-1.0.0.tgz
-rw-r--r-- 0 501 20 145 Nov 27 10:36 package/package.json
-rw-r--r-- 0 501 20 2460 Nov 27 10:36 package/yarn.lock
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдпрд╛рд░реНрди changelog
, readme
рдФрд░ package.json
рдкрд░ node_modules
рд╕рд╣рд┐рдд changelog
рд╕рд╣рд┐рдд рдкрд░ рддреБрд▓рд╛ рд╣реИред
рдпрд╛рд░реНрди @0.17.9 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
@torifat 1.0.2 рдЕрдм рдкреНрд░рдХрд╛рд╢рд┐рдд (рдЕрднреА рд╡рд░реНрдгрд┐рдд рдмрдЧ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП
рдиреЛрдб рдХреЗ рд▓рд┐рдП # 2047 рдХреЛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреЗ рд▓рд┐рдП рдЦреЛрд▓рд╛ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдПрдХ рд▓рд╛рд▓ рд╣реЗрд░рд┐рдВрдЧ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░рд╛ рд░рд┐рдкреНрд░реЛ рдЕрднреА рднреА рдПрдХ рдЙрдЪрд┐рдд рдЯрд╛рд░рдмреЙрд▓ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗ рд╕рд╛рде рдорд╛рдиреНрдп рд╣реИред
(рд▓реЛрдЧреЛрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдкреИрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЦреЗрдж рд╣реИ, рдореИрдВ рдЕрднреА рд░реБрдХреВрдВрдЧрд╛)
@SimenB рдЖрдкрдХреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдмрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд▓рд┐рдпрд╛ рд╣реИред
рдпрд╣ # 2104 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЕрднреА рдЦреЛрд▓рд╛ рд╣реИред рдУрдкреА рдХреА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдмрд╛рдж node_modules/.bin
:
$ ll node_modules/.bin
total 16
lrwxr-xr-x 1 samuelreed staff 22B Dec 1 11:16 forever -> ../forever/bin/forever
lrwxr-xr-x 1 samuelreed staff 109B Dec 1 11:16 nodemon -> ../../../../../Library/Caches/Yarn/npm-nodemon-1.11.0-226c562bd2a7b13d3d7518b49ad4828a3623d06c/bin/nodemon.js
# 2116 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрдп рдХрд┐рдпрд╛ред
рдХреНрдпрд╛ # 2116 рдХреЛ рдЕрднреА рддрдХ рдорд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдореИрдВ рдЗрд╕реЗ рдкреНрд░рддрд┐рдмрджреНрдз рдЗрддрд┐рд╣рд╛рд╕ рдореЗрдВ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛ред рддрдп рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдорд╛рд╕реНрдЯрд░ рдкрд░ рдХрдо рд╕реЗ рдХрдо рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ рддреЛ рдЯреИрдЧ рдмрдВрдж рд╣реЛрдиреЗ рдкрд░ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ # 2116 рд╕рднреА рддреАрди рдЪреЗрдХ рдХреЛ рд╡рд┐рдлрд▓ рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдореИрдВ рдХреБрдЫ рднреВрд▓ рд░рд╣рд╛ рд╣реВрдБ?
рдпрд╣ рдЕрднреА рднреА v0.18.0 рдореЗрдВ рдПрдХ рдореБрджреНрджрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ (# 2116) рд╢рд╛рдорд┐рд▓ рд╣реИред
рд╣рд╛рдВ, рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рднреА 0.18.0 рдореЗрдВ рдореМрдЬреВрдж рд╣реИ
рдХреНрдпрд╛ рдореИрдВ # 2116 рджреЗрдЦрддрд╛ рд╣реВрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП ( test.concurrent ('- рдЙрддреНрдкрд╛рджрди рдзреНрд╡рдЬ рджреЗрд╡ рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ' ...) рдпрд╛ рдореИрдВ рдЧрд▓рдд рд╣реВрдВ?
рдкрд░реАрдХреНрд╖рдг рд╕рдХрд░рд╛рддреНрдордХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдореБрджреНрджрд╛ рдПрдХ рд╕рд╛рдЭрд╛ рдЖрд╢реНрд░рд┐рдд (lru-cache) рдПрдХ рдареЗрд╕ (рдиреНрдпреВрдирддрдо v2.0.0) рдФрд░ рдПрдХ рджреЗрд╡ (useragent v2.1.9) рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдмреАрдЪ рд╣реИред рдЙрд╕ рд╕рд╛рдЭрд╛ рдЖрд╢реНрд░рд┐рдд рдХреЛ --production
рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдардЧ рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛред
@beheh рдореБрдЭреЗ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ minimatch
lru-cache
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд╢рд╛рдпрдж рдЗрд╕реАрд▓рд┐рдП рдЙрддреНрдкрд╛рджрди рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?
dep { A->B }
devDep { B }
OK
A,B are installed.
dep { A->C->D }
devDep { B->C->D }
OK
A,C,D are installed.
dep { E->A->C->D }
devDep { B->C->D }
KO
E,A,C are installed but D is missing.
рдпрд╣ рдорд╛рдорд▓рд╛ @SimenB рджреНрд╡рд╛рд░рд╛ рд╕рдЪрд┐рддреНрд░ рд╣реИ
"dependencies": {
"entries-test": "^1.0.1"
},
"devDependencies": {
"object.values": "^1.0.3"
}
@SharpEdgeMarshall рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рдЗрд╕реЗ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝реВрдВрдЧрд╛ред
@torifat рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ
@SharpEdgeMarshall рдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
@SimenB рдХреЛ рджреЛрдмрд╛рд░рд╛ рдЦреЛрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ optionalDependencies
рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЬрд┐рд╕рдХрд╛ рдПрдХ рдФрд░ рдЦреБрд▓рд╛ рдореБрджреНрджрд╛ рд╣реИред
@torifat рдореЗрд░рд╛ https://github.com/yarnpkg/yarn/issues/761#issuecomment -260975012
EDIT: рдЬрд┐рд╕рдХрд╛ рдХреЛрдИ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЪрд┐рддреНрд░рдг рдирд╣реАрдВ рд╣реИ, grep optional yarn.lock
1 рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИ
рдЕрдм рдпрд╣ рдкрд░ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ Error: Cannot find module 'object-keys'
рдмрдЬрд╛рдп рд▓рд╛рдкрддрд╛ рдХреА define-properties
рд╣рд╛рд▓рд╛рдВрдХрд┐ред
$ yarn why object-keys
yarn why v0.18.0
[1/4] ЁЯдФ Why do we have the module "object-keys"...?
[2/4] ЁЯЪЪ Initialising dependency graph...
[3/4] ЁЯФН Finding dependency...
[4/4] ЁЯЪб Calculating file sizes...
info This module exists because "object.values#define-properties" depends on it.
тЬи Done in 0.09s.
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рдПрдХ рд╕реНрддрд░ рдХреЛ рдЧрд╣рд░рд╛рдИ рд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
@SimenB рдмрд╕ рдЕрдкрдиреЗ рд╕рд╛рде рдХреА рдХреЛрд╢рд┐рд╢ рдХреА:
{
"dependencies": {
"entries-test": "^1.0.1"
},
"devDependencies": {
"object.values": "^1.0.3"
}
}
рдФрд░, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк yarn cache clean
рдФрд░ рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдирд╣реАрдВ, рд╡рд┐рдлрд▓
@SimenB рдХреНрдпрд╛ рдЖрдк рдЕрдкрдирд╛ yarn.lock
рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
$ rm -rf node_modules && rm yarn.lock && yarn cache clean && yarn && node index.js && yarn --prod && node index.js
yarn cache v0.18.0
success Cleared cache.
тЬи Done in 0.07s.
yarn install v0.18.0
info No lockfile found.
[1/4] ЁЯФН Resolving packages...
[2/4] ЁЯЪЪ Fetching packages...
[3/4] ЁЯФЧ Linking dependencies...
[4/4] ЁЯУГ Building fresh packages...
success Saved lockfile.
тЬи Done in 0.92s.
yarn install v0.18.0
[1/4] ЁЯФН Resolving packages...
[2/4] ЁЯЪЪ Fetching packages...
[3/4] ЁЯФЧ Linking dependencies...
[4/4] ЁЯУГ Building fresh packages...
тЬи Done in 0.18s.
module.js:471
throw err;
^
Error: Cannot find module 'object-keys'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/Users/simbekkh/repos/ugh/node_modules/define-properties/index.js:3:12)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
рдореЗрд░реЗ рд▓рд┐рдП SimenB рдХрд╛ рдЙрджрд╛рд╣рд░рдг yarn cache clean
рдмрд╛рдж рднреА 0.18.0 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
define-properties@^1.1.2:
version "1.1.2"
resolved "http://npm.office.crweb.it/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
dependencies:
foreach "^2.0.5"
object-keys "^1.0.8"
entries-test@^1.0.1:
version "1.0.2"
resolved "http://npm.office.crweb.it/entries-test/-/entries-test-1.0.2.tgz#f1039aba3a2effc9c3a56b6b1180694b2789e4d5"
dependencies:
object.entries "^1.0.3"
es-abstract@^1.6.1:
version "1.6.1"
resolved "http://npm.office.crweb.it/es-abstract/-/es-abstract-1.6.1.tgz#bb8a2064120abcf928a086ea3d9043114285ec99"
dependencies:
es-to-primitive "^1.1.1"
function-bind "^1.1.0"
is-callable "^1.1.3"
is-regex "^1.0.3"
es-to-primitive@^1.1.1:
version "1.1.1"
resolved "http://npm.office.crweb.it/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
dependencies:
is-callable "^1.1.1"
is-date-object "^1.0.1"
is-symbol "^1.0.1"
foreach@^2.0.5:
version "2.0.5"
resolved "http://npm.office.crweb.it/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
function-bind@^1.0.2, function-bind@^1.1.0:
version "1.1.0"
resolved "http://npm.office.crweb.it/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
has@^1.0.1:
version "1.0.1"
resolved "http://npm.office.crweb.it/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
dependencies:
function-bind "^1.0.2"
is-callable@^1.1.1, is-callable@^1.1.3:
version "1.1.3"
resolved "http://npm.office.crweb.it/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
is-date-object@^1.0.1:
version "1.0.1"
resolved "http://npm.office.crweb.it/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
is-regex@^1.0.3:
version "1.0.3"
resolved "http://npm.office.crweb.it/is-regex/-/is-regex-1.0.3.tgz#0d55182bddf9f2fde278220aec3a75642c908637"
is-symbol@^1.0.1:
version "1.0.1"
resolved "http://npm.office.crweb.it/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
object-keys@^1.0.8:
version "1.0.11"
resolved "http://npm.office.crweb.it/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
object.entries@^1.0.3:
version "1.0.4"
resolved "http://npm.office.crweb.it/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f"
dependencies:
define-properties "^1.1.2"
es-abstract "^1.6.1"
function-bind "^1.1.0"
has "^1.0.1"
object.values@^1.0.3:
version "1.0.4"
resolved "http://npm.office.crweb.it/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a"
dependencies:
define-properties "^1.1.2"
es-abstract "^1.6.1"
function-bind "^1.1.0"
has "^1.0.1"
$ rm -rf node_modules && rm yarn.lock && yarn cache clean && yarn && node index.js && rm -rf node_modules && rm yarn.lock && yarn cache clean && yarn --prod && node index.js
yarn cache v0.18.0
success Cleared cache.
тЬи Done in 0.07s.
yarn install v0.18.0
info No lockfile found.
[1/4] ЁЯФН Resolving packages...
[2/4] ЁЯЪЪ Fetching packages...
[3/4] ЁЯФЧ Linking dependencies...
[4/4] ЁЯУГ Building fresh packages...
success Saved lockfile.
тЬи Done in 0.93s.
yarn cache v0.18.0
success Cleared cache.
тЬи Done in 0.07s.
yarn install v0.18.0
info No lockfile found.
[1/4] ЁЯФН Resolving packages...
[2/4] ЁЯЪЪ Fetching packages...
[3/4] ЁЯФЧ Linking dependencies...
[4/4] ЁЯУГ Building fresh packages...
success Saved lockfile.
тЬи Done in 0.76s.
module.js:471
throw err;
^
Error: Cannot find module 'object-keys'
at Function.Module._resolveFilename (module.js:469:15)
at Function.Module._load (module.js:417:25)
at Module.require (module.js:497:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/Users/simbekkh/repos/ugh/node_modules/define-properties/index.js:3:12)
at Module._compile (module.js:570:32)
at Object.Module._extensions..js (module.js:579:10)
at Module.load (module.js:487:32)
at tryModuleLoad (module.js:446:12)
at Function.Module._load (module.js:438:3)
Lockfile:
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
define-properties@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
dependencies:
foreach "^2.0.5"
object-keys "^1.0.8"
entries-test@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/entries-test/-/entries-test-1.0.2.tgz#f1039aba3a2effc9c3a56b6b1180694b2789e4d5"
dependencies:
object.entries "^1.0.3"
es-abstract@^1.6.1:
version "1.6.1"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.6.1.tgz#bb8a2064120abcf928a086ea3d9043114285ec99"
dependencies:
es-to-primitive "^1.1.1"
function-bind "^1.1.0"
is-callable "^1.1.3"
is-regex "^1.0.3"
es-to-primitive@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d"
dependencies:
is-callable "^1.1.1"
is-date-object "^1.0.1"
is-symbol "^1.0.1"
foreach@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99"
function-bind@^1.0.2, function-bind@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771"
has@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28"
dependencies:
function-bind "^1.0.2"
is-callable@^1.1.1, is-callable@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
is-date-object@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
is-regex@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.3.tgz#0d55182bddf9f2fde278220aec3a75642c908637"
is-symbol@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572"
object-keys@^1.0.8:
version "1.0.11"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
object.entries@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f"
dependencies:
define-properties "^1.1.2"
es-abstract "^1.6.1"
function-bind "^1.1.0"
has "^1.0.1"
object.values@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a"
dependencies:
define-properties "^1.1.2"
es-abstract "^1.6.1"
function-bind "^1.1.0"
has "^1.0.1"
@SimenB рдзрдиреНрдпрд╡рд╛рдж рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рдореЗрд░реЗ рдХреИрд╢ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдереАред рдореЗрд░рд╛ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЕрдм рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИред рд▓реЗрдХрд┐рди, рдПрдХ рдЕрд▓рдЧ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рдеред рдореБрдЭреЗ рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рджреАрдЬрд┐рдПред
Btw, рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ https://github.com/Mottie/Octopatcher рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ
рдЖрдЙрдЯрдкреБрдЯ рдХреА рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИ
рдореИрдВ рдЕрдм рд╕реНрдкреИрдорд┐рдВрдЧ рдмрдВрдж рдХрд░ рджреВрдВрдЧрд╛
@SimenB v0.18.0
рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдирд╡реАрдирддрдо master
рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред
рдЕрджреНрдпрддрди: рдЕрдЬреАрдм! рдпрд╣ рдлрд┐рд░ рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИ ЁЯШХ
@torifat рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдорд╛рд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ (v0.19.0)
rm -rf node_modules && rm yarn.lock && ../yarn/bin/yarn cache clean && ../yarn/bin/yarn && node index.js && rm -rf node_modules && rm yarn.lock && ../yarn/bin/yarn cache clean && ../yarn/bin/yarn --prod && node index.js
yarn cache v0.19.0-0
success Cleared cache.
Done in 0.58s.
yarn install v0.19.0-0
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 10.18s.
yarn cache v0.19.0-0
success Cleared cache.
Done in 0.09s.
yarn install v0.19.0-0
info No lockfile found.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Saved lockfile.
Done in 4.26s.
module.js:457
throw err;
^
Error: Cannot find module 'object-keys'
at Function.Module._resolveFilename (module.js:455:15)
at Function.Module._load (module.js:403:25)
at Module.require (module.js:483:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/home/sharpedge/git/Utility/YarnBug/node_modules/define-properties/index.js:3:12)
at Module._compile (module.js:556:32)
at Object.Module._extensions..js (module.js:565:10)
at Module.load (module.js:473:32)
at tryModuleLoad (module.js:432:12)
at Function.Module._load (module.js:424:3)
рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ (рдХреБрдЫ рдкреИрдХреЗрдЬ рдореМрдЬреВрджрд╛ рд╕реНрдерд┐рд░ 0.17.10
рд╕рд╛рде --production
рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИрдВ):
curl -o- -L https://yarnpkg.com/install.sh | bash && ~/.yarn/bin/yarn install --production && rm -rf ~/.yarn
рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рд░рд╛рдд рдореЗрдВ рдореМрдЬреВрджрд╛ Yarn 0.19.0-20161207.1241
рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ
wget https://yarnpkg.com/install.sh && chmod +x install.sh && ./install.sh --nightly && rm -f install.sh && ~/.yarn/bin/yarn install --production && rm -rf ~/.yarn
@SharpEdgeMarshall @SimenB рдХреНрдпрд╛ рдЖрдк рдирд╡реАрдирддрдо рд░рд╛рдд рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдмрдиреА рд░рд╣рддреА рд╣реИред
рдореЗрд░реЗ рдбреЙрдХрдЯрд░ рдХрдВрдЯреЗрдирд░реЛрдВ рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд: https://gist.github.com/nodkz/b843d65a3430a4f510e5f5eb0cc759d2
@nodkz 18 рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рд╕реНрдерд┐рд░ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ?), рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ рдКрдкрд░ рд╕реАрдзреЗ рдкреЛрд╕реНрдЯ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдорд╛рд╕реНрдЯрд░ (рдЬреИрд╕рд╛ рдХрд┐ 2 рджрд┐рди рдкрд╣рд▓реЗ рдХрдо рд╕реЗ рдХрдо) рдЕрднреА рднреА рдмрдЧ рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА install yarn@rc
:
'dist-tags': { rc: '0.18.0', latest: '0.17.10' },
рдпрд╣ рдирдпрд╛ рд╣реИ, рдореБрдЭреЗ рдХреБрдЫ рджрд┐рди рдкрд╣рд▓реЗ 0.18 рдорд┐рд▓рд╛ рд╣реИред рд╡реИрд╕реЗ рднреА, рдмрдЧ рдЕрднреА рднреА 0.18 рдореЗрдВ рдкреНрд░рдЬрдирди рдпреЛрдЧреНрдп рд╣реИред
@nodkz рд░реЗрдкреНрд░реЛ рд╣реИ:
{
"dependencies": {
"entries-test": "^1.0.1"
},
"devDependencies": {
"object.values": "^1.0.3"
}
}
рд╣рд╛рдВ, рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рднреА рдЗрд╕реА рддрд░рд╣ рдХреЗ рдореБрджреНрджреЛрдВ рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реИ:
rm -rf package.json yarn.lock node_modules && npm init --yes && yarn add --dev nodemon && yarn add glob-stream && yarn --prod && node -p "require('glob-stream')"
0.18 рдФрд░ рдирд╡реАрдирддрдо рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред
рдорд╛рдирд╛ред рдЕрднреА рднреА рдирд╡реАрдирддрдо рдХреЗ рд╕рд╛рде repro рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдореБрджреНрджрд╛ рднреА рдРрд╕рд╛ рд╣реА рд╣реИред рдмрд┐рд▓реНрдб рд╣реЗрд░реЛрдХреВ рдкрд░ рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЙрддреНрдкрд╛рджрди рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдПред рдХреИрд╢рд┐рдВрдЧ рдЕрдХреНрд╖рдо рд╣реИред
Resolving node version ^7.2.1 via semver.io...
Downloading and installing node 7.2.1...
Using default npm version: 3.10.10
Resolving yarn version (latest) via semver.io...
Downloading and installing yarn (0.18.1)...
Installed yarn 0.18.1
-----> Restoring cache
Skipping cache restore (disabled by config)
-----> Building dependencies
Installing node modules (yarn)
yarn install v0.18.1
[1/4] Resolving packages...
[2/4] Fetching packages...
warning [email protected]: The platform "linux" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
error /tmp/build_0e4ff736ad0f25dc816a47543687fefc/bbb7b6e751dde291f65dea175f41a26862eef28f/node_modules/bcrypt: Command failed.
Exit code: 1
Command: sh
Arguments: -c node-pre-gyp install --fallback-to-build
Directory: /tmp/build_0e4ff736ad0f25dc816a47543687fefc/bbb7b6e751dde291f65dea175f41a26862eef28f/node_modules/bcrypt
Output:
module.js:472
throw err;
^
Error: Cannot find module 'abbrev'
at Function.Module._resolveFilename (module.js:470:15)
at Function.Module._load (module.js:418:25)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/tmp/build_0e4ff736ad0f25dc816a47543687fefc/bbb7b6e751dde291f65dea175f41a26862eef28f/node_modules/nopt/lib/nopt.js:10:14)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
-----> Build failed
рдореЗрд░реЗ рдкрд╛рд╕ рднреА рдпрд╣ рдореБрджреНрджрд╛ рд╣реИред рдореИрдВ рдЕрднреА рднреА рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП yarn install
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ yarn install --production
рд╕рд╣реА рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдореИрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реЗрд░реЛрдХреВ рдмрд┐рд▓реНрдбрдкреИрдХ рдореЗрдВ yarn install --production
рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рд░реЗрдлрд░реА https://github.com/heroku/heroku-buildpack-nodejs/issues/337)
@adamreisnz рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рдореВрд▓ рдореБрджреНрджреЗ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ рдЖрдкрдХреА рдирд╣реАрдВред
рдЖрдкрдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП, рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рд╕рднреА devDependencies
рд╕реЗ dependencies
рдЕрднреА рдХреЗ рд▓рд┐рдП рд░рдЦ рджреЗрдВ рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддреАред
@dashmug рдЖрд╣ рдареАрдХ рд╣реИ, рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВред
рд╡реИрд╕реЗ рднреА, рдореИрдВ рд╣рд░рд┐рдХреВ рдкрд░ рдЕрдм рддрдХ npm
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рдЬрдм рддрдХ рдХрд┐ рд╣реИрдХреА рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЪрдХреНрдХрд░ рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдпрд╛рд░реНрди рдЕрдзрд┐рдХ рд╕реНрдерд┐рд░ рди рд╣реЛред рдореИрдВрдиреЗ yarn.lock
рдЕрдкрдиреЗ .gitignore
рдбрд╛рд▓ рджрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд░реЗрдкреЛ / рд╣рд░реЛрдХреВ рдкрд░ рдЕрдкрд▓реЛрдб рди рд╣реЛред рдЗрд╕ рддрд░рд╣, рдореИрдВ рдЕрднреА рднреА рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдпрд╛рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рд░реЛрдХреВ рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
@adamreisnz yarn
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рдкрд░рд╛рдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдХреНрдпрд╛ рдЖрдкрдХреЛ рдирд╣реАрдВ рд▓рдЧрддрд╛?
@dashmug рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ, рдХрдо рд╕реЗ рдХрдо, рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдирд╣реАрдВред рдореИрдВ рдЗрд╕реЗ рдЬрдЧрд╣ рдореЗрдВ рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд▓реЙрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рд╣рдорд╛рд░реА рдмрд╣реБрдд рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ рдФрд░ "рдореЗрд░реА рдорд╢реАрди рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ" рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдПрдирдкреАрдПрдо рдкрд░ рдпрд╛рд░реНрди рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореЗрд░рд╛ рдореБрдЦреНрдп рдХрд╛рд░рдг рдЧрддрд┐ рдХреЗ рд▓рд┐рдП рдерд╛, рдЬреЛ рдХрд┐ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рд╡рд╛рд▓реЗ рдЬрдЯрд┐рд▓ рдРрдк рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ npm install
рдпрд╛рд░реНрди рдХреЗ рд╕рд╛рде
рдЬрдм рддрдХ рдпрд╛рд░реНрди рдЕрд╕реНрдерд┐рд░ рд╣реИ, рддрдм рддрдХ рдореИрдВ рд╣реЗрд░реЛрдХреВ рдкрд░ рдереЛрдбрд╝реА рдзреАрдореА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдЬрдм рддрдХ рдХрд┐ рдореИрдВ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдпрд╛рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рддреЗрдЬреА рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ :)
рдпрд╛рд░реНрди рдХреЛ рдПрдирдкреАрдПрдо рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдбреНрд░реЙрдк-рдЗрди рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдЬреНрдЮрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдБ рдЬрд┐рдирдХрд╛ рд╣рдордиреЗ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЬреЛ рдЕрднреА рднреА рдЕрдирд╕реБрд▓рдЭреА рд╣реИрдВ, рдЗрд╕ рддрд░рд╣, рд╣рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреА рд╣реИрдВред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ, рдЬреЛ рдПрдХ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ, рд▓реЗрдХрд┐рди рджреВрд╕рд░реЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рддрдХ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рд╣рд╛рд▓рд╛рдВрдХрд┐ :)
рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП 0.18.1 рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред
рд╣рд░реЛрдХреВ рдЙрд╕ рд╕рдордп 0.18.1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ рдЬрдм рд╡рд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдЕрднреА рддрдХ рддрдп рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдореЗрд░реЗ рд▓рд┐рдП 0.18.1 рдкрд░ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдореЗрд░рд╛ рдкрд╣рд▓реЗ рдХрд╛ рд░реЗрдкреЛ 0.18.1 fixed рдХреЗ рд╕рд╛рде рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдореИрдВ рдХрд▓ рдПрдХ рдЕрд╕рд▓реА рдРрдк рдХреЗ рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛
0.18.1 рдореЗрд░реЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдПрдХ рдЦреБрд╢ рдЯреВрд░рд┐рд╕реНрдЯ рд╣реВрдВ ЁЯОЙ
рдПрдХ рдЧреИрд░-рддреБрдЪреНрдЫ рдРрдк рдХреЗ рд╕рд╛рде 0.18.1 рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬреЛ рдкрд╣рд▓реЗ рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣реА рдереА рдФрд░ рдЕрдм рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ! ЁЯОЙ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рдПрдХ рдФрд░ рджреЗ рджреВрдБрдЧрд╛ :)
рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЕрднреА рднреА 0.18.1 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ;
-----> Node.js app detected
-----> Creating runtime environment
NPM_CONFIG_LOGLEVEL=error
NPM_CONFIG_PRODUCTION=true
NODE_ENV=production
NODE_MODULES_CACHE=true
-----> Installing binaries
engines.node (package.json): ^7.2.1
engines.npm (package.json): unspecified (use default)
Resolving node version ^7.2.1 via semver.io...
Downloading and installing node 7.2.1...
Using default npm version: 3.10.10
Resolving yarn version (latest) via semver.io...
Downloading and installing yarn (0.18.1)...
Installed yarn 0.18.1
-----> Restoring cache
Loading 2 from cacheDirectories (default):
- node_modules
- bower_components (not cached - skipping)
-----> Building dependencies
Installing node modules (yarn)
yarn install v0.18.1
[1/4] Resolving packages...
[2/4] Fetching packages...
warning [email protected]: The platform "linux" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
error /tmp/build_c86802dccae94b3fb074d3b88f3f63f2/9512deeed23c0eca48d68fb2c8850a28f76692ea/node_modules/bcrypt: Command failed.
Exit code: 1
Command: sh
Arguments: -c node-pre-gyp install --fallback-to-build
Directory: /tmp/build_c86802dccae94b3fb074d3b88f3f63f2/9512deeed23c0eca48d68fb2c8850a28f76692ea/node_modules/bcrypt
Output:
module.js:472
throw err;
^
Error: Cannot find module 'abbrev'
at Function.Module._resolveFilename (module.js:470:15)
at Function.Module._load (module.js:418:25)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/tmp/build_c86802dccae94b3fb074d3b88f3f63f2/9512deeed23c0eca48d68fb2c8850a28f76692ea/node_modules/nopt/lib/nopt.js:10:14)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
-----> Build failed
We're sorry this build is failing! You can troubleshoot common issues here:
https://devcenter.heroku.com/articles/troubleshooting-node-deploys
Some possible problems:
- A module may be missing from 'dependencies' in package.json
https://devcenter.heroku.com/articles/troubleshooting-node-deploys#ensure-you-aren-t-relying-on-untracked-dependencies
- This module may be specified in 'devDependencies' instead of 'dependencies'
https://devcenter.heroku.com/articles/nodejs-support#devdependencies
Love,
Heroku
! Push rejected, failed to compile Node.js app.
! Push failed
NODE_MODULES_CACHE=false
рдХрд░рдиреЗ рд╕реЗ рднреА рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реАред
рдпрд╣рд╛рдБ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдкреЗрдбрд╝ рд╣реИ:
тФЬтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФА [email protected]
тФЬтФАтФм [email protected]
тФВ тФФтФАтФм @google-cloud/[email protected]
тФВ тФФтФАтФм @google-cloud/[email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФм [email protected]
тФВ тФФтФАтФА [email protected]
тФФтФАтФм [email protected]
тФФтФАтФА [email protected]
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ google-cloud
рдорд╛рдзреНрдпрдо рд╕реЗ рдЧрд╣рди рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЙрддреНрдкрд╛рджрди рдореЙрдбреНрдпреВрд▓ рд╣реИ, рдФрд░ рджреЛрдиреЛрдВ bable-cli
рдФрд░ instanbul
рдХреЗрд╡рд▓ рджреЗрд╡ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЬрдм рдореИрдВ yarn why abbrev
рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ google-cloud
рдФрд░ babel-cli
рдкреЗрд░реЗрдВрдЯ рдЖрд╢реНрд░рд┐рддреЛрдВ рдХреЛ рд▓реЗрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ:
yarn why v0.18.1
[1/4] ЁЯдФ Why do we have the module "abbrev"...?
[2/4] ЁЯЪЪ Initialising dependency graph...
[3/4] ЁЯФН Finding dependency...
[4/4] ЁЯЪб Calculating file sizes...
info Reasons this module exists
- "istanbul" depends on it
- "istanbul#nopt" depends on it
@jkrems , @SimenB рдХреНрдпрд╛ рдореИрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдирдпрд╛ рдореБрджреНрджрд╛
istanbul#nopt
рднреА why
рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЧрд▓рдд рд▓рдЧ рд░рд╣рд╛ рд╣реИред
рдореИрдВ рдЕрдм рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП onnmy рддрд░реАрдХрд╛ рд╣реВрдВ, рдлрд┐рд░ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдРрдк рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд░реВрдВрдЧрд╛
@SimenB рдзрдиреНрдпрд╡рд╛рдж, рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдкреВрд░рд╛ рдкреИрдХреЗрдЬред json рдореЙрдбреНрдпреВрд▓ рд╕реВрдЪреАред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣рд╛рдБ рдпрд╣ рд╕рд┐рд░реНрдл рдорд╛рдорд▓реЗ рдореЗрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЕрдм рд╕реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ;
"dependencies": {
"bcrypt": "^1.0.1",
"bluebird": "^3.4.6",
"body-parser": "^1.15.2",
"chalk": "^1.1.3",
"compression": "^1.6.2",
"cookie-parser": "^1.4.3",
"cors": "^2.8.1",
"express": "^4.14.0",
"glob": "^7.1.1",
"google-cloud": "^0.45.1",
"handlebars": "^4.0.6",
"html-pdf": "^2.1.0",
"http-as-promised": "^1.1.0",
"meanie-express-error-handling": "git+https://github.com/meanie/express-error-handling#2.0.0",
"meanie-express-github-service": "^2.0.2",
"meanie-express-jwt-service": "^1.0.2",
"meanie-express-raven-service": "^1.0.1",
"meanie-mail-composer": "^1.2.0",
"meanie-mongoose-only-id": "^1.0.1",
"meanie-mongoose-set-properties": "^1.0.1",
"meanie-mongoose-to-json": "^1.1.0",
"meanie-multer-mime-types-filter": "^1.0.1",
"meanie-passport-refresh-strategy": "^1.1.2",
"moment": "^2.17.1",
"mongoose": "^4.7.3",
"morgan": "^1.7.0",
"multer": "^1.1.0",
"passport": "^0.3.2",
"passport-http-bearer": "^1.0.1",
"passport-local": "^1.0.0",
"phantomjs-prebuilt": "2.1.14",
"sendgrid": "^4.7.1",
"sendgrid-mailer": "^1.0.7",
"socket.io": "^1.7.2",
"yargs": "^6.5.0"
},
"devDependencies": {
"babel-cli": "^6.16.0",
"babel-preset-es2015": "^6.18.0",
"chai": "^3.5.0",
"chai-as-promised": "^6.0.0",
"dirty-chai": "^1.2.2",
"eslint": "^3.12.1",
"express-simulate-latency": "0.0.2",
"istanbul": "^1.0.0-alpha.2",
"mocha": "^3.2.0",
"mocha-clean": "^1.0.0",
"nodemon": "^1.11.0",
"sinon": "^1.17.6",
"sinon-as-promised": "^4.0.0",
"sinon-mongoose": "^1.3.0"
}
рдпрд╣ рдЕрднреА рднреА рдХрд╛рдо рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдпрд╛рд░реНрди рдХреЗ рдЧрд╣рд░реЗ рд░рд╛рд╕реНрддреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИрдВред рдпрд╣рд╛рдБ npm ls entities
рдмрд╛рдж yarn --prod
$ npm ls entities
[email protected] /Users/simbekkh/repos/frontpage
тФФтФАтФм @finn-no/[email protected]
тФФтФАтФм [email protected]
тФФтФАтФм [email protected]
тФФтФАтФм [email protected]
тФФтФАтФм [email protected]
тФФтФАтФм [email protected]
тФФтФАтФА UNMET DEPENDENCY entities@~1.1.1
npm ERR! missing: entities@~1.1.1, required by [email protected]
@Adamreisnz рдХреЗ рд░реВрдк рдореЗрдВ yarn why
рд╕рд╣реА рдкреЗрдбрд╝ рдирд╣реАрдВ рдЙрдард╛рддрд╛ рд╣реИ ред
$ yarn why entities
yarn why v0.18.1
[1/4] ЁЯдФ Why do we have the module "entities"...?
[2/4] ЁЯЪЪ Initialising dependency graph...
[3/4] ЁЯФН Finding dependency...
[4/4] ЁЯЪб Calculating file sizes...
info Reasons this module exists
- "cheerio" depends on it
- "cheerio#htmlparser2" depends on it
info Disk size without dependencies: "108kB"
info Disk size with unique dependencies: "108kB"
info Disk size with transitive dependencies: "108kB"
info Amount of shared dependencies: 0
тЬи Done in 0.40s.
рдХреНрдпреЛрдВ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ istanbul # nopt рднреА рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИред
рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдореВрд▓ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ nopt
google-cloud
рдФрд░ / рдпрд╛ babel-cli
рдмрдЬрд╛рдп istanbul
рдкреИрдХреЗрдЬ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реАрд▓рд┐рдП рдЗрд╕реЗ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рд╡рд╛рддрд╛рд╡рд░рдг, рдХреНрдпреЛрдВрдХрд┐ istanbul
рдПрдХ рдареЗрд╕ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реИред
рд╣реЗ рд╕рдм рд▓реЛрдЧ, рдЦреЗрдж рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рд╣реИред
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреБрдж рдХреЛ рд╕реМрдВрдкреВрдВрдЧрд╛ рдФрд░ рдЕрдм рдпрд╣ рдПрдХ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИ, рдореИрдВ рдЗрд╕реЗ рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рджреМрд░рд╛рди рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред
рдкреГрдердХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдЯреЗрд╕реНрдЯ рдпрд╛ рдлрд┐рдХреНрд╕ (рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ) рдХреЗ рд╕рд╛рде рд╕рд╣рд╛рдпрддрд╛ рдФрд░ рдкреАрдЖрд░рдПрд╕ рдХрд╛ рдмрд╣реБрдд рд╕реНрд╡рд╛рдЧрдд рд╣реИред
рд╣рдо bl
gulp-imagemin
рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдЙрддреНрдкрд╛рджреЛрдВ рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИред
[~/Workspaces/my-project 12:05:33] NODE_ENV=production yarn
yarn install v0.18.1
info No lockfile found.
[1/4] ЁЯФН Resolving packages...
warning algoliasearch > [email protected]: Just use Array.isArray directly
warning gulp-file > through2 > xtend > [email protected]:
warning raven > [email protected]: use uuid module instead
warning wiredep > bower-config > [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
warning chromedriver > [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm
warning mversion > [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
warning wiredep > glob > [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
warning webdriverio > request > [email protected]: use uuid module instead
warning gulp > vinyl-fs > glob-watcher > gaze > globule > [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
warning gulp > vinyl-fs > glob-watcher > gaze > globule > glob > [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
warning sprity-lwip > lwip > decree > [email protected]: This package is discontinued. Use lodash@^4.0.0.
[2/4] ЁЯЪЪ Fetching packages...
warning [email protected]: The engine "ender" appears to be invalid.
[3/4] ЁЯФЧ Linking dependencies...
[4/4] ЁЯУГ Building fresh packages...
[1/7] таВ fsevents: GET https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.0.15/fse-v1.0.15-node-v51-darwi
[2/7] таВ gifsicle
[3/7] таВ jpegtran-bin
[4/7] таВ optipng-bin
error /Users/fdubost/Workspaces/my-project/node_modules/gifsicle: Command failed.
Exit code: 1
Command: sh
Arguments: -c node lib/install.js
Directory: /Users/fdubost/Workspaces/my-project/node_modules/gifsicle
Output:
module.js:474
throw err;
^
Error: Cannot find module 'bl'
at Function.Module._resolveFilename (module.js:472:15)
at Function.Module._load (module.js:420:25)
at Module.require (module.js:500:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (/Users/fdubost/Workspaces/my-project/node_modules/tar-stream/extract.js:2:10)
at Module._compile (module.js:573:32)
at Object.Module._extensions..js (module.js:582:10)
at Module.load (module.js:490:32)
at tryModuleLoad (module.js:449:12)
at Function.Module._load (module.js:441:3)
рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж ЁЯШК
рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЕрдЧрд░ рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ bl
рдХреЛ рд╣рдорд╛рд░реЗ package.json рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ ...
рдЗрд╕ рдкрд░ рдХреЛрдИ рднреА рд╕рдорд╛рдЪрд╛рд░?
рдЕрднреА рддрдХ рдирд╣реАрдВ, рдореИрдВ рдПрдХ рдРрдб-рд╣реЙрдХ рдХреЙрдорди рдЬреЗрдПрд╕ рдЪреЗрдХрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдпрд╛рд░реНрди рдХреЗ рдЙрддреНрдерд╛рдкрди рдФрд░ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдПрд▓реНрдЧреЛрд░рд┐рджрдо https://github.com/yarnpkg/yarn/pull/2419 рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рдиреЛрдб_рдореЙрдбрд▓реНрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ
рдпрд╣ рдЗрд╕ рдмрдЧ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдорд╛рдорд▓реЛрдВ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдФрд░ рднрд╡рд┐рд╖реНрдп рдХреЗ рдкреНрд░рддрд┐рдЧрдорди рд╕реЗ рд╣рдореЗрдВ рдмрдЪрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред
@ рдмрд┐рд▓реНрд▓реА рдХреЗ рдмрдЪреНрдЪреЗ рдкрд░ рдирдЬрд╝рд░ рд╣реИ рдХрд┐ рдпрд╣рд╛рдБ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред
рдмрдЧ рддреБрдЪреНрдЫ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдВрддрд░реНрджреГрд╖реНрдЯрд┐ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ
рдареАрдХ рд╣реИ, рдирд╡реАрдирддрдо рдЯреНрд░рдВрдХ рдХреЗ рд╕рд╛рде рдЕрдм рд╕рднреА рд░рд┐рдкреНрд░реЛ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ред
рдкрд╣рд▓реА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдЕрдм рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ yarn check --verify-tree
рдкрд╛рд╕ рд╣реЛрддрд╛ рд╣реИ
рдпрд╣ рдПрдХ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рднреА https://github.com/yarnpkg/yarn/issues/761#issuecomment -+реирем,режреп,ренрел,режрезреи рдФрд░ https://github.com/yarnpkg/yarn/issues/761#issuecomment -+реирем,релрео,реирей,релреиреп
рд╣рд╛рдБ, рдЙрд╕ рд░рд┐рдкреНрд░реЛ рдХреЛ 0.18.1 рдХреЗ рд╕рд╛рде рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
2 рд╡рд┐рдЪрд╛рд░:
рдХреНрдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд▓реЙрдЧ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдЖрдкрдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдореИрдВ рдЖрдкрдХреЛ рд▓реЙрдХрдлрд╝рд╛рдЗрд▓ рджреЗ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рдЗрд╕реЗ рдХрд╛рдо рдкрд░ рдкреБрди: рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдирд┐рдЬреА рдбрд┐рдкреЛ рдХреЗ рдХрд╛рд░рдг рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗред рдЖрдк рдкреИрдХреЗрдЬ рдХреЛ рд▓рд╛рдиреЗ рдФрд░ рдкреЗрдбрд╝ рдХреЗ рд╕рд╛рде рдЧрдбрд╝рдмрдбрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рд░реЛрдВ рдУрд░ рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
@SimenB , рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд╣рд╛рдВ рд╕рдВрдХрд▓реНрдк --production рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ?
рдЙрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
yarn install --production --verbose
yarn check --production --verify-tree
рдирд╡реАрдирддрдо рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдХреЗ рд╕рд╛рдеред
рдпрджрд┐ рдЖрдк рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рд▓реЙрдЧ рдирд╣реАрдВ рднреЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ [email protected] рдкрд░ рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВ
рд╣рд╛рдБ, 0.18.1 рдЕрднреА рднреА рдЯреВрдЯ рдЧрдпрд╛ рдерд╛, 0.19 (рдпрд╛ рдорд╛рд╕реНрдЯрд░) рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдЕрднреА рднреА рдкреБрди: рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ (рдЖрд╢рд╛ рдирд╣реАрдВ!), рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдирд┐рдЬреА рд░реВрдк рд╕реЗ рд▓реЙрдЧ рднреЗрдЬреВрдВрдЧрд╛
рдЖрдЗрдП рдЗрд╕ рдХрд╛рд░реНрдп рдХреЛ рдмрдВрдж рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рд╢реАрд░реНрд╖рдХ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
2 рдЦреБрд▓реЗ рд╣реБрдП рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ: # 2263 рдФрд░ # 2141 рд╡рд╣рд╛рдБ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдпрд╛ рдЕрдкрдиреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдмрдирд╛рдиреЗ рдФрд░ рдореБрдЭреЗ cc рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВред
2all: рдЬрдм рдЖрдк рдЯрд┐рдкреНрдкрдгреА рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдерд╛рдкрдирд╛ рдЧрд▓рдд рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ package.json рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЕрдиреНрдп рд▓реЛрдЧ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХреЗрдВред
рдХреБрджреЛрд╕ @jkrems рдХреЛ рдПрдХ рдХрджрдо рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдФрд░ рдПрдХ рднрдпрд╛рдирдХ рд░реЗрдкреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: https://github.com/yarnpkg/yarn/issues/761#issuecomment -265823529
@bestander рдХреНрдпрд╛ рдЖрдкрдиреЗ https://github.com/yarnpkg/yarn/issues/761#issuecomment -268130124 рдХреА рднреА рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪ рдХреА рд╣реИ?
@adamreisnz , рдХреНрдпрд╛ рдЖрдк рдкреИрдХреЗрдЬ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рдлрд┐рд░ рд╕реЗ рдХрд░реЗрдВ?
https://github.com/yarnpkg/yarn/issues/761#issuecomment -268130124 рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реИред
рд╡рд╣ рдПрдХ yarn install --production
рд▓рд┐рдП рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред
рдпрд╣ рдореБрджреНрджрд╛ рд▓рдЧрднрдЧ yarn install --production
рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╕рд╣реА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред
@bestander рдореИрдВрдиреЗ рдЗрд╕реЗ рдиреАрдЪреЗ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рд╣реИ, https://github.com/yarnpkg/yarn/issues/761#issuecomment -268201708, рдЪреАрдпрд░реНрд╕
рдЕрднреА рднреА рдореЗрд░реЗ рд▓рд┐рдП рдорд╛рд╕реНрдЯрд░ (c98df16b) рдХреЗ рд╕рд╛рде рдЕрд╕рдлрд▓ ...
yarn check --verify-tree
рдлреЗрдВрдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдЖрд╢рд╛рдЬрдирдХ рд╣реИред рдЙрди рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рджреЗрд╡ рдбреЗрдк рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╣реИрдВред
yarn check v0.20.0-0
error "babel-preset-es2015" not installed
error "browserify-middleware" not installed
error "cheerio" not installed
error "codeceptjs" not installed
error "del-cli" not installed
error "eslint" not installed
error "eslint-config-finn" not installed
error "espower-loader" not installed
error "hashmark" not installed
error "interfake" not installed
error "nightmare" not installed
error "nightmare-upload" not installed
error "nock" not installed
error "nodemon" not installed
error "nyc" not installed
error "power-assert" not installed
error "sinon" not installed
error "supertest" not installed
error "uglifyify" not installed
error "@finn-no/express-base#nunjucks#chokidar#anymatch" not installed
error "@finn-no/express-base#unleash-client#request#json-stringify-safe" not installed
error "@finn-no/express-base#pretty-error#renderkid#css-select#domutils#dom-serializer#entities" not installed
error Found 22 errors.
рдРрдк рдХреЛ рдЪрд▓рд╛рдиреЗ рдкрд░, рдпрд╣ рдХрд┐рд╕реА рднреА рдЕрдиреБрдкрд▓рдмреНрдз рдХреЛ рд╡рд┐рдлрд▓ рдХрд░ рджреЗрддрд╛ рд╣реИред
npm ls
рдЕрдиреНрдп рд▓рд╛рдкрддрд╛ рдбрд┐рдкреНрд╕ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ
npm ERR! extraneous: [email protected] /Users/simbekkh/repos/frontpage/node_modules/node-pre-gyp
npm ERR! missing: anymatch@^1.3.0, required by [email protected]
npm ERR! missing: entities@~1.1.1, required by [email protected]
npm ERR! missing: json-stringify-safe@~5.0.1, required by [email protected]
рдФрд░ рдпрд╣ рдореБрджреНрджреЗ рдХрд╛ рдЕрд╡рд▓реЛрдХрди / рдХрд╛рд░рдг рдерд╛: https://github.com/yarnpkg/yarn/issues/761#issuecomment -268331340
рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдореВрд▓ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЧреВрдЧрд▓-рдХреНрд▓рд╛рдЙрдб рдФрд░ / рдпрд╛ рдмреИрдмреЗрд▓-рдХреНрд▓реА рдХреЗ рдмрдЬрд╛рдп nopt istanbul рдкреИрдХреЗрдЬ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реАрд▓рд┐рдП рдЗрд╕реЗ рдЙрддреНрдкрд╛рджрди рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ istanbul рдПрдХ рдкреНрд░реЛрдбрдХреНрдЯ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реИред
рдУрд╣, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, @SimenB
yarn check --prodution --verify-tree
рдореИрдВ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгреА рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реВрдВрдЧрд╛
yarn check --verify-tree --production
рдПрдХ рдЕрдЪреНрдЫрд╛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрддрд╛ рд╣реИ (рдпрд╣ npm ls
рд╕рд╣рдордд рд╣реИ):
yarn check v0.20.0-0
error "@finn-no/express-base#nunjucks#chokidar#anymatch" not installed
error "@finn-no/express-base#unleash-client#request#json-stringify-safe" not installed
error "@finn-no/express-base#pretty-error#renderkid#css-select#domutils#dom-serializer#entities" not installed
error Found 3 errors.
@bestander рдореИрдВ рдЖрдкрдХреЛ рдИрдореЗрд▓ рднреЗрдЬреВрдБрдЧрд╛ рдкреИрдХреЗрдЬ, рдпрд╛рд░реНрди, рдпрд╛рд░реНрдиред рдФрд░ рд╡рд░реНрдмреЛрдЬрд╝ рд╕реНрдерд╛рдкрд┐рдд рд▓реЙрдЧ you
@dashmug рдХреНрдпрд╛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВ рдЙрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдЯрд┐рдХрдЯ рдмрдирд╛рдКрдВ? рдпрд╣ рдЕрднреА рднреА рдЧрд▓рдд рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП), рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рдЯрд┐рдХрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред
@bestander рдИрдореЗрд▓ рднреЗрдЬрд╛ рдЧрдпрд╛ред
рдЬрдмрдХрд┐ @finn-no/express-base
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ, рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдЕрдиреНрдп 3 рдкреИрдХреЗрдЬ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдк рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдХреНрдпрд╛ рдореБрдЭреЗ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП?
@adamreisnz , рдХреНрдпрд╛ рдЖрдк рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?
рдореИрдВ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдпрд╣ рд╢реАрд░реНрд╖рдХ рдПрдХ рд╕реЗ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реИ
рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рд╢рд╛рдпрдж рд╡рд╣реА рдХрд╛рд░рдгред рдмрд╕ рдПрдХ рдЕрд▓рдЧ рд▓рдХреНрд╖рдг рд╣реИред рдореИрдВ рдЗрд╕реЗ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджреЗ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦреВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╡реИрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╢реАрд░реНрд╖рдХ рдХрд╣рддрд╛ рд╣реИред
@SimenB , рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдПрдХ рдирдЬрд╝рд░ рд╣реЛрдЧрд╛
рдареАрдХ рд╣реИ рд▓реЛрдЧ рдХрд░реЗрдВрдЧреЗред
@bestander рдПрдХ рдкреИрдХреЗрдЬ wth рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рд╕рд┐рд░реНрдл 3 рд╣реА рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбрд┐рдкреЛ рдХреЗ рд╕рд╛рде рдорд╛рд╕реНрдЯрд░ рдкрд░ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдиреНрдпреВрдирддрдо рдкреНрд░рдЬрдирди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА
{
"name": "app",
"version": "1.0.0",
"dependencies": {
"brakes": "^2.5.1",
"compression": "^1.6.2",
"envalid": "^2.4.0",
"express": "^4.14.0",
"object.entries": "^1.0.4",
"prom-client": "^7.0.0",
"response-time": "^2.3.2",
"spaden": "^7.13.1",
"yarn-issue-repro-package": "^1.0.0"
},
"devDependencies": {
"babel-preset-es2015": "^6.18.0",
"browserify": "^13.1.1",
"browserify-middleware": "^7.1.0",
"cheerio": "^0.22.0",
"codeceptjs": "^0.4.13",
"del-cli": "^0.2.1",
"eslint": "^3.12.2",
"eslint-config-finn": "^1.0.1",
"espower-loader": "^1.0.1",
"hashmark": "^4.1.0",
"interfake": "^1.19.0",
"mocha": "^3.2.0",
"nightmare": "^2.9.0",
"nightmare-upload": "^0.1.1",
"nock": "^9.0.2",
"nodemon": "^1.11.0",
"nyc": "^10.0.0",
"power-assert": "^1.4.1",
"sinon": "^1.17.6",
"supertest": "^2.0.1",
"uglify-js": "^2.7.5",
"uglifyify": "^3.0.4"
}
}
package.json
yarn-issue-repro-package
{
"name": "yarn-issue-repro-package",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"dependencies": {
"nunjucks": "^2.5.2",
"pretty-error": "^2.0.2",
"unleash-client": "^1.0.0-beta.7"
}
}
рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдпрд╣ 3 рдХреЗ рдмрдЬрд╛рдп 4 рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди ...
$ yarn check v0.20.0-0 тФВтФЬтФА [email protected]
error "yarn-issue-repro-package#nunjucks#chokidar#anymatch" not installed тФВтФФтФА [email protected]
error "yarn-issue-repro-package#unleash-client#request#json-stringify-safe" not installed тФВтЬи Done in 2.65s.
error "yarn-issue-repro-package#nunjucks#yargs#string-width#code-point-at" not installed тФВ ~/repos/yarn-issue-repro-package юВ░ vim package.json
error "yarn-issue-repro-package#pretty-error#renderkid#css-select#domutils#dom-serializer#entities" not installed тФВ ~/repos/yarn-issue-repro-package юВ░ npm publish
error Found 4 errors.
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЖрдЙрдЯрдкреБрдЯ (0.19.1 рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг) рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдореВрд▓ рдХрд╛рд░рдг рдвреВрдВрдв рд▓рд┐рдпрд╛ рд╣реИред
рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓рддрд╛ рдХреЛ рдирд┐рдореНрди рдкреИрдХреЗрдЬ рджреНрд╡рд╛рд░рд╛ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
{ "dependencies": {
"bcrypt": "^1.0.1",
"gamepad": "1.4.2"
},
"devDependencies": {
"istanbul": "^1.0.0-alpha.2"
}
}
рдФрд░ рдлрд┐рд░ рдЖрдЬреНрдЮрд╛
rm -rf node_modules yarn.lock
yarn install
rm -rf node_modules
yarn install --production
npm ls abbrev
рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ, abbrev
рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИред
abbrev
рдХрд╛ рдЙрдкрдпреЛрдЧ istanbul
рдФрд░ nopt
рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ yarn why abbrev
рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред nopt
istanbul
рдФрд░ node-pre-gyp
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ bcrypt
рдФрд░ gamepad
)ред
рдЬрдм рдкреИрдХреЗрдЬ рд╣реЛрд┐рд╕реНрдЯрд░ рдореЗрдВ abbrev
рдШрдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрддреНрдерд╛рдкрди рд░рд┐рдХреЙрд░реНрдб рдХреЗ рдирдП isIgnored рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
// switch to non ignored if earlier deduped version was ignored
if (existing.isIgnored() && !info.isIgnored()) {
existing.isIgnored = info.isIgnored;
}
abbrev
рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рдЙрддреНрдерд╛рдкрди рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред рдЙрд╕ рд╕рдордп, рдореМрдЬреВрджрд╛ рд░рд┐рдХреЙрд░реНрдб istanbul#abbrev
(рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ istanbul
рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ), рдФрд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд░рд┐рдХреЙрд░реНрдб istanbul#nopt#abbrev
, рдЬрд┐рд╕реЗ рдЙрд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рднреА рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред ред
рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕ рд╕рдордп рджреЛрдиреЛрдВ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдирджреЗрдЦрд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ - рдЬреИрд╕рд╛ рдХрд┐ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ - рдХреНрдпреЛрдВрдХрд┐ nopt
node-pre-gyp
рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдХрд╛рд░рдг рдмрд╛рдж рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдореЗрдВ рдЧреИрд░-рдЕрдирджреЗрдЦрд╛ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдХрд┐рд╕реА рднреА рд╕рдордп рджреЛрдиреЛрдВ рд░рд┐рдХреЙрд░реНрдб рдХреА рдЕрдирджреЗрдЦреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рд╕рдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирдП рдЕрдирджреЗрдЦреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЙрдиреНрд╣реЗрдВ рдорд┐рд╢реНрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕реНрдерд╛рдкрдирд╛ рдХреА рд╕рдорд╕реНрдпрд╛ рджреВрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИ рдЬрдм рд╣рдо рдЙрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ
// switch to non ignored if earlier deduped version was ignored
if (existing.isIgnored()) {
if (info.isIgnored()) {
// both are ignored now, but any one could become non ignored later on.
let oldIsIgnored = existing.isIgnored;
existing.isIgnored = () => oldIsIgnored() && info.isIgnored();
} else {
existing.isIgnored = info.isIgnored;
}
}
@blexrob , рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ!
рдХреНрдпрд╛ рдЖрдк рдПрдХ рдкреАрдЖрд░ рднреЗрдЬреЗрдВрдЧреЗ?
рдПрдХреАрдХрд░рдг рдореЗрдВ "- рдЕрдкрдЪрдпрди рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рдЦреЛрдиреА рдЪрд╛рд╣рд┐рдП" рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдХреНрд╖рдо рдкрд░реАрдХреНрд╖рд╛ рд╣реИред рдЬреЛ рдЕрднреА рддрдп рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП
@bestander , рдмрд╕ рдЗрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдлрд┐рдХреНрд╕ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдП рдЧрдП рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрдХреНрд░ рдкреЙрдк рдЕрдк:
d#es5-ext -> es6-symbol#es5-ext -> es6-set#es5-ext -> es6-iterator#es5-ext -> es6-map#es5-ext -> es5-ext#es6-iterator -> es6-set#es6-iterator -> es6-weak-map#es6-iterator -> event-emitter#es5-ext -> d#es5-ext
рддреЛ, рднреЛрд▓реА рдкреБрдирд░рд╛рд╡рд░реНрддреА рдХреЙрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдмрд╛рд╣рд░ рд╣реИ ...
рд╣рд╛рдБ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдЯреНрд╡рд┐рдХ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рдЪрд╛рд░ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИ
рдореБрдЭреЗ рдпрд╛рд░реНрди 0.27.5-1 рдХреЗ рд╕рд╛рде phantomjs-prebuilt
рдореЙрдбреНрдпреВрд▓ (рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ) рдХреЗ рд╕рд╛рде рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рд╣реИред
рддреЛ рдЕрдм рдореИрдВ рдбрдореА рдХрд░ yarn add phantomjs-prebuilt
рд╕реЗ рдкрд╣рд▓реЗ, yarn install --production
ред
рдореБрдЭреЗ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдЦреЗрдж рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдпрд╛рд░реНрди 1.3.2 рдореЗрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд▓рдЧрддреА рд╣реИред
Netlify рдкрд░ рдореЗрд░рд╛ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЬрдм рдореИрдВ рдпрд╛рд░реНрди 1.3.2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╛рд░реНрди 0.18.2 рдХреЗ рд╕рд╛рде рд╕рдлрд▓ рд░рд╣рд╛ред
рдПрдХ cannot find module 'are-we-there-yet'
рдФрд░ рдХреЗрд╡рд▓ рдЙрддреНрдкрд╛рджрди рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдгред
@adamreisnz , рдпрд╣ рдзрд╛рдЧрд╛ рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИред
рдХреНрдпрд╛ рдЖрдк рд░реЗрдкреНрд░реЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдЙрдард╛ рд╕рдХрддреЗ рд╣реИрдВ?
@ рдПрд╕реНрдмреИрдВрдбрд░ рдХрд┐рдпрд╛, рдзрдиреНрдпрд╡рд╛рджред
рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЬреЛ рдЕрднреА рднреА рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ jq рдЪрд╛рд╣рддреЗ рд╣реИрдВ
$ python -c "import json; p = json.loads(open('package.json').read()); del p['devDependencies']; open('package.json', 'w').write(json.dumps(p, indent=2));"
рдореИрдВ рдпрд╛рд░реНрди 1.17.3
рдФрд░ рдиреЛрдб v10.16.2
lerna
рдореЛрдиреЛрд░рдкреЛ рдореЗрдВ рд╣реВрдВред рдЕрднреА рднреА рдЙрд╕реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред
рдореИрдВ рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред
рдореЗрд░реЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ yarn install --production
рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдХреЗрд╡рд▓ рджреЛ рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдкрд░ рдПрдХ Lerna рдпрд╛рд░реНрди рдХрд╛рд░реНрдпрд╕реНрдерд╛рдиреЛрдВ, рдЬреЛ рдЪрд░рдо рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдордЭрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреЗ рд╕рд╛рде @hannadrehman рдХреЗ рд╕рдорд╛рди monorepo рд╣реВрдБред
рдпрд╛рд░реНрди рд╕рдВрд╕реНрдХрд░рдг: 1.22.0
рдиреЛрдб: v12.16.1
npm install --production
рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
@hannadrehman рдЖрдкрдХреЗ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рдкреИрдХреЗрдЬ рдХрд╛ рдкреНрд░рд╢реНрди рд╣реИ?
@ TAnas0 рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╣реЗ рд╕рдм рд▓реЛрдЧ, рдЦреЗрдж рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рд╣реИред
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреБрдж рдХреЛ рд╕реМрдВрдкреВрдВрдЧрд╛ рдФрд░ рдЕрдм рдпрд╣ рдПрдХ рдЙрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИ, рдореИрдВ рдЗрд╕реЗ рдЫреБрдЯреНрдЯрд┐рдпреЛрдВ рдХреЗ рджреМрд░рд╛рди рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред
рдкреГрдердХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдЯреЗрд╕реНрдЯ рдпрд╛ рдлрд┐рдХреНрд╕ (рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ) рдХреЗ рд╕рд╛рде рд╕рд╣рд╛рдпрддрд╛ рдФрд░ рдкреАрдЖрд░рдПрд╕ рдХрд╛ рдмрд╣реБрдд рд╕реНрд╡рд╛рдЧрдд рд╣реИред