Mercurial > public > mercurial-scm > hg-stable
view tests/svnurlof.py @ 48886:b5fe10b3c9f5 stable
py3: don?t subscript socket.error
On Python 2, socket.error was subscriptable. On Python 3, socket.error is an
alias to OSError and is not subscriptable. The except block passes the
exception to self.send_error(). This fails on both Python 2 (if it was
executed) and Python 3, as it expects a string.
Getting the attribute .strerror works on Python 2 and Python 3, and has the
same effect as the previous code on Python 2.
author | Manuel Jacob <me@manueljacob.de> |
---|---|
date | Thu, 02 Jun 2022 04:39:49 +0200 |
parents | 2372284d9457 |
children | 6000f5b25c9b |
line wrap: on
line source
from __future__ import absolute_import, print_function import sys from mercurial import ( pycompat, util, ) def main(argv): enc = util.urlreq.quote(pycompat.sysbytes(argv[1])) if pycompat.iswindows: fmt = 'file:///%s' else: fmt = 'file://%s' print(fmt % pycompat.sysstr(enc)) if __name__ == '__main__': main(sys.argv)