From 4b827e4ce47bea2e2d6ca7ebeae64d1d5c9a2f0d Mon Sep 17 00:00:00 2001 From: Evgenii Kliuchnikov Date: Tue, 18 Jul 2023 05:23:35 -0700 Subject: [PATCH] add CHANGELOG.md PiperOrigin-RevId: 548971474 --- CHANGELOG.md | 256 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 256 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..b53e7adee --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,256 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## Unreleased + +### Added + - decoder: `BrotliDecoderAttachDictionary` + - decoder: `BrotliDecoderOnFinish` callback behind `BROTLI_REPORTING` + - decoder: `BrotliDecoderSetMetadataCallbacks` + - encoder: `BrotliEncoderPrepareDictionary`, + `BrotliEncoderDestroyPreparedDictionary`, + `BrotliEncoderAttachPreparedDictionary` + - decoder: `BrotliEncoderOnFinish` callback behind `BROTLI_REPORTING` + - common: `BrotliSharedDictionaryCreateInstance`, + `BrotliSharedDictionaryDestroyInstance`, + `BrotliSharedDictionaryAttach` + - CLI: `--dictionary` option + - 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_PORTABLE` option + +### 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 + + +## [1.0.9] - 2020-08-27 + +Re-release of 1.0.8. + + +## [1.0.8] - 2020-08-27 + +### SECURITY + - CVE-2020-8927: potential overflow when input chunk is >2GiB + +### Added + - encoder: `BROTLI_PARAM_STREAM_OFFSET` + +### Improved + - CLI: better reporting + - CLI: workaround for "lying feof" + - java: faster decoding + - java: support "large window" + - encoder: use less memory + - release: filter sources for the tarball + + +## [1.0.7] - 2018-10-23 + +### Improved + - decoder: faster decoding on ARM CPU + + +## [1.0.6] - 2018-09-13 + +### Fixed + - build: AutoMake and CMake build + - java: JDK 8<->9 incompatibility + + +## [1.0.5] - 2018-06-27 + +### Added + - scripts: extraction of static dictionary from RFC + +### Improved + - encoder: better compression at quality 1 + - encoder: better compression with "large window" + + +## [1.0.4] - 2018-03-29 + +### Added + - encoder: `BROTLI_PARAM_NPOSTFIX`, `BROTLI_PARAM_NDIRECT` + - CLI: `--large_window` option + +### Improved + - encoder: better compression + + +## [1.0.3] - 2018-03-02 + +### Added + - decoder: `BROTLI_DECODER_PARAM_LARGE_WINDOW` enum + - encoder: `BROTLI_PARAM_LARGE_WINDOW` enum + - java: `BrotliInputStream.setEager` + +### Fixed + - build: AutoMake build in some environments + - encoder: fix one-shot q=10 1-byte input compression + +### Improved + - encoder: better font compression + + +## [1.0.2] - 2017-11-28 + +### Added + - build: AutoMake + - research: better dictionary generators + + +## [1.0.1] - 2017-09-22 + +### Changed + - clarifications in `README.md` + + +## [1.0.0] - 2017-09-20 + +### Added + - decoder: `BrotliDecoderSetParameter` + - csharp: decoder (transpiled from Java) + - java: JNI wrappers + - javascript: decoder (transpiled from Java) + - python: streaming decompression + - research: dictionary generator + +### Changed + - CLI: rename `bro` to `brotli` + +### Removed + - decoder: `BrotliDecoderSetCustomDictionary` + - encoder: `BrotliEncoderSetCustomDictionary` + +### Improved + - java: faster decoding + - encoder: faster compression + + +## [0.6.0] - 2017-04-10 + +### Added + - CLI: `--no-copy-stat option + - java: pure java decoder + - build: fuzzers + - research: `brotlidump` tool to explore brotli streams + - go: wrapper + +### Removed + - decoder: API with plain `Brotli` prefix + +### Deprecated + - encoder: `BrotliEncoderInputBlockSize`, `BrotliEncoderCopyInputToRingBuffer`, + `BrotliEncoderWriteData` + +### Improved + - encoder: faster compression + - encoder: denser compression + - decoder: faster decompression + - python: release GIL + - python: use zero-copy API + + +## [0.5.2] - 2016-08-11 + +### Added + - common: `BROTLI_BOOL`, `BROTLI_TRUE`, `BROTLI_FALSE` + - decoder: API with `BrotliDecoder` prefix instead of plain `Brotli` + - build: Bazel, CMake + +### Deprecated + - decoder: API with plain `Brotli` prefix + +### Changed + - boolean argument / result types are re-branded as `BROTLI_BOOL` + +### Improved + - build: reduced amount of warnings in various build environments + - encoder: faster compression + - encoder: lower memory usage + + +## [0.5.0] - 2016-06-15 + +### Added + - common: library has been assembled from shared parts of decoder and encoder + - encoder: C API + +### Removed + - encoder: C++ API + + +## [0.4.0] - 2016-06-14 + +### Added + - encoder: faster compression modes (quality 0 and 1) + - decoder: `BrotliGetErrorCode`, `BrotliErrorString` and + `BROTLI_ERROR_CODES_LIST` + +### Removed + - decoder: deprecated streaming API (using `BrotliInput`) + +### Fixed + - decoder: possible pointer underflow + +### Improved + - encoder: faster compression + + +## [0.3.0] - 2015-12-22 + +### LICENSE +License have been upgraded to more permissive MIT. + +### Added + - CLI: `--window` option + - `tools/version.h` file + - decoder: low level streaming API + - decoder: custom memory manager API + +### Deprecated + - decoder: streaming API using `BrotliInput` struct + +### Fixed + - decoder: processing of uncompressed blocks + - encoder: possible division by zero + +### Improved + - encoder: faster decompression + - build: more portable builds for various CPU architectures + + +## [0.2.0] - 2015-09-01 + +### Added + - CLI: `--verbose` and `--repeat` options + +### Fixed + - decoder: processing of uncompressed blocks + - encoder: block stitching on quality 10 / 11 + +### Improved + - build: CI/CD integration + - build: better test coverage + - encoder: better compression of UTF-8 content + - encoder: faster decompression + + +## [0.1.0] - 2015-08-11 + +Initial release.