exp run: Separate exp param parsing from other commands #5310
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
β I have followed the Contributing to DVC checklist.
π If this PR requires documentation updates, I have created a separate PR (or issue, at least) in dvc.org and linked it here.
Thank you for the contribution - we'll try to review it as soon as possible. π
Purpose
Will close #5302
Approach
Since
dvc exp run
is the only command that uses parameter overrides (as compared withdvc run
, where you are simply specifying a list of parameters), it makes sense for it have a separate parsing function. Conveniently,dvc.utils.cli_parse.loads_params
is only being used bydvc.repo.experiments.run.run
. So I renamed this function toloads_param_overrides
for clarity and updated it to use the logic described in the source issue. I also updated the test to reflect the new possibilities.I didn't see anywhere in the docs where
dvc experiments
is documented, otherwise I would open a PR there as well.