Recent Releases of brotli
brotli - v1.1.0
Added
- decoder:
BrotliDecoderAttachDictionary - decoder:
BrotliDecoderOnFinishcallback behindBROTLI_REPORTING - decoder:
BrotliDecoderSetMetadataCallbacks - encoder:
BrotliEncoderPrepareDictionary,BrotliEncoderDestroyPreparedDictionary,BrotliEncoderAttachPreparedDictionary - decoder:
BrotliEncoderOnFinishcallback behindBROTLI_REPORTING - common:
BrotliSharedDictionaryCreateInstance,BrotliSharedDictionaryDestroyInstance,BrotliSharedDictionaryAttach - CLI:
--dictionaryoption - java: encoder wrapper:
Parameters.mode - java:
Brotli{Input|Output}Stream.attachDictionary - java: wrapper: partial byte array input
- typescript: decoder (transpiled from Java)
Removed
- build:
BROTLI_BUILD_PORTABLEoption
Fixed
- java: JNI decoder failed sometimes on power of 2 payloads
Improved
- java / js: smaller decoder footprint
- decoder: faster decoding
- encoder: faster encoding
- encoder: smaller stack frames
- TypeScript
Published by eustas almost 3 years ago
brotli - v1.1.0rc
Added
- decoder:
BrotliDecoderAttachDictionary - decoder:
BrotliDecoderOnFinishcallback behindBROTLI_REPORTING - decoder:
BrotliDecoderSetMetadataCallbacks - encoder:
BrotliEncoderPrepareDictionary,BrotliEncoderDestroyPreparedDictionary,BrotliEncoderAttachPreparedDictionary - decoder:
BrotliEncoderOnFinishcallback behindBROTLI_REPORTING - common:
BrotliSharedDictionaryCreateInstance,BrotliSharedDictionaryDestroyInstance,BrotliSharedDictionaryAttach - CLI:
--dictionaryoption - java: encoder wrapper:
Parameters.mode - java:
Brotli{Input|Output}Stream.attachDictionary - java: wrapper: partial byte array input
- typescript: decoder (transpiled from Java)
Removed
- build:
BROTLI_BUILD_PORTABLEoption
Fixed
- java: JNI decoder failed sometimes on power of 2 payloads
Improved
- java / js: smaller decoder footprint
- decoder: faster decoding
- encoder: faster encoding
- encoder: smaller stack frames
- TypeScript
Published by eustas almost 3 years ago
brotli - v1.0.9
SECURITY: decoder: fix integer overflow when input chunk is larger than 2GiB (CVE-2020-8927)
Other changes:
- add support WASM (emscripten) build
- brotli -v now reports raw / compressed size
- build files / docs maintenance
- reduce sources tarball size
- decoder: minor speed / memory usage improvements
- encoder: fix rare access to uninitialized data in ring-buffer
- encoder: improve support for platforms that does not have log2
- encoder: better support for MSVC (replacement for _builtinclz and _builtinctzll
- python: decompress now reports error if there is unused after the end of compressed input
- TypeScript
Published by eustas almost 6 years ago
brotli - v1.0.8
SECURITY: decoder: fix integer overflow when input chunk is larger than 2GiB (CVE-2020-8927)
Other changes:
- add support WASM (emscripten) build
- brotli -v now reports raw / compressed size
- build files / docs maintenance
- reduce sources tarball size
- decoder: minor speed / memory usage improvements
- encoder: fix rare access to uninitialized data in ring-buffer
- encoder: improve support for platforms that does not have log2
- encoder: better support for MSVC (replacement for _builtinclz and _builtinctzll
- python: decompress now reports error if there is unused after the end of compressed input
- TypeScript
Published by eustas almost 6 years ago
brotli - v1.0.7
- cross compilation support:
- added ability to run cross-compiled ARM tests in
qemu - added
arm-linux-gnueabihf-gccentry to Travis build matrix
- added ability to run cross-compiled ARM tests in
- faster decoding on ARM:
- implemented prefetching
HuffmanCodeentry asuint32_tif target platform is ARM - fixed
NEONextension detection - combed Huffman table building code for better readability
- implemented prefetching
- improved precision of window size calculation in CLI
- minor fixes:
- fixed typos
- improved internal comments / parameter names
- fixed
BROTLI_PREDICT_TRUE/_FALSEdetection for SunPro compiler - unburdened JNI (Bazel) builds from fetching the full JDK
- TypeScript
Published by eustas over 7 years ago
brotli - v1.0.6
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
- TypeScript
Published by eustas almost 8 years ago
brotli - Brotli v1.0.4
- fix unaligned access for
aarch64-cross-armhfbuild - fix
aarch64target detection - allow CLI to compress with enabled "large window" feature
- add
NPOSTFIX/NDIRECTencoder 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
- TypeScript
Published by eustas about 8 years ago
brotli - Brotli v1.0.3
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
- TypeScript
Published by eustas over 8 years ago
brotli - Brotli v1.0.2
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
- TypeScript
Published by eustas over 8 years ago
brotli - Brotli v1.0.1
This is a source-only release. Binaries (except version) are the same
* updated README.md
* fixed parallel exeuction of CMake "compatibility" tests
- TypeScript
Published by eustas almost 9 years ago
brotli - Brotli v1.0.0
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
- TypeScript
Published by eustas almost 9 years ago
brotli - Brotli v0.6.0
- 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*TakeOutputAPI
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.
- TypeScript
Published by eustas about 9 years ago
brotli - Brotli 0.5.2
- Extracted common parts: constants, dictionary, etc.
- Converted encoder to plain C
- Supported build systems: Bazel, CMake, Premake
- TypeScript
Published by eustas almost 10 years ago
brotli - Brotli 0.4.0
- fixed decoder bugs
- made low quality compression faster; added quality level 0
- made decoding faster
- reduced encode and decoder memory usage
- updated API documentation and made API simpler
- improved compiler and platform compatibility
- fixed compilation warnings
- TypeScript
Published by eustas about 10 years ago