comparison mercurial/util.py @ 43085:eef9a2d67051

py3: manually import pycompat.open into files that need it We want to eliminate the source transformer. Currently it inserts a `from mercurial.pycompat import ...` at the top of files to alias some builtins. This commit replaces the implicit import of `open` with an explicit import on files that need it and changes the source transformer to no longer import `open`. As part of this, we needed to store an explicit local for `open` in the Python 2 code path in `pycompat` so the import works. (Builtins that are automatically in scope cannot be imported.) Differential Revision: https://phab.mercurial-scm.org/D7005
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 06 Oct 2019 13:28:56 -0400
parents 687b865b95ad
children 66f2cc210a29
comparison
equal deleted inserted replaced
43084:c2e284cee333 43085:eef9a2d67051
33 import time 33 import time
34 import traceback 34 import traceback
35 import warnings 35 import warnings
36 36
37 from .thirdparty import attr 37 from .thirdparty import attr
38 from .pycompat import open
38 from hgdemandimport import tracing 39 from hgdemandimport import tracing
39 from . import ( 40 from . import (
40 encoding, 41 encoding,
41 error, 42 error,
42 i18n, 43 i18n,