Que signifie npm par "sauter la dépendance optionnelle échouée"?

Dernière version de node et npm causant des problèmes dans l'exécution de karma. Lorsque j'essaie d'installer karma-cli npm i -g karma karma-cli, je reçois l'avertissement suivant:

npm WARN optional Skipping failed optional dependency /chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: fsevents@1.0.8
npm WARN optional Skipping failed optional dependency /gulp-karma/chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: fsevents@0.2.1

Et lorsque j'essaie d'exécuter karma test, j'obtiens l'erreur suivante:

"C:Program Filesnodejsnode.exe" "C:Program Files (x86)JetBrainsWebStorm 11.0.3pluginsjs-karmajs_reporterkarma-intellijlibintellijServer.js" --karmaPackageDir=C:UsersxxxAppDataRoamingnpmnode_moduleskarma --configFile=C:UsersxxxDocumentsprojectkarma.conf.js
26 02 2016 11:24:07.871:WARN [plugin]: Cannot find plugin "karma-chrome-launcher".
  Did you forget to install it ?
  npm install karma-chrome-launcher --save-dev
26 02 2016 11:24:07.877:WARN [plugin]: Cannot find plugin "karma-firefox-launcher".
  Did you forget to install it ?
  npm install karma-firefox-launcher --save-dev
26 02 2016 11:24:07.878:WARN [plugin]: Cannot find plugin "karma-phantomjs-launcher".
  Did you forget to install it ?
  npm install karma-phantomjs-launcher --save-dev
26 02 2016 11:24:07.879:WARN [plugin]: Cannot find plugin "karma-jasmine".
  Did you forget to install it ?
  npm install karma-jasmine --save-dev
26 02 2016 11:24:07.880:WARN [plugin]: Cannot find plugin "karma-junit-reporter".
  Did you forget to install it ?
  npm install karma-junit-reporter --save-dev
26 02 2016 11:24:07.885:WARN [plugin]: Cannot find plugin "karma-teamcity-reporter".
  Did you forget to install it ?
  npm install karma-teamcity-reporter --save-dev
26 02 2016 11:24:07.887:WARN [plugin]: Cannot find plugin "karma-coverage".
  Did you forget to install it ?
  npm install karma-coverage --save-dev
26 02 2016 11:24:07.888:WARN [plugin]: Cannot find plugin "karma-jasmine-html-reporter".
  Did you forget to install it ?
  npm install karma-jasmine-html-reporter --save-dev
26 02 2016 11:24:07.889:WARN [plugin]: Cannot find plugin "karma-ng-html2js-preprocessor".
  Did you forget to install it ?
  npm install karma-ng-html2js-preprocessor --save-dev
26 02 2016 11:24:07.890:WARN [plugin]: Cannot find plugin "karma-browserify".
  Did you forget to install it ?
  npm install karma-browserify --save-dev
26 02 2016 11:24:07.893:WARN [preprocess]: Can not load "coverage", it is not registered!
  Perhaps you are missing some plugin?
26 02 2016 11:24:07.893:WARN [preprocess]: Can not load "ng-html2js", it is not registered!
  Perhaps you are missing some plugin?
26 02 2016 11:24:07.893:WARN [preprocess]: Can not load "browserify", it is not registered!
  Perhaps you are missing some plugin?
26 02 2016 11:24:07.901:WARN [reporter]: Can not load "coverage", it is not registered!
  Perhaps you are missing some plugin?
26 02 2016 11:24:07.901:WARN [reporter]: Can not load "junit", it is not registered!
  Perhaps you are missing some plugin?
C:UsersxxxAppDataRoamingnpmnode_moduleskarmanode_modulesdilibinjector.js:9
      throw error('No provider for "' + name + '"!');
      ^

Error: No provider for "framework:jasmine"! (Resolving: framework:jasmine)
    at error (C:UsersxxxAppDataRoamingnpmnode_moduleskarmanode_modulesdilibinjector.js:22:12)
    at Object.parent.get (C:UsersxxxAppDataRoamingnpmnode_moduleskarmanode_modulesdilibinjector.js:9:13)
    at get (C:UsersxxxAppDataRoamingnpmnode_moduleskarmanode_modulesdilibinjector.js:54:19)
    at C:UsersxxxAppDataRoamingnpmnode_moduleskarmalibserver.js:138:20
    at Array.forEach (native)
    at Server._start (C:UsersxxxAppDataRoamingnpmnode_moduleskarmalibserver.js:137:21)
    at invoke (C:UsersxxxAppDataRoamingnpmnode_moduleskarmanode_modulesdilibinjector.js:75:15)
    at Server.start (C:UsersxxxAppDataRoamingnpmnode_moduleskarmalibserver.js:102:18)
    at Object.<anonymous> (C:Program Files (x86)JetBrainsWebStorm 11.0.3pluginsjs-karmajs_reporterkarma-intellijlibintellijServer.js:12:13)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Function.Module.runMain (module.js:442:10)
    at startup (node.js:136:18)
    at node.js:966:3

Process finished with exit code 1

MA spécification de configuration comme suit:

Version du nœud: v4.3.0
version NPM: 3.7.3

Je ne suis pas en mesure d'installer la version karma, je pense qu'elle n'est pas installée correctement dans ma machine.

24
demandé sur halfer 2016-02-26 09:07:57

1 réponses

Ce n'est pas une erreur. C'est un avertissement que fseventsd, qui est spécifique à Mac OS, ne peut pas être installé sur Linux.

Il N'y a pas besoin d'être alarmé, et le paquet qui a besoin de fsevents fonctionnera toujours - c'est pourquoi c'est une dépendance facultative.

Comme beaucoup de gens sont confus à ce sujet (d'autant plus que ce utilisé pour être une erreur réelle, pas un avertissement) il y a un bug ouvert pour faire de l'avertissement actuel une INFO à la place

En plus yarn le fait déjà.

36
répondu mikemaccana 2018-04-18 09:03:53