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

side effects optimization #58972

Merged
merged 12 commits into from
Dec 6, 2023
Merged

side effects optimization #58972

merged 12 commits into from
Dec 6, 2023

Conversation

sokra
Copy link
Member

@sokra sokra commented Nov 27, 2023

What?

Code update for refactoring in vercel/turbo#6590

Closes PACK-2043

@ijjk ijjk added Turbopack Related to Turbopack with Next.js. created-by: Turbopack team PRs by the turbopack team type: next labels Nov 27, 2023
@sokra sokra marked this pull request as draft November 27, 2023 15:07
@sokra sokra force-pushed the sokra/side-effects-optimization branch from fb1389e to e9ba71f Compare November 27, 2023 16:26
@ijjk
Copy link
Member

ijjk commented Nov 27, 2023

Stats from current PR

Default Build
General Overall increase ⚠️
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
buildDuration 10.7s 10.8s ⚠️ +130ms
buildDurationCached 6s 5.9s N/A
nodeModulesSize 200 MB 200 MB ⚠️ +854 B
nextStartRea..uration (ms) 422ms 427ms N/A
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
170-HASH.js gzip 30.3 kB 30.3 kB N/A
199.HASH.js gzip 181 B 185 B N/A
3f784ff6-HASH.js gzip 53.3 kB 53.3 kB
framework-HASH.js gzip 45.2 kB 45.2 kB
main-app-HASH.js gzip 240 B 241 B N/A
main-HASH.js gzip 31.7 kB 31.7 kB N/A
webpack-HASH.js gzip 1.7 kB 1.7 kB N/A
Overall change 98.5 kB 98.5 kB
Legacy Client Bundles (polyfills)
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
polyfills-HASH.js gzip 31 kB 31 kB
Overall change 31 kB 31 kB
Client Pages
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
_app-HASH.js gzip 195 B 194 B N/A
_error-HASH.js gzip 183 B 182 B N/A
amp-HASH.js gzip 501 B 501 B
css-HASH.js gzip 321 B 321 B
dynamic-HASH.js gzip 2.5 kB 2.5 kB N/A
edge-ssr-HASH.js gzip 255 B 255 B
head-HASH.js gzip 349 B 350 B N/A
hooks-HASH.js gzip 368 B 369 B N/A
image-HASH.js gzip 4.27 kB 4.27 kB N/A
index-HASH.js gzip 255 B 256 B N/A
link-HASH.js gzip 2.6 kB 2.6 kB N/A
routerDirect..HASH.js gzip 311 B 309 B N/A
script-HASH.js gzip 384 B 384 B
withRouter-HASH.js gzip 307 B 306 B N/A
1afbb74e6ecf..834.css gzip 106 B 106 B
Overall change 1.57 kB 1.57 kB
Client Build Manifests
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
_buildManifest.js gzip 483 B 483 B
Overall change 483 B 483 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
index.html gzip 528 B 528 B
link.html gzip 542 B 542 B
withRouter.html gzip 524 B 524 B
Overall change 1.59 kB 1.59 kB
Edge SSR bundle Size
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
edge-ssr.js gzip 93.5 kB 93.5 kB N/A
page.js gzip 146 kB 146 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
middleware-b..fest.js gzip 622 B 622 B
middleware-r..fest.js gzip 151 B 151 B
middleware.js gzip 37.5 kB 37.5 kB N/A
edge-runtime..pack.js gzip 1.92 kB 1.92 kB
Overall change 2.7 kB 2.7 kB
Next Runtimes
vercel/next.js canary vercel/next.js sokra/side-effects-optimization Change
app-page-exp...dev.js gzip 168 kB 168 kB
app-page-exp..prod.js gzip 94 kB 94 kB
app-page-tur..prod.js gzip 94.7 kB 94.7 kB
app-page-tur..prod.js gzip 89.3 kB 89.3 kB
app-page.run...dev.js gzip 138 kB 138 kB
app-page.run..prod.js gzip 88.6 kB 88.6 kB
app-route-ex...dev.js gzip 24.1 kB 24.1 kB
app-route-ex..prod.js gzip 16.8 kB 16.8 kB
app-route-tu..prod.js gzip 16.8 kB 16.8 kB
app-route-tu..prod.js gzip 16.4 kB 16.4 kB
app-route.ru...dev.js gzip 23.6 kB 23.6 kB
app-route.ru..prod.js gzip 16.4 kB 16.4 kB
pages-api-tu..prod.js gzip 9.37 kB 9.37 kB
pages-api.ru...dev.js gzip 9.64 kB 9.64 kB
pages-api.ru..prod.js gzip 9.37 kB 9.37 kB
pages-turbo...prod.js gzip 21.9 kB 21.9 kB
pages.runtim...dev.js gzip 22.6 kB 22.6 kB
pages.runtim..prod.js gzip 21.9 kB 21.9 kB
server.runti..prod.js gzip 49.4 kB 49.4 kB
Overall change 931 kB 931 kB
Commit: ffd443e

@ijjk
Copy link
Member

ijjk commented Nov 27, 2023

Tests Passed

@sokra sokra force-pushed the sokra/side-effects-optimization branch 13 times, most recently from 56abcfd to c081808 Compare December 5, 2023 12:36
@sokra sokra force-pushed the sokra/side-effects-optimization branch from c081808 to a95a452 Compare December 5, 2023 13:31
@sokra sokra force-pushed the sokra/side-effects-optimization branch from a95a452 to 984d2fa Compare December 6, 2023 07:33
@sokra
Copy link
Member Author

sokra commented Dec 6, 2023

In case this need to be reverted, you can switch it off by changing this in the code base:

- tree_shaking_mode: Some(TreeShakingMode::ReexportsOnly)
+ tree_shaking_mode: None

@sokra sokra marked this pull request as ready for review December 6, 2023 08:10
@sokra sokra enabled auto-merge (squash) December 6, 2023 08:10
@sokra sokra merged commit 0082d54 into canary Dec 6, 2023
66 of 70 checks passed
@sokra sokra deleted the sokra/side-effects-optimization branch December 6, 2023 08:23
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Dec 20, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
created-by: Turbopack team PRs by the turbopack team locked Turbopack Related to Turbopack with Next.js. type: next
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants