fix: Python buffered reader (#3136)

* fix: Python buffered reader

* use bytes generator only for buferred reader
This commit is contained in:
Guillaume Bouvignies
2024-02-02 10:23:04 +01:00
committed by GitHub
parent fc606c078b
commit 86aa6d0f0d
3 changed files with 30 additions and 7 deletions
+10 -2
View File
@@ -1,4 +1,4 @@
from io import BufferedReader
from io import BufferedReader, BytesIO
from json import JSONDecodeError
import httpx
@@ -39,10 +39,18 @@ class S3BufferedReader(BufferedReader):
break
read_result.append(b)
return b''.join(read_result)
return b"".join(read_result)
def read1(self, size=-1):
return self.read(size)
def __exit__(self, *args):
self._context_manager.__exit__(*args)
def bytes_generator(buffered_reader: BufferedReader | BytesIO):
while True:
byte = buffered_reader.read(1)
if not byte:
break
yield byte