-
Notifications
You must be signed in to change notification settings - Fork 27.6k
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
Run runtime config side-effect before other serverless imports #10386
Conversation
Stats from current PRDefault Server ModeGeneral Overall increase
|
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
buildDuration | 10.7s | 10.4s | -253ms |
nodeModulesSize | 52.1 MB | 52.1 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.js gzip | 5.11 kB | 5.11 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..54d3.js gzip | 4.68 kB | 4.68 kB | ✓ |
commons.HASH.js gzip | 4.06 kB | 4.06 kB | ✓ |
de003c3a9d30..d6ae.js gzip | 16.2 kB | 16.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 69.9 kB | 69.9 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.11 kB | 4.11 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..dule.js gzip | 5.56 kB | 5.56 kB | ✓ |
de003c3a9d30..dule.js gzip | 15.1 kB | 15.1 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 64.6 kB | 64.6 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 4.76 kB | 4.76 kB | ✓ |
Overall change | 4.76 kB | 4.76 kB | ✓ |
Client Pages
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.js gzip | 1.15 kB | 1.15 kB | ✓ |
_error.js gzip | 4.07 kB | 4.07 kB | ✓ |
hooks.js gzip | 779 B | 779 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.89 kB | 2.89 kB | ✓ |
routerDirect.js gzip | 283 B | 283 B | ✓ |
withRouter.js gzip | 282 B | 282 B | ✓ |
Overall change | 9.68 kB | 9.68 kB | ✓ |
Client Pages Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.module.js gzip | 576 B | 576 B | ✓ |
_error.module.js gzip | 3.06 kB | 3.06 kB | ✓ |
hooks.module.js gzip | 371 B | 371 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 2.46 kB | 2.46 kB | ✓ |
routerDirect..dule.js gzip | 273 B | 273 B | ✓ |
withRouter.m..dule.js gzip | 272 B | 272 B | ✓ |
Overall change | 7.22 kB | 7.22 kB | ✓ |
Client Build Manifests
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Rendered Page Sizes
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
index.html gzip | 1.02 kB | 1.02 kB | ✓ |
link.html gzip | 1.03 kB | 1.03 kB | ✓ |
withRouter.html gzip | 1.02 kB | 1.02 kB | ✓ |
Overall change | 3.07 kB | 3.07 kB | ✓ |
Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
buildDuration | 11.1s | 10.7s | -339ms |
nodeModulesSize | 52.1 MB | 52.1 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.js gzip | 5.11 kB | 5.11 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..54d3.js gzip | 4.68 kB | 4.68 kB | ✓ |
commons.HASH.js gzip | 4.06 kB | 4.06 kB | ✓ |
de003c3a9d30..d6ae.js gzip | 16.2 kB | 16.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 69.9 kB | 69.9 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.11 kB | 4.11 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..dule.js gzip | 5.56 kB | 5.56 kB | ✓ |
de003c3a9d30..dule.js gzip | 15.1 kB | 15.1 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 64.6 kB | 64.6 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 4.76 kB | 4.76 kB | ✓ |
Overall change | 4.76 kB | 4.76 kB | ✓ |
Client Pages
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.js gzip | 1.15 kB | 1.15 kB | ✓ |
_error.js gzip | 4.07 kB | 4.07 kB | ✓ |
hooks.js gzip | 779 B | 779 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.89 kB | 2.89 kB | ✓ |
routerDirect.js gzip | 283 B | 283 B | ✓ |
withRouter.js gzip | 282 B | 282 B | ✓ |
Overall change | 9.68 kB | 9.68 kB | ✓ |
Client Pages Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.module.js gzip | 576 B | 576 B | ✓ |
_error.module.js gzip | 3.06 kB | 3.06 kB | ✓ |
hooks.module.js gzip | 371 B | 371 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 2.46 kB | 2.46 kB | ✓ |
routerDirect..dule.js gzip | 273 B | 273 B | ✓ |
withRouter.m..dule.js gzip | 272 B | 272 B | ✓ |
Overall change | 7.22 kB | 7.22 kB | ✓ |
Client Build Manifests
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_error.js gzip | 46.7 kB | 46.5 kB | -247 B |
404.html gzip | 1.43 kB | 1.43 kB | ✓ |
hooks.html gzip | 1.06 kB | 1.06 kB | ✓ |
index.js gzip | 46.8 kB | 46.5 kB | -306 B |
link.js gzip | 72.3 kB | 72 kB | -270 B |
routerDirect.js gzip | 70.6 kB | 70.3 kB | -287 B |
withRouter.js gzip | 70.4 kB | 70.1 kB | -298 B |
Overall change | 309 kB | 308 kB | -1.41 kB |
Commit: 237e4cd
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This fix feels wrong. Let's discuss it on Slack first?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems OK for now. I'd still rather not use CJS here.
It'd be interesting to explore having getConfig()
return an ES6 Proxy
so the binding is live.
Stats from current PRDefault Server ModeGeneral Overall increase
|
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
buildDuration | 12.4s | 12.3s | -79ms |
nodeModulesSize | 52.1 MB | 52.1 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.js gzip | 5.11 kB | 5.11 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..54d3.js gzip | 4.68 kB | 4.68 kB | ✓ |
commons.HASH.js gzip | 4.06 kB | 4.06 kB | ✓ |
de003c3a9d30..d6ae.js gzip | 16.2 kB | 16.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 69.9 kB | 69.9 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.11 kB | 4.11 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..dule.js gzip | 5.56 kB | 5.56 kB | ✓ |
de003c3a9d30..dule.js gzip | 15.1 kB | 15.1 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 64.6 kB | 64.6 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 4.76 kB | 4.76 kB | ✓ |
Overall change | 4.76 kB | 4.76 kB | ✓ |
Client Pages
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.js gzip | 1.15 kB | 1.15 kB | ✓ |
_error.js gzip | 4.07 kB | 4.07 kB | ✓ |
hooks.js gzip | 779 B | 779 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.89 kB | 2.89 kB | ✓ |
routerDirect.js gzip | 283 B | 283 B | ✓ |
withRouter.js gzip | 282 B | 282 B | ✓ |
Overall change | 9.68 kB | 9.68 kB | ✓ |
Client Pages Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.module.js gzip | 576 B | 576 B | ✓ |
_error.module.js gzip | 3.06 kB | 3.06 kB | ✓ |
hooks.module.js gzip | 371 B | 371 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 2.46 kB | 2.46 kB | ✓ |
routerDirect..dule.js gzip | 273 B | 273 B | ✓ |
withRouter.m..dule.js gzip | 272 B | 272 B | ✓ |
Overall change | 7.22 kB | 7.22 kB | ✓ |
Client Build Manifests
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Rendered Page Sizes
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
index.html gzip | 1.02 kB | 1.02 kB | ✓ |
link.html gzip | 1.03 kB | 1.03 kB | ✓ |
withRouter.html gzip | 1.02 kB | 1.02 kB | ✓ |
Overall change | 3.07 kB | 3.07 kB | ✓ |
Serverless Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
buildDuration | 12.6s | 12.7s | |
nodeModulesSize | 52.1 MB | 52.1 MB |
Client Bundles (main, webpack, commons)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.js gzip | 5.11 kB | 5.11 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..54d3.js gzip | 4.68 kB | 4.68 kB | ✓ |
commons.HASH.js gzip | 4.06 kB | 4.06 kB | ✓ |
de003c3a9d30..d6ae.js gzip | 16.2 kB | 16.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 69.9 kB | 69.9 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.11 kB | 4.11 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..dule.js gzip | 5.56 kB | 5.56 kB | ✓ |
de003c3a9d30..dule.js gzip | 15.1 kB | 15.1 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 64.6 kB | 64.6 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 4.76 kB | 4.76 kB | ✓ |
Overall change | 4.76 kB | 4.76 kB | ✓ |
Client Pages
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.js gzip | 1.15 kB | 1.15 kB | ✓ |
_error.js gzip | 4.07 kB | 4.07 kB | ✓ |
hooks.js gzip | 779 B | 779 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.89 kB | 2.89 kB | ✓ |
routerDirect.js gzip | 283 B | 283 B | ✓ |
withRouter.js gzip | 282 B | 282 B | ✓ |
Overall change | 9.68 kB | 9.68 kB | ✓ |
Client Pages Modern
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_app.module.js gzip | 576 B | 576 B | ✓ |
_error.module.js gzip | 3.06 kB | 3.06 kB | ✓ |
hooks.module.js gzip | 371 B | 371 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 2.46 kB | 2.46 kB | ✓ |
routerDirect..dule.js gzip | 273 B | 273 B | ✓ |
withRouter.m..dule.js gzip | 272 B | 272 B | ✓ |
Overall change | 7.22 kB | 7.22 kB | ✓ |
Client Build Manifests
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | ijjk/next.js update/serverless-runtime-config | Change | |
---|---|---|---|
_error.js gzip | 46.7 kB | 46.5 kB | -247 B |
404.html gzip | 1.43 kB | 1.43 kB | ✓ |
hooks.html gzip | 1.06 kB | 1.06 kB | ✓ |
index.js gzip | 46.8 kB | 46.5 kB | -306 B |
link.js gzip | 72.3 kB | 72 kB | -270 B |
routerDirect.js gzip | 70.6 kB | 70.3 kB | -287 B |
withRouter.js gzip | 70.4 kB | 70.1 kB | -298 B |
Overall change | 309 kB | 308 kB | -1.41 kB |
Commit: aa241db
…rcel#10386) Co-authored-by: Joe Haddad <[email protected]>
This makes sure we set the config before importing
_app
,_error
, or_document
in theserverless-loader
since runtime configs can be used there also.I added additional tests for this and also added a test to ensure it also works for API routes
Closes: #10385