[Python-checkins] cpython: IDLE was relying on implicit relative imports which have gone away in

brett.cannon python-checkins at python.org
Sun Apr 15 02:44:31 CEST 2012


http://hg.python.org/cpython/rev/556b9bafdee8
changeset:   76310:556b9bafdee8
user:        Brett Cannon <brett at python.org>
date:        Sat Apr 14 20:44:23 2012 -0400
summary:
  IDLE was relying on implicit relative imports which have gone away in
Python 3.3 thanks to importlib finishing the work in PEP 328 that
accidently got carried forward.

files:
  Lib/idlelib/EditorWindow.py |  10 +++++++---
  1 files changed, 7 insertions(+), 3 deletions(-)


diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -1,8 +1,9 @@
-import sys
+import imp
+import importlib
 import os
 import re
 import string
-import imp
+import sys
 from tkinter import *
 import tkinter.simpledialog as tkSimpleDialog
 import tkinter.messagebox as tkMessageBox
@@ -1005,7 +1006,10 @@
 
     def load_extension(self, name):
         try:
-            mod = __import__(name, globals(), locals(), [])
+            try:
+                mod = importlib.import_module('.' + name, package=__package__)
+            except ImportError:
+                mod = importlib.import_module(name)
         except ImportError:
             print("\nFailed to import extension: ", name)
             raise

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


More information about the Python-checkins mailing list