mail: don't complain about a multi-word email.method
I want to be able to set email.method to "ssh relay /usr/sbin/sendmail"
without needing an extra trivial shell script.
This works fine since we pass the full command to a shell, except for
validateconfig trying to find it in $PATH.
Differential Revision: https://phab.mercurial-scm.org/D7542
--- a/mercurial/mail.py Mon Mar 28 18:53:55 2022 +0200
+++ b/mercurial/mail.py Mon Dec 02 14:45:00 2019 +0100
@@ -260,9 +260,11 @@
)
)
else:
- if not procutil.findexe(method):
+ command = procutil.shellsplit(method)
+ command = command[0] if command else b''
+ if not (command and procutil.findexe(command)):
raise error.Abort(
- _(b'%r specified as email transport, but not in PATH') % method
+ _(b'%r specified as email transport, but not in PATH') % command
)