statichttprepo: use LockUnavailable() instead of Abort() for lock (API)
If we try to get a lock on statichttprepo, we get `error.Abort()` instead of
subclass of `error.LockError()`. The callers which catches `error.LockError`
fails to catch this case as the correct error is not raised.
Raising `error.LockUnavaible()` is same as what is done for wlock also.
--- a/mercurial/statichttprepo.py Tue Sep 08 18:46:01 2020 +0530
+++ b/mercurial/statichttprepo.py Thu Sep 10 13:37:35 2020 +0530
@@ -238,7 +238,12 @@
)
def lock(self, wait=True):
- raise error.Abort(_(b'cannot lock static-http repository'))
+ raise error.LockUnavailable(
+ 0,
+ _(b'lock not available'),
+ b'lock',
+ _(b'cannot lock static-http repository'),
+ )
def _writecaches(self):
pass # statichttprepository are read only