Open
Description
Crash report
What happened?
When pasting an accented character like ñ or é, or typing one such as ´p and pressing Enter, then up arrow, the new REPL on Windows will exit with the following error:
Python 3.14.0a6+ (heads/fix_non_string_candidates_exit_repl-dirty:8008a588342, Mar 29 2025, 08:15:) [MSC v.1943 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\__main__.py", line 6, in <module>
__pyrepl_interactive_console()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\main.py", line 59, in interactive_console
run_multiline_interactive_console(console)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\simple_interact.py", line 137, in run_multiline_interactive_console
statement = multiline_input(more_lines, ps1, ps2)
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\readline.py", line 389, in multiline_input
return reader.readline()
~~~~~~~~~~~~~~~^^
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\reader.py", line 750, in readline
self.handle1()
~~~~~~~~~~~~^^
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\reader.py", line 706, in handle1
event = self.console.get_event(block=False)
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\windows_console.py", line 471, in get_event
self.event_queue.push(rec.Event.KeyEvent.uChar.UnicodeChar)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ddini\PycharmProjects\cpython\Lib\_pyrepl\base_eventqueue.py", line 88, in push
assert len(self.buf) == 1
^^^^^^^^^^^^^^^^^^
AssertionError
In these cases, len(self.buf)
is 3 instead of 1.
I'm running Python in Windows Terminal, chcp
gives 850, changing it to 65001 (UTF-8) makes no difference.
CPython versions tested on:
CPython main branch
Operating systems tested on:
Windows
Output from running 'python -VV' on the command line:
Python 3.14.0a6+ (heads/main-dirty:7c3692fe275, Mar 24 2025, 19:20:37) [MSC v.1942 64 bit (AMD64)]
Linked PRs
- gh-131878: Fix input of unicode characters with two or more code points in new pyrepl on Windows #131901
- gh-131878: Handle top level exceptions in new pyrepl and prevent of closing it #131910
- gh-131878: Fix input of unicode characters with two or more code points in the REPL on Windows in vt mode #133030
Metadata
Metadata
Assignees
Labels
Projects
Status
Todo