Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Unreleased

1.3.0 - 2017-12-29

Added

  • &TextDelta.lines/1 and &TextDelta.lines!/1
  • &TextDelta.diff/2 and &TextDelta.diff!/2

1.2.0 - 2017-05-29

Added

  • &TextDelta.apply/2 and &TextDelta.apply!/2

Changed

  • Moved repository under deltadoc organisation.
  • Text state is now represented with TextDelta.state type rather than TextDelta.document throughout the codebase. TextDelta.document is still there in form of an alias for TextDelta.state.

1.1.0 - 2017-05-02

Added

  • Property-based tests for composition, transformation and compaction

Fixed

  • Insert duplication bug during delta compaction
  • Delete/Delete misbehaviour bug during composition

Changed

  • TextDelta.Delta is now just TextDelta
  • TextDelta.Delta.* modules moved into TextDelta.*
  • TextDelta now generates and operates on %TextDelta{} struct
  • TextDelta.Delta is still there and works like before in form of a BC layer, so your existing code would still work while you upgrade. To be removed in 2.x
  • Slightly improved documentation across modules

1.0.2 - 2017-03-29

Fixed

  • Bug when composition of delete with larger retain resulted in broken delta

Removed

  • Config

1.0.1 - 2017-03-23

Added

  • Test cases for string-keyed maps as attributes
  • More context and information to Readme
  • Changelog

Changed

1.0.0 - 2017-03-18

Added

  • Delta construction and manipulation logic
  • Attributes support in insert and retain
  • Delta composition and transformation with attributes supported