[Python-checkins] cpython (3.5): Issue #25488: Stpp idle.py from adding a entry when it is a duplicate.

terry.reedy python-checkins at python.org
Fri Sep 30 02:57:18 EDT 2016


https://hg.python.org/cpython/rev/013956a801e4
changeset:   104172:013956a801e4
branch:      3.5
parent:      104168:b5705456d9da
user:        Terry Jan Reedy <tjreedy at udel.edu>
date:        Fri Sep 30 02:53:44 2016 -0400
summary:
  Issue #25488: Stpp idle.py from adding a entry when it is a duplicate.
Also, make idlelib.idle.main() work after import idlelib.idle.

files:
  Lib/idlelib/idle.py |  14 ++++++++------
  1 files changed, 8 insertions(+), 6 deletions(-)


diff --git a/Lib/idlelib/idle.py b/Lib/idlelib/idle.py
--- a/Lib/idlelib/idle.py
+++ b/Lib/idlelib/idle.py
@@ -1,11 +1,13 @@
 import os.path
 import sys
 
-# If we are working on a development version of IDLE, we need to prepend the
-# parent of this idlelib dir to sys.path.  Otherwise, importing idlelib gets
-# the version installed with the Python used to call this module:
+# Enable running IDLE with idlelib in a non-standard location.
+# This was once used to run development versions of IDLE.
+# Because PEP 434 declared idle.py a public interface,
+# removal should require deprecation.
 idlelib_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
-sys.path.insert(0, idlelib_dir)
+if idlelib_dir not in sys.path:
+    sys.path.insert(0, idlelib_dir)
 
-import idlelib.PyShell
-idlelib.PyShell.main()
+from idlelib.PyShell import main  # This is subject to change
+main()

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list