You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac
Describe the Bug
Turbo --dry output includes dependency tasks that do not exist. In this reproduction repo, created by running npx create-turbo@latest, both application build web#build tasks and docs#build include three dependent tasks: ui#build, config#build, tsconfig#build.
This output is misleading - there are no tasks which match these task names, since none of the libraries contain a build script. For example, the ui package has no scripts defined. This does not impact the ability of the application build to build correctly - the app build script appears to be correctly building the workspace dependencies in a single task.
I have validated the same behavior in a repo using yarn as well.
Expected Behavior
The --dry output would not include any dependencies that are not also tasks to be run, i.e. does not list dependencies that do not exist. For the above example, this output would be:
Currentlyturbo will attempt to run those tasks, although as you've noted, they don't exist. They are included because turbo will also run their dependencies, if they have any. I would encourage you to chime in on #937 since we will need to make a decision on what is "correct" here, and feedback is extremely helpful.
Related to #937 and #1135
When executing a dry run, don't short-circuit on tasks with a non-existent command. Instead, set the command to `<NONEXISTENT>` and include it in the display.
What version of Turborepo are you using?
1.2.5
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac
Describe the Bug
Turbo
--dry
output includes dependency tasks that do not exist. In this reproduction repo, created by runningnpx create-turbo@latest
, both application buildweb#build
tasks anddocs#build
include three dependent tasks:ui#build
,config#build
,tsconfig#build
.This output is misleading - there are no tasks which match these task names, since none of the libraries contain a build script. For example, the ui package has no scripts defined. This does not impact the ability of the application build to build correctly - the app build script appears to be correctly building the workspace dependencies in a single task.
Example Output
I have validated the same behavior in a repo using
yarn
as well.Expected Behavior
The
--dry
output would not include anydependencies
that are not alsotasks
to be run, i.e. does not list dependencies that do not exist. For the above example, this output would be:To Reproduce
npx create-turbo@latest
, or fork this example repo:git@github.com:finn-orsini/turbo-repro-filter-dry-output.git
.turbo run build --dry=json
, orpnpm run build:dry
in the example repo.Output of the dry command will include additional
dependencies
as described above.The text was updated successfully, but these errors were encountered: