-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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.