Make element selection consistent across commands
Summary
BuildStream mainly offers two options to tweak element sections - --except and --deps. However they are not accepted uniformly by all commands.
For example, some commands like show, source checkout etc support --except option to exclude certain elements from the pipeline. However, others like artifact checkout don't.
Similarly, not all commands accept all values for --deps. For example, source track only accepts all and none whereas show accepts all|none|build|run|plan. Out of these, plan is probably the most tricky one, as mentioned in !1893 (comment 335927435). We need a plan about how to handle --deps plan sensibly. But, it should be generally reasonable to add the other options to all the commands.
Todo
Part of --deps unification was implemented in !1904 (merged). Here's what's left to do:
-
Unify --depsfor the remaining commands -
Provide --exceptto commands more consistently, review where it should be added -
Have a plan for handling --deps plan, especially important from API perspective if it's going to move out of--depsoption -
Implement the said plan