All Versions
17
Latest Version
Avg Release Cycle
20 days
Latest Release
1283 days ago

Changelog History
Page 1

  • v0.8.0.1 Changes

    September 22, 2019
    • 👌 Support GHC 8.8.1

    • 👌 Support generics-sop 0.5

  • v0.8.0.0 Changes

    September 04, 2019
    • ➕ Add onObj' which is just onObj but specialised to Identity.

    • ➕ Add gObjEncoder for deriving ObjEncoder structures for record types only. Using the IsRecord constraint from record-sop package. This makes it easier to leverage the Contravariant functionality of the ObjEncoder without losing the benefits of deriving more trivial encoders.

    • ➕ Added the FieldNameAsKey option to the newtype options for generic derived enc/decoders.

    • 🛠 Fixes #69 by removing duplicate call to _optionsFieldName function. Added regression test.

    • 👌 Improved the handling of newtype options for generic deriving to give a bit more flexibility and avoid strangeness with respect to some combinations of options.

    • 🔄 Change the building of escaped whitespace chars to actually use the escapedWhitespaceChar function, instead of incorrectly generating an unescaped character.

    • ➕ Add haddock to gObjEncoder function

    • Correctly bump version to 0.8.0.0 as this is a breaking change because of new constructors on an exported sum type.

    • ✂ Remove some commented out code.

    • ➕ Add a better failure message to "impossible" error case.

    • Regenerate nix after cabal file changes

  • v0.6.1.0 Changes

    February 27, 2019
    • ➕ Add passKeysToValues decoder for decoding JSON objects where the key should be part of the value.
  • v0.6.0.0 Changes

    February 19, 2019

    🛠 Fixes

    • Handling of HeXDigit4 values was not correct. The bug was partly due to the choice of optic, instead of producing a (type/failure) error when working with mixed-case hex values, it seems to be zero'ing them out.
    • ➕ Added regression tests

    Rework

    • 📜 Redesigned ParseFn to handle:
      • Data.String.String
      • Data.Text.Text
      • Data.ByteString.ByteString
    • 📚 Updated documentation for ParseFn to match changes
    • 📚 Updated documentation for default parsing functions
    • 🏗 Generalised the Builder process to handle Text and ByteString
      • Created a record type to hold the required functions for builders
      • Created submodules to house the generalised builders (see Waargonaut.Encode.Builder and friends)
      • Added test to ensure both builders produce identical output
    • 📚 Updated documentation for Encode process to match changes
    • ➕ Added deprecation notice to Waargonaut.Decode.Traversal

    Cleanup

    • Factored out components into more submodules:
      • UnescapedJChar
      • EscapedJChar
      • HexDigit4
      • Elem
      • Elems
      • JAssoc
      • Decode.Runners
    • 📚 Updated documentation if required for module changes.
    • ✂ Deleted commented out code
    • 🔄 Changed all file textual encoding/decoding tests to Test.Tasty.Golden.

    🆕 New hotness

    • ➕ Added a few prisms to allow for similar behaviour to the lens-aeson package.
    • ➕ Added property tests for these new prisms to check they comply with the prism law.
  • v0.5.2.1 Changes

    January 08, 2019
    • ⬆️ Upgraded the nix overrides to use the overlay technique.
    • 📦 Lowered the bound on tagged to 0.8.5 which allowed it to be removed from the list of overridden packages.
  • v0.5.2.0 Changes

    January 03, 2019
    • ➕ Add Waargonaut.Prettier module that contains a traversal to modify a Json structure to add indentation and newlines.
  • v0.5.1.0 Changes

    January 02, 2019
    • 🛠 Fix order of either decoder to match documentation, Right decoder was not being attempted first.
    • 🔦 Expose functionality to check the 'type' of the JSON at the current cursor position.
    • ⚡️ Update list decoder to check that we're at an array before attempting to decode. It will now fail when attempting to decode a list and something of type list is not found. Previously it would return an empty list when a number was present.
  • v0.5.0.0 Changes

    December 18, 2018
    • 🔄 Changed internal builder from ByteString to Text builder.
    • 🛠 Fixed bug for going from JString <-> Text, was breaking round-trip.
    • ✂ Removed instances of AsJString for Text and ByteString, replaced with more correct Prism and some better functions.
    • ➕ Added regression tests for round tripping text and bytestring (char8).
  • v0.4.2.0 Changes

    November 29, 2018
    • 👌 Improved pretty printing of CursorHistory by condensing multiple numeric movements and removing the single movements following searching for keys.
    • ➕ Add fromKeyOptional and atKeyOptional that make it easier to handle optional keys on objects.
    • ➕ Add prismDOrFail' function to allow the user to construct an error from the value that was decoded.
  • v0.4.1.0 Changes

    November 20, 2018
    • ➕ Add oneOf decoder and tests