Home | History | Annotate | Download | only in DOC
      1 HISTORY of the LZMA SDK
      2 -----------------------
      3 
      4 16.04          2016-10-04
      5 -------------------------
      6 - The bug was fixed in DllSecur.c.
      7 
      8 
      9 16.03          2016-09-28
     10 -------------------------
     11 - SFX modules now use some protection against DLL preloading attack.
     12 - Some bugs in 7z code were fixed.
     13 
     14 
     15 16.02          2016-05-21
     16 -------------------------
     17 - The BUG in 16.00 - 16.01 was fixed:
     18   Split Handler (SplitHandler.cpp) returned incorrect 
     19   total size value (kpidSize) for split archives.
     20 
     21 
     22 16.01          2016-05-19
     23 -------------------------	
     24 - Some internal changes to reduce the number of compiler warnings.
     25 
     26 
     27 16.00          2016-05-10
     28 -------------------------	
     29 - Some bugs were fixed.
     30 
     31 
     32 15.12          2015-11-19
     33 -------------------------	
     34 - The BUG in C version of 7z decoder was fixed:
     35   7zDec.c : SzDecodeLzma2()
     36   7z decoder could mistakenly report about decoding error for some 7z archives
     37   that use LZMA2 compression method.
     38   The probability to get that mistaken decoding error report was about 
     39   one error per 16384 solid blocks for solid blocks larger than 16 KB (compressed size). 
     40 - The BUG (in 9.26-15.11) in C version of 7z decoder was fixed:
     41   7zArcIn.c : SzReadHeader2()
     42   7z decoder worked incorrectly for 7z archives that contain 
     43   empty solid blocks, that can be placed to 7z archive, if some file is 
     44   unavailable for reading during archive creation.
     45 
     46 
     47 15.09 beta     2015-10-16
     48 -------------------------	
     49 - The BUG in LZMA / LZMA2 encoding code was fixed.
     50   The BUG in LzFind.c::MatchFinder_ReadBlock() function.
     51   If input data size is larger than (4 GiB - dictionary_size),
     52   the following code worked incorrectly:
     53   -  LZMA : LzmaEnc_MemEncode(), LzmaEncode() : LZMA encoding functions 
     54      for compressing from memory to memory. 
     55      That BUG is not related to LZMA encoder version that works via streams.
     56   -  LZMA2 : multi-threaded version of LZMA2 encoder worked incorrectly, if 
     57      default value of chunk size (CLzma2EncProps::blockSize) is changed 
     58      to value larger than (4 GiB - dictionary_size).
     59 
     60 
     61 9.38 beta      2015-01-03
     62 -------------------------	
     63 - The BUG in 9.31-9.37 was fixed:
     64   IArchiveGetRawProps interface was disabled for 7z archives.
     65 - The BUG in 9.26-9.36 was fixed:
     66   Some code in CPP\7zip\Archive\7z\ worked correctly only under Windows.
     67 
     68 
     69 9.36 beta      2014-12-26
     70 -------------------------	
     71 - The BUG in command line version was fixed:
     72   7-Zip created temporary archive in current folder during update archive
     73   operation, if -w{Path} switch was not specified. 
     74   The fixed 7-Zip creates temporary archive in folder that contains updated archive.
     75 - The BUG in 9.33-9.35 was fixed:
     76   7-Zip silently ignored file reading errors during 7z or gz archive creation,
     77   and the created archive contained only part of file that was read before error.
     78   The fixed 7-Zip stops archive creation and it reports about error.
     79 
     80 
     81 9.35 beta      2014-12-07
     82 -------------------------	
     83 - 7zr.exe now support AES encryption.
     84 - SFX mudules were added to LZMA SDK
     85 - Some bugs were fixed.
     86 
     87 
     88 9.21 beta      2011-04-11
     89 -------------------------	
     90 - New class FString for file names at file systems.
     91 - Speed optimization in CRC code for big-endian CPUs.
     92 - The BUG in Lzma2Dec.c was fixed:
     93     Lzma2Decode function didn't work.
     94 
     95 
     96 9.18 beta      2010-11-02
     97 -------------------------	
     98 - New small SFX module for installers (SfxSetup).
     99 
    100 
    101 9.12 beta      2010-03-24
    102 -------------------------
    103 - The BUG in LZMA SDK 9.* was fixed: LZMA2 codec didn't work,
    104   if more than 10 threads were used (or more than 20 threads in some modes).
    105 
    106 
    107 9.11 beta      2010-03-15
    108 -------------------------
    109 - PPMd compression method support
    110    
    111 
    112 9.09           2009-12-12
    113 -------------------------
    114 - The bug was fixed:
    115    Utf16_To_Utf8 funstions in UTFConvert.cpp and 7zMain.c
    116    incorrectly converted surrogate characters (the code >= 0x10000) to UTF-8.
    117 - Some bugs were fixed
    118 
    119 
    120 9.06           2009-08-17
    121 -------------------------
    122 - Some changes in ANSI-C 7z Decoder interfaces.
    123 
    124 
    125 9.04           2009-05-30
    126 -------------------------
    127 - LZMA2 compression method support
    128 - xz format support
    129 
    130 
    131 4.65           2009-02-03
    132 -------------------------
    133 - Some minor fixes
    134 
    135 
    136 4.63           2008-12-31
    137 -------------------------
    138 - Some minor fixes
    139 
    140 
    141 4.61 beta      2008-11-23
    142 -------------------------
    143 - The bug in ANSI-C LZMA Decoder was fixed:
    144     If encoded stream was corrupted, decoder could access memory 
    145     outside of allocated range.
    146 - Some changes in ANSI-C 7z Decoder interfaces.
    147 - LZMA SDK is placed in the public domain.
    148 
    149 
    150 4.60 beta      2008-08-19
    151 -------------------------
    152 - Some minor fixes.
    153 
    154 
    155 4.59 beta      2008-08-13
    156 -------------------------
    157 - The bug was fixed:
    158     LZMA Encoder in fast compression mode could access memory outside of 
    159     allocated range in some rare cases.
    160 
    161 
    162 4.58 beta      2008-05-05
    163 -------------------------
    164 - ANSI-C LZMA Decoder was rewritten for speed optimizations.
    165 - ANSI-C LZMA Encoder was included to LZMA SDK.
    166 - C++ LZMA code now is just wrapper over ANSI-C code.
    167 
    168 
    169 4.57           2007-12-12
    170 -------------------------
    171 - Speed optimizations in ++ LZMA Decoder. 
    172 - Small changes for more compatibility with some C/C++ compilers.
    173 
    174 
    175 4.49 beta      2007-07-05
    176 -------------------------
    177 - .7z ANSI-C Decoder:
    178      - now it supports BCJ and BCJ2 filters
    179      - now it supports files larger than 4 GB.
    180      - now it supports "Last Write Time" field for files.
    181 - C++ code for .7z archives compressing/decompressing from 7-zip 
    182   was included to LZMA SDK.
    183   
    184 
    185 4.43           2006-06-04
    186 -------------------------
    187 - Small changes for more compatibility with some C/C++ compilers.
    188   
    189 
    190 4.42           2006-05-15
    191 -------------------------
    192 - Small changes in .h files in ANSI-C version.
    193   
    194 
    195 4.39 beta      2006-04-14
    196 -------------------------
    197 - The bug in versions 4.33b:4.38b was fixed:
    198   C++ version of LZMA encoder could not correctly compress 
    199   files larger than 2 GB with HC4 match finder (-mfhc4).
    200   
    201 
    202 4.37 beta      2005-04-06
    203 -------------------------
    204 - Fixes in C++ code: code could no be compiled if _NO_EXCEPTIONS was defined. 
    205 
    206 
    207 4.35 beta      2005-03-02
    208 -------------------------
    209 - The bug was fixed in C++ version of LZMA Decoder:
    210     If encoded stream was corrupted, decoder could access memory 
    211     outside of allocated range.
    212 
    213 
    214 4.34 beta      2006-02-27
    215 -------------------------
    216 - Compressing speed and memory requirements for compressing were increased
    217 - LZMA now can use only these match finders: HC4, BT2, BT3, BT4
    218 
    219 
    220 4.32           2005-12-09
    221 -------------------------
    222 - Java version of LZMA SDK was included
    223 
    224 
    225 4.30           2005-11-20
    226 -------------------------
    227 - Compression ratio was improved in -a2 mode
    228 - Speed optimizations for compressing in -a2 mode
    229 - -fb switch now supports values up to 273
    230 - The bug in 7z_C (7zIn.c) was fixed:
    231   It used Alloc/Free functions from different memory pools.
    232   So if program used two memory pools, it worked incorrectly.
    233 - 7z_C: .7z format supporting was improved
    234 - LZMA# SDK (C#.NET version) was included
    235 
    236 
    237 4.27 (Updated) 2005-09-21
    238 -------------------------
    239 - Some GUIDs/interfaces in C++ were changed.
    240  IStream.h:
    241    ISequentialInStream::Read now works as old ReadPart
    242    ISequentialOutStream::Write now works as old WritePart
    243 
    244 
    245 4.27           2005-08-07
    246 -------------------------
    247 - The bug in LzmaDecodeSize.c was fixed:
    248    if _LZMA_IN_CB and _LZMA_OUT_READ were defined,
    249    decompressing worked incorrectly.
    250 
    251 
    252 4.26           2005-08-05
    253 -------------------------
    254 - Fixes in 7z_C code and LzmaTest.c:
    255   previous versions could work incorrectly,
    256   if malloc(0) returns 0
    257 
    258 
    259 4.23           2005-06-29
    260 -------------------------
    261 - Small fixes in C++ code
    262 
    263 
    264 4.22           2005-06-10
    265 -------------------------
    266 - Small fixes
    267 
    268 
    269 4.21           2005-06-08
    270 -------------------------
    271 - Interfaces for ANSI-C LZMA Decoder (LzmaDecode.c) were changed
    272 - New additional version of ANSI-C LZMA Decoder with zlib-like interface:
    273     - LzmaStateDecode.h
    274     - LzmaStateDecode.c
    275     - LzmaStateTest.c
    276 - ANSI-C LZMA Decoder now can decompress files larger than 4 GB
    277 
    278 
    279 4.17           2005-04-18
    280 -------------------------
    281 - New example for RAM->RAM compressing/decompressing: 
    282   LZMA + BCJ (filter for x86 code):
    283     - LzmaRam.h
    284     - LzmaRam.cpp
    285     - LzmaRamDecode.h
    286     - LzmaRamDecode.c
    287     - -f86 switch for lzma.exe
    288 
    289 
    290 4.16           2005-03-29
    291 -------------------------
    292 - The bug was fixed in LzmaDecode.c (ANSI-C LZMA Decoder): 
    293    If _LZMA_OUT_READ was defined, and if encoded stream was corrupted,
    294    decoder could access memory outside of allocated range.
    295 - Speed optimization of ANSI-C LZMA Decoder (now it's about 20% faster).
    296   Old version of LZMA Decoder now is in file LzmaDecodeSize.c. 
    297   LzmaDecodeSize.c can provide slightly smaller code than LzmaDecode.c
    298 - Small speed optimization in LZMA C++ code
    299 - filter for SPARC's code was added
    300 - Simplified version of .7z ANSI-C Decoder was included
    301 
    302 
    303 4.06           2004-09-05
    304 -------------------------
    305 - The bug in v4.05 was fixed:
    306     LZMA-Encoder didn't release output stream in some cases.
    307 
    308 
    309 4.05           2004-08-25
    310 -------------------------
    311 - Source code of filters for x86, IA-64, ARM, ARM-Thumb 
    312   and PowerPC code was included to SDK
    313 - Some internal minor changes
    314 
    315 
    316 4.04           2004-07-28
    317 -------------------------
    318 - More compatibility with some C++ compilers
    319 
    320 
    321 4.03           2004-06-18
    322 -------------------------
    323 - "Benchmark" command was added. It measures compressing 
    324   and decompressing speed and shows rating values. 
    325   Also it checks hardware errors.
    326 
    327 
    328 4.02           2004-06-10
    329 -------------------------
    330 - C++ LZMA Encoder/Decoder code now is more portable
    331   and it can be compiled by GCC on Linux.
    332 
    333 
    334 4.01           2004-02-15
    335 -------------------------
    336 - Some detection of data corruption was enabled.
    337     LzmaDecode.c / RangeDecoderReadByte
    338     .....
    339     {
    340       rd->ExtraBytes = 1;
    341       return 0xFF;
    342     }
    343 
    344 
    345 4.00           2004-02-13
    346 -------------------------
    347 - Original version of LZMA SDK
    348 
    349 
    350 
    351 HISTORY of the LZMA
    352 -------------------
    353   2001-2008:  Improvements to LZMA compressing/decompressing code, 
    354               keeping compatibility with original LZMA format
    355   1996-2001:  Development of LZMA compression format
    356 
    357   Some milestones:
    358 
    359   2001-08-30: LZMA compression was added to 7-Zip
    360   1999-01-02: First version of 7-Zip was released
    361   
    362 
    363 End of document
    364