#angularjs #node.js #npm #yeoman-generator-angular
#angularjs #node.js #npm #yeoman-generator-angular
Вопрос:
Я не понимаю следующего:
tuxiboy@C:~/Downloads$ sudo npm install -g graceful-fs graceful-fs@latest
/usr/lib
└── graceful-fs@4.1.9
tuxiboy@C:~/Downloads$ sudo npm install -g minimatch minimatch@latest
/usr/lib
└── minimatch@3.0.3
tuxiboy@C:~/Downloads$ sudo npm install -g generator-karma generator-karma@latest
npm WARN deprecated cross-spawn-async@2.2.4: cross-spawn no longer requires a build toolchain, use it instead!
/usr/lib
└── generator-karma@2.0.0
tuxiboy@C:~/Downloads$ sudo npm update minimatch
tuxiboy@C:~/Downloads$ sudo npm update graceful-fs
tuxiboy@C:~/Downloads$ sudo npm update generator-karma
tuxiboy@C:~/Downloads$ sudo npm install npm@latest -g
/usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js
/usr/lib
└── npm@3.10.8
tuxiboy@C:~/Downloads$ sudo npm install -g generator-angular generator-angular@latest
npm WARN deprecated graceful-fs@2.0.3: 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.
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated CSSselect@0.4.1: the module is now available as 'css-select'
npm WARN deprecated CSSwhat@0.4.7: the module is now available as 'css-what'
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated tough-cookie@0.9.15: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
/usr/lib
├── generator-angular@0.15.1
└── UNMET PEER DEPENDENCY generator-karma@>=0.9.0
npm WARN generator-angular@0.15.1 requires a peer of generator-karma@>=0.9.0 but none was installed.
tuxiboy@C:~/Downloads$ npm -g list minimatch
/usr/lib
├─┬ generator-angular@0.15.1
│ ├─┬ wiredep@2.2.2
│ │ └─┬ glob@4.5.3
│ │ └── minimatch@2.0.10
│ └─┬ yeoman-generator@0.16.0
│ ├─┬ file-utils@0.1.5
│ │ ├─┬ glob@3.2.11
│ │ │ └── minimatch@0.3.0
│ │ └── minimatch@0.2.14
│ ├─┬ findup-sync@0.1.3
│ │ └─┬ glob@3.2.11
│ │ └── minimatch@0.3.0
│ └─┬ glob@3.2.11
│ └── minimatch@0.3.0
├─┬ generator-karma@2.0.0
│ └─┬ yeoman-generator@0.22.6
│ └─┬ glob@6.0.4
│ └── minimatch@3.0.3
├─┬ grunt-cli@1.2.0
│ └─┬ findup-sync@0.3.0
│ └─┬ glob@5.0.15
│ └── minimatch@3.0.3
├── minimatch@3.0.3
└─┬ npm@3.10.8
├─┬ fstream-npm@1.2.0
│ └─┬ fstream-ignore@1.0.5
│ └── minimatch@3.0.3
├─┬ glob@7.0.6
│ └── minimatch@3.0.3
├─┬ init-package-json@1.9.4
│ └─┬ glob@6.0.4
│ └── minimatch@3.0.3
├─┬ node-gyp@3.4.0
│ └── minimatch@3.0.3
└─┬ read-package-json@2.0.4
└─┬ glob@6.0.4
└── minimatch@3.0.3
tuxiboy@C:~/Downloads$ npm -g list graceful-fs
/usr/lib
├─┬ generator-angular@0.15.1
│ ├─┬ wiredep@2.2.2
│ │ └─┬ bower-config@0.5.2
│ │ └── graceful-fs@2.0.3
│ └─┬ yeoman-generator@0.16.0
│ └─┬ download@0.1.19
│ └─┬ decompress@0.2.5
│ └─┬ tar@0.1.20
│ └─┬ fstream@0.1.31
│ └── graceful-fs@3.0.11
├─┬ generator-karma@2.0.0
│ └─┬ yeoman-generator@0.22.6
│ └─┬ download@4.4.3
│ └─┬ vinyl-fs@2.4.3
│ └── graceful-fs@4.1.9
├── graceful-fs@4.1.9
└─┬ npm@3.10.8
└── graceful-fs@4.1.6
tuxiboy@C:~/Downloads$ npm -g list generator-karma
/usr/lib
└── generator-karma@2.0.0
tuxiboy@C:~/Downloads$ npm -v
3.10.8
Похоже, у меня есть генератор-карма в новейшей generator-karma@2.0.0 версия, но все равно он жалуется, что я использую слишком старую версию!
Что касается minimatch и graceful-fs, то в разделе ‘generator-angular@0.15.1 «это показывает версию minimatch@2.0.10 и graceful-fs@2.0.3 , но в других местах, похоже, есть minimatch@3.0.3 и graceful-fs@4.1.9 !
Ответ №1:
Прежде всего, это просто предупреждения.
Вы устанавливаете на свой компьютер последние версии minimatch и т. Д. Глобально. Но предупреждения связаны с деревом зависимостей generator-angular, т. Е. generator-angular имеет зависимости, которые зависят от более старых версий minimatch и т. Д. … Отсюда и предупреждения.
например, в этой части дерева:
├─┬ generator-angular@0.15.1
│ ├─┬ wiredep@2.2.2
│ │ └─┬ glob@4.5.3
│ │ └── minimatch@2.0.10
│ └─┬ yeoman-generator@0.16.0
│ ├─┬ file-utils@0.1.5
│ │ ├─┬ glob@3.2.11
│ │ │ └── minimatch@0.3.0
│ │ └── minimatch@0.2.14
│ ├─┬ findup-sync@0.1.3
│ │ └─┬ glob@3.2.11
│ │ └── minimatch@0.3.0
│ └─┬ glob@3.2.11
│ └── minimatch@0.3.0
вы видите, что извлекаются более старые версии minimatch.