Mercurial > hg-stable
changeset 47306:dd339191f2dc
errors: make StorageError subclass Error, attaching an exit code to it
Differential Revision: https://phab.mercurial-scm.org/D10741
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 18 May 2021 21:50:09 -0700 |
parents | 93a0abe098e7 |
children | d1589957fdcb |
files | mercurial/error.py mercurial/scmutil.py |
diffstat | 2 files changed, 5 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/error.py Tue May 18 19:33:09 2021 -0700 +++ b/mercurial/error.py Tue May 18 21:50:09 2021 -0700 @@ -91,13 +91,16 @@ """Raised if a command needs to print an error and exit.""" -class StorageError(Hint, Exception): +class StorageError(Error): """Raised when an error occurs in a storage layer. Usually subclassed by a storage-specific exception. """ - __bytes__ = _tobytes + def __init__(self, message, hint=None): + super(StorageError, self).__init__( + message, hint=hint, detailed_exit_code=50 + ) class RevlogError(StorageError):
--- a/mercurial/scmutil.py Tue May 18 19:33:09 2021 -0700 +++ b/mercurial/scmutil.py Tue May 18 21:50:09 2021 -0700 @@ -198,11 +198,6 @@ ui.error(b"\n%r\n" % pycompat.bytestr(stringutil.ellipsis(msg))) except error.CensoredNodeError as inst: ui.error(_(b"abort: file censored %s\n") % inst) - except error.StorageError as inst: - ui.error(_(b"abort: %s\n") % inst) - if inst.hint: - ui.error(_(b"(%s)\n") % inst.hint) - detailed_exit_code = 50 except error.WdirUnsupported: ui.error(_(b"abort: working directory revision cannot be specified\n")) except error.Error as inst: