Changelog of @hackage/pandoc-types 1.17.5.1

[1.17.5.1]

  • Declare the ToMetaValue instance for String as OVERLAPPING (#46).

[1.17.5]

  • Bump upper bounds for aeson, base.
  • Allow building on older ghc versions (George Wilson).
  • Text.Pandoc.Arbitrary: generate SoftBreaks and LineBreaks (Alexander Krotov).
  • Pad table rows up to maximum row length, to guarantee that all rows have the same number of columns (see jgm/pandoc#4059, Francesco Occhipinti).
  • Make String an instance of ToMetaValue (Alexander Krotov).

[1.17.4.2]

  • Fix compiler warnings.

[1.17.4.1]

  • Import Semigroups when needed rather than using CPP.
  • Bump criterion upper bound.

[1.17.4]

  • Add Semigroup instances for Pandoc, Meta, Inlines, Blocks (if base >= 4.9). This is needed for the library to compile with ghc 8.4.
  • Bumped criterion upper bound.

[1.17.3.1]

  • Bumped upper bounds for criterion and QuickCheck.

[1.17.3]

  • Added Walkable instances for [Inline] Inline and [Block] Block.

[1.17.2]

  • Provide default implementation for walk (Albert Krewinkel). The implementations for walk and walkM are very similar, so a default method is provided which implements the former in terms of the latter. This change should not affect performance, as the Identity functor, which is used in the default definition, is a newtype that should be eliminated at compile time. (This requires a dependency on transformers for ghc 7.8.x.)
  • Force optimizations when compiling Walk module (Albert Krewinkel).
  • Add Applicative m to the context of walkM (Albert Krewinkel). The acceptance of AMP makes this a natural change.
  • Add Walkable [Block] and Walkable [Inline] instances (Albert Krewinkel).
  • Factored out duplicate code in Walk.
  • Added benchmark.
  • Text.Pandoc.JSON: Use walk instead of bottomUp in the ToJSONFilter instance for a -> [a]. Note that behavior will be slightly different, since bottomUp's treatment of a function [a] -> [a] is to apply it to each sublist of a list, while walk applies it only to maximal sublists. Usually the latter behavior is what is wanted, and the former can be simulated when needed. But there may be existing filters that need to be rewritten in light of the new behavior.

[1.17.1]

  • Better consistency in simpleTable and table (jgm/pandoc#3648). If headers is empty, we populate it with empty cells, using the rows to determine number of columns. We also ensure that there are numcols alignments and column widths.
  • Make sure Div and Span occur in Arbitrary instances.
  • Bump dependency upper bounds.
  • Removed unused mapConst.

[1.17.0.5]

  • Allow aeson 1.1.
  • Added tests for Walk (originally from pandoc).
  • Renamed README -> README.md, fix link (Kolen Cheung).

[1.17.0.4]

  • Re-add Functor constraint to walkM, needed for ghc 7.8.
  • Turn off redundant-constraints warning for Walk (for ghc 8.0.1+).
  • Added necessary Data.Traversable import.
  • Allow HUnit 1.5.

[1.17.0.3]

  • More ghc 7.8 compatibility imports.

[1.17.0.2]

  • Added a necessary import from Data.Monoid (for ghc 7.8).

[1.17.0.1]

  • Fix compiler warnings around Data.Monoid import on some platforms.

[1.17]

  • Remimplement json encoding of inlines manually (Jesse Rosenthal). This is the first step to doing manual encoding and decoding of pandoc JSON. This will replace the current generic deriving, which can be a moving target.

  • Move Arbitrary instances for types from pandoc (Jesse Rosenthal).

  • Remove empty arrays for leaf elements (Jesse Rosenthal). Elements with no children (Space, SoftBreak, LineBreak, HorizontalRule, Null) previously had an empty array for their "c" value. We remove that here. This is a breaking change for the JSON format.

  • New toplevel JSON format with api-version (Jesse Rosenthal). The version number is the pandoc-types version. The toplevel format was previously:

    [{"unMeta": META}, [BLOCKS]]
    

    It is now:

    {
     "pandoc-api-version" : [MAJ, MIN, REV],
     "meta" : META,
     "blocks": BLOCKS
    }
    

    Decoding fails if the major and minor version numbers don't match.

  • Add simple quickcheck tests to verify that roundtrip works properly (Jesse Rosenthal).

  • Add a LineBlock block element (Albert Krewinkel).

  • Add explicit unit tests for encoding and decoding (Jesse Rosenthal).

  • Fixed warnings in Walk, Builder.

  • Test with travis and appveyor.

[1.16.1.1]

  • Allow aeson 1.0.*.

[1.16.1]

  • Allow aeson 0.11.*.
  • Export pandocTypesVersion from Text.Pandoc.Definition.

[1.16.0.1]

  • Use deepseq instead of deepseq-generics. deepseq now allows deriving generic NFData instances, so we don't need deepseq-generics.
  • Removed unneeded instance, use OVERLAPPING pragma for ghc 7.10.
  • Added CPP so that deepseq-generics is used for ghc < 7.10.
  • Added tested-with, generate .travis.yml using make_travis_yml.hs
  • Added stack.yaml

[1.16]

  • Added Attr field to Image and Link.
  • Added SoftBreak constructor to Inline