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

[Turbopack] add active_counter to keep tasks active #74772

Merged
merged 5 commits into from
Jan 14, 2025

Conversation

sokra
Copy link
Member

@sokra sokra commented Jan 10, 2025

What?

Add an active counter which keeps tasks active as long it's positive.

Closes PACK-3725

@ijjk ijjk added the created-by: Turbopack team PRs by the Turbopack team. label Jan 10, 2025
@ijjk
Copy link
Member

ijjk commented Jan 10, 2025

Stats from current PR

Default Build
General
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
buildDuration 16.7s 15s N/A
buildDurationCached 14.2s 11.8s N/A
nodeModulesSize 417 MB 417 MB N/A
nextStartRea..uration (ms) 422ms 422ms
Client Bundles (main, webpack)
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
5306-HASH.js gzip 53.5 kB 53.4 kB N/A
8276.HASH.js gzip 169 B 168 B N/A
8377-HASH.js gzip 5.44 kB 5.44 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 240 B 242 B N/A
main-HASH.js gzip 34.2 kB 34.2 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/active-counter-2 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/active-counter-2 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.57 kB 4.57 kB N/A
index-HASH.js gzip 268 B 268 B
link-HASH.js gzip 2.35 kB 2.34 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/active-counter-2 Change
_buildManifest.js gzip 749 B 747 B N/A
Overall change 0 B 0 B
Rendered Page Sizes
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
index.html gzip 524 B 523 B N/A
link.html gzip 539 B 538 B N/A
withRouter.html gzip 520 B 520 B
Overall change 520 B 520 B
Edge SSR bundle Size
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
edge-ssr.js gzip 129 kB 129 kB N/A
page.js gzip 207 kB 207 kB N/A
Overall change 0 B 0 B
Middleware size
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
middleware-b..fest.js gzip 668 B 668 B
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 1.51 kB 1.51 kB
Next Runtimes
vercel/next.js canary vercel/next.js sokra/active-counter-2 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 372 kB 372 kB
app-page-exp..prod.js gzip 130 kB 130 kB
app-page-tur..prod.js gzip 142 kB 142 kB
app-page-tur..prod.js gzip 138 kB 138 kB
app-page.run...dev.js gzip 360 kB 360 kB
app-page.run..prod.js gzip 126 kB 126 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.7 kB 21.7 kB
pages.runtim...dev.js gzip 27.5 kB 27.5 kB
pages.runtim..prod.js gzip 21.7 kB 21.7 kB
server.runti..prod.js gzip 916 kB 916 kB
Overall change 2.46 MB 2.46 MB
build cache
vercel/next.js canary vercel/next.js sokra/active-counter-2 Change
0.pack gzip 2.09 MB 2.09 MB N/A
index.pack gzip 75.7 kB 75.2 kB N/A
Overall change 0 B 0 B
Diff details
Diff for main-HASH.js

Diff too large to display

Commit: 207c7fc

@sokra sokra force-pushed the sokra/improve-aggregation-update-2 branch from 675574d to eb0b8ed Compare January 13, 2025 21:15
@sokra sokra force-pushed the sokra/active-counter-2 branch from d449b0e to b15d66c Compare January 13, 2025 21:15
@sokra sokra changed the title Rename AggregateRoot to Activeness and split into both sources [Turbopack] add active_counter to keep tasks active Jan 13, 2025
@sokra sokra marked this pull request as ready for review January 13, 2025 21:20
@sokra sokra requested a review from mischnic January 13, 2025 21:21
@sokra sokra force-pushed the sokra/active-counter-2 branch from b15d66c to 585a4e0 Compare January 13, 2025 21:31
Copy link
Contributor

@mischnic mischnic left a comment

Choose a reason for hiding this comment

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

Why is it sometimes
get!(task, Activeness).is_some_and(|a| a.active_counter > 0)
and it other cases just
!task.has_key(&CachedDataItemKey::Activeness {})
Should it always check the counter?

@sokra sokra force-pushed the sokra/improve-aggregation-update-2 branch from 0c7d285 to afe1116 Compare January 14, 2025 12:50
@sokra sokra force-pushed the sokra/active-counter-2 branch from 585a4e0 to cac5701 Compare January 14, 2025 12:50
@sokra sokra force-pushed the sokra/improve-aggregation-update-2 branch 2 times, most recently from 0145476 to 28ceeba Compare January 14, 2025 13:19
@sokra sokra force-pushed the sokra/active-counter-2 branch from cac5701 to 2d17da4 Compare January 14, 2025 13:19
@sokra sokra force-pushed the sokra/improve-aggregation-update-2 branch from 28ceeba to 58b9f29 Compare January 14, 2025 13:32
@sokra sokra force-pushed the sokra/active-counter-2 branch from 2d17da4 to b3d8c4d Compare January 14, 2025 13:32
@sokra sokra changed the base branch from sokra/improve-aggregation-update-2 to graphite-base/74772 January 14, 2025 15:21
@sokra sokra force-pushed the graphite-base/74772 branch from 58b9f29 to 3256ff8 Compare January 14, 2025 15:22
@sokra sokra force-pushed the sokra/active-counter-2 branch from b3d8c4d to 96f4c63 Compare January 14, 2025 15:22
@sokra sokra changed the base branch from graphite-base/74772 to canary January 14, 2025 15:22
@sokra sokra force-pushed the sokra/active-counter-2 branch from 96f4c63 to 207c7fc Compare January 14, 2025 15:23
@sokra sokra merged commit c82d85e into canary Jan 14, 2025
126 of 131 checks passed
Copy link
Member Author

sokra commented Jan 14, 2025

Merge activity

  • Jan 14, 10:39 AM EST: A user merged this pull request with Graphite.

@sokra sokra deleted the sokra/active-counter-2 branch January 14, 2025 15:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
created-by: Turbopack team PRs by the Turbopack team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants