All checksums have been double-checked against existing RMD160 and
SHA512 hashes
The following distfiles were unfetchable (possibly fetched
conditionally?):
./mail/qmail/distinfo netqmail-1.05-TAI-leapsecs.patch
Version 2.2.0
=============
Changed
-------
- Performance improvements
- 2x faster _maybe_int_to_bytes for Python 2
- Fix _proc_folder_list quadratic runtime
- Faster utf7 encode. ~40% faster for input with a mix of unicode and
ASCII chars.
- Cache regex in _process_select_response
- poll() when available to surpass 1024 file descriptor limit with select()
- Use next instead of six.next as imapclient doesn't claim Python 2.5 support.
- Moved "Logged in/out" traces from INFO to DEBUG level
- Run tests on Python 3.8 and 3.9
- Support the Deleted special folder used by Outlook
- Clean up timeout handling
- Run the Black code formatter over the entire project
Added
-----
- MULTIAPPEND and LITERAL+ support
- Use ptpython for interactive shell if available
- Allow any custom SASL mechanism to be provided. This allows mechanisms such
as EXTERNAL, GSSAPI or SCRAM-SHA-256 to be used in the same way as with
imaplib.
- Add SASL OAUTHBEARER support
- add optional timeout parameter to IMAP4_TLS.open
Fixed
-----
- fixed special folder searching
- Catch the right exception in folder_status
- test_imapclient: Fix LoggerAdapter version check
- Fix config file parsing for None attributes
- Fix useless ref cycle in lexer
- Protocol parsing: Prevent converting numbers with leading zeroes to int.
- Prevent UnicodeDecodeError in IMAPlibLoggerAdapter
- Fix invalid string escape sequences
- Ensure timeout is used on Python 2.7. _create_socket isn't used with the
Python 2 version of imaplib so the open method has been overrided to make it
consistent across Python version.
- Fix IMAP4_TLS for imaplib in Python 3.9+
IMAPClient is an easy-to-use, Pythonic and complete IMAP client library
on top of the standard library.
- Arguments and return values are natural Python types.
- IMAP server responses are fully parsed and readily usable.
- IMAP unique message IDs (UIDs) are handled transparently.
- Internationalised mailbox names are transparently handled.
- Time zones are correctly handled.
- Convenience methods are provided for commonly used functionality.
- Exceptions are raised when errors occur.