threads / patch / 4604

patchCheck and document the options to prevent mistakes.

Subject: [PATCH] Check and document the options to prevent mistakes.

## tl;dr

4 messages between Jun 21, 2006 and Jun 22, 2006. Diffs are folded; open one to read it.

replies: 3people: 2as markdown or json

Eric W. Biederman· Jun 21, 2006, 13:17 UTC · lore

When multiple recipients are given to git-send-email on the same --cc line the code does not properly handle it.

Full and proper parsing of the email addresses so I can detect which commas mean a new email address is more than I care to implement.

In particular this email address: "bibo,mao" <bibo.mao@intel.com> must not be treated as two email addresses.

So this patch simply treats all commas in recipient lists as an error and fails if one is given.

At the same time it documents that git-send-email wants multiple instances of --cc specified on the command line if you want to cc multiple recipients.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
---
 Documentation/git-send-email.txt |    9 +++++++++
 git-send-email.perl              |   14 ++++++++++++++
 2 files changed, 23 insertions(+)
Show changes to 2 files +23 −0

Documentation/git-send-email.txt, git-send-email.perl

diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt
index ad1b9cf..481b3f5 100644
--- a/Documentation/git-send-email.txt
+++ b/Documentation/git-send-email.txt
@@ -24,9 +24,16 @@ OPTIONS
 -------
 The options available are:
 
+--bcc::
+	Specify a "Bcc:" value for each email.
+
+	The --bcc option must be repeated for each user you want on the bcc list.
+
 --cc::
 	Specify a starting "Cc:" value for each email.
 
+	The --cc option must be repeated for each user you want on the cc list.
+
 --chain-reply-to, --no-chain-reply-to::
 	If this is set, each email will be sent as a reply to the previous
 	email sent.  If disabled with "--no-chain-reply-to", all emails after
@@ -76,6 +83,8 @@ The options available are:
 	Generally, this will be the upstream maintainer of the
 	project involved.
 
+	The --to option must be repeated for each user you want on the to list.
+
 
 Author
 ------
diff --git a/git-send-email.perl b/git-send-email.perl
index 7b1cca7..c5d9e73 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -65,6 +65,20 @@ my $rc = GetOptions("from=s" => \$from,
 		    "no-signed-off-cc|no-signed-off-by-cc" => \$no_signed_off_cc,
 	 );
 
+# Verify the user input
+
+foreach my $entry (@to) {
+	die "Comma in --to entry: $entry'\n" unless $entry !~ m/,/;
+}
+
+foreach my $entry (@initial_cc) {
+	die "Comma in --cc entry: $entry'\n" unless $entry !~ m/,/;
+}
+
+foreach my $entry (@bcclist) {
+	die "Comma in --bcclist entry: $entry'\n" unless $entry !~ m/,/;
+}
+
 # Now, let's fill any that aren't set in with defaults:
 
 sub gitvar {
Junio C Hamano· Jun 21, 2006, 20:53 UTC · re: Eric W. Biederman · lore

Re: [PATCH] Check and document the options to prevent mistakes.

ebiederm@xmission.com (Eric W. Biederman) writes:
Show 6 quoted lines
> +# Verify the user input
> +
> +foreach my $entry (@to) {
> +	die "Comma in --to entry: $entry'\n" unless $entry !~ m/,/;
> +}
> +
Perhaps, avoiding double negation would be easier on the eyes.
        die ... if $entry =~ /,/

Does it grok '"Biederman, Eric W." <eb@xm.com>' some people seem to do properly, or do we care (I personally don't)?

Eric W. Biederman· Jun 22, 2006, 03:05 UTC · re: Junio C Hamano · lore

Re: [PATCH] Check and document the options to prevent mistakes.

Junio C Hamano <junkio@cox.net> writes:
Show 12 quoted lines
> ebiederm@xmission.com (Eric W. Biederman) writes:
>
>> +# Verify the user input
>> +
>> +foreach my $entry (@to) {
>> +	die "Comma in --to entry: $entry'\n" unless $entry !~ m/,/;
>> +}
>> +
>
> Perhaps, avoiding double negation would be easier on the eyes.
>
>         die ... if $entry =~ /,/

Sure double negation does get confusing. I think I forgot about that last if form. My perl is rusty from disuse.

> Does it grok '"Biederman, Eric W." <eb@xm.com>' some people seem
> to do properly, or do we care (I personally don't)?

Nope. If figure that is lesser of two evils. If I could properly grok that I would make it do things properly and parse a --cc option for multiple email addresses.

I think you can still specify those interesting forms in an alias file, like .mailrc.

The important thing is not to do a mailing and the discover your recipients didn't get the email.

Eric
Junio C Hamano· Jun 22, 2006, 03:45 UTC · re: Eric W. Biederman · lore

Re: [PATCH] Check and document the options to prevent mistakes.

ebiederm@xmission.com (Eric W. Biederman) writes:
Show 6 quoted lines
> Junio C Hamano <junkio@cox.net> writes:
>
>> Does it grok '"Biederman, Eric W." <eb@xm.com>' some people seem
>> to do properly, or do we care (I personally don't)?
>
> Nope.  If figure that is lesser of two evils.
Fair enough.

← back to recent threads