-
-
Notifications
You must be signed in to change notification settings - Fork 30.7k
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
A new Python REPL #111201
Comments
If you want to help with this endeavour, please mention it here so we can coordinate everyone! |
I have a initial version that we can start building upon, I will create a PR shortly. |
I learned about this from the "core.py" podcast and it sounds like a great idea! I'd be happy help with this effort :) |
Do you mean not using _pyrepl? Can _pyrepl be used without readline nor tty? |
It needs at least a tty yes. Readline can be lifted but I am not sure yet |
I would like to see a new REPL (read, evaluate, print, loop) for the Python interpreter if the interpreter goes by a different name. Two other major Python interpreters also exist, and they already use other names ("bpython" and "ipython"). I would recommend forking the current REPL and renaming the interpreter with the new REPL to "zpython" instead. Also, I would like to see a built-in "clear()" function in the REPL as I already encounter with the "exit()" function and other REPL-specific functions. |
Co-authored-by: Łukasz Langa <lukasz@langa.pl> Co-authored-by: Marta Gómez Macías <mgmacias@google.com> Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Big feature without PEP? |
Most buildbots are broken with:
e.g.: https://buildbot.python.org/all/#/builders/725/builds/7939/steps/5/logs/stdio |
Checking, will make a PR this morning |
I already have something, will push in a bit. |
Hi, I am seeing the following error: ======================================================================
FAIL: test_completion_with_many_options (test.test_pyrepl.TestPyReplCompleter.test_completion_with_many_options)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/..../cpython-main/Lib/test/test_pyrepl.py", line 586, in test_completion_with_many_options
self.assertEqual(output, "os.O_ASYNC")
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 'os.O_AS' != 'os.O_ASYNC'
- os.O_AS
+ os.O_ASYNC
? +++ The reason is most likely that |
(hmm there is only one constant starting with |
Don't attempt to load pyrepl Windows console if platforms others than Windows. For example, the import can fail if ctypes is missing. (cherry picked from commit 91601a5)
Co-authored-by: Anthony Shaw <anthony.p.shaw@gmail.com> Co-authored-by: Łukasz Langa <lukasz@langa.pl>
- auto-indent when editing multi-line block - ignore comments
Don't attempt to load pyrepl Windows console if platforms others than Windows. For example, the import can fail if ctypes is missing.
…on (python#118705) Co-authored-by: Łukasz Langa <lukasz@langa.pl>
…ython#119274) Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Anthony Shaw <anthony.p.shaw@gmail.com> Co-authored-by: Łukasz Langa <lukasz@langa.pl>
- auto-indent when editing multi-line block - ignore comments
Don't attempt to load pyrepl Windows console if platforms others than Windows. For example, the import can fail if ctypes is missing.
…pythonGH-123196) (cherry picked from commit d683f49) Co-authored-by: Arnon Yaari <wiggin15@yahoo.com>
I think we can close this and handle the rest of the bugs in individual issues. Feel free to re-open if you feel otherwise. |
Thanks to all the participants, this is amazing! I really enjoy its increased portability! |
This issue will track all the different steps to bootstrap a new Python REPL with many new features. The target of this issue is that we can reach a point where new contributions can be made easily to the REPL once is written in pure Python. This issue only coveres the initial ground work to reach this status.
Tasks to be done:
Linked PRs
The text was updated successfully, but these errors were encountered: