python-emails
python-emails copied to clipboard
Possible mistake in (clumsy) heuristics for email-list detection
Hi buddiez, I hope you're all doing goodie ^__^
I've seen the heuristics for email list detection, and to be honest I'm a bit surprised: from what I can see, the only thing it does is checking weither the iterable is of length 2, if it's a tuple, and if both email and name are string types (or name is falsey - typically empty string or None I suppose).
However, the second check seems to have a typo in the sense that it re-checks the email against string types: https://github.com/lavr/python-emails/blob/master/emails/utils.py#L133
Other than that typo, I feel like this logic is either a bit fragile or not sufficiently documented: if name-email pairs should be tuples, the documentation should likely mention it explicitly (I do realize all examples using name-email pairs are using tuples, but AFAICS it is not explicitly said to be preferred over lists).
Thanks for reading, and thanks in advance for clarifying this issue ^__^
Yep, that code looks weird. I'm surprised too.
Guess here is typo in L133 - second check was to ensure that n
is a string or None.
But it's clear to me now that heuristics should be rewritten on @
symbol detection.
Yep, definitely there's a bug there, it basically hardly works if you try to specify >1 address at the same time.
["[email protected]", "[email protected]"] gets turned into To:<[email protected]>
which in my case ends up with the email being silently dropped.