-
Notifications
You must be signed in to change notification settings - Fork 27.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
[Turbopack] connect children in a batch when task is about to finish #74773
base: canary
Are you sure you want to change the base?
Conversation
This stack of pull requests is managed by Graphite. Learn more about stacking. |
Failing test suitesCommit: 4c56daf
Expand output● ReactRefreshModule app › should allow any variable names
Read more about building and testing Next.js in contributing.md.
Expand output● jsconfig paths › default behavior › should have correct module not found error
● jsconfig paths without baseurl › default behavior › should resolve the first item in the array first
● jsconfig paths without baseurl › default behavior › should resolve the second item as fallback
● jsconfig paths without baseurl › default behavior › should resolve a single matching alias
Read more about building and testing Next.js in contributing.md.
Expand output● app dir - next/font › app dir - next-font › Dev errors › should recover on font loader error
Read more about building and testing Next.js in contributing.md.
Expand output● ReactRefreshLogBox app turbo › Node.js builtins
● ReactRefreshLogBox app turbo › Module not found
Read more about building and testing Next.js in contributing.md.
Expand output● ReactRefreshRegression › can fast refresh a page with getStaticProps
● ReactRefreshRegression › can fast refresh a page with getServerSideProps
Read more about building and testing Next.js in contributing.md.
Expand output● Error recovery app turbo › client component can recover from a component error
● Error recovery app turbo › stuck error
Read more about building and testing Next.js in contributing.md.
Expand output● persistent-caching › should persistent cache loaders
● persistent-caching › should allow to change files while stopped
Read more about building and testing Next.js in contributing.md.
Expand output● Env Config › development mode › with hot reload › should trigger HMR correctly when NEXT_PUBLIC_ env is changed
Read more about building and testing Next.js in contributing.md. |
Stats from current PRDefault Build (Increase detected
|
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
buildDuration | 18.1s | 15.3s | N/A |
buildDurationCached | 14.3s | 12.1s | N/A |
nodeModulesSize | 419 MB | 419 MB | N/A |
nextStartRea..uration (ms) | 431ms | 418ms | N/A |
Client Bundles (main, webpack)
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
5306-HASH.js gzip | 54.1 kB | 54.1 kB | N/A |
8276.HASH.js gzip | 169 B | 168 B | N/A |
8377-HASH.js gzip | 5.46 kB | 5.46 kB | N/A |
bccd1874-HASH.js gzip | 52.9 kB | 52.9 kB | N/A |
framework-HASH.js gzip | 57.5 kB | 57.5 kB | N/A |
main-app-HASH.js gzip | 241 B | 243 B | N/A |
main-HASH.js gzip | 34.6 kB | 34.6 kB | N/A |
webpack-HASH.js gzip | 1.71 kB | 1.71 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Legacy Client Bundles (polyfills)
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 39.4 kB | 39.4 kB | ✓ |
Overall change | 39.4 kB | 39.4 kB | ✓ |
Client Pages
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
_app-HASH.js gzip | 193 B | 193 B | ✓ |
_error-HASH.js gzip | 193 B | 193 B | ✓ |
amp-HASH.js gzip | 512 B | 510 B | N/A |
css-HASH.js gzip | 343 B | 342 B | N/A |
dynamic-HASH.js gzip | 1.84 kB | 1.84 kB | ✓ |
edge-ssr-HASH.js gzip | 265 B | 265 B | ✓ |
head-HASH.js gzip | 363 B | 362 B | N/A |
hooks-HASH.js gzip | 393 B | 392 B | N/A |
image-HASH.js gzip | 4.59 kB | 4.58 kB | N/A |
index-HASH.js gzip | 268 B | 268 B | ✓ |
link-HASH.js gzip | 2.35 kB | 2.35 kB | N/A |
routerDirect..HASH.js gzip | 328 B | 328 B | ✓ |
script-HASH.js gzip | 397 B | 397 B | ✓ |
withRouter-HASH.js gzip | 323 B | 326 B | N/A |
1afbb74e6ecf..834.css gzip | 106 B | 106 B | ✓ |
Overall change | 3.59 kB | 3.59 kB | ✓ |
Client Build Manifests
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
_buildManifest.js gzip | 748 B | 747 B | N/A |
Overall change | 0 B | 0 B | ✓ |
Rendered Page Sizes
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
index.html gzip | 523 B | 523 B | ✓ |
link.html gzip | 538 B | 539 B | N/A |
withRouter.html gzip | 518 B | 521 B | N/A |
Overall change | 523 B | 523 B | ✓ |
Edge SSR bundle Size
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
edge-ssr.js gzip | 129 kB | 129 kB | N/A |
page.js gzip | 210 kB | 210 kB | N/A |
Overall change | 0 B | 0 B | ✓ |
Middleware size
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
middleware-b..fest.js gzip | 668 B | 666 B | N/A |
middleware-r..fest.js gzip | 155 B | 156 B | N/A |
middleware.js gzip | 31.3 kB | 31.3 kB | N/A |
edge-runtime..pack.js gzip | 844 B | 844 B | ✓ |
Overall change | 844 B | 844 B | ✓ |
Next Runtimes
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
274-experime...dev.js gzip | 322 B | 322 B | ✓ |
274.runtime.dev.js gzip | 314 B | 314 B | ✓ |
app-page-exp...dev.js gzip | 378 kB | 378 kB | ✓ |
app-page-exp..prod.js gzip | 132 kB | 132 kB | ✓ |
app-page-tur..prod.js gzip | 145 kB | 145 kB | ✓ |
app-page-tur..prod.js gzip | 141 kB | 141 kB | ✓ |
app-page.run...dev.js gzip | 365 kB | 365 kB | ✓ |
app-page.run..prod.js gzip | 128 kB | 128 kB | ✓ |
app-route-ex...dev.js gzip | 37.6 kB | 37.6 kB | ✓ |
app-route-ex..prod.js gzip | 25.6 kB | 25.6 kB | ✓ |
app-route-tu..prod.js gzip | 25.6 kB | 25.6 kB | ✓ |
app-route-tu..prod.js gzip | 25.4 kB | 25.4 kB | ✓ |
app-route.ru...dev.js gzip | 39.2 kB | 39.2 kB | ✓ |
app-route.ru..prod.js gzip | 25.4 kB | 25.4 kB | ✓ |
pages-api-tu..prod.js gzip | 9.69 kB | 9.69 kB | ✓ |
pages-api.ru...dev.js gzip | 11.6 kB | 11.6 kB | ✓ |
pages-api.ru..prod.js gzip | 9.68 kB | 9.68 kB | ✓ |
pages-turbo...prod.js gzip | 21.9 kB | 21.9 kB | ✓ |
pages.runtim...dev.js gzip | 27.7 kB | 27.7 kB | ✓ |
pages.runtim..prod.js gzip | 21.9 kB | 21.9 kB | ✓ |
server.runti..prod.js gzip | 916 kB | 916 kB | ✓ |
Overall change | 2.49 MB | 2.49 MB | ✓ |
build cache Overall increase ⚠️
vercel/next.js canary | vercel/next.js sokra/lazy-connect | Change | |
---|---|---|---|
0.pack gzip | 2.1 MB | 2.11 MB | |
index.pack gzip | 75.2 kB | 75 kB | N/A |
Overall change | 2.1 MB | 2.11 MB |
Diff details
Diff for main-HASH.js
Diff too large to display
d449b0e
to
b15d66c
Compare
e5f13e2
to
0084ab7
Compare
b15d66c
to
585a4e0
Compare
0084ab7
to
f34b63c
Compare
585a4e0
to
cac5701
Compare
f34b63c
to
2267156
Compare
cac5701
to
2d17da4
Compare
2267156
to
366bcfb
Compare
2d17da4
to
b3d8c4d
Compare
366bcfb
to
468026c
Compare
96f4c63
to
207c7fc
Compare
468026c
to
8d560fc
Compare
8d560fc
to
09299b0
Compare
118a2af
to
5902f72
Compare
32115b0
to
d8f6879
Compare
5902f72
to
dd58bc4
Compare
d8f6879
to
2f4610e
Compare
dd58bc4
to
e15f24b
Compare
e15f24b
to
64c5f96
Compare
Instead of directly connecting children on call, put them in a list and connect them when the parent finishes. Future children are kept active with an active_counter.
64c5f96
to
4c56daf
Compare
What?
Connects all (new) children once the task is finished instead of each task when it's called.
To keep tasks active while the parent is in progress, but not finished, it uses the new active counter.