Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 1 | HISTORY of the LZMA SDK |
| 2 | ----------------------- |
| 3 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 4 | 4.57 2007-12-12 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 5 | ------------------------- |
| 6 | - Speed optimizations in Ñ++ LZMA Decoder. |
| 7 | - Small changes for more compatibility with some C/C++ compilers. |
| 8 | |
| 9 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 10 | 4.49 beta 2007-07-05 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 11 | ------------------------- |
| 12 | - .7z ANSI-C Decoder: |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 13 | - now it supports BCJ and BCJ2 filters |
| 14 | - now it supports files larger than 4 GB. |
| 15 | - now it supports "Last Write Time" field for files. |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 16 | - C++ code for .7z archives compressing/decompressing from 7-zip |
| 17 | was included to LZMA SDK. |
| 18 | |
| 19 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 20 | 4.43 2006-06-04 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 21 | ------------------------- |
| 22 | - Small changes for more compatibility with some C/C++ compilers. |
| 23 | |
| 24 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 25 | 4.42 2006-05-15 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 26 | ------------------------- |
| 27 | - Small changes in .h files in ANSI-C version. |
| 28 | |
| 29 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 30 | 4.39 beta 2006-04-14 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 31 | ------------------------- |
| 32 | - Bug in versions 4.33b:4.38b was fixed: |
| 33 | C++ version of LZMA encoder could not correctly compress |
| 34 | files larger than 2 GB with HC4 match finder (-mfhc4). |
| 35 | |
| 36 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 37 | 4.37 beta 2005-04-06 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 38 | ------------------------- |
| 39 | - Fixes in C++ code: code could no be compiled if _NO_EXCEPTIONS was defined. |
| 40 | |
| 41 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 42 | 4.35 beta 2005-03-02 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 43 | ------------------------- |
| 44 | - Bug was fixed in C++ version of LZMA Decoder: |
| 45 | If encoded stream was corrupted, decoder could access memory |
| 46 | outside of allocated range. |
| 47 | |
| 48 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 49 | 4.34 beta 2006-02-27 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 50 | ------------------------- |
| 51 | - Compressing speed and memory requirements for compressing were increased |
| 52 | - LZMA now can use only these match finders: HC4, BT2, BT3, BT4 |
| 53 | |
| 54 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 55 | 4.32 2005-12-09 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 56 | ------------------------- |
| 57 | - Java version of LZMA SDK was included |
| 58 | |
| 59 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 60 | 4.30 2005-11-20 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 61 | ------------------------- |
| 62 | - Compression ratio was improved in -a2 mode |
| 63 | - Speed optimizations for compressing in -a2 mode |
| 64 | - -fb switch now supports values up to 273 |
| 65 | - Bug in 7z_C (7zIn.c) was fixed: |
| 66 | It used Alloc/Free functions from different memory pools. |
| 67 | So if program used two memory pools, it worked incorrectly. |
| 68 | - 7z_C: .7z format supporting was improved |
| 69 | - LZMA# SDK (C#.NET version) was included |
| 70 | |
| 71 | |
| 72 | 4.27 (Updated) 2005-09-21 |
| 73 | ------------------------- |
| 74 | - Some GUIDs/interfaces in C++ were changed. |
| 75 | IStream.h: |
| 76 | ISequentialInStream::Read now works as old ReadPart |
| 77 | ISequentialOutStream::Write now works as old WritePart |
| 78 | |
| 79 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 80 | 4.27 2005-08-07 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 81 | ------------------------- |
| 82 | - Bug in LzmaDecodeSize.c was fixed: |
| 83 | if _LZMA_IN_CB and _LZMA_OUT_READ were defined, |
| 84 | decompressing worked incorrectly. |
| 85 | |
| 86 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 87 | 4.26 2005-08-05 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 88 | ------------------------- |
| 89 | - Fixes in 7z_C code and LzmaTest.c: |
| 90 | previous versions could work incorrectly, |
| 91 | if malloc(0) returns 0 |
| 92 | |
| 93 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 94 | 4.23 2005-06-29 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 95 | ------------------------- |
| 96 | - Small fixes in C++ code |
| 97 | |
| 98 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 99 | 4.22 2005-06-10 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 100 | ------------------------- |
| 101 | - Small fixes |
| 102 | |
| 103 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 104 | 4.21 2005-06-08 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 105 | ------------------------- |
| 106 | - Interfaces for ANSI-C LZMA Decoder (LzmaDecode.c) were changed |
| 107 | - New additional version of ANSI-C LZMA Decoder with zlib-like interface: |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 108 | - LzmaStateDecode.h |
| 109 | - LzmaStateDecode.c |
| 110 | - LzmaStateTest.c |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 111 | - ANSI-C LZMA Decoder now can decompress files larger than 4 GB |
| 112 | |
| 113 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 114 | 4.17 2005-04-18 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 115 | ------------------------- |
| 116 | - New example for RAM->RAM compressing/decompressing: |
| 117 | LZMA + BCJ (filter for x86 code): |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 118 | - LzmaRam.h |
| 119 | - LzmaRam.cpp |
| 120 | - LzmaRamDecode.h |
| 121 | - LzmaRamDecode.c |
| 122 | - -f86 switch for lzma.exe |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 123 | |
| 124 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 125 | 4.16 2005-03-29 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 126 | ------------------------- |
| 127 | - Bug was fixed in LzmaDecode.c (ANSI-C LZMA Decoder): |
| 128 | If _LZMA_OUT_READ was defined, and if encoded stream was corrupted, |
| 129 | decoder could access memory outside of allocated range. |
| 130 | - Speed optimization of ANSI-C LZMA Decoder (now it's about 20% faster). |
| 131 | Old version of LZMA Decoder now is in file LzmaDecodeSize.c. |
| 132 | LzmaDecodeSize.c can provide slightly smaller code than LzmaDecode.c |
| 133 | - Small speed optimization in LZMA C++ code |
| 134 | - filter for SPARC's code was added |
| 135 | - Simplified version of .7z ANSI-C Decoder was included |
| 136 | |
| 137 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 138 | 4.06 2004-09-05 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 139 | ------------------------- |
| 140 | - Bug in v4.05 was fixed: |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 141 | LZMA-Encoder didn't release output stream in some cases. |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 142 | |
| 143 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 144 | 4.05 2004-08-25 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 145 | ------------------------- |
| 146 | - Source code of filters for x86, IA-64, ARM, ARM-Thumb |
| 147 | and PowerPC code was included to SDK |
| 148 | - Some internal minor changes |
| 149 | |
| 150 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 151 | 4.04 2004-07-28 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 152 | ------------------------- |
| 153 | - More compatibility with some C++ compilers |
| 154 | |
| 155 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 156 | 4.03 2004-06-18 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 157 | ------------------------- |
| 158 | - "Benchmark" command was added. It measures compressing |
| 159 | and decompressing speed and shows rating values. |
| 160 | Also it checks hardware errors. |
| 161 | |
| 162 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 163 | 4.02 2004-06-10 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 164 | ------------------------- |
| 165 | - C++ LZMA Encoder/Decoder code now is more portable |
| 166 | and it can be compiled by GCC on Linux. |
| 167 | |
| 168 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 169 | 4.01 2004-02-15 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 170 | ------------------------- |
| 171 | - Some detection of data corruption was enabled. |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 172 | LzmaDecode.c / RangeDecoderReadByte |
| 173 | ..... |
| 174 | { |
| 175 | rd->ExtraBytes = 1; |
| 176 | return 0xFF; |
| 177 | } |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 178 | |
| 179 | |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 180 | 4.00 2004-02-13 |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 181 | ------------------------- |
| 182 | - Original version of LZMA SDK |
| 183 | |
| 184 | |
| 185 | |
| 186 | HISTORY of the LZMA |
| 187 | ------------------- |
| 188 | 2001-2007: Improvements to LZMA compressing/decompressing code, |
Wolfgang Denk | f12e454 | 2008-09-13 02:23:05 +0200 | [diff] [blame^] | 189 | keeping compatibility with original LZMA format |
Luigi 'Comio' Mantellini | fc9c172 | 2008-09-08 02:46:13 +0200 | [diff] [blame] | 190 | 1996-2001: Development of LZMA compression format |
| 191 | |
| 192 | Some milestones: |
| 193 | |
| 194 | 2001-08-30: LZMA compression was added to 7-Zip |
| 195 | 1999-01-02: First version of 7-Zip was released |
| 196 | |
| 197 | |
| 198 | End of document |