comparison mercurial/profiling.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 c59eb1560c44
comparison
equal deleted inserted replaced
43084:c2e284cee333 43085:eef9a2d67051
8 from __future__ import absolute_import, print_function 8 from __future__ import absolute_import, print_function
9 9
10 import contextlib 10 import contextlib
11 11
12 from .i18n import _ 12 from .i18n import _
13 from .pycompat import open
13 from . import ( 14 from . import (
14 encoding, 15 encoding,
15 error, 16 error,
16 extensions, 17 extensions,
17 pycompat, 18 pycompat,