-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
feat(turborepo): Persistent Tasks in Watch Mode #7922
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
7 Ignored Deployments
|
This stack of pull requests is managed by Graphite. Learn more about stacking. Join @NicholasLYang and the rest of your teammates on Graphite |
🟢 Turbopack Benchmark CI successful 🟢Thanks |
🟢 CI successful 🟢Thanks |
e35643c
to
8841992
Compare
d85286a
to
87e13f4
Compare
8841992
to
0adec70
Compare
87e13f4
to
0d4f68d
Compare
0adec70
to
d8609f2
Compare
0d4f68d
to
02a5e85
Compare
14a2f79
to
df46f8a
Compare
02a5e85
to
24a0c13
Compare
if run.has_persistent_tasks() { | ||
// Abort old run | ||
if let Some(run) = persistent_tasks_handle.take() { | ||
run.abort(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this run synchronously? Do we need to await
the handle after calling abort
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So the actual cancelation will likely happen at the next await point. We don't need to await the handle.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just the one question about aborting an in-progress run.
Description
Implements handling of persistent tasks. Basically, we strip out any persistent tasks from the task graph when we do either an execution for package rediscovery or package changes. Instead, we run the persistent tasks in a separate thread, so they don't block anything.
Testing Instructions
Added tests for both pruning methods.
Closes TURBO-2775