From: Erik Faye-Lund Date: Mon, 12 Apr 2010 18:36:12 GMT Subject: Re: Local unset override global options Message-ID: In-Reply-To: <7vvdbwk004.fsf@alter.siamese.dyndns.org> On Mon, Apr 12, 2010 at 8:18 PM, Junio C Hamano wrote: > Jakub Narebski writes: > >> Junio C Hamano wrote: >>> Jakub Narebski writes: >>> >>> > How does special case of no value, i.e. >>> > >>> >    [sendemail] >>> >         smtpuser >>> >>> That is not a special case; that is "boolean true". >> >> Well, it is "boolean true" *if* git-config is used with '--bool'. >> >> If git-send-email.perl used "git config -l -z" to read all its config >> variables at once into hash, like gitweb.perl does in the >> git_parse_project_config() subroutine, it would be able to distinguish >> between those the case of no value: >> >>     [sendemail] >>          smtpuser > > If sendemail is ever re-written in C and use git_config() API, the above > will become boolean.  Besides, even if you are sticking to sendemail.perl Actually, I have a very very (very) rudimentary port of send-email in C. I worked on that mostly for Windows compatibility, but we already solved the issue for msysGit by supplying msmtp instead, so I haven't been working at it for quite some time. It's based on an older version of send-email, and is incomplete in many ways (no alias-support, for one), but most of the "tricky" parts are done AFAICT (SMTP with SSL if OpenSSL is available). Is there any interest in this? I think in the long run, it'd be beneficial for Git for Windows not to strictly depend on perl, but I don't really see that happening any time soon as there's just too many essential tools written in perl. Send-email is one of them (possibly one of the less essential tools for most Windows users, though). -- Erik "kusma" Faye-Lund