Skip to content

Commit

Permalink
add CHANGELOG.md
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 548971474
  • Loading branch information
eustas authored and copybara-github committed Jul 18, 2023
1 parent c3dc7d0 commit 4b827e4
Showing 1 changed file with 256 additions and 0 deletions.
256 changes: 256 additions & 0 deletions CHANGELOG.md
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.

0 comments on commit 4b827e4

Please sign in to comment.