Add persistent attribute
gajus opened this issue · 5 comments
Use case:
Identify which processes do not timeout.
Equivalent to https://turbo.build/repo/docs/reference/configuration#persistent
Label a task as persistent if it is a long-running process, such as a dev server or --watch mode. Turbo will prevent other tasks from depending on persistent tasks. Without setting this config, if any other task depends on dev, it will never run, because dev never exits. With this option, turbo can warn you about an invalid configuration.
API:
{
persistent?: boolean,
}
Considerations:
- This somewhat overlaps with the
interruptible
attribute. The difference though is thatpersistent
is not expected to be restarted when file changes are detected.
For non-persistent tasks we want to log every 5 seconds their progress, i.e. "task X is still building after X seconds"
and we don't want logs "waiting for X to complete" for persistent
We should consider delaying persistent task initialization until after all non-persistent tasks complete.
As far as I can think of, this would reduce unnecessary reloads at the start.