Today I released the first versions of imapclient, an IMAP4 client library I've been working on. From the README:
imapclient aims to be a easy-to-use, Pythonic and complete IMAP client library with no dependencies outside the Python standard library. Features:
- Arguments and return values are natural Python types.
- IMAP server responses are fully parsed and readily useable.
- IMAP unique message IDs (UIDs) are handled transparently. There is no need to call different methods to use UIDs.
- Convenience methods are provided for commonly used functionality.
- Exceptions are raised when errors occur.
imapclient makes IMAP useable from Python with little effort. If you've used the imaplib module from the standard library, you'll know that a lot of supporting code is needed just to get simple things done. I'd wager that everyone who has used imaplib has their own fragile regexes and management code to go with it. I hope that imapclient will put an end to this.
imapclient can be downloaded from my Code page. Feedback and patches most welcome!