diff -r 62019c4427e3 -r a11e13d50645 mercurial/mail.py --- a/mercurial/mail.py Sun May 27 14:26:54 2007 -0700 +++ b/mercurial/mail.py Sun May 27 14:40:14 2007 -0700 @@ -68,3 +68,15 @@ def sendmail(ui, sender, recipients, msg): return connect(ui).sendmail(sender, recipients, msg) + +def validateconfig(ui): + '''determine if we have enough config data to try sending email.''' + method = ui.config('email', 'method', 'smtp') + if method == 'smtp': + if not ui.config('smtp', 'host'): + raise util.Abort(_('smtp specified as email transport, ' + 'but no smtp host configured')) + else: + if not util.find_exe(method): + raise util.Abort(_('%r specified as email transport, ' + 'but not in PATH') % method)