We often use a string instead of a PipelineSelection in Stream
Summary
In Stream, we often load a target and retrieve a specific set of dependencies using a PipelineSelection
.
Many of our methods within Stream require a PipelineSelection
(or set a default). However, we often pass in the string associated with the --deps
option if it has been provided. for example:
- load_selection() uses it here but may be set as a string here
- build() uses it here, but may be passed in as a string here
- fetch() uses it here but may be passed in as a string here
These three examples are not the only offenders.
Although it's not detrimental, from a type-safety perspective, we should try and use the enums as soon as possible (i.e. from the moment the translation from string makes sense)
See the related discussion: !1599 (comment 216085324)
Edited by James Ennis