def diff(repo, *args, a_rev=None, b_rev=None, param_deps=False, **kwargs): from dvc.repo.experiments.show import _collect_experiment_commit from dvc.scm import resolve_rev if repo.scm.no_commits: return {} if a_rev: a_rev = fix_exp_head(repo.scm, a_rev) rev = resolve_rev(repo.scm, a_rev) old = _collect_experiment_commit(repo, rev, param_deps=param_deps) else: old = _collect_experiment_commit( repo, fix_exp_head(repo.scm, "HEAD"), param_deps=param_deps ) if b_rev: b_rev = fix_exp_head(repo.scm, b_rev) rev = resolve_rev(repo.scm, b_rev) new = _collect_experiment_commit(repo, rev, param_deps=param_deps) else: new = _collect_experiment_commit( repo, "workspace", param_deps=param_deps ) with_unchanged = kwargs.pop("all", False) return { key: _diff( format_dict(old.get("data", {}).get(key, {})), format_dict(new.get("data", {}).get(key, {})), with_unchanged=with_unchanged, ) for key in ["metrics", "params"] }
def diff(repo, *args, a_rev=None, b_rev=None, **kwargs): from dvc.repo.experiments.show import _collect_experiment if repo.scm.no_commits: return {} if a_rev: with repo.experiments.chdir(): old = _collect_experiment(repo.experiments.exp_dvc, a_rev) else: old = _collect_experiment(repo, "HEAD") if b_rev: with repo.experiments.chdir(): new = _collect_experiment(repo.experiments.exp_dvc, b_rev) else: new = _collect_experiment(repo, "workspace") with_unchanged = kwargs.pop("all", False) return { key: _diff( format_dict(old[key]), format_dict(new[key]), with_unchanged=with_unchanged, ) for key in ["metrics", "params"] }
def diff(repo, *args, a_rev=None, b_rev=None, param_deps=False, **kwargs): from dvc.repo.experiments.show import _collect_experiment_commit if repo.scm.no_commits: return {} if a_rev: rev = repo.scm.resolve_rev(a_rev) old = _collect_experiment_commit(repo, rev, param_deps=param_deps) else: old = _collect_experiment_commit(repo, "HEAD", param_deps=param_deps) if b_rev: rev = repo.scm.resolve_rev(b_rev) new = _collect_experiment_commit(repo, rev, param_deps=param_deps) else: new = _collect_experiment_commit(repo, "workspace", param_deps=param_deps) with_unchanged = kwargs.pop("all", False) return { key: _diff( format_dict(old[key]), format_dict(new[key]), with_unchanged=with_unchanged, ) for key in ["metrics", "params"] }
def diff(repo, *args, a_rev=None, b_rev=None, **kwargs): with_unchanged = kwargs.pop("all", False) old = _get_params(repo, *args, **kwargs, rev=(a_rev or "HEAD")) new = _get_params(repo, *args, **kwargs, rev=b_rev) return _diff(format_dict(old), format_dict(new), with_unchanged=with_unchanged)
def diff(repo, *args, a_rev=None, b_rev=None, **kwargs): if repo.scm.no_commits: return {} with_unchanged = kwargs.pop("all", False) old = _get_metrics(repo, *args, **kwargs, rev=(a_rev or "HEAD")) new = _get_metrics(repo, *args, **kwargs, rev=b_rev) return _diff( format_dict(old), format_dict(new), with_unchanged=with_unchanged )
def diff(repo, *args, a_rev=None, b_rev=None, **kwargs): if repo.scm.no_commits: return {} with_unchanged = kwargs.pop("all", False) a_rev = a_rev or "HEAD" b_rev = b_rev or "workspace" params = _get_params(repo, *args, **kwargs, revs=[a_rev, b_rev]) old = params.get(a_rev, {}) new = params.get(b_rev, {}) return _diff(format_dict(old), format_dict(new), with_unchanged=with_unchanged)
def diff(repo, *args, a_rev=None, b_rev=None, **kwargs): if repo.scm.no_commits: return {} with_unchanged = kwargs.pop("all", False) a_rev = a_rev or "HEAD" a_rev = fix_exp_head(repo.scm, a_rev) b_rev = fix_exp_head(repo.scm, b_rev) or "workspace" metrics = _get_metrics(repo, *args, **kwargs, revs=[a_rev, b_rev]) old = metrics.get(a_rev, {}) new = metrics.get(b_rev, {}) return _diff(format_dict(old), format_dict(new), with_unchanged=with_unchanged)