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