-
Notifications
You must be signed in to change notification settings - Fork 43
Remove dns lookup functionality and remove punycode dependency #152
Comments
Yes to both. This will also fix behavior that I forgot to add/request tests for (maybe you already got this from the other conversation): we need to length-check what the domain would be after punycoding, rather than checking what it would be after utf8 encoding. |
Sorry, ended up having some Felicity maintenance take up most of my day today. This is on my radar ASAP. |
@skeggse I'm working on this off and on for the next couple of days. I have a question regarding a specific test case that I hope you can weigh in on.
So, the question is: should |
It seems from RFC 5321 section 2.3.5 that |
I believe the referenced code path is specifically for |
Got it. Thank you |
Maybe push up what you have - as long as there's an error produced when the email address is invalid, we can figure out the correct classification. |
Okay, @skeggse , sorry for the crazy long delay. Finally getting back around to this. I feel like I'm 99% there, but I have a clarification in changed behavior directly related to removing DNS MX lookups that I want to check with you. Per the discussion above, |
tl;dr if we are considering |
Also, I ported over the minimum code from punycode to calculate the punycode length without adding the dependency. My question now is re:
This will mean some Unicode domains with a For example:
[EDIT] According to RFC 5890 Section 2.3.2.1 I think that this should be acceptable and expected behavior. The RFC is specifically referring to domain label length, but I think the intent applies more broadly to the entire domain:
thought that does sound like I need to add logic and tests to look at the punycoded length of the domain labels rather than just character length. Thoughts? |
I went ahead with my assumptions and pushed a new commit on the open PR. Let me know if I chose incorrectly :) |
Yay! #153 is shipping in |
Awesome! :D 👍 |
Following up the discussion from #17
In support of Unicode internationalized email addresses, punycode was added in order to convert the normalized Unicode domain to ASCII-only text for dns lookups checking for valid MX records on the domain. Per the comments above, dns checking should be removed along with the dependency upon the punycode module; some method for calculating punycoded domain lengths should be implemented.
@skeggse is this an accurate summary? Also, is it acceptable to bring punycode in as a devDep for testing that the domain length calculation is accurate?
The text was updated successfully, but these errors were encountered: