From 716a5eef7f209cec652ce35333b210cc74c24439 Mon Sep 17 00:00:00 2001 From: Zhanibek Date: Mon, 25 Mar 2019 16:12:17 +0600 Subject: [PATCH] move print output from repo/diff.py to command/diff.py and minor fixes in command/diff.py --- dvc/command/diff.py | 26 +++++++++++++++++++++----- dvc/repo/diff.py | 4 ---- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/dvc/command/diff.py b/dvc/command/diff.py index 01a12c4cc..3159b23bb 100644 --- a/dvc/command/diff.py +++ b/dvc/command/diff.py @@ -1,13 +1,29 @@ from __future__ import unicode_literals +import dvc.logger as logger +from dvc.exceptions import DvcException from dvc.command.base import CmdBase -class CmdMove(CmdBase): +class CmdDiff(CmdBase): + def _show(self, msg): + logger.info(msg) + def run(self): - self.repo.diff( - self.args.target, a_ref=self.args.a_ref, b_ref=self.args.b_ref - ) + try: + msg = self.repo.diff( + self.args.target, a_ref=self.args.a_ref, b_ref=self.args.b_ref + ) + self._show(msg) + except DvcException: + msg = "failed to get diff " + if self.args.target: + msg += self.args.target + " " + if self.args.a_ref: + msg += self.args.a_ref + " " + if self.args.b_ref: + msg += self.args.b_ref + " " + logger.error(msg) return 0 @@ -33,4 +49,4 @@ def add_parser(subparsers, parent_parser): nargs="?", default=None, ) - diff_parser.set_defaults(func=CmdMove) + diff_parser.set_defaults(func=CmdDiff) diff --git a/dvc/repo/diff.py b/dvc/repo/diff.py index e8681266e..6261068dd 100644 --- a/dvc/repo/diff.py +++ b/dvc/repo/diff.py @@ -1,8 +1,6 @@ import os import math -import dvc.logger as logger - def _extract_tree(self, cache_dir): lst = self.cache.local.load_dir_cache(cache_dir) @@ -123,7 +121,6 @@ def diff(self, target, a_ref=None, b_ref=None): target, diff_dct["a_tag"], diff_dct["b_tag"] ) if diff_dct["equal"]: - logger.info(msg) return msg if diff_dct["is_dir"]: dir_info = _diff_dir(self, target, diff_dct) @@ -131,5 +128,4 @@ def diff(self, target, a_ref=None, b_ref=None): else: file_info = _diff_file(self, target, diff_dct) msg += file_info - logger.info(msg) return msg