Delphi Inspiration

Components and Applications

User Tools

Site Tools


products:brotli:history

YuBrotli: Version History

YuBrotli brings the new Brotli compression algorithm to Delphi (Embarcadero, CodeGear, Borland). TStream, buffer & string wrappers. No-DLL implementation. Freeware.

YuBrotli 2.2.0 – 17 Nov 2020

  • Based on Brotli v0.9.0 release.
  • Brotli version 1.0.9 contains a fix to “integer overflow” problem. This happens when “one-shot” decoding API is used (or input chunk for streaming API is not limited), input size (chunk size) is larger than 2GiB, and input contains uncompressed blocks. After the overflow happens, memcpy is invoked with a gigantic num value which is likely to cause a crash.
  • Raise an exception if decoder wrapper functions run out of input. Previously, this data error was silently ignored.
  • Many improvements and bug fixes.

YuBrotli 2.1.0 – 5 Jun 2020

  • Support Delphi 10.4 Sydney Win32 and Win64.

YuBrotli 2.0.0 – 10 Jan 2020

  • Based on Brotli v0.7.0 release.
  • Drop “custom dictionary” support. This removes the functions BrotliEncoderSetCustomDictionary and BrotliDecoderSetCustomDictionary.
  • New feature: “Large Window Brotli”.“Large Window Brotli”. By setting special encoder / decoder flags it is possible to extend the LZ-window up to 30 bits. Caution: The produced stream will not be RFC7932 compliant.
  • Add BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION to avoid ringbuffer reallocation.
  • Add BROTLI_PARAM_NPOSTFIX and BROTLI_PARAM_NDIRECT encoder parameters.
  • Improved compression ratio: Two sub-blocks can be stitched so that the last copy command can extend to span the next sub-block.
  • Decoder: better behavior after failure.
  • Fixed compression ineffectiveness caused by floating numbers rounding and wrong cost heuristic.
  • Fix 1-byte input compression. Improve compression on small files. Optimize encoder for empty input.

YuBrotli 1.3.0 – 24 Dec 2018

  • Support Delphi 10.3 Rio Win32 and Win64.
  • Improve decoding error detection.
  • New decoder error code BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET.
  • Remove deprecated constants kBrotliMinWindowBits and kBrotliMaxWindowBits.
  • Remove deprecated functions BrotliEncoderInputBlockSize(), BrotliEncoderCopyInputToRingBuffer(), and BrotliEncoderWriteData().

YuBrotli 1.2.1 – 19 Apr 2017

  • Based on Brotli v0.6.0 release.
  • Better compression: use more complex content modeling on 1MiB+ files.
  • Update decoder.

YuBrotli 1.2.0 – 3 Apr 2017

  • Support Delphi 10.2 Tokyo Win32 and Win64.
  • Update decoder and encoder.

YuBrotli 1.1.0 – 21 Feb 2017

  • Fix zero distance decoder bug.
  • Add BROTLI_PARAM_SIZE_HINT encoder option.
  • Update encoder.

YuBrotli 1.0.0 – 3 Feb 2017

  • Initial release.
products/brotli/history.txt · Last modified: 2020/11/17 21:21 (external edit)