# HG changeset patch # User Augie Fackler <r...@durin42.com> # Date 1490567481 14400 # Sun Mar 26 18:31:21 2017 -0400 # Node ID 224f1d7dd46f52b3a10237d86f6dfbc0dcf4eada # Parent c5ecedb198527765f465da499c37cc53fc38ea53 changelog: assert that revlog files are opened with bytes in the mode
This helped me catch several opener errors, so I'm somewhat inclined to keep it around, but I don't feel strongly either way. diff --git a/mercurial/changelog.py b/mercurial/changelog.py --- a/mercurial/changelog.py +++ b/mercurial/changelog.py @@ -127,6 +127,7 @@ class appender(object): def _divertopener(opener, target): """build an opener that writes in 'target.a' instead of 'target'""" def _divert(name, mode='rb', checkambig=False): + assert 'b' in mode, 'must open revlogs in binary mode! got %r' % mode if name != target: return opener(name, mode) return opener(name + ".a", mode) @@ -135,6 +136,7 @@ def _divertopener(opener, target): def _delayopener(opener, target, buf): """build an opener that stores chunks in 'buf' instead of 'target'""" def _delay(name, mode='rb', checkambig=False): + assert 'b' in mode if name != target: return opener(name, mode) return appender(opener, name, mode, buf) _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel