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
dvc repro executes stage groups alphabetically e,g, if my foreach list is foo, bar, baz (in that order) still the stages gets reproed (and saved to dvc.locl) in this order: stg@bar, stg@baz, stg@foo.
Generalized and extracted to repro: fallback order of execution for independent stages #5181
UI/UX
Foreach loops: since do: always contains all the regular stage fields, what about avoiding do and go straight to cmd, etc.? Like this:
There seems to be no way to indicate you don't want any params file to be loaded (even if it exists for other purposes). Earlier on you could use: none.
Similarly, there's no way to ONLY use an alternative params file e.g. params.json and avoid the default (params.yaml). I feel like the default behavior should be to skip params.yaml if any params files are specified.
vars cannot overwrite any values in params files, but params files accept repeated objects IF they can be merged without conflict. E.g.: params.json {"grp": {"a": 1}} params2.json {"grp": {"b": 2}} can both be included even when grp is overloaded, but you can't define grp at all in vars.
Bugs?
dvc reproexecutes stage groups alphabetically e,g, if myforeachlist isfoo, bar, baz(in that order) still the stages gets reproed (and saved to dvc.locl) in this order:stg@bar,stg@baz,stg@foo.Generalized and extracted to repro: fallback order of execution for independent stages #5181
UI/UX
do:always contains all the regular stage fields, what about avoidingdoand go straight tocmd, etc.? Like this:vars, repro prints a genericERROR: unexpected error - [Errno 21] Is a directory: '{path}'.which while informative enough, seems like it could be better handled. (Fix on parametrization: fix error when the file invarsis a directory #5171)Feature design/ Side-effects
use: none.params.jsonand avoid the default (params.yaml). I feel like the default behavior should be to skip params.yaml if any params files are specified.E.g.: params.jsonvarscannot overwrite any values in params files, but params files accept repeated objects IF they can be merged without conflict.{"grp": {"a": 1}}params2.json{"grp": {"b": 2}}can both be included even whengrpis overloaded,but you can't definegrpat all invars.