# HG changeset patch # User Pierre-Yves David # Date 2020-01-11 03:57:29 # Node ID 7f67f53492f71ee4322d1280c69f038302fc7a61 # Parent 612225e994ff388e7c0d9b5bd72e036066b06891 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 diff --git a/mercurial/changelog.py b/mercurial/changelog.py --- a/mercurial/changelog.py +++ b/mercurial/changelog.py @@ -167,10 +167,10 @@ class appender(object): def _divertopener(opener, target): """build an opener that writes in 'target.a' instead of 'target'""" - def _divert(name, mode=b'r', checkambig=False): + def _divert(name, mode=b'r', checkambig=False, **kwargs): if name != target: - return opener(name, mode) - return opener(name + b".a", mode) + return opener(name, mode, **kwargs) + return opener(name + b".a", mode, **kwargs) return _divert @@ -178,9 +178,10 @@ def _divertopener(opener, target): def _delayopener(opener, target, buf): """build an opener that stores chunks in 'buf' instead of 'target'""" - def _delay(name, mode=b'r', checkambig=False): + def _delay(name, mode=b'r', checkambig=False, **kwargs): if name != target: - return opener(name, mode) + return opener(name, mode, **kwargs) + assert not kwargs return appender(opener, name, mode, buf) return _delay