3 ms·
Well the definition of a valid email address is very hard to get right and it can conceivably change.
by hueving 11y ago
Well the definition of a valid email address is very hard to get right and it can conceivably change.
- viraptor 11y agoThe email address format is very well defined in rfc822. What do you mean by "it can change"?
- eru 11y agoJust because someone made an rfc, doesn't mean that the rfc is the de facto standard.
- lokedhs 11y agoAs long as the RFC is marked as such, that's exactly what it means.
- jfarmer 11y agoYou're confused about de facto vs. de jure. It's a common thing to be ignorant about, but maybe in the future don't be all "No, no, you're exactly wrong!" before double-checking.
- eru 11y agoThough, if it's so often misunderstand perhaps I should be calling it `on paper' vs `in practice'.
- nitrogen 11y agoRFCs are closer to de jure standards, even if they aren't forced by law.
- eru 11y agoExactly. And de jure doesn't make something de facto automatically.
- nemo 11y agoRFC 822 is so loose in what it accepts compared to conventional use that it doesn't help with validation to prevent input mistakes, though it's effectively a lost cause. Since someone could theoretically have the address: "<blink> !_joe!jim%foo_jay\@sus/\$ch=rist;`rm -fr /`"@example.com Perfectly fine according to RFC 822. RFC 2822 is better and rejects that, so things have changed for the better, and theoretically could change again (though I wouldn't bet money on it). RFC 2822 still accepts: "joe!jim%foo_jaysus/cee=rist;`rm -fr /`"@example.com We must accept there's no reliable and correct way to help with many classes of actual user errors on input even if the world's existing SMTP servers can actually choke on valid RFC 822/RFC 2822 addresses.
- viraptor 11y agoI don't see what's wrong with: "joe!jim%foo_jaysus/cee=rist;`rm -fr /`"@example.com This is what the user says their email is. If their mail server accepts it, what's the problem? I'd rather like the original 822 to be accepted, than "simple_email@example.com" be rejected because "OMG you can't have `_` in your address!". It just leads to validation of what the developer think is kosher, rather than what will work. This extends to so many other things: email, post code, phone number, names, ... It's terrible when developers think they know those details better than the user does.
- nemo 11y agoWhile there's nothing "wrong" with it in the sense of following the standard, it's nice to be able to help people spot mistakes when entering things. With email I warn on weird input, but accept provided it's compliant since the goal is to help - the miniscule fraction of people with email addresses who have really peculiar addresses are far fewer than those who make typos when entering them. '_' isn't really peculiar, though.
- viraptor 11y ago> help people spot mistakes when entering things I completely agree. Here's how it should work: "your email abc+def@example.com is valid but looks unusual, are you sure it's your email? ok/cancel". Not: "your email is invalid, guess which of our made up rules it violates". But you're in a tiny minority of people who handle this properly.