1 HISTORY of the LZMA SDK
2 -----------------------
5 -------------------------
6 - New small SFX module for installers (SfxSetup).
10 -------------------------
11 - The BUG in LZMA SDK 9.* was fixed: LZMA2 codec didn't work,
12 if more than 10 threads were used (or more than 20 threads in some modes).
16 -------------------------
17 - PPMd compression method support
21 -------------------------
23 Utf16_To_Utf8 funstions in UTFConvert.cpp and 7zMain.c
24 incorrectly converted surrogate characters (the code >= 0x10000) to UTF-8.
25 - Some bugs were fixed
29 -------------------------
30 - Some changes in ANSI-C 7z Decoder interfaces.
34 -------------------------
35 - LZMA2 compression method support
40 -------------------------
45 -------------------------
50 -------------------------
51 - The bug in ANSI-C LZMA Decoder was fixed:
52 If encoded stream was corrupted, decoder could access memory
53 outside of allocated range.
54 - Some changes in ANSI-C 7z Decoder interfaces.
55 - LZMA SDK is placed in the public domain.
59 -------------------------
64 -------------------------
66 LZMA Encoder in fast compression mode could access memory outside of
67 allocated range in some rare cases.
71 -------------------------
72 - ANSI-C LZMA Decoder was rewritten for speed optimizations.
73 - ANSI-C LZMA Encoder was included to LZMA SDK.
74 - C++ LZMA code now is just wrapper over ANSI-C code.
78 -------------------------
79 - Speed optimizations in Ñ++ LZMA Decoder.
80 - Small changes for more compatibility with some C/C++ compilers.
84 -------------------------
86 - now it supports BCJ and BCJ2 filters
87 - now it supports files larger than 4 GB.
88 - now it supports "Last Write Time" field for files.
89 - C++ code for .7z archives compressing/decompressing from 7-zip
90 was included to LZMA SDK.
94 -------------------------
95 - Small changes for more compatibility with some C/C++ compilers.
99 -------------------------
100 - Small changes in .h files in ANSI-C version.
104 -------------------------
105 - The bug in versions 4.33b:4.38b was fixed:
106 C++ version of LZMA encoder could not correctly compress
107 files larger than 2 GB with HC4 match finder (-mfhc4).
111 -------------------------
112 - Fixes in C++ code: code could no be compiled if _NO_EXCEPTIONS was defined.
116 -------------------------
117 - The bug was fixed in C++ version of LZMA Decoder:
118 If encoded stream was corrupted, decoder could access memory
119 outside of allocated range.
123 -------------------------
124 - Compressing speed and memory requirements for compressing were increased
125 - LZMA now can use only these match finders: HC4, BT2, BT3, BT4
129 -------------------------
130 - Java version of LZMA SDK was included
134 -------------------------
135 - Compression ratio was improved in -a2 mode
136 - Speed optimizations for compressing in -a2 mode
137 - -fb switch now supports values up to 273
138 - The bug in 7z_C (7zIn.c) was fixed:
139 It used Alloc/Free functions from different memory pools.
140 So if program used two memory pools, it worked incorrectly.
141 - 7z_C: .7z format supporting was improved
142 - LZMA# SDK (C#.NET version) was included
145 4.27 (Updated) 2005-09-21
146 -------------------------
147 - Some GUIDs/interfaces in C++ were changed.
149 ISequentialInStream::Read now works as old ReadPart
150 ISequentialOutStream::Write now works as old WritePart
154 -------------------------
155 - The bug in LzmaDecodeSize.c was fixed:
156 if _LZMA_IN_CB and _LZMA_OUT_READ were defined,
157 decompressing worked incorrectly.
161 -------------------------
162 - Fixes in 7z_C code and LzmaTest.c:
163 previous versions could work incorrectly,
164 if malloc(0) returns 0
168 -------------------------
169 - Small fixes in C++ code
173 -------------------------
178 -------------------------
179 - Interfaces for ANSI-C LZMA Decoder (LzmaDecode.c) were changed
180 - New additional version of ANSI-C LZMA Decoder with zlib-like interface:
184 - ANSI-C LZMA Decoder now can decompress files larger than 4 GB
188 -------------------------
189 - New example for RAM->RAM compressing/decompressing:
190 LZMA + BCJ (filter for x86 code):
195 - -f86 switch for lzma.exe
199 -------------------------
200 - The bug was fixed in LzmaDecode.c (ANSI-C LZMA Decoder):
201 If _LZMA_OUT_READ was defined, and if encoded stream was corrupted,
202 decoder could access memory outside of allocated range.
203 - Speed optimization of ANSI-C LZMA Decoder (now it's about 20% faster).
204 Old version of LZMA Decoder now is in file LzmaDecodeSize.c.
205 LzmaDecodeSize.c can provide slightly smaller code than LzmaDecode.c
206 - Small speed optimization in LZMA C++ code
207 - filter for SPARC's code was added
208 - Simplified version of .7z ANSI-C Decoder was included
212 -------------------------
213 - The bug in v4.05 was fixed:
214 LZMA-Encoder didn't release output stream in some cases.
218 -------------------------
219 - Source code of filters for x86, IA-64, ARM, ARM-Thumb
220 and PowerPC code was included to SDK
221 - Some internal minor changes
225 -------------------------
226 - More compatibility with some C++ compilers
230 -------------------------
231 - "Benchmark" command was added. It measures compressing
232 and decompressing speed and shows rating values.
233 Also it checks hardware errors.
237 -------------------------
238 - C++ LZMA Encoder/Decoder code now is more portable
239 and it can be compiled by GCC on Linux.
243 -------------------------
244 - Some detection of data corruption was enabled.
245 LzmaDecode.c / RangeDecoderReadByte
254 -------------------------
255 - Original version of LZMA SDK
261 2001-2008: Improvements to LZMA compressing/decompressing code,
262 keeping compatibility with original LZMA format
263 1996-2001: Development of LZMA compression format
267 2001-08-30: LZMA compression was added to 7-Zip
268 1999-01-02: First version of 7-Zip was released