mercurial/cmdutil.py
changeset 4632 8d46056960ab
parent 4630 e6d105a51ec7
child 4633 ff7253a0d1da
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -115,6 +115,14 @@ def runcatch(ui, args):
             ui.warn(_(" empty string\n"))
         else:
             ui.warn("\n%r\n" % util.ellipsis(inst[1]))
+    except ImportError, inst:
+        m = str(inst).split()[-1]
+        ui.warn(_("abort: could not import module %s!\n" % m))
+        if m in "mpatch bdiff".split():
+            ui.warn(_("(did you forget to compile extensions?)\n"))
+        elif m in "zlib".split():
+            ui.warn(_("(is your Python install correct?)\n"))
+            
     except util.Abort, inst:
         ui.warn(_("abort: %s\n") % inst)
     except SystemExit, inst: