* [PATCH] git-send-email: Add a --cc-nobody option
@ 2007-09-18 11:42 felipebalbi
2007-09-18 11:49 ` Andreas Ericsson
2007-09-18 12:50 ` Alex Unleashed
0 siblings, 2 replies; 5+ messages in thread
From: felipebalbi @ 2007-09-18 11:42 UTC (permalink / raw)
To: git, ae; +Cc: Felipe Balbi
From: Felipe Balbi <felipe.lima@indt.org.br>
This patch adds a --cc-nobody option to avoid sending emails
to everybody but the ones listed by --to option.
Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br>
---
git-send-email.perl | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/git-send-email.perl b/git-send-email.perl
index 4031e86..a5a466c 100755
--- a/git-send-email.perl
+++ b/git-send-email.perl
@@ -88,6 +88,9 @@ Options:
--suppress-from Suppress sending emails to yourself if your address
appears in a From: line. Defaults to off.
+ --cc-nobody Do not send emails to anyone unless explicitly listed by
+ --to option.
+
--thread Specify that the "In-Reply-To:" header should be set on all
emails. Defaults to on.
@@ -171,7 +174,7 @@ if ($@) {
my ($quiet, $dry_run) = (0, 0);
# Variables with corresponding config settings
-my ($thread, $chain_reply_to, $suppress_from, $signed_off_cc, $cc_cmd);
+my ($thread, $chain_reply_to, $suppress_from, $cc_nobody, $signed_off_cc, $cc_cmd);
my ($smtp_server, $smtp_authuser, $smtp_authpass, $smtp_ssl);
my ($identity, $aliasfiletype, @alias_files);
@@ -179,6 +182,7 @@ my %config_bool_settings = (
"thread" => [\$thread, 1],
"chainreplyto" => [\$chain_reply_to, 1],
"suppressfrom" => [\$suppress_from, 0],
+ "ccnobody" => [\$cc_nobody, 0],
"signedoffcc" => [\$signed_off_cc, 1],
"smtpssl" => [\$smtp_ssl, 0],
);
@@ -212,6 +216,7 @@ my $rc = GetOptions("sender|from=s" => \$sender,
"quiet" => \$quiet,
"cc-cmd=s" => \$cc_cmd,
"suppress-from!" => \$suppress_from,
+ "cc-nobody!" => \$cc_nobody,
"signed-off-cc|signed-off-by-cc!" => \$signed_off_cc,
"dry-run" => \$dry_run,
"envelope-sender=s" => \$envelope_sender,
@@ -669,8 +674,11 @@ foreach my $t (@files) {
$subject = $1;
} elsif (/^(Cc|From):\s+(.*)$/) {
- if (unquote_rfc2047($2) eq $sender) {
- next if ($suppress_from);
+ if (unquote_rfc2047($2)) {
+ next if ($cc_nobody);
+ }
+ elsif (unquote_rfc2047($2) eq $sender) {
+ next if ($suppress_from|$cc_nobody);
}
elsif ($1 eq 'From') {
$author = unquote_rfc2047($2);
@@ -707,7 +715,7 @@ foreach my $t (@files) {
}
} else {
$message .= $_;
- if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc) {
+ if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc && !$cc_nobody) {
my $c = $2;
chomp $c;
push @cc, $c;
--
1.5.3.1.91.gd3392
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] git-send-email: Add a --cc-nobody option
2007-09-18 11:42 [PATCH] git-send-email: Add a --cc-nobody option felipebalbi
@ 2007-09-18 11:49 ` Andreas Ericsson
2007-09-18 11:51 ` Felipe Balbi
2007-09-18 12:50 ` Alex Unleashed
1 sibling, 1 reply; 5+ messages in thread
From: Andreas Ericsson @ 2007-09-18 11:49 UTC (permalink / raw)
To: felipebalbi; +Cc: git, Felipe Balbi
felipebalbi@users.sourceforge.net wrote:
> From: Felipe Balbi <felipe.lima@indt.org.br>
>
> This patch adds a --cc-nobody option to avoid sending emails
> to everybody but the ones listed by --to option.
>
Sounds much better than --suppress-all. Thanks
--
Andreas Ericsson andreas.ericsson@op5.se
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] git-send-email: Add a --cc-nobody option
2007-09-18 11:49 ` Andreas Ericsson
@ 2007-09-18 11:51 ` Felipe Balbi
0 siblings, 0 replies; 5+ messages in thread
From: Felipe Balbi @ 2007-09-18 11:51 UTC (permalink / raw)
To: Andreas Ericsson; +Cc: git, Felipe Balbi
On 9/18/07, Andreas Ericsson <ae@op5.se> wrote:
> felipebalbi@users.sourceforge.net wrote:
> > From: Felipe Balbi <felipe.lima@indt.org.br>
> >
> > This patch adds a --cc-nobody option to avoid sending emails
> > to everybody but the ones listed by --to option.
> >
>
> Sounds much better than --suppress-all. Thanks
Yeah, sure...
np :-)
>
> --
> Andreas Ericsson andreas.ericsson@op5.se
> OP5 AB www.op5.se
> Tel: +46 8-230225 Fax: +46 8-230231
>
--
Best Regards,
Felipe Balbi
felipebalbi@users.sourceforge.net
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] git-send-email: Add a --cc-nobody option
2007-09-18 11:42 [PATCH] git-send-email: Add a --cc-nobody option felipebalbi
2007-09-18 11:49 ` Andreas Ericsson
@ 2007-09-18 12:50 ` Alex Unleashed
2007-09-18 13:01 ` Felipe Balbi
1 sibling, 1 reply; 5+ messages in thread
From: Alex Unleashed @ 2007-09-18 12:50 UTC (permalink / raw)
To: felipebalbi@users.sourceforge.net; +Cc: git, ae, Felipe Balbi
On 9/18/07, felipebalbi@users.sourceforge.net
<felipebalbi@users.sourceforge.net> wrote:
> From: Felipe Balbi <felipe.lima@indt.org.br>
>
> This patch adds a --cc-nobody option to avoid sending emails
> to everybody but the ones listed by --to option.
>
> Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br>
I wrote a similar patch a couple months ago, but they differ slightly,
maybe the code has changed somewhat:
http://marc.info/?l=git&m=118200193310898&w=2
--cc-nobody sounds better to me.
> } elsif (/^(Cc|From):\s+(.*)$/) {
> - if (unquote_rfc2047($2) eq $sender) {
> - next if ($suppress_from);
> + if (unquote_rfc2047($2)) {
> + next if ($cc_nobody);
> + }
> + elsif (unquote_rfc2047($2) eq $sender) {
> + next if ($suppress_from|$cc_nobody);
> }
> elsif ($1 eq 'From') {
> $author = unquote_rfc2047($2);
Here you could probably skip the whole branch if you check $cc_nobody
first of all.
> @@ -707,7 +715,7 @@ foreach my $t (@files) {
> }
> } else {
> $message .= $_;
> - if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc) {
> + if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc && !$cc_nobody) {
Minor, but almost the same here.
Alex
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] git-send-email: Add a --cc-nobody option
2007-09-18 12:50 ` Alex Unleashed
@ 2007-09-18 13:01 ` Felipe Balbi
0 siblings, 0 replies; 5+ messages in thread
From: Felipe Balbi @ 2007-09-18 13:01 UTC (permalink / raw)
To: Alex Unleashed; +Cc: git, ae, Felipe Balbi
hi,
On 9/18/07, Alex Unleashed <unledev@gmail.com> wrote:
> On 9/18/07, felipebalbi@users.sourceforge.net
> <felipebalbi@users.sourceforge.net> wrote:
> > From: Felipe Balbi <felipe.lima@indt.org.br>
> >
> > This patch adds a --cc-nobody option to avoid sending emails
> > to everybody but the ones listed by --to option.
> >
> > Signed-off-by: Felipe Balbi <felipe.lima@indt.org.br>
>
> I wrote a similar patch a couple months ago, but they differ slightly,
> maybe the code has changed somewhat:
> http://marc.info/?l=git&m=118200193310898&w=2
>
> --cc-nobody sounds better to me.
>
> > } elsif (/^(Cc|From):\s+(.*)$/) {
> > - if (unquote_rfc2047($2) eq $sender) {
> > - next if ($suppress_from);
> > + if (unquote_rfc2047($2)) {
> > + next if ($cc_nobody);
> > + }
> > + elsif (unquote_rfc2047($2) eq $sender) {
> > + next if ($suppress_from|$cc_nobody);
> > }
> > elsif ($1 eq 'From') {
> > $author = unquote_rfc2047($2);
>
> Here you could probably skip the whole branch if you check $cc_nobody
> first of all.
Yeah, I tested this one too but when sending emails I was changing all
those From lines to my address, which means every mail I was sending
the patch would take my authorship.
So it looked better guaranteeing the authorship
>
> > @@ -707,7 +715,7 @@ foreach my $t (@files) {
> > }
> > } else {
> > $message .= $_;
> > - if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc) {
> > + if (/^(Signed-off-by|Cc): (.*)$/i && $signed_off_cc && !$cc_nobody) {
>
> Minor, but almost the same here.
sanity
>
> Alex
>
--
Best Regards,
Felipe Balbi
felipebalbi@users.sourceforge.net
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-09-18 13:02 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-09-18 11:42 [PATCH] git-send-email: Add a --cc-nobody option felipebalbi
2007-09-18 11:49 ` Andreas Ericsson
2007-09-18 11:51 ` Felipe Balbi
2007-09-18 12:50 ` Alex Unleashed
2007-09-18 13:01 ` Felipe Balbi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).