comparison mercurial/shelve.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 8ff1ecfadcd1
comparison
equal deleted inserted replaced
43084:c2e284cee333 43085:eef9a2d67051
26 import errno 26 import errno
27 import itertools 27 import itertools
28 import stat 28 import stat
29 29
30 from .i18n import _ 30 from .i18n import _
31 from .pycompat import open
31 from . import ( 32 from . import (
32 bookmarks, 33 bookmarks,
33 bundle2, 34 bundle2,
34 bundlerepo, 35 bundlerepo,
35 changegroup, 36 changegroup,