XZ for Java release notes
=========================

1.8 (2018-01-04)

    * Fix a binary compatibility regression: XZ for Java 1.7 binaries
      in the Maven Central require Java 9 which is too new. XZ for
      Java 1.8 binaries require Java 5. (XZ for Java 1.6 and older
      binaries require Java 1.4.)

      If you are using OpenJDK 9 or later, you will need to edit the
      "sourcever = 1.5" line in the file "build.properties" before
      running "ant". Set it to 1.6 or higher. The default value 1.5
      isn't supported by OpenJDK 9 or later.

    * Add "Automatic-Module-Name" = "org.tukaani.xz".

1.7 (2017-12-29)

    * Fix LZMA2InputStream.available() which could return a too high
      value in case of uncompressed LZMA2 chunks. This incorrect
      value was visible via other available() methods too, for example,
      XZInputStream.available().

    * Add the ArrayCache API. It's a pool-like API to reuse large byte
      and int arrays between compressor and decompressor instances.
      If you are (de)compressing many tiny files in a row, taking
      advantage of this API can improve performance significantly.

1.6 (2016-11-27)

    * Fix LZMA2Options.getInputStream to work with a preset dictionary.

    * Make it possible to disable verification of integrity checks in
      XZ decompression. It should almost never be used but may be useful
      in some rare situations. This feature is available via new
      constructors in XZInputStream, SingleXZInputStream, and
      SeekableXZInputStream.

    * Add LZMAOutputStream for encoding to raw LZMA (i.e. LZMA1) streams
      and to the legacy .lzma format.

1.5 (2014-03-08)

    * Fix a wrong assertion in BCJ decoders.

    * Use a field instead of reallocating a temporary one-byte buffer
      in read() and write() implementations in several classes.

1.4 (2013-09-22)

    * Add LZMAInputStream for decoding .lzma files and raw LZMA streams.

1.3 (2013-05-12)

    * Fix a data corruption bug when flushing the LZMA2 encoder or
      when using a preset dictionary.

    * Make information about the XZ Block positions and sizes available
      in SeekableXZInputStream by adding the following public functions:
        - int getStreamCount()
        - int getBlockCount()
        - long getBlockPos(int blockNumber)
        - long getBlockSize(int blockNumber)
        - long getBlockCompPos(int blockNumber)
        - long getBlockCompSize(int blockNumber)
        - int getBlockCheckType(int blockNumber)
        - int getBlockNumber(long pos)
        - void seekToBlock(int blockNumber)

    * Minor improvements to javadoc comments were made.

1.2 (2013-01-29)

    * Use fields instead of reallocating frequently-needed temporary
      objects in the LZMA encoder.

    * Fix the contents of xz-${version}-sources.jar.

    * Add OSGi attributes to xz.jar.

1.1 (2012-07-05)

    * The depthLimit argument in the LZMA2Options constructor is
      no longer ignored.

    * LZMA2Options() can no longer throw UnsupportedOptionsException.

    * Fix bugs in the preset dictionary support in the LZMA2 encoder.

1.0 (2011-10-22)

    * The first stable release