--- a/mercurial/hook.py Thu Nov 12 14:34:07 2009 -0600
+++ b/mercurial/hook.py Thu Nov 12 14:05:52 2009 -0800
@@ -37,10 +37,18 @@
try:
obj = __import__(modname)
except ImportError:
+ e1 = sys.exc_type, sys.exc_value, sys.exc_traceback
try:
# extensions are loaded with hgext_ prefix
obj = __import__("hgext_%s" % modname)
except ImportError:
+ e2 = sys.exc_type, sys.exc_value, sys.exc_traceback
+ if ui.tracebackflag:
+ ui.warn(_('exception from first failed import attempt:\n'))
+ ui.traceback(e1)
+ if ui.tracebackflag:
+ ui.warn(_('exception from second failed import attempt:\n'))
+ ui.traceback(e2)
raise util.Abort(_('%s hook is invalid '
'(import of "%s" failed)') %
(hname, modname))