Skip to content

v0.9.0

Latest

Choose a tag to compare

@bluekeyes bluekeyes released this 18 Jul 21:59
703f876

API Breaks

  • Remove the BinaryFragment.Data field and replace it with BinaryFragment.RawData, which contains the decoded but still compressed data from the fragment. Clients should use the io.Reader returned by the new BinaryFragment.Data() method to access the uncompressed data. (#76)
  • Apply() and BinaryApplier.ApplyFragment() enforce a default maximum binary fragment size of 100 MiB. Clients may adjust or disable this limit by passing the WithMaxBinaryFragmentBytes option to their apply calls. (#77)

Improvements

  • Short source files are reported as conflicts instead of EOF errors during applies (#63)
  • Clients can limit the size of binary fragments during applies using the WithMaxBinaryFragmentBytes option (#77)
  • BinaryFragment.String() returns the same content lines as were originally parsed (assuming normalized whitespace) instead of an equivalent encoding that parsed to the same value but was not the same text (#76)

Fixes

  • Fix a panic or memory exhaustion issue when applying text fragments with very large old positions (#75)
  • Fix unbounded decompression leading to memory exhaustion when parsing binary fragments (#76)
  • Fix unbounded writes to the client-provided io.Writer when applying binary fragments (#77)