summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2021-10-18 20:15:48 -0700
committerGitHub <noreply@github.com>2021-10-18 20:15:48 -0700
commit97ce855ca8ce437070424b43f5b41158685ac140 (patch)
treef50637b60f2eb2499e94a414b5df55b0b28a19e4
parentb1949e0b58714724a3105cad3ad1b61384688da7 (diff)
downloadcpython-git-97ce855ca8ce437070424b43f5b41158685ac140.tar.gz
bpo-45475: Revert `__iter__` optimization for GzipFile, BZ2File, and LZMAFile. (GH-29016)
This reverts commit d2a8e69c2c605fbaa3656a5f99aa8d295f74c80e. (cherry picked from commit 0a4c82ddd34a3578684b45b76f49cd289a08740b) Co-authored-by: Inada Naoki <songofacandy@gmail.com>
-rw-r--r--Lib/bz2.py4
-rw-r--r--Lib/gzip.py4
-rw-r--r--Lib/lzma.py4
-rw-r--r--Misc/NEWS.d/next/Library/2021-10-18-10-46-47.bpo-45475.sb9KDF.rst4
4 files changed, 4 insertions, 12 deletions
diff --git a/Lib/bz2.py b/Lib/bz2.py
index 7f1d20632e..fabe4f73c8 100644
--- a/Lib/bz2.py
+++ b/Lib/bz2.py
@@ -197,10 +197,6 @@ class BZ2File(_compression.BaseStream):
self._check_can_read()
return self._buffer.readline(size)
- def __iter__(self):
- self._check_can_read()
- return self._buffer.__iter__()
-
def readlines(self, size=-1):
"""Read a list of lines of uncompressed bytes from the file.
diff --git a/Lib/gzip.py b/Lib/gzip.py
index 3d837b7448..475ec326c0 100644
--- a/Lib/gzip.py
+++ b/Lib/gzip.py
@@ -398,10 +398,6 @@ class GzipFile(_compression.BaseStream):
self._check_not_closed()
return self._buffer.readline(size)
- def __iter__(self):
- self._check_not_closed()
- return self._buffer.__iter__()
-
class _GzipReader(_compression.DecompressReader):
def __init__(self, fp):
diff --git a/Lib/lzma.py b/Lib/lzma.py
index 9abf06d91d..800f52198f 100644
--- a/Lib/lzma.py
+++ b/Lib/lzma.py
@@ -221,10 +221,6 @@ class LZMAFile(_compression.BaseStream):
self._check_can_read()
return self._buffer.readline(size)
- def __iter__(self):
- self._check_can_read()
- return self._buffer.__iter__()
-
def write(self, data):
"""Write a bytes object to the file.
diff --git a/Misc/NEWS.d/next/Library/2021-10-18-10-46-47.bpo-45475.sb9KDF.rst b/Misc/NEWS.d/next/Library/2021-10-18-10-46-47.bpo-45475.sb9KDF.rst
new file mode 100644
index 0000000000..6fce894e6e
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2021-10-18-10-46-47.bpo-45475.sb9KDF.rst
@@ -0,0 +1,4 @@
+Reverted optimization of iterating :class:`gzip.GzipFile`,
+:class:`bz2.BZ2File`, and :class:`lzma.LZMAFile` (see bpo-43787) because it
+caused regression when user iterate them without having reference of them.
+Patch by Inada Naoki.