From 1b1f8f9d22d46bb89ee08aa626d85c518640271e Mon Sep 17 00:00:00 2001 From: Alexander Schepanovski Date: Tue, 31 Dec 2019 14:30:12 +0700 Subject: [PATCH 1/2] ui: error out for meaningless options for non-cloud dvc status --- dvc/repo/status.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/dvc/repo/status.py b/dvc/repo/status.py index c5ec38db62..2e9a7a9483 100644 --- a/dvc/repo/status.py +++ b/dvc/repo/status.py @@ -1,7 +1,9 @@ import logging +from itertools import compress from funcy.py3 import cat +from dvc.exceptions import DvcException from . import locked @@ -113,4 +115,15 @@ def status( remote=remote, all_tags=all_tags, ) + + ignored = list( + compress( + ["--all-branches", "--all-tags", "--jobs"], + [all_branches, all_tags, jobs], + ) + ) + if ignored: + msg = "the following options are meaningless for local status: {}" + raise DvcException(msg.format(", ".join(ignored))) + return _local_status(self, targets, with_deps=with_deps) From bafac6dec3459d9c42d4d3ed7e23ca3fc073a148 Mon Sep 17 00:00:00 2001 From: Alexander Schepanovski Date: Tue, 31 Dec 2019 14:31:04 +0700 Subject: [PATCH 2/2] ui: fix grammar in the error message --- dvc/exceptions.py | 2 +- tests/func/test_metrics.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dvc/exceptions.py b/dvc/exceptions.py index e6cd707648..e48014e95a 100644 --- a/dvc/exceptions.py +++ b/dvc/exceptions.py @@ -167,7 +167,7 @@ def __init__(self, dvc_file_name): class BadMetricError(DvcException): def __init__(self, paths): super().__init__( - "the following metrics do not exists, " + "the following metrics do not exist, " "are not metric files or are malformed: {paths}".format( paths=", ".join("'{}'".format(path) for path in paths) ) diff --git a/tests/func/test_metrics.py b/tests/func/test_metrics.py index 5a37699e5d..8f69ec315d 100644 --- a/tests/func/test_metrics.py +++ b/tests/func/test_metrics.py @@ -868,6 +868,6 @@ def test_show_multiple_outputs(tmp_dir, dvc, caplog): assert 1 == main(["metrics", "show", "1.json", "not-found"]) assert '1.json: {"AUC": 1}' in caplog.text assert ( - "the following metrics do not exists, " + "the following metrics do not exist, " "are not metric files or are malformed: 'not-found'" ) in caplog.text