Skip to content
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

Fix next/config module mismatch in new serverless mode #10792

Merged
merged 4 commits into from Mar 2, 2020

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Mar 2, 2020

In the new experimental-serverless-trace mode when requiring the exact path for next/config it was causing it to be bundled while next/config was not bundled which caused the config to be set to the wrong instance of the config module. I updated the serverless-loader to require the correct path to prevent the mismatch and also added tests for runtime-config with the experimental-serverless-trace

Fixes: #10791

@ijjk ijjk added the kind: bug Confirmed bug that is on the backlog label Mar 2, 2020
@ijjk ijjk added this to the 9.3.0 milestone Mar 2, 2020
@ijjk
Copy link
Member Author

ijjk commented Mar 2, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
buildDuration 10.3s 10.2s -66ms
nodeModulesSize 56.3 MB 56.3 MB -58 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.js gzip 5.76 kB 5.76 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..67cb.js gzip 9.69 kB 9.69 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.3 kB 55.3 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.module.js gzip 4.79 kB 4.79 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.64 kB 6.64 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.3 kB 51.3 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
polyfills-HASH.js gzip 18.9 kB 18.9 kB
Overall change 18.9 kB 18.9 kB
Client Pages
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.js gzip 1.07 kB 1.07 kB
_error.js gzip 2.98 kB 2.98 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.module.js gzip 589 B 589 B
_error.module.js gzip 2.08 kB 2.08 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.27 kB 5.27 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig 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 fix/new-serverless-runtimeconfig Change
index.html gzip 937 B 937 B
link.html gzip 947 B 947 B
withRouter.html gzip 934 B 934 B
Overall change 2.82 kB 2.82 kB

Serverless Mode (Decrease detected ✓)
General Overall decrease ✓
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
buildDuration 10.9s 11.2s ⚠️ +324ms
nodeModulesSize 56.3 MB 56.3 MB -58 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.js gzip 5.76 kB 5.76 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..67cb.js gzip 9.69 kB 9.69 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.3 kB 55.3 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.module.js gzip 4.79 kB 4.79 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.64 kB 6.64 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.3 kB 51.3 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
polyfills-HASH.js gzip 18.9 kB 18.9 kB
Overall change 18.9 kB 18.9 kB
Client Pages
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.js gzip 1.07 kB 1.07 kB
_error.js gzip 2.98 kB 2.98 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.module.js gzip 589 B 589 B
_error.module.js gzip 2.08 kB 2.08 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.27 kB 5.27 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig 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 fix/new-serverless-runtimeconfig Change
_error.js gzip 293 kB 292 kB -650 B
404.html gzip 1.34 kB 1.34 kB
hooks.html gzip 976 B 976 B
index.js gzip 292 kB 292 kB ⚠️ +434 B
link.js gzip 299 kB 299 kB ⚠️ +7 B
routerDirect.js gzip 298 kB 298 kB ⚠️ +199 B
withRouter.js gzip 298 kB 298 kB -109 B
Overall change 1.48 MB 1.48 MB -119 B

Commit: 4236b47

@ijjk
Copy link
Member Author

ijjk commented Mar 2, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall decrease ✓
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
buildDuration 9.3s 9.5s ⚠️ +183ms
nodeModulesSize 56.3 MB 56.3 MB -58 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.js gzip 5.76 kB 5.76 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..67cb.js gzip 9.69 kB 9.69 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.3 kB 55.3 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.module.js gzip 4.79 kB 4.79 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.64 kB 6.64 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.3 kB 51.3 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
polyfills-HASH.js gzip 18.9 kB 18.9 kB
Overall change 18.9 kB 18.9 kB
Client Pages
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.js gzip 1.07 kB 1.07 kB
_error.js gzip 2.98 kB 2.98 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.module.js gzip 589 B 589 B
_error.module.js gzip 2.08 kB 2.08 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.27 kB 5.27 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig 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 fix/new-serverless-runtimeconfig Change
index.html gzip 937 B 937 B
link.html gzip 947 B 947 B
withRouter.html gzip 934 B 934 B
Overall change 2.82 kB 2.82 kB

Serverless Mode (Increase detected ⚠️)
General Overall decrease ✓
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
buildDuration 9.9s 10.1s ⚠️ +236ms
nodeModulesSize 56.3 MB 56.3 MB -58 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.js gzip 5.76 kB 5.76 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..67cb.js gzip 9.69 kB 9.69 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 55.3 kB 55.3 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
main-HASH.module.js gzip 4.79 kB 4.79 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.64 kB 6.64 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.3 kB 51.3 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
polyfills-HASH.js gzip 18.9 kB 18.9 kB
Overall change 18.9 kB 18.9 kB
Client Pages
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.js gzip 1.07 kB 1.07 kB
_error.js gzip 2.98 kB 2.98 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 1.89 kB 1.89 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.38 kB 7.38 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_app.module.js gzip 589 B 589 B
_error.module.js gzip 2.08 kB 2.08 kB
hooks.module.js gzip 370 B 370 B
index.module.js gzip 212 B 212 B
link.module.js gzip 1.48 kB 1.48 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.27 kB 5.27 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig 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 increase ⚠️
zeit/next.js canary ijjk/next.js fix/new-serverless-runtimeconfig Change
_error.js gzip 292 kB 293 kB ⚠️ +1.12 kB
404.html gzip 1.34 kB 1.34 kB
hooks.html gzip 976 B 976 B
index.js gzip 293 kB 292 kB -956 B
link.js gzip 299 kB 300 kB ⚠️ +627 B
routerDirect.js gzip 298 kB 298 kB -230 B
withRouter.js gzip 298 kB 299 kB ⚠️ +835 B
Overall change 1.48 MB 1.48 MB ⚠️ +1.4 kB

Commit: c47e22a

@Timer Timer merged commit 9ec3dae into vercel:canary Mar 2, 2020
@Timer Timer deleted the fix/new-serverless-runtimeconfig branch March 2, 2020 18:38
@vercel vercel locked as resolved and limited conversation to collaborators Jan 31, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
kind: bug Confirmed bug that is on the backlog
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Serverless runtime configs from process.env shouldn't resolve during build time
2 participants