forked from google/brotli
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
1 changed file
with
256 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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. |