Saturday, October 18 2008
By Vincent on Saturday, October 18 2008, 19:19 - Release
Hello all!
Version 0.9.0 is (finally) out, with some refactoring, API changes and bug fixes. This is an excerpt from the ChangeLog :
-
File Attachments: fixed constructor ambiguity due to implicit conversions.
Removed default values and reordered parameters (API breaking change).
Many thanks to Philipp Frenkel. More information here.
-
Text/Words: fixed incorrect white-space between words.
-
IMAP: fixed bug in modified UTF-7 encoding.
-
Implemented thread-safe reference counting for smart pointers,
whenever possible (GCC built-in functions / pthread / Win32).
-
SMTP: better parsing of ESMTP extensions.
-
Maildir: added support for "Courier" Maildir.
Wednesday, December 20 2006
By Vincent on Wednesday, December 20 2006, 14:34 - Release
Version 0.8.1 is released: a lot of bugs fixed.
-
Imbue classic "C" locale for the output of message parts and protocol commands (thanks to Mörtsell Anders).
-
Renamed 'vmime::platformDependant' to 'vmime::platform'.
The old name has been kept for compatibility with previous versions.
-
SMTP: reissue EHLO command after a successful STARTTLS negociation.
-
Word Encoder: fixed bug #1096610 which caused encoding of a
non-integral number of characters (and then, generation of
incorrectly-formed words) with multi-bytes charsets.
-
Fixed bugs in MHTML code: 'CID' prefix should not be case-sensitive; fixed detection of parts identified by a 'Content-Location'.
-
IMAP and Maildir: added vmime::net::folder::destroy() to delete folders.
-
Renamed 'byte' to 'byte_t' to fix compilation problems on Fedora core 5 (thanks to Rafael Fernandez).
-
IMAP: added a "relaxed" mode to IMAP parser to allow 8-bit characters where not
allowed by the standard (thanks to Tim Teulings for having found the bug).
-
Added service::isSecuredConnection() and service::getConnectionInfos() to retrieve information about the connection.
-
Added support for attachments of type "message/rfc822".
-
IMAP: implemented multi-fetching. Now using "FETCH x:y" instead of sending (y-x+1) "FETCH" requests.
-
POSIX sockets: use getaddrinfo() if available. This should bring thread-safe DNS resolution and IPv6 support.
-
IMAP: compatibility bugs + enhanced debugging trace.
-
Exception: fixed segfault in destructor when destroying an exception chain with more than 2 elements (thanks to Bertrand Benoit).
-
POSIX: fixed a bug in argument vector; last argument was not NULL (thanks to Bertrand Benoit).
-
Maildir: fixed problem with ':' in filename on Windows platform (thanks to Benjamin Biron).
-
Utility: fixed buffer overrun in random::getString (thanks to Benjamin Biron).
-
SMTP: fixed bug in disconnect() when authentication is not needed (thanks to Benjamin Biron).
-
Utility: gmtime() and localtime() are reentrant when using MS C runtime library (MinGW/MSVC).
Sun, November 6 2005
By Vincent on Sun, November 6 2005, 11:21 - Release
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.