[Python-checkins] bpo-36429: Fix starting IDLE with pyshell (#12548)

Terry Jan Reedy webhook-mailer at python.org
Tue Mar 26 19:58:29 EDT 2019


https://github.com/python/cpython/commit/6a258c88906a7e8acde455ee2acb78b6f315ea0b
commit: 6a258c88906a7e8acde455ee2acb78b6f315ea0b
branch: master
author: Terry Jan Reedy <tjreedy at udel.edu>
committer: GitHub <noreply at github.com>
date: 2019-03-26T19:58:19-04:00
summary:

bpo-36429: Fix starting IDLE with pyshell (#12548)

Add idlelib.pyshell alias at top; remove pyshell alias at bottom.
Remove obsolete __name__=='__main__' command.

files:
A Misc/NEWS.d/next/IDLE/2019-03-26-00-09-50.bpo-36429.w-jL2e.rst
M Lib/idlelib/NEWS.txt
M Lib/idlelib/pyshell.py

diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index dbb3653bb4f4..be855bc46718 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -3,6 +3,15 @@ Released on 2019-10-20?
 ======================================
 
 
+bpo-36429: Fix starting IDLE with pyshell.
+Add idlelib.pyshell alias at top; remove pyshell alias at bottom.
+Remove obsolete __name__=='__main__' command.
+
+bpo-30348: Increase test coverage of idlelib.autocomplete by 30%.
+Patch by Louie Lu.
+
+bpo-23205: Add tests and refactor grep's findfiles.
+
 bpo-36405: Use dict unpacking in idlelib.
 
 bpo-36396: Remove fgBg param of idlelib.config.GetHighlight().
diff --git a/Lib/idlelib/pyshell.py b/Lib/idlelib/pyshell.py
index 11bafdb49aaa..2de42658b01c 100755
--- a/Lib/idlelib/pyshell.py
+++ b/Lib/idlelib/pyshell.py
@@ -1,6 +1,8 @@
 #! /usr/bin/env python3
 
 import sys
+if __name__ == "__main__":
+    sys.modules['idlelib.pyshell'] = sys.modules['__main__']
 
 try:
     from tkinter import *
@@ -416,10 +418,7 @@ def build_subprocess_arglist(self):
         # run from the IDLE source directory.
         del_exitf = idleConf.GetOption('main', 'General', 'delete-exitfunc',
                                        default=False, type='bool')
-        if __name__ == 'idlelib.pyshell':
-            command = "__import__('idlelib.run').run.main(%r)" % (del_exitf,)
-        else:
-            command = "__import__('run').main(%r)" % (del_exitf,)
+        command = "__import__('idlelib.run').run.main(%r)" % (del_exitf,)
         return [sys.executable] + w + ["-c", command, str(self.port)]
 
     def start_subprocess(self):
@@ -1574,7 +1573,6 @@ def main():
     capture_warnings(False)
 
 if __name__ == "__main__":
-    sys.modules['pyshell'] = sys.modules['__main__']
     main()
 
 capture_warnings(False)  # Make sure turned off; see issue 18081
diff --git a/Misc/NEWS.d/next/IDLE/2019-03-26-00-09-50.bpo-36429.w-jL2e.rst b/Misc/NEWS.d/next/IDLE/2019-03-26-00-09-50.bpo-36429.w-jL2e.rst
new file mode 100644
index 000000000000..1d6bb1a587b5
--- /dev/null
+++ b/Misc/NEWS.d/next/IDLE/2019-03-26-00-09-50.bpo-36429.w-jL2e.rst
@@ -0,0 +1,2 @@
+Fix starting IDLE with pyshell. Add idlelib.pyshell alias at top; remove
+pyshell alias at bottom. Remove obsolete __name__=='__main__' command.



More information about the Python-checkins mailing list