From 6c104f6906bc7203f39a15bcc8b3d3905c7333e8 Mon Sep 17 00:00:00 2001 From: Georg Brandl Date: Tue, 13 Mar 2007 18:24:40 +0000 Subject: [PATCH] Patch #1605192: list allowed states in error messages for imaplib. --- Lib/imaplib.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Lib/imaplib.py b/Lib/imaplib.py index 08e15207a43..e30ae39bdb2 100644 --- a/Lib/imaplib.py +++ b/Lib/imaplib.py @@ -746,8 +746,10 @@ class IMAP4: if not command in Commands: raise self.error("Unknown IMAP4 UID command: %s" % command) if self.state not in Commands[command]: - raise self.error('command %s illegal in state %s' - % (command, self.state)) + raise self.error("command %s illegal in state %s, " + "only allowed in states %s" % + (command, self.state, + ', '.join(Commands[command]))) name = 'UID' typ, dat = self._simple_command(name, command, *args) if command in ('SEARCH', 'SORT'): @@ -811,8 +813,10 @@ class IMAP4: if self.state not in Commands[name]: self.literal = None - raise self.error( - 'command %s illegal in state %s' % (name, self.state)) + raise self.error("command %s illegal in state %s, " + "only allowed in states %s" % + (name, self.state, + ', '.join(Commands[name]))) for typ in ('OK', 'NO', 'BAD'): if typ in self.untagged_responses: