From 7d38b7ed81d051de0724492c69cfba28b199ec29 Mon Sep 17 00:00:00 2001 From: Kacper Kwapisz Date: Tue, 24 Mar 2026 16:16:26 +0100 Subject: [PATCH] Fix detect_drafts_folder using non-existent imapclient.DRAFTS constant imapclient.DRAFTS does not exist (only imapclient.DRAFT, which is a message flag, not a folder attribute). Replaced with direct list_folders iteration checking for the \Drafts special-use flag, matching the approach used by detect_archive_folder. --- src/server.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/server.py b/src/server.py index 4578817..1d9faca 100755 --- a/src/server.py +++ b/src/server.py @@ -353,11 +353,10 @@ def detect_archive_folder(client: IMAPClient) -> str: def detect_drafts_folder(client: IMAPClient) -> str: - import imapclient as imc - - result = client.find_special_folder(imc.DRAFTS) - if result: - return result + folders = client.list_folders() + for flags, _delim, name in folders: + if b"\\Drafts" in flags: + return name for name in ("Drafts", "[Gmail]/Drafts", "INBOX.Drafts"): if client.folder_exists(name): return name