13/21 here. Mostly got hung up on several "this was valid in earlier RFC, and later removed" kind of situations. There are several where I picked the correct answer, but where I know many websites that won't accept it as valid, and that's not even the more esoteric ones.
But they will work, and according to the spec, you have to build your system so that it can handle those cases. Obsolete doesn't mean incorrect or invalid, just a "you shouldn't do this any more".
Obsolete Syntax
Earlier versions of this standard allowed for different (usually more
liberal) syntax than is allowed in this version. Also, there have
been syntactic elements used in messages on the Internet whose
interpretation have never been documented. Though some of these
syntactic forms MUST NOT be generated according to the grammar in
section 3, they MUST be accepted and parsed by a conformant receiver.
Some of those "obsolete" things are outright blocked for specific reasons. For example, routing addresses through multiple servers. It was abused by spammers, so it's almost always denied these days.
Well shit, yeah, that "MUST be accepted and parsed" is pretty explicit. That sucks. What is even the point of revising standards? How the fuck do we ever get rid of some of these bad ideas?
All of the modern internet is built on the decaying carcasses of temporary solutions and things that seemed like a good idea at the moment but are now too widely used to change.
I don't think it really matters what the standard is, because you'll be completely limited by some 25 year old bit of Regex from Stack Overflow that every web developer ever has implemented into their form sanity checks.
The main one that gets passed around will match the weirdness fine. In fact, it probably matches things you don't want, anyway.
A signin/registration form really only needs to do sanity checks to get rid of obviously bad addresses. You'll have to send a round-trip email confirmation message to make sure the email is real, anyway, so why bother going into great detail? Just check that there's an '@' symbol and a dot in the domain. Most of the rest is wanking off.
A domaine without tld (me@home) is a valide address.
I saw an email server being used as a mqtt-like server this way (it is very old and predate those software).
An address without a domain is irrelevant for a signin/registration form. Which is like 90% of the code being written in the wild to validate addresses.
If you're writing an email server, then you need to care about all these details. Most of us never will.
I know you're being facetious, but I'm thinking through the implications of someone actually doing this. ISPs aren't always handing out static IPv6 prefixes for some damn reason, so you can't count on that address staying the same when self-hosting. Even if you can, you don't know what will happen when you change ISPs.
1*atext meaning at least 1 alphanumeric character, followed by *("." 1*atext) meaning at least 0 "." 1*atext
If tomorrow, google decided to use its google top-level domain as an email domain, it would be perfectly valid, as could any other company owning top-level domains
Google even owns a gmail TLD so I wouldn't even be surprised if they decided to use it
It does say it's valid, but also that it's obsolete, and while the RFC does define valid but obsolete specs, there is nothing defining domains without a dot as obsolete, and it is in fact defined in the regular spec, not the obsolete section
Yes, the top-level domain is still just a domain. I'm not aware of any public Internet services which are reachable from a TLD directly, and it's strongly discouraged by ICANN, but there isn't any technical limitation preventing e.g. someone at Verisign from setting up example@com.
Even if it's a completely valid address and the domain exists, they still might've fat fingered the username part. Going to extreme lengths to validate email addresses is pointless, you still have to send an email to it anyway.
I seem to have annoyed an admin of an instance enough for them to subscribe my signup email to hundreds of dating profiles (presumably using a service that offers to harass someone for you)
Many of them aren't good at validating email
One in ten has one email arrive, asking me to click a link to confirm
9 in ten have 5 emails before I notice them:
Please click a link to confirm
You received a wink
You received a wink
You received 3 chat requests
You received a link
So it's important to not send emails beyond the validate one to unvalidated addresses, to perfect your service annoying or harassing this parties
Also, use a disposable address for signing up to Lemmy
Please, no. If someone wrote email address "validation" complex enough to warrant a library, then their code is almost certainly wrong.
or check for only the @ and then send an email confirmation.
Yes. Do that.
If your boss demands a more detailed check at input time, then make it display warnings, not errors, and continue to the confirmation sending step if the user chooses to ignore the warning.
Any should. Any unicode is converted to alphabetical anyways, through "xn--" + a punycode conversion. Which is actually fairly important for places that don't use the Latin alphabet.
This will actually fail on that big email regex that gets copied around (originally from Mastering Regular Expressions in 1997), because it can only handle comment nesting to a depth of six. It is actually possible to do indefinite nesting now with recursive regex, but it was developed before that feature existed.
RFC822 also allows routing addresses through multiple servers:
Too hard to validate properly to be worth it. Even if it is technically valid that's insufficient. It must also work, and the easiest way to test that is to use it and verify that the user got what we sent.
I hope your "validation" does nothing more than show a warning that the user is allowed to ignore.
I have seen too many systems built by people who think they know what's valid or not before and after the @ sign*, and they are almost always dead wrong. In the worst cases, such systems accept an unusual-looking address and claim to send the expected verification message, but never actually send it. Of course, these systems won't work for some people, and since none of their online docs or support staff know why, those people will be locked out of using the system and funneled into bottomless pit of misery if they try. Please don't build broken garbage like this.
*Fun fact: Not so terribly long ago, even the @ sign didn't have to be present. Some email addresses were bang paths. I'm not sure if any of these are still in use, but it wouldn't shock me to learn that they are.
No. The number of users who have a real email with no TLD is far less than the number of users who will accidentally type an email with no TLD if you don’t validate on the front end.
I’m here to help 99.9% of users sign up correctly, not to be completely spec-compliant for the 0.1% who think they’re special.
Pizza Hut doesn't allow dashes in the domain. This prevents me from ordering Pizza Hut with the email under my personal domain. This can be considered a feature.
I gave up when I got like 5 wrong. I've ran mail servers for decades, most of the invalid "valids" would get rejected by any mailservers I've administered.
Just because it's not something you'd use anymore doesn't mean it isn't valid.
WEP is still a valid form of wireless encryption, but no one would use it anymore (and so would be obsolete). It's still a part of the 802.11 standard.
I scored 16/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
Damn, and here I thought I had this locked down because I was salty that so many places struggle with + in the email addy. But my god, there's comments?
Also as the registrant of one of those new fancy TLDs, much like the owner of this website (email.wtf), their own email addresses will fail those stupid email validation checks that only believe in example@example.[com|net|org]
Shitty websites will fail "example@email.wtf", guaranteed - despite it being 100% valid AND potentially live.
Source - I have a ".family" domain for my email server. Totally functional, but some shitty websites refuse to believe it.
Seems like a weird choice as the primary TLD.
I'd switch it just to reduce the annoying typing hassle and to avoid misspelling.
It's already unusual if I say "My email is givenName@LastName.eu"
And that trips so many persons.
First: I have my own domain
Second: It's not gmail, apple or a local provider
Third: The TLD isnt .de or .com but .eu
Exactly! But its not obvios. So most of those shitty websites don't even know they have a problem.
Then there are also people ignoring it on purpose. I once read a reddit comment saying 'well of your address looks like "John wick 🐶❤️"@2001:0db8:85a3:0000:0000:8a2e:0370:7334 I don't event want your email in my DB because oit will break something
I have a feeling, the ones codapine is stating, didn't even care to half-read the spec and just went with what they knew from experience.
Maybe they didn't even know there was a spec.
Maybe they asked ChatGPT for the regex.
I lost it at the fork bomb. I mean I hit valid because there was no way it was on the and not valid, but there's no way i'd have expected that. after that I just kept guessing the most stupid answer and did pretty well
Nested comments. RFC822 had a whole bunch of bad ideas in it, but nobody thought much of it at the time. Most programming languages don't even do nested comments, because they want to filter them out with a simple lexer before the grammar ever sees it.
And is it really valid if my email provider doesn't accept it? If it's not universally accepted or standard, then it doesn't matter if it's technically valid.
I vaguely remember a panel where a guy went through various cases like these.
One of the things that stood out is that not every email provides implements the same specs, so one provider might allow you to set up a "valid" email address that might not be able to communicate with other providers as they consider it "invalid".
I kind of expected a lot of this; I remember the sendmail 4 book from back in the day when O'Reilly had that, DNS and BIND, and Perl as the entirety of its corpus.
153 Comments
NeatNit@discuss.tchncs.de · 98 pts · 358d
I scored 16/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
This was fun!
Edit: people, upvote the OP, not me
lemmyng@piefed.ca · 51 pts · 358d
13/21 here. Mostly got hung up on several "this was valid in earlier RFC, and later removed" kind of situations. There are several where I picked the correct answer, but where I know many websites that won't accept it as valid, and that's not even the more esoteric ones.
NaibofTabr@infosec.pub · 37 pts · 358d
Yeah I feel like the correct answer for anything obsoleted by a more recent RFC should be "Invalid".
errer@lemmy.world · 49 pts · 357d
Complaints about the quiz? Send them to 💩@💩
JohnEdwa@sopuli.xyz · 24 pts · 357d
But they will work, and according to the spec, you have to build your system so that it can handle those cases. Obsolete doesn't mean incorrect or invalid, just a "you shouldn't do this any more".
https://datatracker.ietf.org/doc/html/rfc2822#section-4
frezik@lemmy.blahaj.zone · 11 pts · 357d
Some of those "obsolete" things are outright blocked for specific reasons. For example, routing addresses through multiple servers. It was abused by spammers, so it's almost always denied these days.
Looks like this:
NaibofTabr@infosec.pub · 6 pts · 357d
Well shit, yeah, that "MUST be accepted and parsed" is pretty explicit. That sucks. What is even the point of revising standards? How the fuck do we ever get rid of some of these bad ideas?
First_Thunder@lemmy.zip · 6 pts · 358d
I got 14/21
dditty@lemmy.dbzer0.com · 4 pts · 357d
Me too and it said that is the amount you'd get if you just picked "valid" for every response. Lmao
ReCursing@feddit.uk · 2 pts · 357d
Samsies
db0@lemmy.dbzer0.com · 4 pts · 358d
Yay! Same. But only because I've already heard of some email craziness before.
Redjard@lemmy.dbzer0.com · 2 pts · 358d
yay 16/21 club
Empricorn@feddit.nl · 1 pts · 357d
Don't tell me what to do!
irish_link@lemmy.world · 75 pts · 358d
THIS THING IS STUPID!!!!
Or it’s just me that is the fool. Thanks for sharing. I just learned about 9 new things.
rtxn@lemmy.world · 42 pts · 358d
All of the modern internet is built on the decaying carcasses of temporary solutions and things that seemed like a good idea at the moment but are now too widely used to change.
Blackmist@feddit.uk · 71 pts · 357d
I don't think it really matters what the standard is, because you'll be completely limited by some 25 year old bit of Regex from Stack Overflow that every web developer ever has implemented into their form sanity checks.
frezik@lemmy.blahaj.zone · 25 pts · 357d
The main one that gets passed around will match the weirdness fine. In fact, it probably matches things you don't want, anyway.
A signin/registration form really only needs to do sanity checks to get rid of obviously bad addresses. You'll have to send a round-trip email confirmation message to make sure the email is real, anyway, so why bother going into great detail? Just check that there's an '@' symbol and a dot in the domain. Most of the rest is wanking off.
Dremor@lemmy.world · 11 pts · 357d
A domaine without tld (me@home) is a valide address. I saw an email server being used as a mqtt-like server this way (it is very old and predate those software).
frezik@lemmy.blahaj.zone · 6 pts · 357d
An address without a domain is irrelevant for a signin/registration form. Which is like 90% of the code being written in the wild to validate addresses.
If you're writing an email server, then you need to care about all these details. Most of us never will.
ChaoticNeutralCzech@feddit.org · 4 pts · 357d
Hey! IPv6 is valid in the inter-network context and needs no dots!
frezik@lemmy.blahaj.zone · 6 pts · 357d
You gonna fill an IPv6 address for your email server into the DoorDash signin page?
zurohki@aussie.zone · 13 pts · 357d
Don't be ridiculous, I'm going to use an open source password manager to fill an IPv6 address for my email server into the DoorDash signin page.
frezik@lemmy.blahaj.zone · 2 pts · 357d
I know you're being facetious, but I'm thinking through the implications of someone actually doing this. ISPs aren't always handing out static IPv6 prefixes for some damn reason, so you can't count on that address staying the same when self-hosting. Even if you can, you don't know what will happen when you change ISPs.
So yeah, really bad idea regardless.
CommanderCloon@lemmy.ml · 60 pts · 357d
Question 5 is incorrect,
name@exampleis a fully valid email address, even after RFC 2822The spec of RFC 2822 defines an address (3.4.1) as:
domainis defined (3.4.1) as:dot-atomis defined (3.2.4) as:1*atextmeaning at least 1 alphanumeric character, followed by*("." 1*atext)meaning at least 0"." 1*atextIf tomorrow, google decided to use its
googletop-level domain as an email domain, it would be perfectly valid, as could any other company owning top-level domainsGoogle even owns a
gmailTLD so I wouldn't even be surprised if they decided to use itHereIAm@lemmy.world · 26 pts · 357d
I don't know if they changes the answer to the question, but it now says
name@exampleis valid.CommanderCloon@lemmy.ml · 36 pts · 357d
It does say it's valid, but also that it's obsolete, and while the RFC does define valid but obsolete specs, there is nothing defining domains without a dot as obsolete, and it is in fact defined in the regular spec, not the obsolete section
HereIAm@lemmy.world · 13 pts · 357d
I see what you mean, I'm with you now.
spankmonkey@lemmy.world · 6 pts · 357d
It says valid but obsolete, which sounds like a contradiction to me.
Do email suffix not indicate a different domain like .org and .com for websites?
pineapplelover@lemmy.dbzer0.com · 4 pts · 357d
I didn't understand this one. How do you have a no dot domain? Like you need to distinguish from example.com or example.wtf
Edit: do you mean if you own
.googleyou can have youremail@googleaddress?DaPorkchop_@lemmy.ml · 6 pts · 357d
Yes, the top-level domain is still just a domain. I'm not aware of any public Internet services which are reachable from a TLD directly, and it's strongly discouraged by ICANN, but there isn't any technical limitation preventing e.g. someone at Verisign from setting up
example@com.mobotsar@sh.itjust.works · 3 pts · 356d
In response to your edit.
Yes, or countries could use their cctld, e.g. email@us or noreply@uk.
Or any tld owner could do the same with theirs, of course.
pineapplelover@lemmy.dbzer0.com · 1 pts · 356d
Pretty cool
Atherel@lemmy.dbzer0.com · 1 pts · 356d
you could also send mails within your local network, the hostname just has to resolve and have a mail service running
maxwells_daemon@lemmy.world · 55 pts · 357d
I don't care who the IRS sends, I am not validating emails with spaces on them.
tyler@programming.dev · 20 pts · 357d
You shouldn’t be validating emails yourself anyway. Use a library or check for only the
@and then send an email confirmation.zurohki@aussie.zone · 14 pts · 357d
Even if it's a completely valid address and the domain exists, they still might've fat fingered the username part. Going to extreme lengths to validate email addresses is pointless, you still have to send an email to it anyway.
psud@aussie.zone · 3 pts · 357d
I seem to have annoyed an admin of an instance enough for them to subscribe my signup email to hundreds of dating profiles (presumably using a service that offers to harass someone for you)
Many of them aren't good at validating email
One in ten has one email arrive, asking me to click a link to confirm
9 in ten have 5 emails before I notice them:
So it's important to not send emails beyond the validate one to unvalidated addresses, to perfect your service annoying or harassing this parties
Also, use a disposable address for signing up to Lemmy
who@feddit.org · 6 pts · 357d
Please, no. If someone wrote email address "validation" complex enough to warrant a library, then their code is almost certainly wrong.
Yes. Do that.
If your boss demands a more detailed check at input time, then make it display warnings, not errors, and continue to the confirmation sending step if the user chooses to ignore the warning.
TomasEkeli@programming.dev · 4 pts · 357d
This is the way.
canihasaccount@lemmy.world · 49 pts · 357d
What if we 👉@👈 ..? 🤭
rumba@lemmy.zip · 4 pts · 357d
Now i just need a registrar that allows emoji...
AdrianTheFrog@lemmy.world · 5 pts · 357d
Any should. Any unicode is converted to alphabetical anyways, through "xn--" + a punycode conversion. Which is actually fairly important for places that don't use the Latin alphabet.
See http://xn-bdk.gay/, which is the same as http://xn--bdk.gay/
(Someone set this up on 196 a while ago, they said they were using Namecheap)
rumba@lemmy.zip · 2 pts · 357d
oh jesus, rabbit hole accepted, thanks!
somerandomperson@lemmy.dbzer0.com · 1 pts · 357d
Self-host it.
People may find that weird, however.
nimble@lemmy.blahaj.zone · 49 pts · 357d
Turious@leaf.dance · 16 pts · 357d
Bottom-ass email address.
Endymion_Mallorn@kbin.melroy.org · 3 pts · 357d
No ring for that.
frezik@lemmy.blahaj.zone · 41 pts · 357d
Two of my "favorite" features it didn't even touch on. You can have nested comments:
This will actually fail on that big email regex that gets copied around (originally from Mastering Regular Expressions in 1997), because it can only handle comment nesting to a depth of six. It is actually possible to do indefinite nesting now with recursive regex, but it was developed before that feature existed.
RFC822 also allows routing addresses through multiple servers:
But this is almost always denied on modern email servers because it was abused by spammers.
TheBigRoomXXL@leminal.space · 5 pts · 357d
The routing feature is so cursed XD
eah@programming.dev · 2 pts · 357d
https://en.wikipedia.org/wiki/UUCP#Mail_routing
MonkderVierte@lemmy.zip · 36 pts · 357d
::: spoiler My top five from this (all valid):
toynbee@lemmy.world · 22 pts · 357d
TIL that emoji transcend spoilers.
lemmyng@piefed.ca · 5 pts · 357d
Spoilers!
MonkderVierte@lemmy.zip · 2 pts · 357d
TomasEkeli@programming.dev · 35 pts · 357d
I don't validate emails, I test them.
That's your email? OK, what did we send it? if we couldn't send to it or the user can't read it there's no reason to accept it.
OK, maybe I do some light validation first, but I don't trust the email address just because it's email-address-shaped.
ChaoticNeutralCzech@feddit.org · 7 pts · 357d
What kind of "light validation"? I'm guessing a
.*@.*regex match.TomasEkeli@programming.dev · 14 pts · 357d
Almost correct. ^.+@.+$
Too hard to validate properly to be worth it. Even if it is technically valid that's insufficient. It must also work, and the easiest way to test that is to use it and verify that the user got what we sent.
GreenKnight23@lemmy.world · 5 pts · 357d
I see you accept lemmy handles.
TomasEkeli@programming.dev · 10 pts · 357d
if i can email them and the user gets it - fine by me
qaz@lemmy.world · 2 pts · 357d
@@@TomasEkeli@programming.dev · 4 pts · 357d
Would pass first validation, but fail when we try to send an email.
Successfully failed.
qqq@lemmy.world · 7 pts · 357d
@matcheswho@feddit.org · 2 pts · 357d
Hooray! You get a gold star.
I hope your "validation" does nothing more than show a warning that the user is allowed to ignore.
I have seen too many systems built by people who think they know what's valid or not before and after the
@sign*, and they are almost always dead wrong. In the worst cases, such systems accept an unusual-looking address and claim to send the expected verification message, but never actually send it. Of course, these systems won't work for some people, and since none of their online docs or support staff know why, those people will be locked out of using the system and funneled into bottomless pit of misery if they try. Please don't build broken garbage like this.*Fun fact: Not so terribly long ago, even the
@sign didn't have to be present. Some email addresses were bang paths. I'm not sure if any of these are still in use, but it wouldn't shock me to learn that they are.GiveOver@feddit.uk · 2 pts · 356d
Hooray, you have better security than Apple, who won't let me use my own email because some idiot in Australia used it first.
isaaclyman@lemmy.world · 30 pts · 357d
Let us recite the email validator’s oath:
kopasz7@sh.itjust.works · 12 pts · 357d
The ultimate validation is to see if it gets sent.
TechieDamien@lemmy.ml · 3 pts · 357d
Fails for when there is no TLD. Just send an email and validate a response eg from a link.
isaaclyman@lemmy.world · 3 pts · 356d
No. The number of users who have a real email with no TLD is far less than the number of users who will accidentally type an email with no TLD if you don’t validate on the front end.
I’m here to help 99.9% of users sign up correctly, not to be completely spec-compliant for the 0.1% who think they’re special.
ulterno@programming.dev · 0 pts · 355d
Guess my mail@IPv6 won't be accepted because I was too poor to pay for a domain name after having paid for a static IPv6.
bjoern_tantau@swg-empire.de · 28 pts · 357d
I had to make an email address just for paypal because those idiots don't accept subdomains in email addresses.
frezik@lemmy.blahaj.zone · 23 pts · 357d
Pizza Hut doesn't allow dashes in the domain. This prevents me from ordering Pizza Hut with the email under my personal domain. This can be considered a feature.
hellfire103@lemmy.ca · 28 pts · 357d
I scored 13/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
buddascrayon@lemmy.world · 2 pts · 357d
5/21 for me LoL 😂
ikidd@lemmy.world · 28 pts · 357d
I gave up when I got like 5 wrong. I've ran mail servers for decades, most of the invalid "valids" would get rejected by any mailservers I've administered.
pressanykeynow@lemmy.world · 4 pts · 357d
And for a good reason.
Xatolos@reddthat.com · 4 pts · 357d
Just because it's not something you'd use anymore doesn't mean it isn't valid.
WEP is still a valid form of wireless encryption, but no one would use it anymore (and so would be obsolete). It's still a part of the 802.11 standard.
marzhall@lemmy.world · 25 pts · 357d
I scored 16/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
Damn, and here I thought I had this locked down because I was salty that so many places struggle with
+in the email addy. But my god, there's comments?NessD@lemmy.world · 25 pts · 358d
14 / 21
This is the score you get when you answer "valid" for every question. Good job.
tostiman@sh.itjust.works · 18 pts · 357d
My score was lower 💀
Blackmist@feddit.uk · 7 pts · 357d
I didn't do that but got 14 anyway.
aeternum@lemmy.blahaj.zone · 4 pts · 357d
dabster291@lemmy.zip · 1 pts · 357d
14/21 gang
NessD@lemmy.world · 3 pts · 357d
Also didn't do that, but that was the text
dumnezero@piefed.social · 24 pts · 358d
hmmm...
I already have plans.
toynbee@lemmy.world · 1 pts · 357d
And they are ...
pyre@lemmy.world · 23 pts · 357d
nice. though valid but obsolete is not a thing... if it's obsolete it's invalid.
GreenShimada@lemmy.world · 3 pts · 356d
Agreed! (because then I would get 3 more points on the test)
codapine@lemmy.zip · 23 pts · 357d
Also as the registrant of one of those new fancy TLDs, much like the owner of this website (email.wtf), their own email addresses will fail those stupid email validation checks that only believe in example@example.[com|net|org]
Shitty websites will fail "example@email.wtf", guaranteed - despite it being 100% valid AND potentially live.
Source - I have a ".family" domain for my email server. Totally functional, but some shitty websites refuse to believe it.
locuester@lemmy.zip · 4 pts · 357d
Yeah I have a .engineering for my biz. I also registered mycompanyengineering.com to get through places that won’t take the new TLDs.
Usually banks.
Appoxo@lemmy.dbzer0.com · 1 pts · 356d
Seems like a weird choice as the primary TLD.
I'd switch it just to reduce the annoying typing hassle and to avoid misspelling.
It's already unusual if I say "My email is givenName@LastName.eu"
And that trips so many persons.
First: I have my own domain
Second: It's not gmail, apple or a local provider
Third: The TLD isnt
.deor.combut.euJackFrostNCola@aussie.zone · 2 pts · 357d
I have plenty of website reject even my fairly vanilla [email]+XYZ@ address add–ons
BlushedPotatoPlayers@sopuli.xyz · 2 pts · 357d
I have a spam collecting address @freemail.hu , the domain is live and working since 96, sometimes it's not accepted, because it's not Gmail I guess
aeiou_ckr@lemmy.world · 2 pts · 357d
Same as I have a .party domain. So I made a place holder (looking at you progressive) email ___+haslazydevs@gmail.com
notarobot@lemmy.zip · 1 pts · 356d
I'm not sure I blame the sites. The spec is so complex that it's not even possible to know which regex to use
bignose@programming.dev · 1 pts · 356d
Yes. Almost like a regex is not the correct tool to use, and instead they should use a well-tested library function to validate email addresses.
notarobot@lemmy.zip · 1 pts · 355d
Exactly! But its not obvios. So most of those shitty websites don't even know they have a problem.
Then there are also people ignoring it on purpose. I once read a reddit comment saying 'well of your address looks like "John wick 🐶❤️"@2001:0db8:85a3:0000:0000:8a2e:0370:7334 I don't event want your email in my DB because oit will break something
ulterno@programming.dev · 0 pts · 355d
I have a feeling, the ones codapine is stating, didn't even care to half-read the spec and just went with what they knew from experience.
Maybe they didn't even know there was a spec.
Maybe they asked ChatGPT for the regex.
axEl7fB5@lemmy.cafe · 0 pts · 356d
per the HTML specification. From https://developer.mozilla.org/en-US/docs/Learn_web_development/Extensions/Forms/Form_validation#validating_forms_without_a_built-in_api
notarobot@lemmy.zip · 0 pts · 356d
That's one very random place to find that. There are a lot of different one and there is no way we all just agree to use that one.
Look art his site that shows a more complete and (in theory) official website. While also explaining that there is no regex that is perfect
https://emailregex.com/
(Compete regex for the lazy)
axEl7fB5@lemmy.cafe · 2 pts · 356d
MDN isn't a very random place?
notarobot@lemmy.zip · 1 pts · 356d
No. But it's on the form validation topic.
rumba@lemmy.zip · 20 pts · 357d
I lost it at the fork bomb. I mean I hit valid because there was no way it was on the and not valid, but there's no way i'd have expected that. after that I just kept guessing the most stupid answer and did pretty well
iAvicenna@lemmy.world · 18 pts · 356d
13/21, seems like I am not significantly different from random guessing
GreenShimada@lemmy.world · 9 pts · 356d
Got the same, I can't believe how many weird comments and extra random things can get added into an email address.
ulterno@programming.dev · 0 pts · 355d
I got 11.
The spaces and quotes caught me.
camelbeard@lemmy.world · 18 pts · 357d
I scored 16/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
I feel pretty good about that
brisk@aussie.zone · 17 pts · 357d
::: spoiler Tap for spoiler Email addresses can have comments?! :::
frezik@lemmy.blahaj.zone · 8 pts · 357d
Nested comments. RFC822 had a whole bunch of bad ideas in it, but nobody thought much of it at the time. Most programming languages don't even do nested comments, because they want to filter them out with a simple lexer before the grammar ever sees it.
dawcas@scribe.disroot.org · 16 pts · 357d
13 right answers and I didn't expect so many lol
I'll never validate some of the 💩 I've learnt today.
pineapplelover@lemmy.dbzer0.com · 3 pts · 357d
13 here too
piccolo@sh.itjust.works · 2 pts · 357d
Validation should just check if it has a @ and send an email and wait for a response... because who knows if mailservers "respect" the spec anyway.
wellheh@lemmy.sdf.org · 14 pts · 357d
I scored 14/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
I actually died at the poop emoji one. Actually amazing awareness to test for that
Speiser0@feddit.org · 14 pts · 357d
Pretty much everything I've seen in e-mail is needlessly complicated and weird. So of course addresses are as well.
Endymion_Mallorn@kbin.melroy.org · 13 pts · 357d
Wow. if I ever have the madness required to self-host, I'll have my email at an IP address.
rmuk@feddit.uk · 9 pts · 357d
I'm gonna have a mailbox per device and the addresses will be deviceip@serverip. 10.254.17.5@145.80.205.19.
Natanael@infosec.pub · 7 pts · 357d
Needs to be IPv6, including support for subnets to message multiple devices
Nighed@feddit.uk · 12 pts · 358d
15
Going to have to try some of those.... Can you actually register emojis as a domain, or is that just the email validation that allows them?
Edit: most TLDs don't. Smaller ones do sometimes.
NeatNit@discuss.tchncs.de · 8 pts · 358d
Emoji domains can be registered using punycode, and you're right that it's up to the TLD whether they're allowed or not.
For example: http://xn--yt8h.la/%F0%9F%90%B6
📙.la is encoded using punycode to http://xn--yt8h.la/
🐶 is URL-encoded to %F0%9F%90%B6
Giving the 'true' URL http://xn--yt8h.la/%F0%9F%90%B6 which then redirects to https://emojipedia.org/dog-face
Emails should generally use
@xn--yt8h.lainstead of@📙.lafor maximum compatibility. I'm not sure if the email spec allows punycode.nerd_E7A8@programming.dev · 10 pts · 357d
Relevant talk from FOSDEM 2018 (warning: poor audio quality): https://youtu.be/xxX81WmXjPg
Turret3857@infosec.pub · 10 pts · 357d
12/21
are things that are considered out of current spec really "valid" though?
Echolynx@lemmy.zip · 4 pts · 357d
And is it really valid if my email provider doesn't accept it? If it's not universally accepted or standard, then it doesn't matter if it's technically valid.
Magnum@lemmy.dbzer0.com · 13 pts · 357d
KairuByte@lemmy.dbzer0.com · 4 pts · 357d
If your email provider doesn’t accept email@email.wtf is it then invalid?
geissi@feddit.org · 10 pts · 357d
I vaguely remember a panel where a guy went through various cases like these.
One of the things that stood out is that not every email provides implements the same specs, so one provider might allow you to set up a "valid" email address that might not be able to communicate with other providers as they consider it "invalid".
sexy_peach@feddit.org · 9 pts · 357d
Average :/
d00ery@lemmy.world · 4 pts · 357d
Me too.
I scored 11/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
PixelatedSaturn@lemmy.world · 9 pts · 358d
Jesus effin Christ! I had no idea! This is madness! This is ... Omfg I just can't
Dack@programming.dev · 8 pts · 357d
I got 13/21. I mean thats not bad 😄
HakunaHafada@lemmy.dbzer0.com · 8 pts · 357d
12/21. It was highly entertaining though.
sp3ctr4l@lemmy.dbzer0.com · 7 pts · 356d
I
rage quitgave up at 12.A fork bomb is apparently a valid email address.
I quit, this is stupid.
Ek-Hou-Van-Braai@piefed.social · 6 pts · 358d
Try explaining that last one to someone over the phone
spicehoarder@lemmy.zip · 6 pts · 357d
I scored 18/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
thomasloven@lemmy.world · 5 pts · 357d
If qoutes are removed and internal spaces are invalid, how could
":(){␣:|:&␣};:"@example.combe valid?ChairmanMeow@programming.dev · 3 pts · 357d
Presumably the space between quotes is "escaped", meaning it's supposed to act like any other character.
rumba@lemmy.zip · 1 pts · 357d
Yeah they're processed, but not passed through.
bamboo@lemmy.blahaj.zone · 1 pts · 357d
Not too sure, but a previous one says spaces are allowed in comments. I would assume the
{}is similar?rtxn@lemmy.world · 5 pts · 358d
You can easily validate e-mail addresses using this simple regex pattern.
:::spoiler regex
:::
bajabound@lemmy.world · 1 pts · 357d
Nothing reminds me more of beating my head into a wall while fucking with sendmail 30 years ago.
Scoopta@programming.dev · 4 pts · 358d
I can't even view it...I get a TLS error
leftthegroup@lemmings.world · 2 pts · 357d
nailbar@sopuli.xyz · 1 pts · 357d
My phone blocked the site, citing "harmful content"
shalafi@lemmy.world · 4 pts · 357d
17/21. Would have been 18 but the first example of spaces screwed me.
defuse959@lemmy.dbzer0.com · 4 pts · 357d
I scored 12/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
mp04610@lemmy.zip · 3 pts · 357d
I scored 16/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
moseschrute@lemmy.ml · 3 pts · 357d
I scored 13/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
orbituary@lemmy.dbzer0.com · 3 pts · 358d
Demigodrick@lemmy.zip · 11 pts · 358d
Hey dont share my email out 😡
Korne127@lemmy.world · 1 pts · 357d
same
should have just randomly clicked lol
hodgepodgin@lemmy.zip · 3 pts · 357d
15/21
refalo@programming.dev · 3 pts · 357d
Well... like Bill Clinton said, it depends on what the definition of "is" is.
lefaucet@slrpnk.net · 2 pts · 356d
So much better than I thought it would be! Thank you for making the world a better & more informed place
NaibofTabr@infosec.pub · 2 pts · 358d
#18 seems really bad, like no-one-has-ever-sanity-checked-this bad.
zwerg@feddit.org · 3 pts · 358d
Im still trying to figure out what that means. How does @ resolve to an IP address?
rayquetzalcoatl@lemmy.world · 2 pts · 327d
I scored 12/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media. That was absolutely hilarious!
gedhrel@lemmy.world · 1 pts · 356d
I kind of expected a lot of this; I remember the sendmail 4 book from back in the day when O'Reilly had that, DNS and BIND, and Perl as the entirety of its corpus.
Mikelius@lemmy.ml · 1 pts · 357d
And after that, I now can't wait for the next pull request with a regular expression on email validation to come through.
lord_ryvan@ttrpg.network · 1 pts · 327d
I scored 15/21 on https://e-mail.wtf/ and all I got was this lousy text to share on social media.
brb omw to try and reserve
👉@👈as e-mail addresstoothpaste_ostrich@feddit.nl · -2 pts · 357d
I did not like this and quit after ten questions 😅
But I respect that it exists.