neutrinojs / neutrino

Create and build modern JavaScript projects with zero initial configuration.
https://neutrinojs.org
Mozilla Public License 2.0
3.95k stars 214 forks source link

Fix yarn "unmet peer dependency" warnings #751

Closed edmorley closed 6 years ago

edmorley commented 6 years ago

yarn is more fussy about peer dependencies than npm, in that it doesn't take into account that dependencies are being hoisted, so warns if a peerDependency is not explicitly specified at the top level (see yarnpkg/yarn#4675).

Some of the Neutrino packages trigger this case, so result in noisy yarn warnings that don't mean anything is broken, but that can confuse the user (and results in things like Heroku's nodejs buildpack outputting an extra warning suggesting it might be the cause of problems).

Whilst this is isn't our fault we should add some additional (duplicate) dependency declarations to avoid these warnings.

$ yarn add neutrino @neutrinojs/react
...
warning "@neutrinojs/react > @neutrinojs/compile-loader > babel-loader@7.1.4" has unmet peer dependency "webpack@2 || 3 || 4".
warning "@neutrinojs/react > eslint-plugin-react@7.7.0" has unmet peer dependency "eslint@^3.0.0 || ^4.0.0".
$ yarn add neutrino @neutrinojs/preact
...
warning "@neutrinojs/preact > eslint-plugin-react@7.7.0" has unmet peer dependency "eslint@^3.0.0 || ^4.0.0".
warning "@neutrinojs/preact > @neutrinojs/compile-loader > babel-loader@7.1.4" has unmet peer dependency "webpack@2 || 3 || 4".
$ yarn add neutrino @neutrinojs/vue
...
warning "@neutrinojs/vue > eslint-plugin-react@7.7.0" has unmet peer dependency "eslint@^3.0.0 || ^4.0.0".
warning "@neutrinojs/vue > eslint-plugin-vue > vue-eslint-parser@2.0.3" has unmet peer dependency "eslint@>=3.9.0".
warning "@neutrinojs/vue > eslint-plugin-vue@4.3.0" has unmet peer dependency "eslint@^3.18.0 || ^4.0.0".
warning "@neutrinojs/vue > vue-loader@13.7.1" has unmet peer dependency "css-loader@*".
$ yarn add neutrino @neutrinojs/airbnb
...
warning "@neutrinojs/airbnb > eslint-config-airbnb > eslint-config-airbnb-base@12.1.0" has unmet peer dependency "eslint@^4.9.0".
warning "@neutrinojs/airbnb > eslint-config-airbnb@16.1.0" has unmet peer dependency "eslint-plugin-react@^7.4.0".
warning "@neutrinojs/airbnb > eslint-config-airbnb@16.1.0" has unmet peer dependency "eslint@^4.9.0".
warning "@neutrinojs/airbnb > eslint-plugin-import@2.9.0" has unmet peer dependency "eslint@2.x - 4.x".
warning "@neutrinojs/airbnb > eslint-plugin-jsx-a11y@6.0.3" has unmet peer dependency "eslint@^3 || ^4".
$ yarn add neutrino @neutrinojs/airbnb-base
...
warning "@neutrinojs/airbnb-base > eslint-config-airbnb-base@12.1.0" has unmet peer dependency "eslint@^4.9.0".
warning "@neutrinojs/airbnb-base > eslint-plugin-import@2.9.0" has unmet peer dependency "eslint@2.x - 4.x".
$ yarn add neutrino @neutrinojs/standardjs
...
warning "@neutrinojs/standardjs > eslint-config-standard-jsx@4.0.2" has unmet peer dependency "eslint@>=3.19.0".
warning "@neutrinojs/standardjs > eslint-config-standard@10.2.1" has unmet peer dependency "eslint@>=3.19.0".
warning "@neutrinojs/standardjs > eslint-plugin-import@2.9.0" has unmet peer dependency "eslint@2.x - 4.x".
warning "@neutrinojs/standardjs > eslint-plugin-node@5.2.1" has unmet peer dependency "eslint@>=3.1.0".
warning "@neutrinojs/standardjs > eslint-plugin-react@7.7.0" has unmet peer dependency "eslint@^3.0.0 || ^4.0.0".
warning "@neutrinojs/standardjs > eslint-plugin-standard@3.0.1" has unmet peer dependency "eslint@>=3.19.0".
$ yarn add neutrino @neutrinojs/stylelint
...
warning "@neutrinojs/stylelint > stylelint-webpack-plugin@0.10.3" has unmet peer dependency "webpack@^3 || ^2 || ^2.2.0-rc.0 || ^2.1.0-beta.0 || ^1.13.2".
$ yarn add neutrino @neutrinojs/jest
...
warning "@neutrinojs/jest > eslint-plugin-jest@21.15.0" has unmet peer dependency "eslint@>=3.6".
mehta0056 commented 1 year ago

Hi, I am getting below error msg when I tried to install dependencies using yarn Install.

Some peer dependencies are incorrectly met; run yarn explain peer-requirements for details.