##// END OF EJS Templates
diff-option: move attributes handling to sysstr...
marmoute -
r51807:e586a7eb default
parent child Browse files
Show More
@@ -151,7 +151,10 b' def encodedir(path):'
151 151
152 152 def hashdiffopts(diffopts):
153 153 diffoptstr = stringutil.pprint(
154 sorted((k, getattr(diffopts, k)) for k in mdiff.diffopts.defaults)
154 sorted(
155 (k, getattr(diffopts, pycompat.sysstr(k)))
156 for k in mdiff.diffopts.defaults
157 )
155 158 )
156 159 return hex(hashutil.sha1(diffoptstr).digest())[:6]
157 160
@@ -78,7 +78,7 b' class diffopts:'
78 78 v = opts.get(k)
79 79 if v is None:
80 80 v = self.defaults[k]
81 setattr(self, k, v)
81 setattr(self, pycompat.sysstr(k), v)
82 82
83 83 try:
84 84 self.context = int(self.context)
@@ -89,14 +89,15 b' class diffopts:'
89 89 )
90 90
91 91 def copy(self, **kwargs):
92 opts = {k: getattr(self, k) for k in self.defaults}
92 opts = {k: getattr(self, pycompat.sysstr(k)) for k in self.defaults}
93 93 opts = pycompat.strkwargs(opts)
94 94 opts.update(kwargs)
95 95 return diffopts(**opts)
96 96
97 97 def __bytes__(self):
98 98 return b", ".join(
99 b"%s: %r" % (k, getattr(self, k)) for k in self.defaults
99 b"%s: %r" % (k, getattr(self, pycompat.sysstr(k)))
100 for k in self.defaults
100 101 )
101 102
102 103 __str__ = encoding.strmethod(__bytes__)
General Comments 0
You need to be logged in to leave comments. Login now