Skip to content

Commit

Permalink
pythongh-118817: Fix asyncio REPL on Windows (python#118819)
Browse files Browse the repository at this point in the history
  • Loading branch information
Eclips4 authored May 9, 2024
1 parent 35b5eaa commit c3643a1
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
7 changes: 4 additions & 3 deletions Lib/asyncio/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ def run(self):
try:
import readline # NoQA
except ImportError:
pass
readline = None

interactive_hook = getattr(sys, "__interactivehook__", None)

Expand All @@ -122,8 +122,9 @@ def run(self):
except:
pass
else:
completer = rlcompleter.Completer(console.locals)
readline.set_completer(completer.complete)
if readline is not None:
completer = rlcompleter.Completer(console.locals)
readline.set_completer(completer.complete)

repl_thread = REPLThread()
repl_thread.daemon = True
Expand Down
5 changes: 4 additions & 1 deletion Lib/test/test_repl.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from textwrap import dedent
from test import support
from test.support import cpython_only, has_subprocess_support, SuppressCrashReport
from test.support.script_helper import kill_python
from test.support.script_helper import kill_python, assert_python_ok
from test.support.import_helper import import_module


Expand Down Expand Up @@ -195,6 +195,9 @@ def bar(x):
expected = "(30, None, [\'def foo(x):\\n\', \' return x + 1\\n\', \'\\n\'], \'<stdin>\')"
self.assertIn(expected, output, expected)

def test_asyncio_repl_is_ok(self):
assert_python_ok("-m", "asyncio")



class TestInteractiveModeSyntaxErrors(unittest.TestCase):
Expand Down

0 comments on commit c3643a1

Please sign in to comment.