From: Brett Cannon Date: Sun, 15 Apr 2012 00:44:23 +0000 (-0400) Subject: IDLE was relying on implicit relative imports which have gone away in X-Git-Tag: v3.3.0a3~225 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=aef82d3d1ed9456fe973b667441849e53e1b7ba1;p=python 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. --- diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py index 6a01db0125..de74e58c0f 100644 --- 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 @@ class EditorWindow(object): 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