All Versions
10
Latest Version
Avg Release Cycle
89 days
Latest Release
486 days ago

Changelog History

  • v1.0.7

    October 23, 2018
    • 👍 cross compilation support:
      • added ability to run cross-compiled ARM tests in qemu
      • added arm-linux-gnueabihf-gcc entry to Travis build matrix
    • faster decoding on ARM:
      • implemented prefetching HuffmanCode entry as uint32_t if target platform is ARM
      • fixed NEON extension detection
      • combed Huffman table building code for better readability
    • 👌 improved precision of window size calculation in CLI
    • 🛠 minor fixes:
      • fixed typos
      • improved internal comments / parameter names
      • fixed BROTLI_PREDICT_TRUE/_FALSE detection for SunPro compiler
      • unburdened JNI (Bazel) builds from fetching the full JDK
  • v1.0.6

    September 19, 2018

    No API / ABI changes.

    🛠 Fixes

    • 🛠 fix unaligned 64-bit accesses on AArch32
    • ➕ add missing files to the sources list
    • ➕ add ASAN/MSAN unaligned read specializations
    • 🛠 fix CoverityScan "unused assignment" warning
    • 🛠 fix JDK 8<->9 incompatibility
    • 🏗 unbreak Travis builds
    • 🛠 fix auto detect of bundled mode in cmake
  • v1.0.5

    June 27, 2018

    No API / ABI changes.

    Other changes:

    • 👌 improve q=1 compression on small files
    • inverse Bazel workspace tree
    • ➕ add rolling-composite-hasher for large-window mode
    • ➕ add tools to download and transform static dictionary data
  • v1.0.4

    April 10, 2018
    • 🛠 fix unaligned access for aarch64-cross-armhf build
    • 🛠 fix aarch64 target detection
    • 👍 allow CLI to compress with enabled "large window" feature
    • ➕ add NPOSTFIX / NDIRECT encoder parameters
    • 👍 automatic NDIRECT/NPOSTFIX tuning (better compression)
    • 🛠 fix "memory leak" in python tests
    • 🛠 fix bug in durchschlag
    • 🛠 fix source file lists (add params.h)
    • 🛠 fix Bazel/MSVC compilator options
    • 🛠 fix "fall though" warnings
  • v1.0.3

    March 02, 2018

    Key changes:

    • 🆕 new feature: "Large Window Brotli"
    • 🆕 new dictionary generator

    Other changes:

    • 👌 improved compression ratio: sub-blocks stitching
    • 👌 improved compression ratio: eliminated floating numbers rounding
    • 👌 improved compression ratio: make the zopflification aware of NDIRECT, NPOSTFIX
    • 👌 improve automake build
    • 👌 improve BrotliEncoderMaxCompressedSize precision
    • 🛠 fix API documentation / typos
    • 🛠 fix code style
    • 👉 make hashers host-endianness-independent
    • Java: added "eager" decoding both to JNI wrapper and pure decoder
    • CLI: window size is auto-adjusted
    • ➕ added dictionaryless compressed dictionary
  • v1.0.2

    November 29, 2017

    🚀 This is a build-maintenance release. Major changes:

    • ➕ added Autotools build files
    • switched shared library version to libtool scheme

    🚀 In this release semantic suffix and libtool suffix are the same: 1.0.2. Don't expect them to match in future releases.

    Minor changes:

    • BrotliDictionary members are not const now
    • ZopfliNode distance could be up to 128MiB
    • 🛠 fixed API documentation typos
    • total_out is always set by decoder
    • fixed BROTLI_ENSURE_CAPACITY macro; no-op in preprocessed output

    Other changes:

    • 🛠 fixed scripts for oss-fuzz, test them with Travis
    • ✅ made Bazel JNI tests less messy
    • 🛠 fixed linter warnings in JS decoder
    • 🛠 fixed permissions of various files
    • ➕ added Bazel build to Appveyor matrix
    • ➕ added Sieve dictionary generator
  • v1.0.1

    September 22, 2017

    🚀 This is a source-only release. Binaries (except version) are the same

    • ⚡️ updated README.md
    • 🛠 fixed parallel exeuction of CMake "compatibility" tests
  • v1.0.0

    September 21, 2017

    API changes

    • 🆕 new CLI; bro -> brotli; + man page
    • ✂ remove "custom dictionary" support
    • ➕ add ability to side-load brotli RFC dictionary
    • ➕ add decoder API to avoid ringbuffer reallocation
    • 👍 PY streaming decompression support
    • PY wrapper accepts memview

    🆕 New features

    • C# decoder (transpiled from Java)
    • JS decoder (transpiled from Java)
    • JNI wrappers

    👌 Improvements

    • speedup Java decoder
    • speedup compression of RLE-ish data
  • v0.6.0

    April 10, 2017
    • 👍 better compression on 1MiB+ files
    • ⚡️ update "common" API to make dictionary fetching more flexible
    • 🛠 fix decoder bug #502
    • faster compression on mid-low quality levels
    • ⚡️ update Python wrapper #479, etc.
    • 🛠 fix encoder q10-11 slowdown after long copy #468
    • introduce Brotli*TakeOutput API

    🗄 C API is expected to be final. The only difference in v1.0.0 will be the removal of methods (and constants) marked as deprecated.

  • v0.5.2

    August 11, 2016
    • Extracted common parts: constants, dictionary, etc.
    • Converted encoder to plain C
    • 👌 Supported build systems: Bazel, CMake, Premake