From 709de88c959eb7290dabcc627cdc1b869008a357 Mon Sep 17 00:00:00 2001 From: Ruslan Date: Mon, 20 Jul 2026 17:06:52 +0000 Subject: [PATCH] fix: encode From header with RFC 2047 to fix email delivery with Cyrillic sender name --- app/main.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/main.py b/app/main.py index b586b0e..eb94a6c 100644 --- a/app/main.py +++ b/app/main.py @@ -100,6 +100,8 @@ import ssl as _ssl import json as _json2 from email.mime.multipart import MIMEMultipart as _MIMEMultipart from email.mime.text import MIMEText as _MIMEText +from email.header import Header as _Header +from email.utils import formataddr as _formataddr def _generate_password(length: int = 10) -> str: alphabet = _string.ascii_letters + _string.digits @@ -112,7 +114,7 @@ def _generate_password(length: int = 10) -> str: def _send_email(to: str, subject: str, html_body: str) -> None: msg = _MIMEMultipart("alternative") msg["Subject"] = subject - msg["From"] = f"{SMTP_FROM_NAME} <{SMTP_FROM_EMAIL}>" + msg["From"] = _formataddr((str(_Header(SMTP_FROM_NAME, "utf-8")), SMTP_FROM_EMAIL)) msg["To"] = to msg.attach(_MIMEText(html_body, "html", "utf-8")) ctx = _ssl.create_default_context()