fix: encode From header with RFC 2047 to fix email delivery with Cyrillic sender name

This commit is contained in:
2026-07-20 17:06:52 +00:00
parent 09833cd298
commit 709de88c95
+3 -1
View File
@@ -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()