Yunqa • The Delphi Inspiration

Delphi Components and Applications

User Tools

Site Tools


products:containers:history

Differences

This shows you the differences between two versions of the page.


products:containers:history [2023/11/23 10:18] (current) – created - external edit 127.0.0.1
Line 1: Line 1:
 +====== DIContainers: Version History ======
 +{{page>header}}
 +=====DIContainers v5.13.0 – 22 Nov 2023=====
 +
 +  * Support Delphi 12 Athens Win32 and Win64.
 +
 +=====DIContainers 5.12.0 – 16 Sept 2021=====
 +
 +  * Support Delphi 11 Alexandria Win32 and Win64.
 +
 +=====DIContainers 5.11.0 – 5 Jun 2020=====
 +
 +  * Support Delphi 10.4 Sydney Win32 and Win64.
 +
 +=====DIContainers 5.10.1 – 30 Oct 2019=====
 +
 +Delphi compilers with support for the ''inline'' directive (starting with Delphi 2005) failed to compile DIContainers *.bpl packages for the Demo and Commercial editions. They generated a "[dcc32 Fatal Error] DIUtils: F2051 Unit DIContainers was compiled with a different version of DIUtils.StrSameIW". Regular *.exe applications compiled without problems. The DIContainers Source Code also compiled to both *.bpl packages and *.exe applications with no problems.
 +
 +=====DIContainers 5.10.0 – 8 Oct 2019=====
 +
 +  * Enlarge container capacity to NativeInt.
 +  * Improve DIUtils.pas Unicode processing to support Unicode Code Points from $000000 to $10FFFF. Adjust remaining source code accordingly.
 +  * Update DIUtils.pas Unicode functions to Unicode 12.1.0.
 +  * Remove ''DI.inc'' include file. Directly link in ''DICompilers.inc'' instead.
 +  * Remove support for the ''DI_No_Classes'' compiler directive.
 +  * Rename ''DI_No_Range_Checking'' compiler directive to ''DIC_Unsafe''.
 +  * Fix ''TDIStringTree'' element type from AnsiString to just String.
 +  * Fix an "index out of bounds" error when deleting a node with children in the DIContainers_AddressBook demo.
 +  * Work around some compiler warnings and remove {$WARNINGS OFF} directives, which suppressed them.
 +
 +=====DIContainers 5.9.0 – 24 Dec 2018=====
 +
 +  * Support Delphi 10.3 Rio Win32 and Win64.
 +
 +=====DIContainers 5.8.0 – 3 Apr 2017=====
 +
 +  * Support Delphi 10.2 Tokyo Win32 and Win64.
 +
 +=====DIContainers 5.7.0 – 7 May 2016=====
 +
 +  * Support Delphi 10.1 Berlin Win32 and Win64.
 +
 +=====DIContainers 5.6.2 – 15 Sep 2015=====
 +
 +  * Support Delphi 10 Seattle Win32 and Win64.
 +
 +=====DIContainers 5.6.1 – 25 Apr 2015=====
 +
 +  * Add support for Delphi XE8 Win32 and Win64.
 +
 +=====DIContainers 5.6.0 – 3 Oct 2014=====
 +
 +  * Support Delphi XE7 Win32 and Win64.
 +  * New ''TDIInterfaceVector'' with ''NewDIInterfaceVector'' and ''NewDIInterfaceOwnerVector'' constructor functions (Delphi 6 and later only).
 +  * Fix multi-thread problem with ''TDIItemHandler'' and ''TDIKeyHandler'' reference counting.
 +  * Minor fixes and improvements.
 +  * Improved documentation shows inherited class members.
 +
 +=====DIContainers 5.5.0 – 28 Apr 2014=====
 +
 +  * Support Delphi XE6 Win32 and Win64.
 +
 +=====DIContainers 5.1.0 – 17 Feb 2014=====
 +
 +  * New NativeInt and NativeUInt containers:
 +    * ''TDINativeIntList'', ''TDINativeIntTree'', ''TDINativeIntVector''.
 +    * ''TDINativeUIntList'', ''TDINativeUIntTree'', ''TDINativeUIntVector''.
 +    * ''TDIUnicodeString2NativeUIntVector''.
 +
 +=====DIContainers 5.0.0 – 25 Sep 2013=====
 +
 +  * Support Delphi XE5 Win32 and Win64.
 +
 +=====DIContainers 4.6.0 – 14 Jun 2013=====
 +
 +  * Support Delphi XE4 Win32 and Win64.
 +  * Fix: Containers created with ''GetDIUnicodeStringObjectOwnerItemHandler'' did not free objects.
 +
 +=====DIContainers 4.5.1 – 24 Jan 2013=====
 +
 +  * Compatibility update with other Yunqa products.
 +
 +=====DIContainers 4.5.0 – 4 Oct 2012=====
 +
 +  * Support Delphi XE3 Win32 and Win64.
 +
 +=====DIContainers 4.1.0 – 9 Nov 2011=====
 +
 +  * Support Delphi XE2 Win64.
 +  * Fix AV when sorting empty ''TDIVector''.
 +
 +=====DIContainers 4.0.0 – 15 Oct 2011=====
 +
 +  * Support Delphi XE2 Win32 (binary editions) and Win64 (source code edition only right now).
 +
 +=====DIContainers 3.3.1 – 20 Feb 2011=====
 +
 +  * Add ''TDIInteger3Vector''.
 +  * Library source code compiles with FreePascal (Win32).
 +
 +=====DIContainers 3.3.0 – 28 Sep 2010=====
 +
 +  * Delphi XE support.
 +
 +=====DIContainers 3.2.2 – 24 Apr 2010=====
 +
 +  * New ''TDIHash'' high-performance methods:
 +    * ''TDIHash.DeleteByKeyNoPack''
 +    * ''TDIHash.DeleteByKeyNoFreeNoPack''
 +    * ''TDIHash.PItemOfKeyBufOrInsert''
 +  * Correct some minor documentation glitches.
 +
 +=====DIContainers 3.2.1 – 9 Apr 2010=====
 +
 +  * New ''TDIStringList''.
 +  * New ''TDIString2List''.
 +  * New ''TDIStringTree''.
 +  * Improved and easier to navigate documentation.
 +
 +=====DIContainers 3.2.0 – 17 Dec 2009=====
 +
 +  * New ''TDIStringVector''.
 +  * New ''TDIStringCardinalVector''.
 +  * New ''TDIString2Vector''.
 +  * New ''TDIString2CardinalVector''.
 +  * New ''TDIStringHash''.
 +  * Fix bugs with WideString / UnicodeString comparisons in FindValueCS / FindValueCI (i.e. for ''TDIVector'' containers).
 +  * Additions and bug fixes to DIUtils.pas.
 +
 +=====DIContainers 3.1.0 – 14 Sep 2009=====
 +
 +  * Delphi 2010 support.
 +  * Implement UnicodeString / WideString versions for ''TDIUnicodeStringVector.LoadNamesFromTextFile'' and ''TDIUnicodeString2Vector.LoadValuesFromTextFile'', as well as for their respective ''TDIVector'' and ''TDIList'' classe descendants.
 +  * Add the missing ''TDIObjectHash.ObjectAt'' property.
 +
 +=====DIContainers 3.0.1 – 31 Jan 2009=====
 +
 +  * Work around an unexpected Delphi 2009 automatic numeric AnsiChar Unicode conversion in DIUtils.pas which caused an error when compiled on a Windows OS set to a non-European (Asian, Cyrillic, etc.) codepage.
 +
 +=====DIContainers 3.0.0 – 24 Nov 2008=====
 +
 +  * Delphi 2009 support. In older Delphi versions, ''UnicodeString'' automatically falls back to WideString.
 +  * New UnicodeString containers:
 +    * ''TDIUnicodeStringHash'', ''TDIUnicodeStringList'', ''TDIUnicodeStringTree'', ''TDIUnicodeStringVector''.
 +    * ''TDIUnicodeStringCardinalList'', ''TDIUnicodeStringCardinalTree'', ''TDIUnicodeStringCardinalVector''.
 +    * ''TDIUnicodeStringIntegerList'', ''TDIUnicodeStringIntegerTree'', ''TDIUnicodeStringIntegerVector''.
 +    * ''TDIUnicodeStringObjectList'' + ''DIUnicodeStringObjectOwnerList'', ''TDIUnicodeStringObjectTree'' + ''DIUnicodeStringObjectTree'', ''TDIUnicodeStringObjectVector'' + ''DIUnicodeStringObjectOwnerVector''.
 +    * ''TDIUnicodeStringPointerList'' + ''DIUnicodeStringPointerOwnerList'', ''TDIUnicodeStringPointerTree'' + ''DIUnicodeStringPointerTree'', ''TDIUnicodeStringPointerVector'' + ''DIUnicodeStringPointerOwnerVector''.
 +    * ''TDIUnicodeString2List'', ''TDIUnicodeString2Tree'', ''TDIUnicodeString2Vector''.
 +    * ''TDIUnicodeString2CardinalList'', ''TDIUnicodeString2CardinalTree'', ''TDIUnicodeString2CardinalVector'',
 +  * New UnicodeString item handler units:
 +    * ''DIUnicodeStringItemHandler''.
 +    * ''DIUnicodeStringCardinalItemHandler''.
 +    * ''DIUnicodeStringIntegerItemHandler''.
 +    * ''DIUnicodeStringObjectItemHandler'' + ''DIUnicodeStringObjectOwnerItemHandler''.
 +    * ''DIUnicodeStringPointerItemHandler'' + ''DIUnicodeStringPointerOwnerItemHandler''.
 +    * ''DIUnicodeString2ItemHandler''.
 +    * ''DIUnicodeString2CardinalItemHandler''.
 +  * New UnicodeString key handler units:
 +    * ''DIUnicodeStringCIKeyHandler'', ''DIUnicodeStringCSKeyHandler''.
 +
 +=====DIContainers 2.3 – 1 Jul 2008=====
 +
 +  * New containers:
 +    * ''TDIWideStringPointerList'', ''DIWideStringPointerOwnerList''.
 +    * ''TDIWideStringPointerTree'', ''DIWideStringPointerTree''.
 +    * ''TDIWideStringPointerVector'', ''DIWideStringPointerOwnerVector''.
 +  * New item handler units:
 +    * ''DIWideStringPointerItemHandler'', ''DIWideStringPointerOwnerItemHandler''.
 +  * Improve compatibility for parallel installation with other DI packages.
 +
 +=====DIContainers 2.2.1 – 15 May 2007=====
 +
 +  * Replace incorrectly compiled HTML Help file with working version.
 +  * Remove non-interfaced functions from ''DIContainers'' implementation section. They caused some Delphi versions to issue irritating hints when ''DIContainers'' was compiled into a package.
 +
 +=====DIContainers 2.2 – 13 May 2007=====
 +
 +  * Delphi 2007 support.
 +  * Add XP Themes to Demo projects.
 +
 +=====DIContainers 2.1 – 28 Dec 2005=====
 +
 +  * Added support for Delphi 2006 Win32.
 +  * Added the the functions MaxNumber and MinNumber the the Number list and vector containers.
 +  * Fixed a bug where ''TDIHash.Clear'' did not reset an internal variable which could result in an access violation when adding new items.
 +
 +=====DIContainers 2.0.3 – 14 Oct 2005=====
 +
 +  * Added Delphi 3 compatibility to the utility units.
 +  * Resolved dependency issues when DIContainers is used in parallel with other DI products.
 +
 +=====DIContainers 2.0.2 – 31 Sep 2005=====
 +
 +  * Fixed a small packaging bug in the Demo edition which unfortunately slipped into the last update. Commercial and Source code editions do not require this update.
 +
 +=====DIContainers 2.0.1 – 31 Aug 2005=====
 +
 +  * Compatibility with other DI products.
 +
 +=====DIContainers 2.0 – 14 Apr 2005=====
 +
 +  * Added support for Delphi 2005 Win32.
 +  * Added support for the new Delphi 2005 ''for Item in Container do'' iterator syntax.
 +  * Multiple speed optimizations:
 +    * Reduced number of arguments to most of the ''TDIItemHandler'''s methods.
 +    * Faster hash functions for strings and character data.
 +    * Other, internal speed optimizations.
 +  * Multiple interface simplifications:
 +    * Moved some commonly used methods to the ''TDIContainer'' level, now declared as virtual and overridden in descendant classes.
 +    * Changed some readonly container access properties to functions.
 +    * Removed some rarely used arguments from indexed item access properties.
 +    * Added overloaded versions of many low level methods to provide both simple and advanced item access.
 +    * Container iterator callbacks now reference a method of an instance object instead of a simple function.
 +  * Bug fixes.
 +