send-email: Add some options for controlling how addresses are automatically added to the cc: list.

Signed-off-by: Ryan Anderson <ryan@michonline.com>
maint
Ryan Anderson 2006-02-13 02:57:09 -05:00
parent bd9ca0baff
commit a985d595ad
2 changed files with 19 additions and 3 deletions

View File

@ -48,6 +48,9 @@ The options available are:
Only necessary if --compose is also set. If --compose Only necessary if --compose is also set. If --compose
is not set, this will be prompted for. is not set, this will be prompted for.


--no-signed-off-by-cc::
Do not add emails foudn in Signed-off-by: lines to the cc list.

--quiet:: --quiet::
Make git-send-email less verbose. One line per email should be Make git-send-email less verbose. One line per email should be
all that is output. all that is output.
@ -61,6 +64,10 @@ The options available are:
Only necessary if --compose is also set. If --compose Only necessary if --compose is also set. If --compose
is not set, this will be prompted for. is not set, this will be prompted for.


--suppress-from::
Do not add the From: address to the cc: list, if it shows up in a From:
line.

--to:: --to::
Specify the primary recipient of the emails generated. Specify the primary recipient of the emails generated.
Generally, this will be the upstream maintainer of the Generally, this will be the upstream maintainer of the

View File

@ -34,7 +34,7 @@ my $compose_filename = ".msg.$$";
my (@to,@cc,$initial_reply_to,$initial_subject,@files,$from,$compose); my (@to,@cc,$initial_reply_to,$initial_subject,@files,$from,$compose);


# Behavior modification variables # Behavior modification variables
my ($chain_reply_to, $smtp_server, $quiet) = (1, "localhost", 0); my ($chain_reply_to, $smtp_server, $quiet, $suppress_from, $no_signed_off_cc) = (1, "localhost", 0, 0, 0);


# Example reply to: # Example reply to:
#$initial_reply_to = ''; #<20050203173208.GA23964@foobar.com>'; #$initial_reply_to = ''; #<20050203173208.GA23964@foobar.com>';
@ -52,6 +52,8 @@ my $rc = GetOptions("from=s" => \$from,
"smtp-server=s" => \$smtp_server, "smtp-server=s" => \$smtp_server,
"compose" => \$compose, "compose" => \$compose,
"quiet" => \$quiet, "quiet" => \$quiet,
"suppress-from" => \$suppress_from,
"no-signed-off-cc" => \$no_signed_off_cc,
); );


# Now, let's fill any that aren't set in with defaults: # Now, let's fill any that aren't set in with defaults:
@ -212,13 +214,19 @@ Options:
email sent, rather than to the first email sent. email sent, rather than to the first email sent.
Defaults to on. Defaults to on.


--no-signed-off-cc Suppress the automatic addition of email addresses
that appear in a Signed-off-by: line, to the cc: list.
Note: Using this option is not recommended.

--smtp-server If set, specifies the outgoing SMTP server to use. --smtp-server If set, specifies the outgoing SMTP server to use.
Defaults to localhost. Defaults to localhost.


--suppress-from Supress sending emails to yourself if your address
appears in a From: line.

--quiet Make git-send-email less verbose. One line per email should be --quiet Make git-send-email less verbose. One line per email should be
all that is output. all that is output.



Error: Please specify a file or a directory on the command line. Error: Please specify a file or a directory on the command line.
EOT EOT
exit(1); exit(1);
@ -304,6 +312,7 @@ foreach my $t (@files) {
$subject = $1; $subject = $1;


} elsif (/^(Cc|From):\s+(.*)$/) { } elsif (/^(Cc|From):\s+(.*)$/) {
next if ($2 eq $from && $suppress_from);
printf("(mbox) Adding cc: %s from line '%s'\n", printf("(mbox) Adding cc: %s from line '%s'\n",
$2, $_) unless $quiet; $2, $_) unless $quiet;
push @cc, $2; push @cc, $2;
@ -332,7 +341,7 @@ foreach my $t (@files) {
} }
} else { } else {
$message .= $_; $message .= $_;
if (/^Signed-off-by: (.*)$/i) { if (/^Signed-off-by: (.*)$/i && !$no_signed_off_cc) {
my $c = $1; my $c = $1;
chomp $c; chomp $c;
push @cc, $c; push @cc, $c;