Skip to content

Commit 723477e

Browse files
authored
Load from only two revisions in params/metrics (#5121)
1 parent 76c6c54 commit 723477e

File tree

2 files changed

+18
-12
lines changed

2 files changed

+18
-12
lines changed

dvc/repo/metrics/diff.py

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@
33
from dvc.utils.diff import format_dict
44

55

6-
def _get_metrics(repo, *args, rev=None, **kwargs):
6+
def _get_metrics(repo, *args, revs=None, **kwargs):
77
try:
8-
metrics = repo.metrics.show(
9-
*args, **kwargs, revs=[rev] if rev else None
10-
)
11-
return metrics.get(rev or "", {})
8+
metrics = repo.metrics.show(*args, **kwargs, revs=revs)
9+
return metrics
1210
except NoMetricsError:
1311
return {}
1412

@@ -19,8 +17,12 @@ def diff(repo, *args, a_rev=None, b_rev=None, **kwargs):
1917

2018
with_unchanged = kwargs.pop("all", False)
2119

22-
old = _get_metrics(repo, *args, **kwargs, rev=(a_rev or "HEAD"))
23-
new = _get_metrics(repo, *args, **kwargs, rev=b_rev)
20+
a_rev = a_rev or "HEAD"
21+
b_rev = b_rev or "workspace"
22+
23+
metrics = _get_metrics(repo, *args, **kwargs, revs=[a_rev, b_rev])
24+
old = metrics.get(a_rev, {})
25+
new = metrics.get(b_rev, {})
2426

2527
return _diff(
2628
format_dict(old), format_dict(new), with_unchanged=with_unchanged

dvc/repo/params/diff.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
from .show import NoParamsError
55

66

7-
def _get_params(repo, *args, rev=None, **kwargs):
7+
def _get_params(repo, *args, revs=None, **kwargs):
88
try:
9-
params = repo.params.show(*args, **kwargs, revs=[rev] if rev else None)
10-
return params.get(rev or "", {})
9+
params = repo.params.show(*args, **kwargs, revs=revs)
10+
return params
1111
except NoParamsError:
1212
return {}
1313

@@ -18,8 +18,12 @@ def diff(repo, *args, a_rev=None, b_rev=None, **kwargs):
1818

1919
with_unchanged = kwargs.pop("all", False)
2020

21-
old = _get_params(repo, *args, **kwargs, rev=(a_rev or "HEAD"))
22-
new = _get_params(repo, *args, **kwargs, rev=b_rev)
21+
a_rev = a_rev or "HEAD"
22+
b_rev = b_rev or "workspace"
23+
24+
params = _get_params(repo, *args, **kwargs, revs=[a_rev, b_rev])
25+
old = params.get(a_rev, {})
26+
new = params.get(b_rev, {})
2327

2428
return _diff(
2529
format_dict(old), format_dict(new), with_unchanged=with_unchanged

0 commit comments

Comments
 (0)