]> granicus.if.org Git - python/commitdiff
If an extension can't be loaded, print warning and skip it instead of
authorKurt B. Kaiser <kbk@shore.net>
Tue, 18 Jan 2005 00:54:58 +0000 (00:54 +0000)
committerKurt B. Kaiser <kbk@shore.net>
Tue, 18 Jan 2005 00:54:58 +0000 (00:54 +0000)
erroring out.

Lib/idlelib/EditorWindow.py
Lib/idlelib/NEWS.txt

index 4015c9eea610dc8a81e04a59dee0c16520f2fac8..5e0a57158a373e511873548b304c9686e218f0c2 100644 (file)
@@ -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:
index 4bd578615001d7bbb9cabfdf7226661dc23a9f09..5eca893f14fa94cd7804d3200e14f2a922154077 100644 (file)
@@ -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.