Re: [BUG] git send-email: incorrectly parses email address with comma
On 05/12/2018 11:48 AM, Jeff King wrote: > On Sat, May 12, 2018 at 10:21:46AM +0200, Heinrich Schuchardt wrote: > >> Git send-email allows to combine multiple email addresses in one >> parameter, e.g. >> >> --to="a...@example.com, b...@example.com" >> >> But email addresses may contain commas themselves: >> >> --to="LASTNAME, firstname" >> >> This may lead to an error: > > If the name contains syntactically relevant metacharacters, it can be > quoted. So as a workaround, you can do: > > --to='"LASTNAME, firstname" ' > > I think rfc822 actually requires even names with just spaces in them to > be quoted, but git-send-email and most other mail programs are pretty > lax about allowing just about anything outside of the <>, so people tend > not to bother. > >> If the string preceding a comma is not a valid email address do not >> split it off. > > That might work as a heuristic, though "is a valid email address" is a > notoriously hard thing to check. Possibly looking for an "@" would catch > most common cases, though. A more elaborate test would be: A string matching [\S\s]*<\S+@\S+.\S+>\s* is an email address. A string matching \s*\S+@\S+.\S+\s* is an email address. Both may need trimming of whitespace. Any other string is not an email address. Regards Heinrich > > -Peff >
Re: [BUG] git send-email: incorrectly parses email address with comma
On Sat, May 12, 2018 at 10:21:46AM +0200, Heinrich Schuchardt wrote: > Git send-email allows to combine multiple email addresses in one > parameter, e.g. > > --to="a...@example.com, b...@example.com" > > But email addresses may contain commas themselves: > > --to="LASTNAME, firstname" > > This may lead to an error: If the name contains syntactically relevant metacharacters, it can be quoted. So as a workaround, you can do: --to='"LASTNAME, firstname" ' I think rfc822 actually requires even names with just spaces in them to be quoted, but git-send-email and most other mail programs are pretty lax about allowing just about anything outside of the <>, so people tend not to bother. > If the string preceding a comma is not a valid email address do not > split it off. That might work as a heuristic, though "is a valid email address" is a notoriously hard thing to check. Possibly looking for an "@" would catch most common cases, though. -Peff
[BUG] git send-email: incorrectly parses email address with comma
Git send-email allows to combine multiple email addresses in one parameter, e.g. --to="a...@example.com, b...@example.com" But email addresses may contain commas themselves: --to="LASTNAME, firstname" This may lead to an error: $ git send-email --to="Schuchardt, Heinrich " \ *.patch-cover-letter.patch (mbox) Adding cc: Heinrich Schuchardt from line 'From: Heinrich Schuchardt ' From: Heinrich Schuchardt To: Schuchardt, Heinrich Subject: [PATCH 0/2] efi_loader: adjust definitions of variable services Date: Sat, 12 May 2018 10:01:21 +0200 Message-Id: <20180512080121.26620-1-xypron.g...@example.com> X-Mailer: git-send-email 2.17.0 Send this email? ([y]es|[n]o|[q]uit|[a]ll): a Password for 'smtp://xypron.g...@example.com@mail.example.com:587': Syntax error in parameters or arguments Please, implement the following logic, If the string preceding a comma is not a valid email address do not split it off. Best regards Heinrich Schuchardt