Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gh-111201: A new Python REPL #111567

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

Merged
merged 88 commits into from
May 5, 2024
Merged
Changes from 1 commit
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
2bf1505
gh-111201: A new Python REPL
pablogsal Oct 20, 2023
35d322e
Clean some files
pablogsal Apr 27, 2024
4d2303b
Fix history across sessions
pablogsal Apr 27, 2024
7763c05
Fore fixes to history
pablogsal Apr 27, 2024
e85d873
Lukasz was wrong all along
pablogsal Apr 27, 2024
842496e
Implement REPL commands and remove F1 for help (curses shows that scr…
pablogsal Apr 27, 2024
1417b9b
Restore F1 for help
pablogsal Apr 27, 2024
4c69853
Implement colored prompt
pablogsal Apr 27, 2024
359407b
WIP for paste mode
pablogsal Apr 27, 2024
85a2b35
Only execute PYTHONSTARTUP when asked (we do it in main.c anyway)
ambv Apr 27, 2024
05a8831
Fixed coloring
pablogsal Apr 27, 2024
c074ca6
Do not run commands if they are shadowed
pablogsal Apr 27, 2024
9584b5b
Move pager routines to _pyrepl, so we can use it in the REPL without …
ambv Apr 27, 2024
d7ddebd
Don't assume stupid paths or you will be tested against your stupid a…
ambv Apr 27, 2024
2d24cd2
<F2> shows history so you can copy it, <F3> is paste mode
ambv Apr 27, 2024
fe1b3ac
Do not include REPL commands in history
pablogsal Apr 27, 2024
e1abd39
Add Blurb
ambv Apr 27, 2024
afbeaab
Reintroduce old names to fix pydoc tests
ambv Apr 27, 2024
aee9fcf
Add some tests
pablogsal Apr 28, 2024
77db960
Add moar tests
pablogsal Apr 28, 2024
2a64680
Add moar tests
pablogsal Apr 28, 2024
5bced59
Cleanup and refactor
pablogsal Apr 28, 2024
20533d3
Refactor unix_console.py
pablogsal Apr 28, 2024
a07a0ce
Refactor unix_console.py more
pablogsal Apr 28, 2024
b8b0e76
Refactor unix_console.py more
pablogsal Apr 28, 2024
c570171
Moar tests
pablogsal Apr 28, 2024
169043f
Fix test___all__
ambv Apr 28, 2024
c613ae3
Fix test_traceback
ambv Apr 28, 2024
98fbee2
Fix weird r-search scrambled text due to color codes
pablogsal Apr 28, 2024
254aaf2
Fix weird r-search scrambled text due to color codes better
pablogsal Apr 28, 2024
cf9bd26
Disgusting fix for help state restoration
pablogsal Apr 28, 2024
b064e1f
Test pasting with/without paste mode
mgmacias95 Apr 28, 2024
0fa01e0
refactor events
mgmacias95 Apr 28, 2024
fa37b07
Merge pull request #71 from mgmacias95/pyrepl
pablogsal Apr 28, 2024
a6d54e6
help() uses its own history, doesn't pollute main history
ambv Apr 28, 2024
ffbf24b
Add typing to reader.py
ambv Apr 29, 2024
6c188fb
Add types to pager.py
ambv Apr 29, 2024
7919bae
Add types to input.py, console.pu, and commands.py
ambv Apr 29, 2024
2a7e81d
Refactor termios stuff in unix console
lysnikolaou Apr 29, 2024
aa9eaf3
Merge pull request #72 from lysnikolaou/pyrepl-refactor-term-unix-con…
pablogsal Apr 29, 2024
8c368d0
Revert "Refactor termios stuff in unix console"
pablogsal Apr 29, 2024
977e79e
Fix cursor position for double-width characters
lysnikolaou Apr 30, 2024
05b1142
Add _pyrepl to installed Lib subdirs
lysnikolaou Apr 30, 2024
c56209a
Merge pull request #74 from lysnikolaou/pyrepl-add-module-install
pablogsal Apr 30, 2024
bc31d3a
Add tests
lysnikolaou Apr 30, 2024
373a8a0
Update Lib/test/test_pyrepl.py
pablogsal Apr 30, 2024
e9be872
Merge pull request #73 from lysnikolaou/pyrepl-double-width-char-cursor
pablogsal Apr 30, 2024
cba260f
Implement better fallback with PYTHON_OLD_REPL
pablogsal Apr 30, 2024
233da02
Cache failures in pyrepl
pablogsal Apr 30, 2024
07695f7
Stay at eol when moving up/down
lysnikolaou Apr 30, 2024
63dabfd
Fix linter
lysnikolaou Apr 30, 2024
162252a
fix early errors
pablogsal Apr 30, 2024
970fd85
Fix CI
pablogsal Apr 30, 2024
3dcf704
Fix paste mode when there are empty line in the middle
lysnikolaou Apr 30, 2024
755728d
Fix disp_str for control characters
lysnikolaou Apr 30, 2024
121ce2b
Fix mac CI
pablogsal Apr 30, 2024
07345da
Merge pull request #77 from lysnikolaou/pyrepl-fix-disp-str-ctrl
pablogsal Apr 30, 2024
e5154d2
Merge pull request #76 from lysnikolaou/pyrepl-paste-mode-newlines-mid
pablogsal Apr 30, 2024
390d778
Merge pull request #75 from lysnikolaou/pyrepl-eol-move-up-down
pablogsal Apr 30, 2024
ba26254
Various fixes to handle wide characters correctly
lysnikolaou May 1, 2024
691c75e
Fix vertical navigation with wide characters
lysnikolaou May 2, 2024
9804074
Write more tests
lysnikolaou May 2, 2024
8f3e713
Fix backspace in second line
lysnikolaou May 2, 2024
abe9fd3
Fixes for pos2xy & setpos_from_xy when wrapped line
lysnikolaou May 3, 2024
4f66170
Fix linter & run black
lysnikolaou May 3, 2024
4bc36ab
Update Lib/_pyrepl/reader.py
pablogsal May 3, 2024
1443793
Merge pull request #78 from lysnikolaou/pyrepl-various-fixed-wide-cha…
pablogsal May 3, 2024
b516831
Add typing to consoles
ambv May 4, 2024
0d24b9d
Merge branch 'main' into pyrepl
ambv May 4, 2024
18cd2cf
Work around mypy being unhappy with _colorize
ambv May 4, 2024
afe2513
Remove duplicate test
ambv May 4, 2024
864ecb8
Add types to HistoricalReader and CompletingReader
ambv May 4, 2024
b5f8895
Add typing to readline.py
ambv May 4, 2024
45537bb
Pin test_pyrepl to the `curses` test resource
ambv May 4, 2024
22c4d3f
Don't call anything curses in test_repl
pablogsal May 4, 2024
6a0fcef
Many machines on CI run with -uall; skip the test if curses import fails
ambv May 4, 2024
b4362b5
Fix refleaks
pablogsal May 4, 2024
a900ccd
Document PYTHON_BASIC_REPL
ambv May 4, 2024
13fda4e
Do not call _setup() on import
pablogsal May 4, 2024
6ebf89c
Document pyrepl
ambv May 4, 2024
6d3155e
Merge branch 'main' into pyrepl
ambv May 4, 2024
058bc7f
Apply suggestions from code review
pablogsal May 5, 2024
7ac9af8
Update Lib/_pyrepl/_minimal_curses.py
pablogsal May 5, 2024
7422f1c
Use more specific exceptions
pablogsal May 5, 2024
d2de559
Use better error messages
ambv May 5, 2024
3053b39
Add to What's New
ambv May 5, 2024
149658b
Forgot the PyPy attribution in "What's New"
ambv May 5, 2024
be2a0c9
let's never talk about this
ambv May 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
let's never talk about this
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
  • Loading branch information
ambv and hugovk authored May 5, 2024
commit be2a0c92f44dd721b790c015ce7bca451280fed0
2 changes: 1 addition & 1 deletion 2 Doc/whatsnew/3.13.rst
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ the :envvar:`PYTHON_BASIC_REPL` environment variable.

For more on interactive mode, see :ref:`tut-interac`.

(Contributed by Pablo Galindo Galgado, Łukasz Langa, and
(Contributed by Pablo Galindo Salgado, Łukasz Langa, and
Lysandros Nikolaou in :gh:`111201` based on code from the PyPy project.)

Improved Error Messages
Expand Down
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.