Skip to content

Commit 1f325bc

Browse files
exp: add --hide-workspace flag to exp show (#10798)
Co-authored-by: Saugat Pachhai (सौगात) <[email protected]>
1 parent ca73078 commit 1f325bc

File tree

5 files changed

+32
-4
lines changed

5 files changed

+32
-4
lines changed

dvc/commands/experiments/show.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ def run(self):
150150
all_commits=self.args.all_commits,
151151
hide_queued=self.args.hide_queued,
152152
hide_failed=self.args.hide_failed,
153+
hide_workspace=self.args.hide_workspace,
153154
revs=self.args.rev,
154155
num=self.args.num,
155156
sha_only=self.args.sha,
@@ -279,6 +280,12 @@ def add_parser(experiments_subparsers, parent_parser):
279280
default=False,
280281
help="Hide queued experiments in the table.",
281282
)
283+
experiments_show_parser.add_argument(
284+
"--hide-workspace",
285+
action="store_true",
286+
default=False,
287+
help="Hide workspace row in the table.",
288+
)
282289
experiments_show_parser.add_argument(
283290
"--json",
284291
action="store_true",

dvc/repo/experiments/collect.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,7 @@ def collect(
274274
num: int = 1,
275275
hide_queued: bool = False,
276276
hide_failed: bool = False,
277+
hide_workspace: bool = False,
277278
sha_only: bool = False,
278279
**kwargs,
279280
) -> list["ExpState"]:
@@ -303,8 +304,11 @@ def collect(
303304
repo.scm, baseline_revs, refs=cached_refs, logger=logger
304305
)
305306

306-
workspace_data = collect_rev(repo, "workspace", **kwargs)
307-
result: list[ExpState] = [workspace_data]
307+
result: list[ExpState] = []
308+
if not hide_workspace:
309+
workspace_data = collect_rev(repo, "workspace", **kwargs)
310+
result.append(workspace_data)
311+
308312
queued = collect_queued(repo, baseline_revs, **kwargs) if not hide_queued else {}
309313
active = collect_active(repo, baseline_revs, **kwargs)
310314
failed = collect_failed(repo, baseline_revs, **kwargs) if not hide_failed else {}

dvc/repo/experiments/show.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ def show(
3030
num: int = 1,
3131
hide_queued: bool = False,
3232
hide_failed: bool = False,
33+
hide_workspace: bool = False,
3334
sha_only: bool = False,
3435
**kwargs,
3536
) -> list["ExpState"]:
@@ -42,6 +43,7 @@ def show(
4243
num=num,
4344
hide_queued=hide_queued,
4445
hide_failed=hide_failed,
46+
hide_workspace=hide_workspace,
4547
sha_only=sha_only,
4648
**kwargs,
4749
)

tests/func/experiments/test_show.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,14 +87,27 @@ def test_show_branch_and_tag_name(tmp_dir, scm, dvc, exp_stage):
8787

8888

8989
@pytest.mark.vscode
90-
def test_show_simple(tmp_dir, scm, dvc, exp_stage):
91-
assert dvc.experiments.show()[0].dumpd() == {
90+
def test_show(tmp_dir, scm, dvc, exp_stage):
91+
workspace_result = {
9292
"rev": "workspace",
9393
"name": None,
9494
"data": make_data(rev="workspace"),
9595
"error": None,
9696
"experiments": None,
9797
}
98+
branch_result = {
99+
"rev": scm.get_rev(),
100+
"name": "master",
101+
"data": make_data(rev=scm.get_rev()),
102+
"error": None,
103+
"experiments": None,
104+
}
105+
106+
ret = [d.dumpd() for d in dvc.experiments.show()]
107+
assert ret == [workspace_result, branch_result]
108+
109+
ret = [d.dumpd() for d in dvc.experiments.show(hide_workspace=True)]
110+
assert ret == [branch_result]
98111

99112

100113
@pytest.mark.vscode

tests/unit/command/test_experiments.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ def test_experiments_show(dvc, scm, mocker):
8686
"--all-commits",
8787
"--hide-queued",
8888
"--hide-failed",
89+
"--hide-workspace",
8990
"--sha",
9091
"--param-deps",
9192
"-n",
@@ -109,6 +110,7 @@ def test_experiments_show(dvc, scm, mocker):
109110
all_commits=True,
110111
hide_queued=True,
111112
hide_failed=True,
113+
hide_workspace=True,
112114
num=1,
113115
revs=["foo"],
114116
sha_only=True,

0 commit comments

Comments
 (0)