From 754c05caf306c7b587698193477bed12014e4164 Mon Sep 17 00:00:00 2001 From: Nicolas Boichat Date: Mon, 13 Jul 2020 10:50:00 +0800 Subject: [PATCH] patman: Make sure sendemail.suppresscc is (un)set correctly Setting sendemail.suppresscc to all or cccmd leads to --cc-cmd parameter being ignored, and emails going either nowhere, or just to the To: line maintainer. Signed-off-by: Nicolas Boichat Reviewed-by: Simon Glass --- tools/patman/control.py | 2 ++ tools/patman/gitutil.py | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/tools/patman/control.py b/tools/patman/control.py index e67867b845..8f4afeab18 100644 --- a/tools/patman/control.py +++ b/tools/patman/control.py @@ -166,6 +166,8 @@ def send(args): ok = check_patches(series, patch_files, args.check_patch, args.verbose) + ok = ok and gitutil.CheckSuppressCCConfig() + its_a_go = ok or args.ignore_errors if its_a_go: email_patches( diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index b683481a57..192d8e69b3 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -344,6 +344,31 @@ def BuildEmailList(in_list, tag=None, alias=None, raise_on_error=True): return ['%s %s%s%s' % (tag, quote, email, quote) for email in result] return result +def CheckSuppressCCConfig(): + """Check if sendemail.suppresscc is configured correctly. + + Returns: + True if the option is configured correctly, False otherwise. + """ + suppresscc = command.OutputOneLine('git', 'config', 'sendemail.suppresscc', + raise_on_error=False) + + # Other settings should be fine. + if suppresscc == 'all' or suppresscc == 'cccmd': + col = terminal.Color() + + print((col.Color(col.RED, "error") + + ": git config sendemail.suppresscc set to %s\n" % (suppresscc)) + + " patman needs --cc-cmd to be run to set the cc list.\n" + + " Please run:\n" + + " git config --unset sendemail.suppresscc\n" + + " Or read the man page:\n" + + " git send-email --help\n" + + " and set an option that runs --cc-cmd\n") + return False + + return True + def EmailPatches(series, cover_fname, args, dry_run, raise_on_error, cc_fname, self_only=False, alias=None, in_reply_to=None, thread=False, smtp_server=None): -- 2.39.5