-
Notifications
You must be signed in to change notification settings - Fork 2k
Description
Describe the feature you'd like to request
If a
depends on b
and turbo.json
has specifies ^build
for test task dependencies, and I run turbo run test --filter=a
, turbo should build b
then test a
. turbo should not run test on b
.
Describe the solution you'd like
Split the notion of package entrypoints from the graph of packages to be considered when resolving task dependencies. Currently, packages that are not selected are removed from the dependency graph before resolving task dependencies. This means that either b
won't be built, or the task (test
) will also be applied to b
if --include-dependencies
is specified.
I would like to instead apply the task to all of the selected entrypoints, and then use the full package-dependency graph to resolve pipeline dependencies.
Describe alternatives you've considered
Passing --include-dependencies
usually works, but it is not a guarantee. Further, it will almost certainly do extra work, and in the worst case (e.g. watch
tasks) may be incompatible.