Consider adding a setting which causes backticks and `shell()` calls to execute during `--dry-run`
Apropos of #3586.
Currently, --dry-run causes just to skip running recipes, backticks, and shell() calls. Backticks and shell calls evaluate to a string containing the command. This can cause problems when the these values are used in other expressions, for example, bool() which can error on unexpected input, halting the run.
For example, running foo in this justfile will fail during --dry-run:
foo bar=bool(`echo 1`):Since the backtick will evaluate to the string:
"`echo 1`"Which is an error to pass to bool.
We could introduce a setting which caused backticks and shell() calls to run, even during --dry-run, so avoid this issue. It would have to be opt-in, since users may be relying on --dry-run not running such commands.
This feels perhaps a little too niche to be worth it, but I wanted to create this issue to collect feedback.
Source: casey/just