threads / discuss / 5521

Problem with send-email

Subject: Problem with send-email

## tl;dr

3 messages between Sep 8, 2006 and Sep 8, 2006.

replies: 2people: 2as markdown or json

Timur Tabi· Sep 8, 2006, 21:02 UTC · lore
Does anyone actually use git-send-email?  It's been so broken for me for months that I can't help but think that.
Problem #1:
I don't know Perl, but I think there's something wrong with this code:
if (!defined $from) {
	$from = $author || $committer;
         print "$from\n";
	do {
		$_ = $term->readline("Who should the emails appear to be from? ",
			$from);
	} while (!defined $_);
	$from = $_;
	print "Emails will be sent from: ", $from, "\n";
	$prompting++;
}
I don't think the call to readline() is working.  Specifically, the last parameter, $from, is being ignored.  When I call git-send-email without specifying a --from parameter, this code is executed.  But this is what I see:

Timur Tabi <timur@freescale.com> Who should the emails appear to be from? Emails will be sent from:

This happens when I press ENTER at the "Who should the emails appear to be from?" prompt.  I'm expecting it to assign the default value, which is displayed right above it.  But instead, $from is erased, and so my email doesn't have a From: line.
Problem #2:
I cannot use send-email to send a patch to anyone but myself.  If I do this:
git-send-email --from timur@freescale.com --to timur@freescale.com --smtp-server remotesmtp.freescale.net patchfile
Everything works.  However, if I do this:
git-send-email --from timur@freescale.com --to  --smtp-server remotesmtp.freescale.net patchfile
I get this:

(mbox) Adding cc: Timur Tabi <timur@freescale.com> from line 'From: Timur Tabi <timur@freescale.com>' (sob) Adding cc: Timur Tabi <timur@freescale.com> from line 'Signed-off-by: Timur Tabi <timur@freescale.com>' 5.0.0 <Timur Tabi <timur@freescale.com>... Unbalanced '<'

I think that last line is a response from the SMTP server.  My guess is that there's something wrong with this line:
		print $sm "$header\n$message";
Maybe my SMTP server sees the "From: Timur Tabi <timur@freescale.com>" that's at the top of $message and gets confused?
-- 
Timur Tabi
Linux Kernel Developer @ Freescale
Jakub Narebski· Sep 8, 2006, 22:25 UTC · re: Timur Tabi · lore

Re: Problem with send-email

Timur Tabi wrote:
Show 5 quoted lines
> Everything works.  However, if I do this:
> 
> git-send-email --from timur@freescale.com --to  \
>    --smtp-server remotesmtp.freescale.net patchfile 
> 
What do you expect when you specify _empty_ To: header?

I use git-send-email from time to time; I always specify From:, either entering it when prompted, or using --from parameter. The fact that it didn't fill default value from committer/author core.author+core.email is I guess a bug...

-- 
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
Timur Tabi· Sep 8, 2006, 22:57 UTC · re: Jakub Narebski · lore

Re: Problem with send-email

Jakub Narebski wrote:
Show 9 quoted lines
> Timur Tabi wrote:
> 
>> Everything works.  However, if I do this:
>>
>> git-send-email --from timur@freescale.com --to  \
>>    --smtp-server remotesmtp.freescale.net patchfile 
>>
> 
> What do you expect when you specify _empty_ To: header?
Sorry, that was a bad cut-and-paste.  I don't know what happened.  That line is supposed to read:
git-send-email --from timur@freescale.com --to timur@tabi.org --smtp-server remotesmtp.freescale.net patchfile
The error message I get is the same:

(mbox) Adding cc: Timur Tabi <timur@freescale.com> from line 'From: Timur Tabi <timur@freescale.com>' (sob) Adding cc: Timur Tabi <timur@freescale.com> from line 'Signed-off-by: Timur Tabi <timur@freescale.com> ' 5.0.0 <Timur Tabi <timur@freescale.com>... Unbalanced '<'

I do have some news.  This problem goes away if I don't specify the --smtp-server parameter.
Show 5 quoted lines
> 
> I use git-send-email from time to time; I always specify From:, 
> either entering it when prompted, or using --from parameter.
> The fact that it didn't fill default value from committer/author
> core.author+core.email is I guess a bug...
Like I said, I think the bug is in the call to readline().  Like I said, I don't know Perl, but from the documentation I have read, I don't think readline() takes two parameters.
     do {
         $_ = $term->readline("Who should the emails appear to be from? ",
             $from);
     } while (!defined $_);
     $from = $_;
$from does contain the correct value when readline() is called.  The problem is that $_ contains nothing, which causes $from to be erased.
-- 
Timur Tabi
Linux Kernel Developer @ Freescale

← back to recent threads