bpo-45475: Revert `__iter__` optimization for GzipFile, BZ2File, and LZMAFile. (GH-29016)

This reverts commit d2a8e69c2c.
This commit is contained in:
Inada Naoki 2021-10-19 11:51:48 +09:00 committed by GitHub
parent c029567530
commit 0a4c82ddd3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 4 additions and 12 deletions

View File

@ -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.

View File

@ -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__()
def _read_exact(fp, n):
'''Read exactly *n* bytes from `fp`

View File

@ -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.

View File

@ -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.