util: use urlreq.unquote
pycompat.urlreq.unquote and pycompat.urlunquote effectively alias the
same thing. pycompat.urlunquote is only used once in the code base.
So let's switch to urlreq.unquote.
"Effectively" in the above paragraph is because pycompat.urlreq.unquote
aliases urllib.unquote and pycompat.urlunquote aliases urlparse.unquote
on Python 2. You might think one of urllib.unquote and urlparse.unquote
is an alias to the other, but you would be incorrect. In fact, these
functions are copies of each other. There is even a comment in the
CPython source code saying to keep them in sync. You can't make this
up.
--- a/mercurial/util.py Tue Mar 21 22:20:11 2017 -0700
+++ b/mercurial/util.py Tue Mar 21 22:23:11 2017 -0700
@@ -2637,7 +2637,7 @@
'path', 'fragment'):
v = getattr(self, a)
if v is not None:
- setattr(self, a, pycompat.urlunquote(v))
+ setattr(self, a, urlreq.unquote(v))
def __repr__(self):
attrs = []