From 9df3522a173d44db194c22dfa2357e04a0a8545d Mon Sep 17 00:00:00 2001 From: deadc0de6 Date: Sun, 9 Jun 2019 17:50:06 +0200 Subject: [PATCH] trans gets replaced with trans_read in dotfiles --- dotdrop/cfg_aggregator.py | 3 ++- dotdrop/cfg_yaml.py | 10 +++++++++- dotdrop/dotfile.py | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/dotdrop/cfg_aggregator.py b/dotdrop/cfg_aggregator.py index fc751d6..4074fa8 100644 --- a/dotdrop/cfg_aggregator.py +++ b/dotdrop/cfg_aggregator.py @@ -124,7 +124,8 @@ class CfgAggregator: for k in okeys: o = get_by_key(k) if not o: - err = 'bad key for \"{}\": {}'.format(c.key, k) + err = 'bad {} key for \"{}\": {}'.format(keys, c.key, k) + self.log.err(err) raise Exception(err) objects.append(o) if self.debug: diff --git a/dotdrop/cfg_yaml.py b/dotdrop/cfg_yaml.py index 58aa046..4dfc8db 100644 --- a/dotdrop/cfg_yaml.py +++ b/dotdrop/cfg_yaml.py @@ -292,16 +292,24 @@ class CfgYaml: return new def _norm_dotfiles(self, dotfiles): - """add 'src' as 'key if not present""" + """normalize dotfiles entries""" if not dotfiles: return dotfiles new = {} for k, v in dotfiles.items(): + # add 'src' as key' if not present if self.key_dotfile_src not in v: v[self.key_dotfile_src] = k new[k] = v else: new[k] = v + # fix deprecated trans key + if self.old_key_trans_r in k: + msg = '\"trans\" is deprecated, please use \"trans_read\"' + self.log.warn(msg) + v[self.key_trans_r] = v[self.old_key_trans_r].copy() + del v[self.old_key_trans_r] + new[k] = v return new def _get_variables_dict(self, profile, seen, sub=False): diff --git a/dotdrop/dotfile.py b/dotdrop/dotfile.py index ea6a384..333ce74 100644 --- a/dotdrop/dotfile.py +++ b/dotdrop/dotfile.py @@ -14,7 +14,7 @@ class Dotfile(DictParser): """Represent a dotfile.""" # dotfile keys key_noempty = 'ignoreempty' - key_trans_r = 'trans' + key_trans_r = 'trans_read' key_trans_w = 'trans_write' def __init__(self, key, dst, src,