-
Notifications
You must be signed in to change notification settings - Fork 36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Doesn't appear to distinguish extended mailboxes #35
Comments
This could be a nice feature. It looks like people sometimes call this "sub-addressing" or "tags". I assume that all servers implementing this implement it by "split on the first + sign". If anyone can point me to a reasonable spec/rfc on how sub-addressing works, we could add it to the library, but I'm hesitant to add a function where all it does is "split on the first + sign" without having some kind of standard. How would a consumer of the library use this reliably unless they know the receiving mail server's implementation? So, until then, it's just:
|
The spec for subaddressing is RFC 5233: https://tools.ietf.org/html/rfc5233 -- it leaves a lot up to the implementor, but the most common use case that I have seen you can just split to the first plus sign, I believe. |
The separator character sequence is unspecified by the RFC (intentionally). I think the '+' syntax originated with Postfix; qmail supported '-' instead. Postfix is configurable and actually allows the specification of any character (set) you like; it doesn't support multi-character separators. Gmail I suspect only supports '+'. One other comment I have is that I'd strongly discourage websites from attempting to strip subaddresses. If the user has given you a subaddress, they mean for you to use it, and you can't know in advance exactly how the subaddress is formatted or even if '+' is the delimiter. Separating out subaddresses might be a useful feature of an email parsing library where it's being used by mail clients or other user-side utilities, however. |
While I agree it's a bad idea to strip subaddresses there are still valid use cases -- I have a "global unsubscribe" option on my site and I prefer it to block the address totally, including any subaddresses. |
fwiw in addition to the plus, gmail strips out a subset of characters. for example [email protected] is the same as [email protected] and both deliver. i'd bet they allow [email protected] too but the gmail client doesn't |
In an email address, you can have
[email protected]
, where the mail is delivered to[email protected]
and the mail server (generally) ignores the+bar
.It'd be great if this library could parse that portion of the email address, allowing consumers to reconstruct the base email address sans the extended mailbox label.
The text was updated successfully, but these errors were encountered: