Yunqa • The Delphi Inspiration

Delphi Components and Applications

User Tools

Site Tools


products:zipwriter:history

Table of Contents

DIZipWriter: Version History

DIZipWriter is a Delphi component to create PKZip-compatible ZIP archives. Archive output is based on TStream and writes directlyfiles (TFileStream), memory (TMemoryStream), or database BLOBs (TBlobStream).

DIZipWriter 6.11.0 – 9 Mar 2023

  • Updated compression libraries:
    • XZ v5.4.1, with bug fixes and new features.
    • Zstandard v1.5.4, with bug fixes, new features, and performance enhancements.

DIZipWriter 6.10.0 – 22 Nov 2022

  • TYuPpmdCompressor.gif New TYuPpmdCompressor: Compress using the PPMd compression algorithm. Achieves excellent compression ratios especially for textual data. Decompression is widely supported, for example by 7-Zip.
  • The PPMd compression algorithm is from 7-zip and interfaced in the Yu7zip unit.
  • Update XZ compression library to v5.2.8.

DIZipWriter v6.9.2 – 4 Nov 2022

  • Updated compression libraries:
    • zlib v1.2.13.
    • XZ v5.2.7.
    • Zstandard v1.5.2.
  • Compression algorithms now ship as their own .pas / .dcu unit files.
  • Fix missing DIZlibConsts.pas: All resourcestrings are now in DIZipConsts.
  • New DIZipWriter_DIFileFinder.dpr demo project, upon user request.

DIZipWriter v6.9.1 – 6 Jan 2022

  • Update the built-in zstd compressor for TYuZstdCompressor to Zstandard 1.5.1.
  • Add TYuZstdCompressor to the DIZipWriter_Main demo.

DIZipWriter 6.9.0 – 16 Sept 2021

  • Support Delphi 11 Alexandria Win32 and Win64.

DIZipWriter 6.8.0 – 26 Apr 2021

  • TYuZstdCompressor.gif New TYuZstdCompressor: Compress using the modern Zstandard compression algorithm. It combines fast compression with high compression ratios. Decompression is super fast and supported by 7-Zip zstd.

DIZipWriter 6.7.0 – 4 Mar 2021

  • TYuXzCompressor.gif New TYuXzCompressor: Compress using the XZ compression algorithm, with secure data integrity check.
  • TDIZipWriter.CloseZip returns the position of ZipStream right after the end of the ZIP archive. This value can be used to trim the stream or file in case extra data was previously written by CloseCurrentEntry which failed and reset the stream position.

DIZipWriter 6.6.0 – 5 Jun 2020

  • Support Delphi 10.4 Sydney Win32 and Win64.

DIZipWriter 6.5.1 – 30 Oct 2019

Delphi compilers with support for the inline directive (starting with Delphi 2005) failed to compile DIZipWriter *.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 DIZipWriter Source Code also compiled to both *.bpl packages and *.exe applications with no problems.

DIZipWriter 6.5.0 – 8 Oct 2019

  • Update the TYuBZip2Compressor compression engine to bzip2 1.0.8.
  • 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_ZipWriter_Component compiler directive. TDIZipWriter now always descends from TComponent. Affects source code only.
  • Remove support for the DI_No_Classes compiler directive. The Classes unit is always used. Source code only.
  • Rename DI_No_Range_Checking compiler directive to DIC_Unsafe. Source code only.

DIZipWriter 6.4.1 – 1 Jan 2019

  • Replace some old units in the DIZipWriter_Dxx.dpk requires clause which prevented compilation.

DIZipWriter 6.4.0 – 24 Dec 2018

  • Support Delphi 10.3 Rio Win32 and Win64.
  • TYuLzmaCompressor sets end of stream flag as required by recent versions of 7-Zip.

DIZipWriter 6.3.0 – 3 Apr 2017

  • Support Delphi 10.2 Tokyo Win32 and Win64.

DIZipWriter 6.2.2 – 17 Feb 2017

  • Deflate compressior engine update.

DIZipWriter 6.2.1 – 5 Jan 2017

  • Deflate compressior engine update.
  • LZMA compressor engine update.

DIZipWriter 6.2.0 – 7 May 2016

  • Support Delphi 10.1 Berlin Win32 and Win64.

DIZipWriter 6.1.5 – 22 Mar 2016

  • Use AES hardware encryption if available.
  • Minor LZMA compression update.

DIZipWriter 6.1.4 – 15 Sep 2015

  • Support Delphi 10 Seattle Win32 and Win64.

DIZipWriter 6.1.3 – 22 May 2015

  • LZMA compression update: Faster buffer comparison plus other speed optimizations.

DIZipWriter 6.1.2 – 25 Apr 2015

  • Add support for Delphi XE8 Win32 and Win64.

DIZipWriter 6.1.1 – 26 Oct 2014

  • Correct the file header bit which flags UTF-8 encoded file names. This prevented some ZIP reading software to decode Unicode file names.

DIZipWriter 6.1.0 – 3 Oct 2014

  • Support Delphi XE7 Win32 and Win64.
  • Improved documentation shows inherited class members.

DIZipWriter 6.0.0 – 28 Apr 2014

  • Support Delphi XE6 Win32 and Win64.

DIZipWriter 5.5.1 – 17 Feb 2014

  • Compatibility update with other Yunqa products.

DIZipWriter 5.5.0 – 25 Sep 2013

  • Support Delphi XE5 Win32 and Win64.

DIZipWriter 5.0.0 – 14 Jun 2013

  • New: Pluggable Compressor interface.
  • Free choice of compression algorithms:
    • TYuDeflateCompressor.gif TYuDeflateCompressor: The ZIP default. Fast, average compression ratio.
    • TYuStoreCompressor.gif New TYuStoreCompressor: No compression, but extremely fast.
    • TYuBzip2Compressor.gif New TYuBZip2Compressor: Somewhat slower but better compression ratio.
    • TYuLzmaCompressor.gif New TYuLzmaCompressor: Slow and memory demanding but excellent compression ratio.
  • New: Zip64 support allows a virtually unlimited number of entries of virtually unlimited size.
  • New: Unicode support for entry names, automatic UTF-8 conversion if needed (and only then).
  • New: Support Delphi XE4 Win32 and Win64.
  • Optimizations and bug fixes.
  • Terminate Delphi 4, Delphi 5, and Delphi 6 support.

DIZipWriter 4.5.0 – 4 Oct 2012

  • Support Delphi XE3 Win32 and Win64.
  • Enforce that an entry name must be a relative path.

DIZipWriter 4.1.0 – 8 Nov 2011

  • Support Delphi XE2 Win64.
  • A bug in TDIWriter.Write caused ZIP archives to be written incorrectly. Fixed.

DIZipWriter 4.0.0 – 15 Oct 2011

  • Support Delphi XE2 Win32.

DIZipWriter 3.2.1 – 20 Feb 2011

  • Compatibility update for parallel usage with other Yunqa Delphi products.

DIZipWriter 3.2.0 – 28 Sep 2010

  • Delphi XE support.

DIZipWriter 3.1.2 – 26 Mar 2010

  • Update zlib compression to 1.2.4.
  • Completely revised the help generator to ease navigation and improve readability. Send your feedback!

DIZipWriter 3.1.1 – 17 Dec 2009

  • Additions and bug fixes to DIUtils.pas.

DIZipWriter 3.1.0 – 14 Sep 2009

  • Delphi 2010 support.

DIZipWriter 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.

DIZipWriter 3.0.0 – 24 Nov 2008

  • Delphi 2009 support.

DIZipWriter 2.3.1 – 1 Jul 2008

  • Improve compatibility for parallel installation with other DI packages.

DIZipWriter 2.3 – 15 May 2007

  • Delphi 2007 support.

DIZipWriter 2.2 – 28 Dec 2005

  • Added compatibility with Delphi 2006 Win32.

DIZipWriter 2.1.2 – 14 Oct 2005

  • Added Delphi 3 compatibility to the utility units.
  • Resolved dependency issues when DIZipWriter is used in parallel with other DI products.

DIZipWriter 2.1.1 – 25 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.

DIZipWriter 2.1 – 25 Aug 2005

  • Updated to use the latest version of the zlib compression library.
  • Recompiled the zlib library with Delphi-omtimized register calling conventions for improved performance.
  • Comatability when used in parallel with other Delphi Inspration products.

DIZipWriter 2.0 – 14 Apr 2005

  • Added support for Delphi 2005 Win32.
  • Added advanced AES 128-, 192, and 256-bit AES encryption compatible with WinZip 9.0, which provide much greater cryptographic security than the traditional Zip 2.0 encryption method. At the time of writing, there is no other known Delphi ZIP component supporting this high level of secutiry. AES encrypted ZIP files created with DIZipWriter can be opened and extracted with WinZip just like regular ZIP files with no or standard encryption.
  • The new TDIZipWriter.DataType property allows to determine the data type attribute for each ZIP entry. The options are dtBinary, dtText, or dtUnknown. For the latter, TDIZipWriter determines the data type automatically. This new property was explicitly requested by some users who found that certain ZIP software apparently unzips differently depending on the data type.
  • Updated the deflate compression engine.

DIZipWriter 1.30 – 1. September 2003

  • Improved Exception Handling for running out of disk space.
  • Shortened the following methods of TDIZipWriter:
Old:New:
AddAnsiStringTDIZipWriter.AddStrA
AddWideStringTDIZipWriter.AddStrW
WriteAnsiStringTDIZipWriter.WriteStrA
WriteWideStringTDIZipWriter.WriteStrW
  • Established compiler compatibility with other Delphi Inspiration products.

DIZipWriter 1.26 – 30. March 2003

  • Established compiler compatibility with other Delphi Inspiration products.

DIZipWriter 1.25 – 6. January 2003

  • Both NewZipFile and NewZipStream have an OffSet parameter which specifies the final position of the Zip archive within the output file or stream. While Offset is usually zero, it might differ when appending a Zip archive to a SFX stub in order to create self extracting Zip archvies. There are SFX stubs freely available on the Internet.
  • Improved error handling in case of stream write errors, like when running out of disk space.
  • Established compiler compatibility with other Delphi Inpiration products.

DIZipWriter 1.20 – 11. November 2002

  • Worked around a compiler and linker bug in D4, D5, D6 and D7 where Delphi terminates comilation with an error if any code with WideChar set constants is compiled with TD32 Debug Info enabled.

DIZipWriter 1.10 – 18. October 2002

  • Updated for Delphi 7 compatibility.
  • Passing an empty string to NewZipFile now raises an exception just as any other new .zip file which can not be created.

DIZipWriter 1.00 – 24. April 2002

  • Initial public release.
products/zipwriter/history.txt · Last modified: 2023/03/09 12:41 by 127.0.0.1