diff --git a/dvc/cli.py b/dvc/cli.py index 61953d265..cfbd99356 100644 --- a/dvc/cli.py +++ b/dvc/cli.py @@ -277,9 +277,4 @@ def parse_args(argv=None): args = parser.parse_args(argv) - if args.quiet and not args.verbose: - Logger.be_quiet() - elif not args.quiet and args.verbose: - Logger.be_verbose() - return args diff --git a/dvc/command/common/base.py b/dvc/command/common/base.py index b0ded05c1..d04d3763a 100644 --- a/dvc/command/common/base.py +++ b/dvc/command/common/base.py @@ -10,6 +10,14 @@ class CmdBase(object): def __init__(self, args): self.project = Project(self._find_root()) self.args = args + self._set_loglevel(args) + + @staticmethod + def _set_loglevel(args): + if args.quiet and not args.verbose: + Logger.be_quiet() + elif not args.quiet and args.verbose: + Logger.be_verbose() def _find_root(self): root = os.getcwd() diff --git a/dvc/command/run.py b/dvc/command/run.py index 5c99296dd..b2fec20f6 100644 --- a/dvc/command/run.py +++ b/dvc/command/run.py @@ -42,5 +42,7 @@ class CmdRun(CmdBase): @staticmethod def _stage_file_basename(fname): result = os.path.basename(fname) + if len(result) == 0: + result = os.path.dirname(fname) result += Stage.STAGE_FILE_SUFFIX return result diff --git a/dvc/output.py b/dvc/output.py index a4be21782..e81205aa5 100644 --- a/dvc/output.py +++ b/dvc/output.py @@ -77,8 +77,19 @@ class Dependency(object): return self.project.state.changed(self.path, self.md5) + @staticmethod + def _changed_msg(changed): + if changed: + return 'changed' + return "didn't change" + def changed(self): - return self._changed_md5() + ret = self._changed_md5() + + msg = u'Dependency \'{}\' {}'.format(self.rel_path, self._changed_msg(ret)) + self.project.logger.debug(msg) + + return ret def status(self): if self.changed(): @@ -231,12 +242,8 @@ class Output(Dependency): else: ret = self._changed_file(self.path, self.cache) - msg = u'Data file or dir \'{}\' with cache \'{}\' ' - if ret: - msg += 'changed' - else: - msg += 'didn\'t change' - self.project.logger.debug(msg.format(self.rel_path, self.rel_cache)) + msg = u'Data file or dir \'{}\' with cache \'{}\' {}' + self.project.logger.debug(msg.format(self.rel_path, self.rel_cache, self._changed_msg(ret))) return ret