EmailVerify.NET v4.3 released: support for internationalized mailbox names and definitive RFC 5336 compliance
Published on Friday, June 10, 2011
Hello everybody,
today is a great day for us because we have released one of the most feature-rich revision of EmailVerify.NET since the beginning of the year. Ladies and gentlemen, we are proud to announce to the world our component now supports internationalized mailbox names!
For our users, this means that we not only allow to validate email addresses with internationalized domain names (a feature we added back in September, 2010), as john@café.com or lee@納豆.w3.mag.keio.ac.jp, but we also allow to feed EmailVerify.NET with internationalized internationalized mailbox names too, such as 中文測試@中文.tw or асиич@мировая-почта.ru!
In fact, as per IETF standards, email addresses have their domain parts treated in a completely different way from their local parts and a completely different specification rules the two. Along with the support for internationalized mailbox names, EmailVerify.NET now fully supports RFC 5336 and can validate non-ASCII email addresses both syntactically and at the mailbox level (using the UTF8SMTP extension to the SMTP protocol) like the usual ASCII email addresses.
This new feature inevitably brings a couple of (very small!) breaking changes in the VerificationResult class, where the AsciiEmailAddress and the AsciiEmailAddressLocalPart properties have gone away, as they didn't make any sense (we can't always convert the local part to an ASCII-equivalent, punycode can't be used here!). We replaced them with, respectively, EmailAddress and EmailAddressLocalPart. And we added two new properties to this class too: HasInternationalMailboxName, that is set whenever we detect an internationalized mailbox name, and HasInternationalDomainName, that is set when we detect an internationalized domain name (IDN). There is also a new status code, named ServerDoesNotSupportInternationalMailboxes, that is returned by the component whenever the target mail exchanger can't accept internationalized mailbox names while you are validating one of them.
As a small gift, we have also added a new property named SyntaxFailureIndex to the VerificationResult class, that returns the index of the first faulty character in the event of syntax validation failures.
Ok, I hope I didn't forget anything...
We are so excited about this new release that trying to remember everything is not so easy! :)
Stay tuned!
--
Efran Cobisi
EmailVerify.NET lead developer
today is a great day for us because we have released one of the most feature-rich revision of EmailVerify.NET since the beginning of the year. Ladies and gentlemen, we are proud to announce to the world our component now supports internationalized mailbox names!
For our users, this means that we not only allow to validate email addresses with internationalized domain names (a feature we added back in September, 2010), as john@café.com or lee@納豆.w3.mag.keio.ac.jp, but we also allow to feed EmailVerify.NET with internationalized internationalized mailbox names too, such as 中文測試@中文.tw or асиич@мировая-почта.ru!
In fact, as per IETF standards, email addresses have their domain parts treated in a completely different way from their local parts and a completely different specification rules the two. Along with the support for internationalized mailbox names, EmailVerify.NET now fully supports RFC 5336 and can validate non-ASCII email addresses both syntactically and at the mailbox level (using the UTF8SMTP extension to the SMTP protocol) like the usual ASCII email addresses.
This new feature inevitably brings a couple of (very small!) breaking changes in the VerificationResult class, where the AsciiEmailAddress and the AsciiEmailAddressLocalPart properties have gone away, as they didn't make any sense (we can't always convert the local part to an ASCII-equivalent, punycode can't be used here!). We replaced them with, respectively, EmailAddress and EmailAddressLocalPart. And we added two new properties to this class too: HasInternationalMailboxName, that is set whenever we detect an internationalized mailbox name, and HasInternationalDomainName, that is set when we detect an internationalized domain name (IDN). There is also a new status code, named ServerDoesNotSupportInternationalMailboxes, that is returned by the component whenever the target mail exchanger can't accept internationalized mailbox names while you are validating one of them.
As a small gift, we have also added a new property named SyntaxFailureIndex to the VerificationResult class, that returns the index of the first faulty character in the event of syntax validation failures.
Ok, I hope I didn't forget anything...
We are so excited about this new release that trying to remember everything is not so easy! :)
Stay tuned!
--
Efran Cobisi
EmailVerify.NET lead developer