From 9383b28a065fae953d15e2dbb867ab3285aaaa50 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Fri, 6 Apr 2018 02:45:20 +0300 Subject: [PATCH] dvc: stage: don't write None and empty lists Fixes #622 Signed-off-by: Ruslan Kuprieiev --- dvc/stage.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/dvc/stage.py b/dvc/stage.py index 3a369ca37..b1ced8427 100644 --- a/dvc/stage.py +++ b/dvc/stage.py @@ -161,11 +161,17 @@ class Stage(object): deps = [x.dumpd(self.cwd) for x in self.deps] outs = [x.dumpd(self.cwd) for x in self.outs] - return { - Stage.PARAM_CMD: self.cmd, - Stage.PARAM_DEPS: deps, - Stage.PARAM_OUTS: outs, - } + ret = {} + if self.cmd: + ret[Stage.PARAM_CMD] = self.cmd + + if len(deps): + ret[Stage.PARAM_DEPS] = deps + + if len(outs): + ret[Stage.PARAM_OUTS] = outs + + return ret def dump(self, fname=None): if not fname: