From: Serhiy Storchaka <storchaka@gmail.com> Date: Wed, 11 Mar 2015 15:18:03 +0000 (+0200) Subject: Issue #23615: Modules bz2, tarfile and tokenize now can be reloaded with X-Git-Tag: v3.5.0a3~203^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cf4a2f29adb6bdae0b18e983250d7c48d486c9d6;p=python Issue #23615: Modules bz2, tarfile and tokenize now can be reloaded with imp.reload(). Patch by Thomas Kluyver. --- diff --git a/Lib/bz2.py b/Lib/bz2.py index 6f47bfaf6c..6c5a60d619 100644 --- a/Lib/bz2.py +++ b/Lib/bz2.py @@ -9,6 +9,7 @@ __all__ = ["BZ2File", "BZ2Compressor", "BZ2Decompressor", __author__ = "Nadeem Vawda <nadeem.vawda@gmail.com>" +from builtins import open as _builtin_open import io import warnings @@ -27,8 +28,6 @@ _MODE_WRITE = 3 _BUFFER_SIZE = 8192 -_builtin_open = open - class BZ2File(io.BufferedIOBase): diff --git a/Lib/tarfile.py b/Lib/tarfile.py index 37e4dcd0e9..f9e5c189a1 100755 --- a/Lib/tarfile.py +++ b/Lib/tarfile.py @@ -38,6 +38,7 @@ __credits__ = "Gustavo Niemeyer, Niels Gust\u00e4bel, Richard Townsend." #--------- # Imports #--------- +from builtins import open as bltn_open import sys import os import io @@ -2421,7 +2422,6 @@ def is_tarfile(name): except TarError: return False -bltn_open = open open = TarFile.open diff --git a/Lib/tokenize.py b/Lib/tokenize.py index 5b47ebd821..ed4153cec6 100644 --- a/Lib/tokenize.py +++ b/Lib/tokenize.py @@ -24,6 +24,7 @@ __author__ = 'Ka-Ping Yee <ping@lfw.org>' __credits__ = ('GvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, ' 'Skip Montanaro, Raymond Hettinger, Trent Nelson, ' 'Michael Foord') +from builtins import open as _builtin_open from codecs import lookup, BOM_UTF8 import collections from io import TextIOWrapper @@ -429,8 +430,6 @@ def detect_encoding(readline): return default, [first, second] -_builtin_open = open - def open(filename): """Open a file in read only mode using the encoding detected by detect_encoding(). diff --git a/Misc/NEWS b/Misc/NEWS index e52a480f9e..a6073b8c43 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -16,6 +16,9 @@ Core and Builtins Library ------- +- Issue #23615: Modules bz2, tarfile and tokenize now can be reloaded with + imp.reload(). Patch by Thomas Kluyver. + - Issue #23476: In the ssl module, enable OpenSSL's X509_V_FLAG_TRUSTED_FIRST flag on certificate stores when it is available. diff --git a/Tools/freeze/bkfile.py b/Tools/freeze/bkfile.py index 58246fa2ad..6abacc9e0e 100644 --- a/Tools/freeze/bkfile.py +++ b/Tools/freeze/bkfile.py @@ -1,4 +1,4 @@ -_orig_open = open +from builtins import open as _orig_open class _BkFile: def __init__(self, file, mode, bufsize):