Blame NEWS

Packit Service 5195f2
============================================================================
Packit Service 5195f2
User visible changes for LZO -- a real-time data compression library
Packit Service 5195f2
============================================================================
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.08 (29 Jun 2014)
Packit Service 5195f2
  * Updated the Autoconf scripts to fix some reported build problems.
Packit Service 5195f2
  * Added CMake build support.
Packit Service 5195f2
  * Fixed lzo_init() on big-endian architectures like Sparc.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.07 (25 Jun 2014)
Packit Service 5195f2
  * Fixed a potential integer overflow condition in the "safe" decompressor
Packit Service 5195f2
    variants which could result in a possible buffer overrun when
Packit Service 5195f2
    processing maliciously crafted compressed input data.
Packit Service 5195f2
Packit Service 5195f2
    Fortunately this issue only affects 32-bit systems and also can only happen
Packit Service 5195f2
    if you use uncommonly huge buffer sizes where you have to decompress more
Packit Service 5195f2
    than 16 MiB (> 2^24 bytes) untrusted compressed bytes within a single
Packit Service 5195f2
    function call, so the practical implications are limited.
Packit Service 5195f2
Packit Service 5195f2
    POTENTIAL SECURITY ISSUE. CVE-2014-4607.
Packit Service 5195f2
Packit Service 5195f2
  * Removed support for ancient configurations like 16-bit "huge" pointers -
Packit Service 5195f2
    LZO now requires a flat 32-bit or 64-bit memory model.
Packit Service 5195f2
  * Assorted cleanups.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.06 (12 Aug 2011)
Packit Service 5195f2
  * Some minor optimizations for big-endian architectures.
Packit Service 5195f2
  * Fixed overly strict malloc() misalignment check in examples.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.05 (23 Apr 2011)
Packit Service 5195f2
  * Converted the configure system to non-recursive Automake.
Packit Service 5195f2
  * Applied some overdue speed optimizations for modern x86/x64 architectures
Packit Service 5195f2
    and current compilers like gcc 4.6 and MSVC 2010.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.04 (31 Oct 2010)
Packit Service 5195f2
  * Fixed a gcc-4.5 aliasing issue in lzo_init().
Packit Service 5195f2
  * Updated the configure system.
Packit Service 5195f2
  * Assorted cleanups.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.03 (30 Apr 2008)
Packit Service 5195f2
  * Updated the ELF assembler sources to mark the stack as non-executable.
Packit Service 5195f2
  * Fixed a HP-UX 11 build issue with Itanium in ILP32 mode.
Packit Service 5195f2
  * Updated the configure system.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.02 (17 Oct 2005)
Packit Service 5195f2
  * Updated the build and Autoconf scripts to fix some reported
Packit Service 5195f2
    compilation problems.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.01 (27 Jun 2005)
Packit Service 5195f2
  * Changed the configure system to install the LZO library under the
Packit Service 5195f2
    name "liblzo2" so that parallel installation with LZO v1 is possible.
Packit Service 5195f2
  * Improved auto-configuration in miniLZO for some embedded targets like
Packit Service 5195f2
    Blackfin and H8/300 processors.
Packit Service 5195f2
Packit Service 5195f2
Changes in 2.00 (30 May 2005)
Packit Service 5195f2
Packit Service 5195f2
  [Library interface changes]
Packit Service 5195f2
  * The 'lzo_uint' typedef has been changed to match 'size_t', which means
Packit Service 5195f2
    it now is 64 bits on most 64-bit architectures. 32-bit machines
Packit Service 5195f2
    are not affected by this change.
Packit Service 5195f2
  * The formula for maximum expansion of incompressible data has changed.
Packit Service 5195f2
    See doc/LZO.FAQ. This is needed for some upcoming speed improvements,
Packit Service 5195f2
    and also for compatibility with our commercial LZO Professional product.
Packit Service 5195f2
  * The progress indicator callback interface has been revamped.
Packit Service 5195f2
  * All public header files now get installed into a "lzo" subdirectory, so
Packit Service 5195f2
    your applications should use #include <lzo/lzoXXX.h>.
Packit Service 5195f2
  * A number of (internal) macros have been renamed. See LZO_CFG_COMPAT
Packit Service 5195f2
    in <lzo/lzoconf.h> if your code depends on these.
Packit Service 5195f2
Packit Service 5195f2
  [Speed]
Packit Service 5195f2
  * Small overall speedup by exploiting features like branch prediction
Packit Service 5195f2
    hints and explicit inline control present in modern C/C++ compilers.
Packit Service 5195f2
  * Significant speedup for 64-bit architectures like AMD64.
Packit Service 5195f2
Packit Service 5195f2
  [Portability]
Packit Service 5195f2
  * LZO now fully supports the LLP64 programming model.
Packit Service 5195f2
  * LZO now fully supports the ILP64 and SILP64 programming models which
Packit Service 5195f2
    are used on some supercomputing architectures.
Packit Service 5195f2
  * Full Win64 support for AMD64 (aka x64) and IA64 (Itanium).
Packit Service 5195f2
  * Full 16-bit support for ancient DOS 286 protected mode, OS/2 1.x
Packit Service 5195f2
    and Windows 3.x.
Packit Service 5195f2
  * The LZO library now compiles and works on completely freestanding or
Packit Service 5195f2
    embedded systems as long as you have <limits.h> and <stddef.h> header
Packit Service 5195f2
    files. See the B/generic/build_freestanding.sh build script.
Packit Service 5195f2
Packit Service 5195f2
  [Misc]
Packit Service 5195f2
  * The i386 assembler versions of the decompressors are now automatically
Packit Service 5195f2
    built and installed. See also asm/i386/00README.TXT.
Packit Service 5195f2
  * Added include file <lzo/lzo_asm.h> that provides prototypes for all
Packit Service 5195f2
    assembler functions.
Packit Service 5195f2
  * Under MacOS X, the configure script now will use the '-no-cpp-precomp'
Packit Service 5195f2
    compiler option in order to work around bugs in some versions of
Packit Service 5195f2
    Apple's native "smart" preprocessor.
Packit Service 5195f2
  * Worked around a preprocessor bug that is present in all compilers which
Packit Service 5195f2
    are based on the lcc compiler kit.
Packit Service 5195f2
  * Added simple B/generic/build.sh build script family.
Packit Service 5195f2
  * Added lots of new build scripts for various DOS/Windows compilers.
Packit Service 5195f2
Packit Service 5195f2
  [Upgrade instructions from LZO v1 to LZO v2]
Packit Service 5195f2
  * On 64-bit architectures, revisit all uses of lzo_uint.
Packit Service 5195f2
  * Adapt for the maximum expansion change of incompressible data.
Packit Service 5195f2
  * If you use the progress callback then adapt for the new interface.
Packit Service 5195f2
  * Use #include <lzo/lzoXXX.h> or adjust your include path.
Packit Service 5195f2
  * Check your code for use of deprecated macros. Add a
Packit Service 5195f2
    #define LZO_CFG_COMPAT if necessary.
Packit Service 5195f2
  * Other than that LZO v2 should be fully source-compatible with LZO v1.
Packit Service 5195f2
    Of course, the compressed data is fully compatible as well.
Packit Service 5195f2
  * Re-compile and re-link your application.
Packit Service 5195f2
  * Enjoy the improvements!
Packit Service 5195f2
Packit Service 5195f2
----------------------------------------------------------------------------
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.08 (12 Jul 2002)
Packit Service 5195f2
  * Much better support for cross compiling.
Packit Service 5195f2
  * Straighten out ANSI-conforming compiler checks.
Packit Service 5195f2
  * Avoid harmless compiler warnings reported by -Wcast-align.
Packit Service 5195f2
  * Fixed some sign extension problems on rather exotic machines where
Packit Service 5195f2
    sizeof(size_t) < sizeof(ptrdiff_t) and sizeof(lzo_uint) == sizeof(size_t)
Packit Service 5195f2
  * Updated the configure system to use the latest Autoconf, Automake
Packit Service 5195f2
    and Libtool versions.
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.07 (18 Oct 2000)
Packit Service 5195f2
  * Default to '--disable-shared' (I'm getting tired of Libtool's
Packit Service 5195f2
    shared library build problems, this time AIX was the culprit).
Packit Service 5195f2
  * Avoid some harmless compiler warnings.
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.06 (29 Nov 1999)
Packit Service 5195f2
  * Updated the configure system to use Autoconf 2.13, Automake 1.4 and
Packit Service 5195f2
    Libtool 1.3.3. This should hopefully fix the shared-library build
Packit Service 5195f2
    problems that were reported on some machines.
Packit Service 5195f2
  * Enhanced example programs a little bit.
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.05 (14 Apr 1998)
Packit Service 5195f2
  * Just a one-line change in the configure script to workaround
Packit Service 5195f2
    a HPUX and IRIX build problem.
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.04 (15 Mar 1998)
Packit Service 5195f2
  * Worked around a bug in the cpp preprocessor under HPUX 10.20.
Packit Service 5195f2
  * Adapted for Automake 1.2f and Libtool 1.1.
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.03 (18 Jan 1998)
Packit Service 5195f2
  * minor compression ratio improvement
Packit Service 5195f2
  * extended example program to show how to do overlapping compression
Packit Service 5195f2
  * assembler changes, added support for the nasm assembler
Packit Service 5195f2
  * better support for cross compiling
Packit Service 5195f2
  * some cleanups
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.02 (07 Dec 1997)
Packit Service 5195f2
  * improved LZO1X-999 and LZO1Y-999 compression ratio a little bit again
Packit Service 5195f2
  * introduced compression levels for LZO1X-999 and LZO1Y-999
Packit Service 5195f2
  * added support for preset dictionaries
Packit Service 5195f2
  * implemented LZO1X-1(12): needs 16 KiB for compression
Packit Service 5195f2
  * new algorithm LZO1Z: this is another variant of LZO1X
Packit Service 5195f2
  * added example program: how to use preset dictionaries
Packit Service 5195f2
  * added example program: how to do in-place decompression
Packit Service 5195f2
  * added a little file-packer example program
Packit Service 5195f2
  * LZO now works cleanly under checkergcc
Packit Service 5195f2
  * strict 16-bit memory model is working (but not officially supported)
Packit Service 5195f2
  * shared libraries are supported on many platforms
Packit Service 5195f2
  * adapted for Automake 1.2d and Libtool 1.0h
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.01 (10 Aug 1997)
Packit Service 5195f2
  * improved LZO1X-999 and LZO1Y-999 compression ratio a little bit
Packit Service 5195f2
  * i386+gcc: significant speedup of the C version of the LZO1, LZO1A,
Packit Service 5195f2
    LZO1B and LZO1C decompressors
Packit Service 5195f2
  * added example programs that show how to generate pre-compressed data
Packit Service 5195f2
  * added Makefiles for DOS, Windows and OS/2 targets
Packit Service 5195f2
Packit Service 5195f2
Changes in 1.00 (13 Jul 1997)
Packit Service 5195f2
  * added miniLZO - can be easily included in your project
Packit Service 5195f2
  * improved documentation, added LZO.FAQ
Packit Service 5195f2
  * added build scripts for many systems where Autoconf is not available:
Packit Service 5195f2
    Windows 3.1 (LIB+DLL), Windows 95/NT (LIB+DLL), DOS (16+32 bit), OS/2
Packit Service 5195f2
  * adapted for Automake 1.2 and Libtool 1.0
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.90 (27 Jun 1997): never released
Packit Service 5195f2
  * LZO now uses GNU Automake 1.0 - lots of configuration changes
Packit Service 5195f2
  * added LZO1X-1(11): this version needs only 8 KiB for compression
Packit Service 5195f2
  * implemented LZO1Y-1
Packit Service 5195f2
  * added i386 assembler decompressors for MASM/TASM/WASM
Packit Service 5195f2
  * the name of some assembler functions changed
Packit Service 5195f2
  * the numeric value of some error codes changed
Packit Service 5195f2
  * portability fixes
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.29 (04 May 1997)
Packit Service 5195f2
  * Linux ELF shared library support
Packit Service 5195f2
  * workaround for gcc 2.7.2 optimizer bug under AIX
Packit Service 5195f2
  * added lzo_crc32() checksum
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.28 (22 Feb 1997)
Packit Service 5195f2
  * new algorithm LZO1Y: LZO1Y-999 and LZO1Y decompressor
Packit Service 5195f2
  * added lzo1x_optimize() and lzo1y_optimize()
Packit Service 5195f2
  * minor speedup in assembler decompressors (i386+gcc)
Packit Service 5195f2
  * ltest.c rewritten
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.27 (19 Jan 1997)
Packit Service 5195f2
  * fixed a bug in LZO1B-999 and LZO1C-999 that could produce
Packit Service 5195f2
    invalid compressed data in very rare cases
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.26 (18 Jan 1997): never released
Packit Service 5195f2
  * implemented LZO1B-999
Packit Service 5195f2
  * renamed LZO1D to LZO2A (also updated all docs)
Packit Service 5195f2
  * some cleanups
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.25 (28 Dec 1996): never released
Packit Service 5195f2
  * some portability fixes (LZO now works on my old Atari ST :-)
Packit Service 5195f2
  * adapted for Autoconf 2.12
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.24 (30 Nov 1996): never released
Packit Service 5195f2
  * improved performance of LZO1X assembler decompressor on a Pentium (i386+gcc)
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.23 (23 Nov 1996)
Packit Service 5195f2
  * added LZO1C, LZO1F and LZO1X decompressors in assembler (i386+gcc)
Packit Service 5195f2
  * added corresponding LZO_PUBLIC to all LZO_EXTERN functions
Packit Service 5195f2
  * added support for Microsoft C 7.0 (16-bit DOS)
Packit Service 5195f2
  * introduced lzo_uint32. This could prove useful for a strict 16-bit
Packit Service 5195f2
    version that doesn't use 'huge' pointers.
Packit Service 5195f2
  * all algorithms use incremental hashing now
Packit Service 5195f2
  * some cleanups and portability fixes
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.22 (19 Sep 1996)
Packit Service 5195f2
  * LZO1X: minor decompressor speedup, added some checks in safe decompressor
Packit Service 5195f2
  * Autoconf: added detection of gcc strength-reduction bug
Packit Service 5195f2
  * Makefile changes
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.21 (08 Sep 1996)
Packit Service 5195f2
  * LZO now uses GNU Autoconf 2.10 - lots of configuration changes
Packit Service 5195f2
  * a few cosmetical changes
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.20 (11 Aug 1996)
Packit Service 5195f2
  * new algorithm LZO1X: LZO1X-1, LZO1X-999 and LZO1X decompressor
Packit Service 5195f2
  * significantly speeded up LZO1B, LZO1C and LZO1F decompressors
Packit Service 5195f2
    on CPUs which allow unaligned memory access (e.g. Intel i386)
Packit Service 5195f2
  * greatly speeded up LZO2A-999 compressor at the cost of some memory
Packit Service 5195f2
  * some cleanups, portability fixes and minor speedups
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.16 (22 Jul 1996)
Packit Service 5195f2
  * speeded up LZO1F decompressor a little bit
Packit Service 5195f2
  * improved LZO1F-999 compression ratio
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.15 (10 Jul 1996)
Packit Service 5195f2
  * new algorithm LZO1F: LZO1F-1, LZO1F-999 and LZO1F decompressor
Packit Service 5195f2
  * improved LZO2A-999 compression ratio
Packit Service 5195f2
  * removed LZO1E as it is dominated by LZO1F
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.14 (06 Jul 1996): never released
Packit Service 5195f2
  * experimental algorithms: LZO1E and LZO1F
Packit Service 5195f2
  * added LZO_EXTERN to all prototypes. Useful when building a DLL.
Packit Service 5195f2
  * improved LZO1C-999 and LZO2A-999 compression ratio a little bit
Packit Service 5195f2
  * fixed progress indicator callback (it was called only once)
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.13 (20 Jun 1996)
Packit Service 5195f2
  * some speed improvements in LZO1C-999 and LZO2A-999
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.12 (18 Jun 1996): never released
Packit Service 5195f2
  * added LZO1C-999, a slow but nearly optimal compressor
Packit Service 5195f2
    intended for generating pre-compressed data
Packit Service 5195f2
  * added tests for lookbehind-overrun in all safe decompressors
Packit Service 5195f2
  * source tree completely rearranged, some filenames changed
Packit Service 5195f2
  * extensions changed: a .ch file is a C source code that is included
Packit Service 5195f2
    for reasons of code sharing
Packit Service 5195f2
  * new algorithm LZO2A: LZO2A-999 and LZO2A decompressor. There is
Packit Service 5195f2
    no fast compressor yet.
Packit Service 5195f2
  * some cleanups
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.11 (29 May 1996)
Packit Service 5195f2
  * source tree rearranged
Packit Service 5195f2
  * LZO now compiles fine as a C++ library (interface still has C linkage)
Packit Service 5195f2
  * improved overall compression ratio a little bit
Packit Service 5195f2
  * LZO1B-99/LZO1C-99 now search for longer matches
Packit Service 5195f2
  * incremental hash is working, it's a little bit faster
Packit Service 5195f2
  * Makefile changed
Packit Service 5195f2
  * added lzo_uint and lzo_sizeof in some places
Packit Service 5195f2
  * split LZO1B compressor into even more include-files
Packit Service 5195f2
Packit Service 5195f2
Changes in 0.10 (20 May 1996): first public release of the LZO library
Packit Service 5195f2
  * includes LZO1, LZO1A, LZO1B and LZO1C algorithms
Packit Service 5195f2
    (compression levels 1-9 and 99)
Packit Service 5195f2
Packit Service 5195f2
14 Mar 1996:
Packit Service 5195f2
  * public release of the LZO1A algorithm
Packit Service 5195f2
Packit Service 5195f2
04 Mar 1996:
Packit Service 5195f2
  * public release of the LZO1 algorithm