diff --git a/mercurial/revlogutils/flagutil.py b/mercurial/revlogutils/flagutil.py --- a/mercurial/revlogutils/flagutil.py +++ b/mercurial/revlogutils/flagutil.py @@ -176,8 +176,12 @@ def _processflagsfunc(revlog, text, flag vhash = True if flag not in revlog._flagprocessors: + hint = None + if flag == REVIDX_EXTSTORED: + hint = _(b"the lfs extension must be enabled") + message = _(b"missing processor for flag '%#x'") % flag - raise revlog._flagserrorclass(message) + raise revlog._flagserrorclass(message, hint=hint) processor = revlog._flagprocessors[flag] if processor is not None: diff --git a/tests/test-lfs-serve.t b/tests/test-lfs-serve.t --- a/tests/test-lfs-serve.t +++ b/tests/test-lfs-serve.t @@ -314,6 +314,7 @@ TODO: fail more gracefully. transaction abort! rollback completed abort: missing processor for flag '0x2000' + (the lfs extension must be enabled) [50] $ hg debugrequires -R $TESTTMP/client4_pull/ | grep 'lfs' [1]