Re: no-xmailer tests fail under Mac OS
Jeff King p...@peff.net writes: On Thu, Dec 11, 2014 at 02:11:04PM -0800, Junio C Hamano wrote: Jeff King p...@peff.net writes: On Fri, Dec 05, 2014 at 11:07:37PM -0800, Michael Blume wrote: Ah, right, we might be looking for 0 sometimes. The right way to do it without destroying the -chaining is: { grep ^X-Mailer: out || true } test_line_count = $expected mailer Hmm, it doesn't look like that helper is -chained though? So it seems like we could just do without the You're right, but that is IMHO a bug. We would not notice if send-email or format-patch barfed, and we are expecting to find no X-Mailer (we wouldn't, but for the wrong reason). Let me patch this up further by amending the SQUASH??? at the tip. t/t9001-send-email.sh | 11 +-- 1 file changed, 5 insertions(+), 6 deletions(-) [...] Yeah, looks good to me. -Peff Same here. Thanks a lot for fixing this. Cheers, -- Luís -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC][PATCH] send-email: add --[no-]xmailer option
On Wed, Dec 03, 2014 at 08:56:45AM -0800, Junio C Hamano wrote: Eric Wong normalper...@yhbt.net writes: Luis Henriques hen...@camandro.org wrote: On Mon, Mar 24, 2014 at 09:38:27PM +, Luis Henriques wrote: Add --[no-]xmailer that allows a user to disable adding the 'X-Mailer:' header to the email being sent. Ping It's been a while since I sent this patch. Is there any interest in having this switch in git-send-email? I wasn't paying attention when the original was sent, but this looks good to me. Acked-by: Eric Wong normalper...@yhbt.net I honestly don't like disclosing too much information about my system, in this case which MUA I'm using and its version. Right on. I would even favor this being the default. Auto-generated Message-Id headers also shows the use of git-send-email; perhaps there can be a way to configure that, too. However, git-send-email respects manually-added Message-Id headers in the original patch, so it's less of a problem, I suppose. I actually do not think this is a good idea from debuggability. Do you think this could be merged with yet another switch? I can't think of a name for the switch, something like... --hide-msgid? Another option would be to re-work the --no-xmailer switch to change it into a --hide-id (or something), where both the X-Mailer: header would be dropped and the Message-id would be obfuscated. Cheers, -- Luís -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] test/send-email: --[no-]xmailer tests
Add tests for the --[no-]xmailer option. Signed-off-by: Luis Henriques hen...@camandro.org --- t/t9001-send-email.sh | 32 1 file changed, 32 insertions(+) diff --git a/t/t9001-send-email.sh b/t/t9001-send-email.sh index e37efef..7a3f996 100755 --- a/t/t9001-send-email.sh +++ b/t/t9001-send-email.sh @@ -1556,5 +1556,37 @@ test_expect_success $PREREQ 'sendemail.aliasfile=~/.mailrc' ' 2errors out grep ^!someone@example\.org!$ commandline1 ' +do_xmailer_test() { + expected=$1 + params=$2 + git format-patch -1 + git send-email \ + --from=Example nob...@example.com \ + --to=some...@example.com \ + --smtp-server=$(pwd)/fake.sendmail \ + $params \ + 0001-*.patch \ + 2errors out + test z$(grep ^X-Mailer: out | wc -l) = z$expected + return $? +} + +test_expect_success $PREREQ '--xmailer uses X-Mailer header' ' + do_xmailer_test 1 --xmailer +' + +test_expect_success $PREREQ '--no-xmailer supresses X-Mailer header' ' + do_xmailer_test 0 --no-xmailer +' + +test_expect_success $PREREQ 'sendemail.xmailer=true uses X-Mailer header' ' + git config sendemail.xmailer true + do_xmailer_test 1 +' + +test_expect_success $PREREQ 'sendemail.xmailer=false supresses X-Mailer header' ' + git config sendemail.xmailer false + do_xmailer_test 0 +' test_done -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC][PATCH] send-email: add --[no-]xmailer option
On Thu, Dec 04, 2014 at 11:33:24AM -0800, Junio C Hamano wrote: Luis Henriques hen...@camandro.org writes: On Wed, Dec 03, 2014 at 08:56:45AM -0800, Junio C Hamano wrote: I actually do not think this is a good idea from debuggability. Do you think this could be merged with yet another switch? I can't think of a name for the switch, something like... --hide-msgid? In case it wasn't clear, by this I meant the removal of X-Mailer:, iow, Adding --no-xmailer option is a bad idea from debuggability's point of view. Oh, ok. I thought you were talking about the message-id. Not adding message-id is not an option; MSAs are supposed to always add one if they want to be RFC compliant, aren't they? Yes, of course -- having a message ID is a requirement. But I was hoping you could accept a solution similar to the one suggested by Kyle (adding him to Cc): he was suggesting hashing the message ID, which would be a good compromise, I believe. Cheers, -- Luís -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC][PATCH] send-email: add --[no-]xmailer option
On Tue, Dec 02, 2014 at 07:22:10PM -0800, Kyle J. McKay wrote: On Dec 2, 2014, at 18:34, Eric Wong wrote: Luis Henriques hen...@camandro.org wrote: On Mon, Mar 24, 2014 at 09:38:27PM +, Luis Henriques wrote: Add --[no-]xmailer that allows a user to disable adding the 'X-Mailer:' header to the email being sent. Ping It's been a while since I sent this patch. Is there any interest in having this switch in git-send-email? I wasn't paying attention when the original was sent, but this looks good to me. Acked-by: Eric Wong normalper...@yhbt.net I honestly don't like disclosing too much information about my system, in this case which MUA I'm using and its version. Right on. I would even favor this being the default. I fully agree with you. Auto-generated Message-Id headers also shows the use of git-send-email; perhaps there can be a way to configure that, too. However, git-send-email respects manually-added Message-Id headers in the original patch, so it's less of a problem, I suppose. It can be hashed like so to avoid leaking information: Awesome, I like this idea too! Cheers, -- Luís diff --git a/git-send-email.orig b/git-send-email.new index f3d75e8..d0b4bff 100755 --- a/git-send-email.orig +++ b/git-send-email.new @@ -27,6 +27,7 @@ use Data::Dumper; use Term::ANSIColor; use File::Temp qw/ tempdir tempfile /; use File::Spec::Functions qw(catfile); +use Digest::MD5 qw(md5_hex); use Error qw(:try); use Git; @@ -901,8 +903,10 @@ sub make_message_id { require Sys::Hostname; $du_part = 'user@' . Sys::Hostname::hostname(); } - my $message_id_template = %s-git-send-email-%s; + my $message_id_template = %s-git-send-email-%s; $message_id = sprintf($message_id_template, $uniq, $du_part); + @_ = split /@/, $message_id; + $message_id = ''.substr(md5_hex($_[0]),0,31).'@'.substr(md5_hex($_[1]),1,31).''; #print new message id = $message_id\n; # Was useful for debugging } --- --Kyle -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC][PATCH] send-email: add --[no-]xmailer option
On Wed, Dec 03, 2014 at 09:23:11AM -0800, Junio C Hamano wrote: Junio C Hamano gits...@pobox.com writes: Two problems here. ... tests? Something like this squashed into the patch you posted earlier, perhaps, would be a good place to start. Awesome, thank you for your review. I'll post a new version of the patch including your suggestions. Regarding the tests, I'll need a bit more time to work on those. Cheers, -- Luís Documentation/git-send-email.txt | 6 -- git-send-email.perl | 11 +-- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index f2425ef..a0bd806 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -132,8 +132,10 @@ Note that no attempts whatsoever are made to validate the encoding. 'sendemail.composeencoding'; if that is unspecified, UTF-8 is assumed. --xmailer:: - Prevent adding the X-Mailer: header. Default value is - 'sendemail.xmailer'. +--no-xmailer:: + Add (or prevent adding) the X-Mailer: header. By default, + the header is added, but it can be turned off by setting the + `sendemail.xmailer` configuration variable to `false`. Sending ~~~ diff --git a/git-send-email.perl b/git-send-email.perl index 9ca7c5b..a6e66b9 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -54,7 +54,7 @@ sub usage { --[no-]bcc str * Email Bcc: --subject str * Email Subject: --in-reply-to str * Email In-Reply-To: ---[no-]xmailer * Don't add X-Mailer: header. Default on. +--[no-]xmailer * Add X-Mailer: header (default). --[no-]annotate* Review each patch that will be sent in an editor. --compose * Open an editor for introduction. --compose-encoding str * Encoding to assume for introduction. @@ -177,8 +177,7 @@ sub format_2822_time { my $multiedit; my $editor; -# Usage of X-Mailer email header -my $xmailer; +my $use_xmailer; sub do_edit { if (!defined($editor)) { @@ -224,7 +223,7 @@ sub do_edit { validate = [\$validate, 1], multiedit = [\$multiedit, undef], annotate = [\$annotate, undef], -xmailer = [\$xmailer, 1] +xmailer = [\$use_xmailer, 1] ); my %config_settings = ( @@ -323,7 +322,7 @@ sub signal_handler { 8bit-encoding=s = \$auto_8bit_encoding, compose-encoding=s = \$compose_encoding, force = \$force, - xmailer! = \$xmailer, + xmailer! = \$use_xmailer, ); usage() if $help; @@ -1170,7 +1169,7 @@ sub send_message { Date: $date Message-Id: $message_id ; - if ($xmailer) { + if ($use_xmailer) { $header .= X-Mailer: git-send-email $gitversion\n; } if ($reply_to) { -- 2.2.0-141-gd3f4719 -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH v2] send-email: add --[no-]xmailer option
Add --[no-]xmailer that allows a user to disable adding the 'X-Mailer:' header to the email being sent. Acked-by: Eric Wong normalper...@yhbt.net Signed-off-by: Luis Henriques hen...@camandro.org --- Documentation/config.txt | 1 + Documentation/git-send-email.txt | 5 + git-send-email.perl | 11 +-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 922072596fdd..3f9898931d3b 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -2304,6 +2304,7 @@ sendemail.smtpserveroption:: sendemail.smtpuser:: sendemail.thread:: sendemail.validate:: +sendemail.xmailer:: See linkgit:git-send-email[1] for description. sendemail.signedoffcc:: diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index a60776eb579e..a0bd806cfed8 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -131,6 +131,11 @@ Note that no attempts whatsoever are made to validate the encoding. Specify encoding of compose message. Default is the value of the 'sendemail.composeencoding'; if that is unspecified, UTF-8 is assumed. +--xmailer:: +--no-xmailer:: + Add (or prevent adding) the X-Mailer: header. By default, + the header is added, but it can be turned off by setting the + `sendemail.xmailer` configuration variable to `false`. Sending ~~~ diff --git a/git-send-email.perl b/git-send-email.perl index 9949db01e119..a6e66b9ae386 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -54,6 +54,7 @@ git send-email [options] file | directory | rev-list options --[no-]bcc str * Email Bcc: --subject str * Email Subject: --in-reply-to str * Email In-Reply-To: +--[no-]xmailer * Add X-Mailer: header (default). --[no-]annotate* Review each patch that will be sent in an editor. --compose * Open an editor for introduction. --compose-encoding str * Encoding to assume for introduction. @@ -176,6 +177,8 @@ my $force = 0; my $multiedit; my $editor; +my $use_xmailer; + sub do_edit { if (!defined($editor)) { $editor = Git::command_oneline('var', 'GIT_EDITOR'); @@ -219,7 +222,8 @@ my %config_bool_settings = ( signedoffcc = [\$signed_off_by_cc, undef], # Deprecated validate = [\$validate, 1], multiedit = [\$multiedit, undef], -annotate = [\$annotate, undef] +annotate = [\$annotate, undef], +xmailer = [\$use_xmailer, 1] ); my %config_settings = ( @@ -318,6 +322,7 @@ my $rc = GetOptions(h = \$help, 8bit-encoding=s = \$auto_8bit_encoding, compose-encoding=s = \$compose_encoding, force = \$force, + xmailer! = \$use_xmailer, ); usage() if $help; @@ -1163,8 +1168,10 @@ To: $to${ccline} Subject: $subject Date: $date Message-Id: $message_id -X-Mailer: git-send-email $gitversion ; + if ($use_xmailer) { + $header .= X-Mailer: git-send-email $gitversion\n; + } if ($reply_to) { $header .= In-Reply-To: $reply_to\n; -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [RFC][PATCH] send-email: add --[no-]xmailer option
On Mon, Mar 24, 2014 at 09:38:27PM +, Luis Henriques wrote: Add --[no-]xmailer that allows a user to disable adding the 'X-Mailer:' header to the email being sent. Ping It's been a while since I sent this patch. Is there any interest in having this switch in git-send-email? I honestly don't like disclosing too much information about my system, in this case which MUA I'm using and its version. Cheers, -- Luís Signed-off-by: Luis Henriques hen...@camandro.org --- Documentation/config.txt | 1 + Documentation/git-send-email.txt | 3 +++ git-send-email.perl | 12 ++-- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 73c8973..c33d5a1 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -,6 +,7 @@ sendemail.smtpserveroption:: sendemail.smtpuser:: sendemail.thread:: sendemail.validate:: +sendemail.xmailer:: See linkgit:git-send-email[1] for description. sendemail.signedoffcc:: diff --git a/Documentation/git-send-email.txt b/Documentation/git-send-email.txt index f0e57a5..fab6264 100644 --- a/Documentation/git-send-email.txt +++ b/Documentation/git-send-email.txt @@ -131,6 +131,9 @@ Note that no attempts whatsoever are made to validate the encoding. Specify encoding of compose message. Default is the value of the 'sendemail.composeencoding'; if that is unspecified, UTF-8 is assumed. +--xmailer:: + Prevent adding the X-Mailer: header. Default value is + 'sendemail.xmailer'. Sending ~~~ diff --git a/git-send-email.perl b/git-send-email.perl index fdb0029..8789124 100755 --- a/git-send-email.perl +++ b/git-send-email.perl @@ -54,6 +54,7 @@ git send-email [options] file | directory | rev-list options --[no-]bcc str * Email Bcc: --subject str * Email Subject: --in-reply-to str * Email In-Reply-To: +--[no-]xmailer * Don't add X-Mailer: header. Default on. --[no-]annotate* Review each patch that will be sent in an editor. --compose * Open an editor for introduction. --compose-encoding str * Encoding to assume for introduction. @@ -174,6 +175,9 @@ my $force = 0; my $multiedit; my $editor; +# Usage of X-Mailer email header +my $xmailer; + sub do_edit { if (!defined($editor)) { $editor = Git::command_oneline('var', 'GIT_EDITOR'); @@ -214,7 +218,8 @@ my %config_bool_settings = ( signedoffcc = [\$signed_off_by_cc, undef], # Deprecated validate = [\$validate, 1], multiedit = [\$multiedit, undef], -annotate = [\$annotate, undef] +annotate = [\$annotate, undef], +xmailer = [\$xmailer, 1] ); my %config_settings = ( @@ -311,6 +316,7 @@ my $rc = GetOptions(h = \$help, 8bit-encoding=s = \$auto_8bit_encoding, compose-encoding=s = \$compose_encoding, force = \$force, + xmailer! = \$xmailer, ); usage() if $help; @@ -1144,8 +1150,10 @@ To: $to${ccline} Subject: $subject Date: $date Message-Id: $message_id -X-Mailer: git-send-email $gitversion ; + if ($xmailer) { + $header .= X-Mailer: git-send-email $gitversion\n; + } if ($reply_to) { $header .= In-Reply-To: $reply_to\n; -- 1.9.1 -- To unsubscribe from this list: send the line unsubscribe git in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html