-
-
Notifications
You must be signed in to change notification settings - Fork 31.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Python 3.13: gnureadline appears to no longer be used #125924
Comments
The old REPL can still be activated: https://docs.python.org/3/using/cmdline.html#envvar-PYTHON_BASIC_REPL |
Out of interest, how much does the new REPL still depend on It is explicitly mentioned as a dependency in the docs linked above, and I see that the code in |
Not sure if I make this a separate issue or as a comment here, but another behavioral difference with CTRL+R search in the new REPL is that after looking up a line, pressing ENTER only closes the search and returns back to the normal mode, and then you need to press ENTER again to actually input the command. That has been messing with my muscle memory as now I have to double-tap the key each time lol |
@Architector4 I agree, and I don't like it either. I think there are and will be lots of people in the same boat who will question this change. Many linux tools use GNU readline, so having to continuously switch between how Python's arbitrary readline implementation treats I personally stopped using the new REPL by setting |
|
Bug report
Bug description:
Tested in 3.12:
In the <=3.12 Python REPL on Linux, pressing CTRL+R invokes gnureadline and shows:
Tested in 3.13:
In the 3.13 Python REPL on Linux, pressing CTRL+R does not appear to invoke gnureadline and shows:
Additionally, with nothing in the command history, typing a few characters in the 3.13 REPL (without pressing enter) and then using the up/down arrow keys moves the cursor to the start and end of the line. In 3.12 (any in any other software that uses gnureadline), pressing up/down in this scenario did nothing and is the expected behaviour.
Was gnureadline removed in 3.13 in favour of an in-house implementation that doesn't mirror the featureset? If so, is it possible to restore the previous behaviour from <=3.12? This used to be able to be done with ludwigschwardt/python-gnureadline#62 but this no longer appears to work in 3.13.
CPython versions tested on:
3.12, 3.13
Operating systems tested on:
Linux, macOS
The text was updated successfully, but these errors were encountered: