Mercurial > hg
changeset 50385:10db46e128d4
revlog: add an exception hint when processing LFS flags without the extension
It would be even better if this was either detected sooner, or the transaction
completed (especially since the read/write processors aren't needed for the
exchange). But this makes it easier for the user to resolve until that can be
figured out.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 28 Feb 2023 15:00:26 -0500 |
parents | 13b66bcc9de8 |
children | db6d210e9618 |
files | mercurial/revlogutils/flagutil.py tests/test-lfs-serve.t |
diffstat | 2 files changed, 6 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/revlogutils/flagutil.py Mon Feb 27 23:12:23 2023 -0500 +++ b/mercurial/revlogutils/flagutil.py Tue Feb 28 15:00:26 2023 -0500 @@ -176,8 +176,12 @@ 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:
--- a/tests/test-lfs-serve.t Mon Feb 27 23:12:23 2023 -0500 +++ b/tests/test-lfs-serve.t Tue Feb 28 15:00:26 2023 -0500 @@ -314,6 +314,7 @@ 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]