From 84712c4acc79f1641c9fac6c9eef1e9a209393e2 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Fri, 22 May 2020 02:58:26 +0300 Subject: [PATCH] dvc: don't write default values for cache/persist/metric (#3844) --- dvc/output/base.py | 9 ++++++--- tests/func/test_add.py | 7 ++++++- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/dvc/output/base.py b/dvc/output/base.py index edaf3bdce..61fee818a 100644 --- a/dvc/output/base.py +++ b/dvc/output/base.py @@ -271,7 +271,8 @@ class BaseOutput: if self.IS_DEPENDENCY: return ret - ret[self.PARAM_CACHE] = self.use_cache + if not self.use_cache: + ret[self.PARAM_CACHE] = self.use_cache if isinstance(self.metric, dict): if ( @@ -280,12 +281,14 @@ class BaseOutput: ): del self.metric[self.PARAM_METRIC_XPATH] - ret[self.PARAM_METRIC] = self.metric + if self.metric: + ret[self.PARAM_METRIC] = self.metric if self.plot: ret[self.PARAM_PLOT] = self.plot - ret[self.PARAM_PERSIST] = self.persist + if self.persist: + ret[self.PARAM_PERSIST] = self.persist return ret diff --git a/tests/func/test_add.py b/tests/func/test_add.py index a9dafec81..eac3f96f5 100644 --- a/tests/func/test_add.py +++ b/tests/func/test_add.py @@ -44,7 +44,12 @@ def test_add(tmp_dir, dvc): assert len(stage.deps) == 0 assert stage.cmd is None assert stage.outs[0].info["md5"] == md5 - assert stage.md5 == "ee343f2482f53efffc109be83cc976ac" + assert stage.md5 == "411854a9fc55b3cebda28704e41b23b3" + + assert load_stage_file("foo.dvc") == { + "md5": "411854a9fc55b3cebda28704e41b23b3", + "outs": [{"md5": "acbd18db4cc2f85cedef654fccc4a4d8", "path": "foo"}], + } def test_add_unicode(tmp_dir, dvc):