From 16bc6f0a129ceab091f8dd8a7747171815135a76 Mon Sep 17 00:00:00 2001 From: Brett Fox Date: Tue, 21 Oct 2025 11:44:03 +1100 Subject: [PATCH] Fix IMAP provider imports - use Message instead of email.message.Message to avoid conflict with Email model --- src/email_providers/imap.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/email_providers/imap.py b/src/email_providers/imap.py index 68dd850..4d2994b 100644 --- a/src/email_providers/imap.py +++ b/src/email_providers/imap.py @@ -6,7 +6,8 @@ STUB STATUS: Requires IMAP server credentials - When credentials missing: Provider will fail gracefully """ import logging -import email +from email import message_from_bytes +from email.message import Message from typing import List, Dict, Optional, Any from datetime import datetime from email.utils import parsedate_to_datetime @@ -138,7 +139,7 @@ class IMAPProvider(BaseProvider): logger.error(f"IMAP FETCH ERROR: {e}") return emails - def _parse_message(self, msg: email.message.Message, msg_id: int) -> Optional[Email]: + def _parse_message(self, msg: Message, msg_id: int) -> Optional[Email]: """Parse email.message.Message into Email object.""" try: subject = msg.get('subject', 'No Subject')