-
Notifications
You must be signed in to change notification settings - Fork 27k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add polyfill for process and Buffer in webpack 5 #15499
Add polyfill for process and Buffer in webpack 5 #15499
Conversation
Stats from current PRDefault Server Mode (Decrease detected ✓)General Overall increase
|
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
buildDuration | 15.1s | 14.6s | -526ms |
nodeModulesSize | 66.5 MB | 66.5 MB |
Page Load Tests Overall decrease ⚠️
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.493 | 2.438 | -0.05 |
/ avg req/sec | 1002.96 | 1025.53 | +22.57 |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.598 | 1.726 | |
/error-in-render avg req/sec | 1564.72 | 1448.04 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..7778.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-8da3811..3b61.js gzip | 6.72 kB | 6.72 kB | ✓ |
polyfills-05..1236.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-488d..c0e7.js gzip | 751 B | 751 B | ✓ |
Overall change | 87.6 kB | 87.6 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..dule.js gzip | 6.08 kB | 6.08 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-43a8e8b..dule.js gzip | 5.79 kB | 5.79 kB | ✓ |
polyfills-05..dule.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-4f62..dule.js gzip | 751 B | 751 B | ✓ |
Overall change | 82.6 kB | 82.6 kB | ✓ |
Client Pages
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-8f5f611..1f7b.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8e69b..8695.js gzip | 3.41 kB | 3.41 kB | ✓ |
hooks-f7f3d0..7465.js gzip | 887 B | 887 B | ✓ |
index-08fb3f..c0e9.js gzip | 227 B | 227 B | ✓ |
link-ddd176e..5566.js gzip | 1.29 kB | 1.29 kB | ✓ |
routerDirect..8aa1.js gzip | 284 B | 284 B | ✓ |
withRouter-f..e777.js gzip | 284 B | 284 B | ✓ |
Overall change | 7.66 kB | 7.66 kB | ✓ |
Client Pages Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-669dbe5..dule.js gzip | 626 B | 626 B | ✓ |
_error-663e6..dule.js gzip | 2.24 kB | 2.24 kB | ✓ |
hooks-805c40..dule.js gzip | 387 B | 387 B | ✓ |
index-6ba5a4..dule.js gzip | 226 B | 226 B | ✓ |
link-69bc264..dule.js gzip | 1.25 kB | 1.25 kB | ✓ |
routerDirect..dule.js gzip | 284 B | 284 B | ✓ |
withRouter-d..dule.js gzip | 282 B | 282 B | ✓ |
Overall change | 5.29 kB | 5.29 kB | ✓ |
Client Build Manifests
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_buildManifest.js gzip | 275 B | 275 B | ✓ |
_buildManife..dule.js gzip | 281 B | 281 B | ✓ |
Overall change | 556 B | 556 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
index.html gzip | 946 B | 946 B | ✓ |
link.html gzip | 953 B | 953 B | ✓ |
withRouter.html gzip | 940 B | 940 B | ✓ |
Overall change | 2.84 kB | 2.84 kB | ✓ |
Serverless Mode
General Overall increase ⚠️
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
buildDuration | 15.9s | 15.8s | -150ms |
nodeModulesSize | 66.5 MB | 66.5 MB |
Client Bundles (main, webpack, commons)
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..7778.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-8da3811..3b61.js gzip | 6.72 kB | 6.72 kB | ✓ |
polyfills-05..1236.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-488d..c0e7.js gzip | 751 B | 751 B | ✓ |
Overall change | 87.6 kB | 87.6 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..dule.js gzip | 6.08 kB | 6.08 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-43a8e8b..dule.js gzip | 5.79 kB | 5.79 kB | ✓ |
polyfills-05..dule.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-4f62..dule.js gzip | 751 B | 751 B | ✓ |
Overall change | 82.6 kB | 82.6 kB | ✓ |
Client Pages
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-8f5f611..1f7b.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8e69b..8695.js gzip | 3.41 kB | 3.41 kB | ✓ |
hooks-f7f3d0..7465.js gzip | 887 B | 887 B | ✓ |
index-08fb3f..c0e9.js gzip | 227 B | 227 B | ✓ |
link-ddd176e..5566.js gzip | 1.29 kB | 1.29 kB | ✓ |
routerDirect..8aa1.js gzip | 284 B | 284 B | ✓ |
withRouter-f..e777.js gzip | 284 B | 284 B | ✓ |
Overall change | 7.66 kB | 7.66 kB | ✓ |
Client Pages Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-669dbe5..dule.js gzip | 626 B | 626 B | ✓ |
_error-663e6..dule.js gzip | 2.24 kB | 2.24 kB | ✓ |
hooks-805c40..dule.js gzip | 387 B | 387 B | ✓ |
index-6ba5a4..dule.js gzip | 226 B | 226 B | ✓ |
link-69bc264..dule.js gzip | 1.25 kB | 1.25 kB | ✓ |
routerDirect..dule.js gzip | 284 B | 284 B | ✓ |
withRouter-d..dule.js gzip | 282 B | 282 B | ✓ |
Overall change | 5.29 kB | 5.29 kB | ✓ |
Client Build Manifests
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_buildManifest.js gzip | 275 B | 275 B | ✓ |
_buildManife..dule.js gzip | 281 B | 281 B | ✓ |
Overall change | 556 B | 556 B | ✓ |
Serverless bundles
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_error.js | 881 kB | 881 kB | ✓ |
404.html | 4.18 kB | 4.18 kB | ✓ |
hooks.html | 3.82 kB | 3.82 kB | ✓ |
index.js | 881 kB | 881 kB | ✓ |
link.js | 922 kB | 922 kB | ✓ |
routerDirect.js | 916 kB | 916 kB | ✓ |
withRouter.js | 916 kB | 916 kB | ✓ |
Overall change | 4.52 MB | 4.52 MB | ✓ |
Stats from current PRDefault Server Mode (Increase detected
|
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
buildDuration | 12.9s | 12.4s | -500ms |
nodeModulesSize | 66.5 MB | 66.5 MB |
Page Load Tests Overall increase ✓
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
/ failed reqs | 0 | 0 | ✓ |
/ total time (seconds) | 2.153 | 2.151 | 0 |
/ avg req/sec | 1161.24 | 1162.38 | +1.14 |
/error-in-render failed reqs | 0 | 0 | ✓ |
/error-in-render total time (seconds) | 1.459 | 1.444 | -0.02 |
/error-in-render avg req/sec | 1713.21 | 1731.49 | +18.28 |
Client Bundles (main, webpack, commons)
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..7778.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-eea7d2a..4017.js gzip | 6.72 kB | 6.72 kB | ✓ |
polyfills-05..1236.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-488d..c0e7.js gzip | 751 B | 751 B | ✓ |
Overall change | 87.6 kB | 87.6 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..dule.js gzip | 6.08 kB | 6.08 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-b12b7b0..dule.js gzip | 5.79 kB | 5.79 kB | ✓ |
polyfills-05..dule.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-4f62..dule.js gzip | 751 B | 751 B | ✓ |
Overall change | 82.6 kB | 82.6 kB | ✓ |
Client Pages
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-8f5f611..1f7b.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8e69b..8695.js gzip | 3.41 kB | 3.41 kB | ✓ |
hooks-f7f3d0..7465.js gzip | 887 B | 887 B | ✓ |
index-08fb3f..c0e9.js gzip | 227 B | 227 B | ✓ |
link-ddd176e..5566.js gzip | 1.29 kB | 1.29 kB | ✓ |
routerDirect..8aa1.js gzip | 284 B | 284 B | ✓ |
withRouter-f..e777.js gzip | 284 B | 284 B | ✓ |
Overall change | 7.66 kB | 7.66 kB | ✓ |
Client Pages Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-669dbe5..dule.js gzip | 626 B | 626 B | ✓ |
_error-663e6..dule.js gzip | 2.24 kB | 2.24 kB | ✓ |
hooks-805c40..dule.js gzip | 387 B | 387 B | ✓ |
index-6ba5a4..dule.js gzip | 226 B | 226 B | ✓ |
link-69bc264..dule.js gzip | 1.25 kB | 1.25 kB | ✓ |
routerDirect..dule.js gzip | 284 B | 284 B | ✓ |
withRouter-d..dule.js gzip | 282 B | 282 B | ✓ |
Overall change | 5.29 kB | 5.29 kB | ✓ |
Client Build Manifests
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_buildManifest.js gzip | 275 B | 275 B | ✓ |
_buildManife..dule.js gzip | 281 B | 281 B | ✓ |
Overall change | 556 B | 556 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
index.html gzip | 944 B | 944 B | ✓ |
link.html gzip | 954 B | 954 B | ✓ |
withRouter.html gzip | 939 B | 939 B | ✓ |
Overall change | 2.84 kB | 2.84 kB | ✓ |
Serverless Mode
General Overall increase ⚠️
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
buildDuration | 14.1s | 13.6s | -442ms |
nodeModulesSize | 66.5 MB | 66.5 MB |
Client Bundles (main, webpack, commons)
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..7778.js gzip | 10.2 kB | 10.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-eea7d2a..4017.js gzip | 6.72 kB | 6.72 kB | ✓ |
polyfills-05..1236.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-488d..c0e7.js gzip | 751 B | 751 B | ✓ |
Overall change | 87.6 kB | 87.6 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
677f882d2ed8..dule.js gzip | 6.08 kB | 6.08 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
main-b12b7b0..dule.js gzip | 5.79 kB | 5.79 kB | ✓ |
polyfills-05..dule.js gzip | 30.8 kB | 30.8 kB | ✓ |
webpack-4f62..dule.js gzip | 751 B | 751 B | ✓ |
Overall change | 82.6 kB | 82.6 kB | ✓ |
Client Pages
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-8f5f611..1f7b.js gzip | 1.28 kB | 1.28 kB | ✓ |
_error-8e69b..8695.js gzip | 3.41 kB | 3.41 kB | ✓ |
hooks-f7f3d0..7465.js gzip | 887 B | 887 B | ✓ |
index-08fb3f..c0e9.js gzip | 227 B | 227 B | ✓ |
link-ddd176e..5566.js gzip | 1.29 kB | 1.29 kB | ✓ |
routerDirect..8aa1.js gzip | 284 B | 284 B | ✓ |
withRouter-f..e777.js gzip | 284 B | 284 B | ✓ |
Overall change | 7.66 kB | 7.66 kB | ✓ |
Client Pages Modern
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_app-669dbe5..dule.js gzip | 626 B | 626 B | ✓ |
_error-663e6..dule.js gzip | 2.24 kB | 2.24 kB | ✓ |
hooks-805c40..dule.js gzip | 387 B | 387 B | ✓ |
index-6ba5a4..dule.js gzip | 226 B | 226 B | ✓ |
link-69bc264..dule.js gzip | 1.25 kB | 1.25 kB | ✓ |
routerDirect..dule.js gzip | 284 B | 284 B | ✓ |
withRouter-d..dule.js gzip | 282 B | 282 B | ✓ |
Overall change | 5.29 kB | 5.29 kB | ✓ |
Client Build Manifests
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_buildManifest.js gzip | 275 B | 275 B | ✓ |
_buildManife..dule.js gzip | 281 B | 281 B | ✓ |
Overall change | 556 B | 556 B | ✓ |
Serverless bundles
vercel/next.js canary | timneutkens/next.js add/webpack5-polyfills | Change | |
---|---|---|---|
_error.js | 881 kB | 881 kB | ✓ |
404.html | 4.18 kB | 4.18 kB | ✓ |
hooks.html | 3.82 kB | 3.82 kB | ✓ |
index.js | 881 kB | 881 kB | ✓ |
link.js | 922 kB | 922 kB | ✓ |
routerDirect.js | 916 kB | 916 kB | ✓ |
withRouter.js | 916 kB | 916 kB | ✓ |
Overall change | 4.52 MB | 4.52 MB | ✓ |
@timneutkens I'm have a similar issue with another library that relies on nodejs |
We're planning to cover all of the previously default polyfills. |
Hi and thank you to modify webpack-5 and describe how to do what to get it running fine. what i did
as i can read the message tell to do that at webpack run time. So, I miss-understand what warning webpack-5 message said it has to be donewarning message said:
What works and then what i think it should be indicate to be clearthe syntax "resolve.fallback" is wrong. When you indicate resolve.fallback followed by { ... } , it is confused because there is 2 syntax. It can not be clear.
to insert inside a config webpack object to assign (the word "assign is important to be clear, because function Object has "assign" method to assign a content to the root Object). So the message warning should be better like this:
|
Webpack 5 no longer tries to make code meant for Node.js environment work in the browser. A side-effect of that change is that applications that currently rely on npm packages that accidentally use
process
e.g. to readprocess.env
will break where they previously would work fine.Overall I'm happy with the change in webpack but I don't want existing Next.js projects to break so we'll work on surfacing these issues in a non-distruptive way in the future.