Version 0.8.0 is out, with SASL and TLS support.
The VMime Book (developer guide) is now available!
- Refactored header field values and parameters.
- Utility: new object charsetConverter for converting between charsets (code moved from static functions in ‘charset’ class). Added charsetFilteredOutputStream provide charset conversion while writing to an output stream.
- Build: fixed compilation problems on FreeBSD (thanks to Xin LI).
- Attachments: the attachmentHelper allows listing all attachments in a message, as well as adding new attachments.
- Utility: renamed progressionListener to progressListener.
- Messaging: removed “server.socket-factory” property; added the service::setSocketFactory() function instead. Removed “name” parameter from platformDependant::getSocketFactory() function.
- Messaging: removed “timeout.factory” property; added the function service::setTimeoutHandlerFactory() instead. Removed the function platformDependant::getTimeoutHandlerFactory().
- Added TLS/SSL support, using GNU TLS library.
- Added SASL support, based on GNU SASL library. Slightly modified auhenticator object; see ‘example6’ which has been updated.
- Utility: created ‘vmime::security’ and ‘vmime::security::digest’ namespaces. MD5 has been moved here. Added SHA-1 hash algorithm.
- Encoder, Content Handler: added progression notifications.
- Tests: moved to CppUnit for unit tests framework.
- Renamed ‘vmime::messaging’ to ‘vmime::net’. An alias has been kept for compatibility with previous versions (its use should be considered as deprecated).
- Exception: vmime::exception now inherits from std::exception.
- Messaging folder: added a FETCH_IMPORTANCE flag to fetch the fields used with ‘misc::importanceHelper’.
- POP3, IMAP, Maildir: fixed getMessages() when default arguments are given: no message were returned, instead of the real message count.
- Attachments/Message parser: added a getName() parameter to retrieve the attachment filename either from the “filename” parameter of the “Content-Disposition” field, or from the “name” parameter of the “Content-Type” field (if available).
- Added reference counting and smart pointers to simplify the use of VMime objects. Please see README.refcounting for more information.
- Content Handler: added extractRaw() method to allow extracting data without performing any decoding.