From: Junio C Hamano Date: Mon, 01 Aug 2005 00:40:18 GMT Subject: Re: [PATCH 1/3] Add git-send-email-script - tool to send emails from git-format-patch-script Message-ID: <7vk6j6a3rh.fsf@assigned-by-dhcp.cox.net> In-Reply-To: <20050731235242.GH32263@mythryan2.michonline.com> Ryan Anderson writes: > If I hope that nobody has done something like: > GIT_AUTHOR="Ryan <> Anderson" > GIT_AUTHOR_EMAIL="ryan@michonline.com" > > I get more confusing results. The function git_author_info() would remove <> from the above GIT_AUTHOR_* environment values by calling ident.c:copy(), so I think you would get more-or-less what you _should_ expect without getting confused. $ GIT_AUTHOR_NAME="Ryan <> Anderson" \ GIT_AUTHOR_EMAIL="ryan@michonline.com" git-var -l GIT_COMMITTER_IDENT=Junio C Hamano 1122855849 -0700 GIT_AUTHOR_IDENT=Ryan Anderson 1122855849 -0700 >> Is this the culprit that produced this mechanical-looking line? >> >> To: junkio@cox.net,git@vger.kernel.org > > No, that line was exactly what I put into the readline entry. I was mostly talking about Email::Valid seeming to be stripping out the display-name[*] part and keeping only addr-spec[*] part, like this: $ cat j.perl #!/usr/bin/perl use Email::Valid; for ('Junio C Hamano ', 'Ryan Anderson ') { print $_, " => ", lc(Email::Valid->address($_)), "\n"; } $ perl j.perl Junio C Hamano => junkio@cox.net Ryan Anderson => ryan@michonline.com Also, I wonder if running lc() to downcase the local-part[*] is safe/allowed/correct; domain[*] part is case insensitive and should be OK to downcase, though. > ..., because of the way I pull in all the relevant emails > from various places. So I really needed a way to cull the duplicates. > ... I could do soemthing like this, instead, I suppose: I understand your needs, and you can make it a "sub filter_dups", which I think would make things a lot more pleasant to read. [Footnote] Terms marked [*] are from RFC2822, section 3.4.