GPL-2.0-or-later licensed by Oleg Grenrus
Maintained by Oleg.Grenrus
This version can be pinned in stack with:tree-diff-0.3.3@sha256:7296211ea1ba831d1453c9b6079a6e9f39182ac140748d7f499492f0b149a8d2,4435

tree-diff

Diffing of (expression) trees.

Examples

tree-diff displays pretty diffs of tree data:

Because of its untyped internal type, it copes with type changes:

As a bonus, multiline Strings and Text are diffed linewise:

Changes

0.3.3

  • Change ‘ediffGolden’ so that parse errors in expected file don’t cause the hard failure. This way you may --accept new results even when expected files are broken, e.g. due merge conflict markers. For now the change is a bit a hack to avoid breaking change in type-signature of ediffGolden/1.

0.3.2

  • Add ‘ediffGolden1’, a variant of ‘ediffGolden’ with an additional argument.

0.3.1

  • Support GHC-8.6.5…9.10.1

0.3

  • Breaking change: Make HashSet and HashMap ToExpr instances sort the resulting lists of expressions. This makes the results deterministic. … but your golden files will need adjustment. https://github.com/haskellari/tree-diff/issues/67

  • Add Ord Expr and Ord OMap instances

  • Depend on data-array-byte to provide more ByteArray instances

0.2.2

  • Add instances for base and primitive’s ByteArrays.

0.2.1.1

  • Support base-4.16 (GHC-9.2)

0.2.1

  • Support aeson-2.0.0.0

0.2

  • Change the pretty printing to use less horizontal space. Pretty datastructure is changed.
  • Change Expr to use OMap; pretty-printing preserves field order.
  • Add strict and these instances
  • Add Eq and NFData (Edit a) instances.
  • Bump lower bounds

0.1

  • Support GHC-7.4 … 8.8 (use allow-newer for GHC-8.8-alpha).
  • Use raw GHC.Generics (drop generics-sop dependency)
  • Use own memoising (Vector lookup, drop MemoTrie dependency)
  • Singleton data-types (both data and newtypes) are printed in App form (i.e. no-record).
  • Change license to GPL-2.0-or-later

0.0.2.1

  • Support semigroups-0.19, hashable-1.3 and generics-sop-0.5

0.0.2

  • Print compact diffs
  • Add ToExpr instance for ShortByteString

0.0.1

  • Use BS.readFile and BS.writeFile in ediffGolden. This makes files read and written in UTF8 independently of locale. Fixes builds on appveyor.

0.0.0.1

  • Move to build-type: Simple

0

  • First version. Released on an unsuspecting world.