From 3424ee142f4215f8b36347caf7e2aefadace95ee Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Sun, 24 Sep 2017 18:25:08 +0300 Subject: [PATCH] main: print exception only in verbose mode Fixes #230 Signed-off-by: Ruslan Kuprieiev --- dvc/main.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/dvc/main.py b/dvc/main.py index 11de00049..22f9af212 100644 --- a/dvc/main.py +++ b/dvc/main.py @@ -5,19 +5,23 @@ main entry point / argument parsing for dvc import sys from dvc.settings import Settings from dvc.logger import Logger +from dvc.config import ConfigError def main(): try: settings = Settings(sys.argv[1:]) instance = settings._parsed_args.func(settings) except Exception as e: - Logger.error("Exception caught while parsing settings", exc_info=True) + # In case we didn't even manage to parse options + exc_info = '-v' in sys.argv or '--verbose' in sys.argv + Logger.error("Settings error: {}".format(e), exc_info=exc_info) return 255 try: ret = instance.run() except Exception as e: - Logger.error("Exception caught in " + instance.__class__.__name__, exc_info=True) + exc_info = settings.parsed_args.verbose + Logger.error("{} error: {}".format(instance.__class__.__name__, e), exc_info=exc_info) return 254 return ret