# HG changeset patch # User Gregory Szorc # Date 1570311894 14400 # Node ID e554cfd93975f39d5e6b05dac78c89eecfcdf850 # Parent 094d0f4a8edde4c51a2b4a31b9c08abb3b3a8e9a hgweb: use importlib.reload() if available reload() was nuked in Python 3. We need to use importlib.reload() instead. But pyflakes isn't smart enough to detect our conditional usage, so we allow this error. Differential Revision: https://phab.mercurial-scm.org/D6992 diff -r 094d0f4a8edd -r e554cfd93975 mercurial/hgweb/server.py --- a/mercurial/hgweb/server.py Sat Oct 05 16:57:45 2019 -0400 +++ b/mercurial/hgweb/server.py Sat Oct 05 17:44:54 2019 -0400 @@ -9,6 +9,7 @@ from __future__ import absolute_import import errno +import importlib import os import socket import sys @@ -370,7 +371,11 @@ # codec is hardcoded as ascii. sys.argv # unwrap demand-loader so that reload() works - reload(sys) # resurrect sys.setdefaultencoding() + # resurrect sys.setdefaultencoding() + try: + importlib.reload(sys) + except AttributeError: + reload(sys) oldenc = sys.getdefaultencoding() sys.setdefaultencoding("latin1") # or any full 8-bit encoding mimetypes.init() diff -r 094d0f4a8edd -r e554cfd93975 tests/test-check-pyflakes.t --- a/tests/test-check-pyflakes.t Sat Oct 05 16:57:45 2019 -0400 +++ b/tests/test-check-pyflakes.t Sat Oct 05 17:44:54 2019 -0400 @@ -22,4 +22,5 @@ > 2>/dev/null \ > | xargs pyflakes 2>/dev/null | "$TESTDIR/filterpyflakes.py" contrib/perf.py:*: undefined name 'xrange' (glob) (?) + mercurial/hgweb/server.py:*: undefined name 'reload' (glob) (?)