Issue Description
When using Calendar.app and picking invitees through Address book of apple - the address of recipient doesn’t seem to be correctly parsed by stalwart server
Expected Behavior
When creating a calendar even through standard Calendar.app on MacOS and picking an invitees through address book, stalwart server successfully parses the address and sends an invite
Actual Behavior
When picked from the address book, the recipient is filled in a form of “John Doe <[email protected]>”.
After doing it for a first time with Calendar.app, and sending the invite - after long enough time (like a day or maybe two) - I get the following in the inbox (name is changed but you get the gist)
There was a temporary problem delivering your message to the following recipients:
<john%20doe%20%[email protected]%3e> (failed to lookup 'gmail.com%3e': DNS resolution error: Malformed label: com%3e)
Reporting-MTA: dns;mail.mydomain.com
Arrival-Date: Tue, 11 Aug 2026 17:54:59 +0000
Final-Recipient: rfc822;john%20doe%20%[email protected]%3e
Action: delayed
Status: 4.0.0
Will-Retry-Until: Fri, 14 Aug 2026 17:54:59 +0000
From: "REDACTED"
Subject: Invitation: REDACTED
Date: 11 August 2026 at 19:54:59 GMT+2
To: <John%20Doe%20%[email protected]%3e>
Reply-To:
... and so on ...
MIME-Version: 1.0
Content-Type: multipart/mixed;=20
boundary=3D"18cad1d1712fd496_9f761ae259c395ee_2882d410b416a343"
Reproduction Steps
I didn’t dig to it deeply, but I reckon picking a contact from apple device that one has filled email under in an address book app - will do the trick
Relevant Log Output
The very first entry on the matter is already indicative of the problem:
2026-08-11T17:54:59Z INFO SMTP RCPT TO command (smtp.rcpt-to) to = "john%20doe%20%[email protected]%3e"
Stalwart Version
v0.16.x
Installation Method
Binary (Linux)
Database Backend
RocksDB
Blob Storage
RocksDB
Search Engine
Internal
Directory Backend
Internal
Additional Context
root@mail:~# stalwart --version
0.16.15
I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.
on
I have searched this support forum (open and closed topics) and confirm this is not a duplicate.
on
I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.
on
P.S. I don’t know what “no-ai” label means and whether I should’ve selected it, does it indicate that I am not an LLM? Or does it indicate that this issues shan’t be touched by LLM? Not self-evident