Skip to content

Instantly share code, notes, and snippets.

@therightstuff
Created February 20, 2022 08:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save therightstuff/bec06fdb006effbba51b323204660813 to your computer and use it in GitHub Desktop.
Save therightstuff/bec06fdb006effbba51b323204660813 to your computer and use it in GitHub Desktop.
Fixing polyfill incompatibilities for webpack 5 in create-react-app

Fixing polyfill incompatibilities after upgrading to webpack 5 in create-react-app

After upgrading to the latest dependencies, I encountered the following errors:

'buffer' resolution

ERROR in ./node_modules/safe-buffer/index.js 2:13-30

Module not found: Error: Can't resolve 'buffer' in '/Users/geek.neo/propolis-portal/node_modules/safe-buffer'

BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.

If you want to include a polyfill, you need to:
	- add a fallback 'resolve.fallback: { "buffer": require.resolve("buffer/") }'
	- install 'buffer'
If you don't want to include a polyfill, you can use an empty module like this:
	resolve.fallback: { "buffer": false }

This was resolved simply by installing the buffer package with npm install -D buffer.

'fs' resolution

ERROR in ./node_modules/line-navigator/file-wrapper.js 9:16-29

Module not found: Error: Can't resolve 'fs' in '/Users/geek.neo/propolis-portal/node_modules/line-navigator'

This was resolved by setting a webpack fallback in the craco configuration, see craco.config.js in this gist.

module.exports = {
style: {
postcssOptions: {
plugins: [
require('tailwindcss'),
require('autoprefixer'),
],
},
},
webpack: {
configure: (webpackConfig, { env, paths }) => {
// eslint-disable-next-line no-param-reassign
webpackConfig.resolve.fallback = {
fs: false,
};
return webpackConfig;
},
},
}
@kojinkai
Copy link

Worked for me thanks 👍

@therightstuff
Copy link
Author

Glad to hear it!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment