From: Kurt B. Kaiser Date: Tue, 18 Jan 2005 00:54:58 +0000 (+0000) Subject: If an extension can't be loaded, print warning and skip it instead of X-Git-Tag: v2.5a0~2101 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b00e89faab0d69feb040118bbc5ea6149e91867f;p=thirdparty%2FPython%2Fcpython.git If an extension can't be loaded, print warning and skip it instead of erroring out. --- diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py index 4015c9eea610..5e0a57158a37 100644 --- a/Lib/idlelib/EditorWindow.py +++ b/Lib/idlelib/EditorWindow.py @@ -744,7 +744,11 @@ class EditorWindow(object): return idleConf.GetExtensions(editor_only=True) def load_extension(self, name): - mod = __import__(name, globals(), locals(), []) + try: + mod = __import__(name, globals(), locals(), []) + except ImportError: + print "\nFailed to import extension: ", name + return cls = getattr(mod, name) keydefs = idleConf.GetExtensionBindings(name) if hasattr(cls, "menudefs"): @@ -762,7 +766,6 @@ class EditorWindow(object): methodname = methodname + "_event" if hasattr(ins, methodname): self.text.bind(vevent, getattr(ins, methodname)) - return ins def apply_bindings(self, keydefs=None): if keydefs is None: diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt index 4bd578615001..5eca893f14fa 100644 --- a/Lib/idlelib/NEWS.txt +++ b/Lib/idlelib/NEWS.txt @@ -3,6 +3,9 @@ What's New in IDLE 1.2a0? *Release date: XX-XXX-2005* +- If an extension can't be loaded, print warning and skip it instead of + erroring out. + - The GUI was hanging if the shell window was closed while a raw_input() was pending. Restored the quit() of the readline() mainloop(). http://mail.python.org/pipermail/idle-dev/2004-December/002307.html @@ -142,7 +145,7 @@ What's New in IDLE 1.0? *Release date: 29-Jul-2003* -- Added a banner to the shell discussimg warnings possibly raised by personal +- Added a banner to the shell discussing warnings possibly raised by personal firewall software. Added same comment to README.txt.