Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/changelog.py @ 44055:7f67f53492f7
changelog: fix the diverted opener to accept more kwargs
The current code prevent the use of `atomictemp` file with the changelog
opener. I do not see a good reason for this limitation.
Differential Revision: https://phab.mercurial-scm.org/D7831
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sat, 11 Jan 2020 04:57:29 +0100 |
parents | be8552f25cab |
children | 2141427533d2 5962fd0d1045 |
comparison
equal
deleted
inserted
replaced
44054:612225e994ff | 44055:7f67f53492f7 |
---|---|
165 | 165 |
166 | 166 |
167 def _divertopener(opener, target): | 167 def _divertopener(opener, target): |
168 """build an opener that writes in 'target.a' instead of 'target'""" | 168 """build an opener that writes in 'target.a' instead of 'target'""" |
169 | 169 |
170 def _divert(name, mode=b'r', checkambig=False): | 170 def _divert(name, mode=b'r', checkambig=False, **kwargs): |
171 if name != target: | 171 if name != target: |
172 return opener(name, mode) | 172 return opener(name, mode, **kwargs) |
173 return opener(name + b".a", mode) | 173 return opener(name + b".a", mode, **kwargs) |
174 | 174 |
175 return _divert | 175 return _divert |
176 | 176 |
177 | 177 |
178 def _delayopener(opener, target, buf): | 178 def _delayopener(opener, target, buf): |
179 """build an opener that stores chunks in 'buf' instead of 'target'""" | 179 """build an opener that stores chunks in 'buf' instead of 'target'""" |
180 | 180 |
181 def _delay(name, mode=b'r', checkambig=False): | 181 def _delay(name, mode=b'r', checkambig=False, **kwargs): |
182 if name != target: | 182 if name != target: |
183 return opener(name, mode) | 183 return opener(name, mode, **kwargs) |
184 assert not kwargs | |
184 return appender(opener, name, mode, buf) | 185 return appender(opener, name, mode, buf) |
185 | 186 |
186 return _delay | 187 return _delay |
187 | 188 |
188 | 189 |