Changelog

TIdStack.AddLocalAddressesToList() method is now deprecated

Posted on

The TIdStack.AddLocalAddressesToList() method was introduced as a replacement for the TIdStack.LocalAddress and TIdStack.LocalAddresses properties, to help make retreival of local IP addresses more thread-safe. However, the implementation of AddLocalAddressesToList() in the various TIdStack descendant classes is limited to reporting IPv4 addresses only, even though most OSes provide APIs for retreiving both local IPv4 and IPv6 […]

Changelog

Interface changes to IdDNSServer.pas

Posted on

To address some performance issues and logic errors, some interface changes needed to be made to the classes of the IdDNSServer.pas unit. The most important change is that many String fields/parameters have been changed to use TIdBytes now, to avoid unnecessary data conversions that were causing data loss in some situations. DNS queries are processed […]

Changelog

New TIdHTTP hoNoReadMultipartMIME flag

Posted on

A new hoNoReadMultipartMIME flag has been added to the TIdHTTP.HTTPOptions property. The purpose of this flag is to specify whether TIdHTTP should read the body content of “multipart/…” responses, such as “multipart/x-mixed-replace” or “multipart/byteranges”, into the target TStream or to exit immediately and let the caller read the content manually instead. By default, this flag […]

Changelog

Indy 10.6 has been released

Posted on

With yesterday’s release of Delphi/C++Builder/RADStudio XE4 also comes the initial public release of Indy 10.6. Indy 10.6 adds support for Embarcadero’s new mobile compilers, starting with iOS (Android coming in a later release). Embarcadero’s mobile architecture includes new RTL features like ARC (Auto Reference Counting) for all objects, and RTL changes like deprecation of some […]

Changelog

TIdIMAP4 logic change

Posted on

For several years now, TIdIMAP4 has suffered from a serious design flaw. Internally, when parsing and generating email messages via TIdMessage, the core parser inside of TIdMessage assumes that input data is always escaped using SMTP-style dot transparency, and always produces SMTP-style dot transparent output. This logic is fine for TIdMessage usage in TIdSMTP and […]

Changelog

Some GMail IMAP extensions added to TIdIMAP4

Posted on

Support for Gmail IMAP extensions has started being added to TIdIMAP4. The TIdIMAP4SearchKey enum has been updated with new items to support the X-GM-RAW, X-GM-MSGID, X-GM-THRID, and X-GM-LABELS extensions in SEARCH commands issued by the SearchMailBox() and UIDSearchMailBox() methods. The TIdIMAP4FetchDataItem enum has been updated with new items to support the X-GM-MSGID, X-GM-THRID, and X-GM-LABELS […]

Changelog

TIdIMAP4.RetreivePart() signature changes

Posted on

The signatures of the TIdIMAP4.RetreivePart() and related methods have changed a little, to use PByte output values instead of PChar output values. RetreivePart() is meant for outputting binary data from a given section of an email, after decoding any MIME data. In Delphi/C++ 2009 and later, PChar is alias for PWideChar, used for handling Unicode […]

Changelog

SMTP Pipelining changes

Posted on

The default value for the TIdSMTP.Pipeline property has been changed from True to False. Numerous users have reported problems about sending messages when TIdSMTP tries to pipeline its commands to the server. Disabling pipelining always fixes the problem, so it is now disabled by default until it can be fixed. Also, a new AllowPipeling property […]