context: stop catching RepoLookupError from namespace.singlenode()
As pointed out by Yuya, the RepoLookupError was there for catching
errors from repo.branchtip(). However, since
885c0290f7d5 (localrepo:
add ignoremissing parameter to branchtip, 2014-10-16), that should no
longer happen. I think it should now be an error if a namespace raises
a RepoLookupError, so we propagate the exception up and and make it
easy to fix, rather than trying to interpret the changeid as nodeid
prefix and raise a general "unknown revision '...'" error.
I also don't think we should catch FilteredLookupError and LookupError
from the changelog.rev() call, for the same reason as above: If a
namespace returns a node that doesn't exist, we should provide a more
helpful exception than "unknown revision '...'".
Differential Revision: https://phab.mercurial-scm.org/D3145
--- a/mercurial/context.py Thu Apr 05 18:02:42 2018 +0200
+++ b/mercurial/context.py Fri Apr 06 09:34:44 2018 -0700
@@ -449,10 +449,6 @@
return
except KeyError:
pass
- except error.FilteredRepoLookupError:
- raise
- except error.RepoLookupError:
- pass
self._node = repo.unfiltered().changelog._partialmatch(changeid)
if self._node is not None: