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

Add initial process.env stubbing for new env support #11893

Merged
merged 4 commits into from Apr 15, 2020

Conversation

ijjk
Copy link
Member

@ijjk ijjk commented Apr 14, 2020

This adds initial process.env stubbing to warn when a user tries to access environment variables that aren't available. It also fixes NEXT_PUBLIC_ env values not being inlined due to not having the process.env. prefix which will be opened in a separate PR to reduce noise in this PR

x-ref: #11524
x-ref: #10525

@ijjk ijjk added this to the 9.3.x milestone Apr 14, 2020
@ijjk
Copy link
Member Author

ijjk commented Apr 14, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
buildDuration 11s 11.3s ⚠️ +389ms
nodeModulesSize 55.5 MB 55.5 MB ⚠️ +636 B
Page Load Tests Overall decrease ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
/ failed reqs 0 0
/ total time (seconds) 2.129 2.2 ⚠️ +0.07
/ avg req/sec 1174.22 1136.33 -37.89
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 1.321 1.301 -0.02
/error-in-render avg req/sec 1892.08 1921.92 ⚠️ +29.84
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.js gzip 6.25 kB 6.25 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..f272.js gzip 10.3 kB 10.3 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 56.4 kB 56.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.84 kB 6.84 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.5 kB 51.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.js gzip 1.24 kB 1.24 kB
_error.js gzip 3.15 kB 3.15 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.88 kB 7.88 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.module.js gzip 594 B 594 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.51 kB 1.51 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.3 kB 5.3 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/process-env-stubbing 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 add/process-env-stubbing Change
index.html gzip 930 B 930 B
link.html gzip 937 B 937 B
withRouter.html gzip 924 B 924 B
Overall change 2.79 kB 2.79 kB

Serverless Mode
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
buildDuration 12.1s 12.1s -10ms
nodeModulesSize 55.5 MB 55.5 MB ⚠️ +636 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.js gzip 6.25 kB 6.25 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..f272.js gzip 10.3 kB 10.3 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 56.4 kB 56.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.84 kB 6.84 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.5 kB 51.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.js gzip 1.24 kB 1.24 kB
_error.js gzip 3.15 kB 3.15 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.88 kB 7.88 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.module.js gzip 594 B 594 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.51 kB 1.51 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.3 kB 5.3 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_error.js 557 kB 557 kB
404.html 4.18 kB 4.18 kB
hooks.html 3.81 kB 3.81 kB
index.js 557 kB 557 kB
link.js 594 kB 594 kB
routerDirect.js 586 kB 586 kB
withRouter.js 586 kB 586 kB
Overall change 2.89 MB 2.89 MB

@ijjk

This comment has been minimized.

@ijjk
Copy link
Member Author

ijjk commented Apr 14, 2020

Stats from current PR

Default Server Mode (Decrease detected ✓)
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
buildDuration 9.6s 9.8s ⚠️ +154ms
nodeModulesSize 55.5 MB 55.5 MB ⚠️ +661 B
Page Load Tests Overall decrease ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
/ failed reqs 0 0
/ total time (seconds) 1.896 1.915 ⚠️ +0.02
/ avg req/sec 1318.76 1305.19 -13.57
/error-in-render failed reqs 0 0
/error-in-render total time (seconds) 0.962 1.03 ⚠️ +0.07
/error-in-render avg req/sec 2599.38 2426.06 -173.32
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.js gzip 6.25 kB 6.25 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..f272.js gzip 10.3 kB 10.3 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 56.4 kB 56.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.84 kB 6.84 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.5 kB 51.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.js gzip 1.24 kB 1.24 kB
_error.js gzip 3.15 kB 3.15 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.88 kB 7.88 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.module.js gzip 594 B 594 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.51 kB 1.51 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.3 kB 5.3 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/process-env-stubbing 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 add/process-env-stubbing Change
index.html gzip 930 B 930 B
link.html gzip 937 B 937 B
withRouter.html gzip 924 B 924 B
Overall change 2.79 kB 2.79 kB

Serverless Mode
General Overall increase ⚠️
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
buildDuration 10s 10.1s ⚠️ +169ms
nodeModulesSize 55.5 MB 55.5 MB ⚠️ +661 B
Client Bundles (main, webpack, commons)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.js gzip 6.25 kB 6.25 kB
webpack-HASH.js gzip 746 B 746 B
de003c3a9d30..f272.js gzip 10.3 kB 10.3 kB
framework.HASH.js gzip 39.1 kB 39.1 kB
Overall change 56.4 kB 56.4 kB
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
main-HASH.module.js gzip 4.78 kB 4.78 kB
webpack-HASH..dule.js gzip 746 B 746 B
de003c3a9d30..dule.js gzip 6.84 kB 6.84 kB
framework.HA..dule.js gzip 39.1 kB 39.1 kB
Overall change 51.5 kB 51.5 kB
Legacy Client Bundles (polyfills)
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
polyfills-HASH.js gzip 26.3 kB 26.3 kB
Overall change 26.3 kB 26.3 kB
Client Pages
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.js gzip 1.24 kB 1.24 kB
_error.js gzip 3.15 kB 3.15 kB
hooks.js gzip 664 B 664 B
index.js gzip 222 B 222 B
link.js gzip 2.06 kB 2.06 kB
routerDirect.js gzip 279 B 279 B
withRouter.js gzip 278 B 278 B
Overall change 7.88 kB 7.88 kB
Client Pages Modern
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_app.module.js gzip 594 B 594 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.51 kB 1.51 kB
routerDirect..dule.js gzip 271 B 271 B
withRouter.m..dule.js gzip 270 B 270 B
Overall change 5.3 kB 5.3 kB
Client Build Manifests
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_buildManifest.js gzip 61 B 61 B
_buildManife..dule.js gzip 61 B 61 B
Overall change 122 B 122 B
Serverless bundles
zeit/next.js canary ijjk/next.js add/process-env-stubbing Change
_error.js 557 kB 557 kB
404.html 4.18 kB 4.18 kB
hooks.html 3.81 kB 3.81 kB
index.js 557 kB 557 kB
link.js 594 kB 594 kB
routerDirect.js 586 kB 586 kB
withRouter.js 586 kB 586 kB
Overall change 2.89 MB 2.89 MB

Copy link
Member

@Timer Timer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM to start!

@Timer Timer merged commit 20c7b5c into vercel:canary Apr 15, 2020
@Timer Timer deleted the add/process-env-stubbing branch April 15, 2020 06:42
@Manikanta-20
Copy link

@Timer if new things are added /updated in any release , share the git url .

@Timer Timer removed this from the 10.x.x milestone Nov 16, 2020
@vercel vercel locked as resolved and limited conversation to collaborators Jan 29, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants