# HG changeset patch # User Pierre-Yves David # Date 1565220337 -7200 # Node ID 5109217a9ab607d49dce41d843e3d0c764c1a58f # Parent 92ac6b1697a7aabd408d97bd0ccf1164db500f29 flagutil: move insertflagprocessor to the new module (API) diff -r 92ac6b1697a7 -r 5109217a9ab6 mercurial/revlog.py --- a/mercurial/revlog.py Thu Aug 08 01:28:34 2019 +0200 +++ b/mercurial/revlog.py Thu Aug 08 01:25:37 2019 +0200 @@ -150,19 +150,7 @@ debug commands. In this case the transform only indicates whether the contents can be used for hash integrity checks. """ - _insertflagprocessor(flag, processor, flagutil.flagprocessors) - -def _insertflagprocessor(flag, processor, flagprocessors): - if not flag & flagutil.REVIDX_KNOWN_FLAGS: - msg = _("cannot register processor on unknown flag '%#x'.") % (flag) - raise error.ProgrammingError(msg) - if flag not in REVIDX_FLAGS_ORDER: - msg = _("flag '%#x' undefined in REVIDX_FLAGS_ORDER.") % (flag) - raise error.ProgrammingError(msg) - if flag in flagprocessors: - msg = _("cannot register multiple processors on flag '%#x'.") % (flag) - raise error.Abort(msg) - flagprocessors[flag] = processor + flagutil.insertflagprocessor(flag, processor, flagutil.flagprocessors) def getoffset(q): return int(q >> 16) @@ -438,7 +426,7 @@ # revlog v0 doesn't have flag processors for flag, processor in opts.get(b'flagprocessors', {}).iteritems(): - _insertflagprocessor(flag, processor, self._flagprocessors) + flagutil.insertflagprocessor(flag, processor, self._flagprocessors) if self._chunkcachesize <= 0: raise error.RevlogError(_('revlog chunk cache size %r is not ' diff -r 92ac6b1697a7 -r 5109217a9ab6 mercurial/revlogutils/flagutil.py --- a/mercurial/revlogutils/flagutil.py Thu Aug 08 01:28:34 2019 +0200 +++ b/mercurial/revlogutils/flagutil.py Thu Aug 08 01:25:37 2019 +0200 @@ -8,6 +8,8 @@ from __future__ import absolute_import +from ..i18n import _ + from .constants import ( REVIDX_DEFAULT_FLAGS, REVIDX_ELLIPSIS, @@ -18,6 +20,7 @@ ) from .. import ( + error, util ) @@ -37,3 +40,14 @@ REVIDX_ISCENSORED: None, } +def insertflagprocessor(flag, processor, flagprocessors): + if not flag & REVIDX_KNOWN_FLAGS: + msg = _("cannot register processor on unknown flag '%#x'.") % (flag) + raise error.ProgrammingError(msg) + if flag not in REVIDX_FLAGS_ORDER: + msg = _("flag '%#x' undefined in REVIDX_FLAGS_ORDER.") % (flag) + raise error.ProgrammingError(msg) + if flag in flagprocessors: + msg = _("cannot register multiple processors on flag '%#x'.") % (flag) + raise error.Abort(msg) + flagprocessors[flag] = processor diff -r 92ac6b1697a7 -r 5109217a9ab6 tests/test-flagprocessor.t --- a/tests/test-flagprocessor.t Thu Aug 08 01:28:34 2019 +0200 +++ b/tests/test-flagprocessor.t Thu Aug 08 01:25:37 2019 +0200 @@ -206,8 +206,8 @@ File "*/tests/flagprocessorext.py", line *, in extsetup (glob) validatehash, File "*/mercurial/revlog.py", line *, in addflagprocessor (glob) - _insertflagprocessor(flag, processor, flagutil.flagprocessors) - File "*/mercurial/revlog.py", line *, in _insertflagprocessor (glob) + flagutil.insertflagprocessor(flag, processor, flagutil.flagprocessors) + File "*/mercurial/revlogutils/flagutil.py", line *, in insertflagprocessor (glob) raise error.Abort(msg) mercurial.error.Abort: b"cannot register multiple processors on flag '0x8'." (py3 !) Abort: cannot register multiple processors on flag '0x8'. (no-py3 !)