◐ Shell
clean mode source ↗

GH-130328: further speedup of pasting in new REPL on Windows by reading in chunks by chris-eibl · Pull Request #132889 · python/cpython

I've just copy-pasted this from

def getpending(self):
"""
Get pending events from the console event queue.
Returns:
- Event: Pending event from the event queue.
"""
e = Event("key", "", b"")
while not self.event_queue.empty():
e2 = self.event_queue.get()
e.data += e2.data
e.raw += e.raw
amount = 10000
raw = self.__read(amount)
data = str(raw, self.encoding, "replace")
e.data += data
e.raw += raw
return e

and dropped the reading of the next chunk, since IMHO this does not fit the doc string.

mypy fires here

Lib/_pyrepl/windows_console.py:545: error: Item "None" of "Event | None" has no
attribute "data"  [union-attr]
                e.data += e2.data
                          ^~~~~~~
Found 1 error in 1 file (checked 25 source files)

and is indeed correct. Have to dig in why we do not see this in case of unix_console.py ...