Uh oh!
There was an error while loading. Please reload this page.
gh-145886: remove unused Event.raw field from _pyrepl - #146097
Conversation
Event.raw was being accumulated in getpending() but never actually read anywhere -- the callers only ever use Event.data. On top of that, there was a copy-paste bug (e.raw += e.raw instead of e.raw += e2.raw) which went unnoticed precisely because nothing consumes the field. Rather than just fixing the typo, remove the dead field entirely.
missed one with positional raw arg, only runs on windows so the previous test run didn't catch it
Most changes to Python require a NEWS entry. Add one using the blurb_it web app or the blurb command-line tool. If this change has little impact on Python users, wait for a maintainer to apply the |
chris-eibl
left a comment
There was a problem hiding this comment.
In general, LGTM.
CI is green, will do some manual tests on Windows and Linux in the next days.
I think def flush_buf() can (should?) be adapted, see #145886 (comment).
Since this change is purely intern, it should not need a news entry. But in case this breaks something, maybe it is better to have one. Let's wait on a core dev decision here.
no caller needs the buffer contents anymore, so just clear it without returning
picnixz
commented
Mar 18, 2026
There is no consensus on the issue. Do not open PRs in those cases please. |
picnixz
commented
Mar 18, 2026
Can we first discuss this on the issue before we open PRs in the future? |
While looking at the
getpending()bug (e.raw += e.rawinstead ofe2.raw), I noticedEvent.rawis never actually read anywhere -- only written to. So instead of just fixing the typo, this removes the dead field entirely.Removed
raw: bytes = b""from theEventdataclass along with all related assignments inunix_console.py,windows_console.py, andbase_eventqueue.py. Theflush_buf()calls are kept since they still need to clear the internal buffer, just no longer pass the result toEvent.Tests updated to match.
Event.rawbeing added to itself instead of to another event's.rawinUnixConsole.getpending#145886