What happened
I've just upgraded gatsby 2 -> 3.
Under the hood it now uses webpack 5 instead of 4 and now gives a dependency warning outstanding I just can't get rid of - raw-loader
is installed as a dependency of both the main project and of gatsby even though it's the same version.
I've tried specifying a yarn resolution in my package.json
, which looks like this:
"resolutions": {
"raw-loader": "4.0.2"
},
But that doesn't seem to do anything. I've also tried:
"resolutions": {
"gatsby/raw-loader": "4.0.2"
},
The full output
β Caching HTML renderer compilation
<w> [webpack.cache.PackFileCacheStrategy/webpack.FileSystemInfo] Resolving 'raw-loader/dist/cjs' in /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/loader-runner/lib for build dependencies doesn't lead to expected result '/Users/myname/source/octue/planex-site/node_modules/raw-loader/dist/cjs.js', but to '/Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/raw-loader/dist/cjs.js' instead. Resolving dependencies are ignored for this path.
<w> at unknown 4 raw-loader/dist/cjs
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/loader-runner/lib/loadLoader.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/loader-runner/lib/loadLoader.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/loader-runner/lib/LoaderRunner.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/loader-runner/lib/LoaderRunner.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/webpack/lib/NormalModule.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/webpack/lib/NormalModule.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/webpack/lib/index.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/node_modules/webpack/lib/index.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/internal-plugins/functions/gatsby-node.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/internal-plugins/functions/gatsby-node.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/resolve-module-exports.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/resolve-module-exports.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-plugins/validate.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-plugins/validate.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-plugins/index.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-plugins/index.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-config-and-plugins.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/bootstrap/load-config-and-plugins.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/child/load-config-and-plugins.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/child/load-config-and-plugins.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/child/index.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/child/index.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby-worker/dist/index.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby-worker/dist/index.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/messaging.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/worker/messaging.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/jobs/worker-messaging.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/jobs/worker-messaging.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/redux/actions/public.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/redux/actions/public.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/redux/actions/index.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/redux/actions/index.js
<w> at file dependencies /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/webpack.config.js
<w> at file /Users/myname/source/octue/planex-site/node_modules/gatsby/dist/utils/webpack.config.js
Output of yarn why
$ yarn why raw-loader
yarn why v1.22.10
[1/4] π€ Why do we have the module "raw-loader"...?
[2/4] π Initialising dependency graph...
[3/4] π Finding dependency...
[4/4] π‘ Calculating file sizes...
=> Found "[email protected]"
info Reasons this module exists
- "gatsby" depends on it
- Hoisted from "gatsby#raw-loader"
- Hoisted from "@storybook#addon-docs#@storybook#builder-webpack4#raw-loader"
info Disk size without dependencies: "32KB"
info Disk size with unique dependencies: "240KB"
info Disk size with transitive dependencies: "2.92MB"
info Number of shared dependencies: 14
The question
How can I correctly configure either gatsby or my package.json or whatever to resolve this correctly?