package json-data-encoding-browser

  1. Overview
  2. Docs
Type-safe encoding to and decoding from JSON (browser support)

Install

Dune Dependency

Authors

Maintainers

Sources

data-encoding-v1.0.1.tar.gz
md5=82d6e7783274595c82cff4562e2b06a2
sha512=df5d00dfef8afeada8a6aee2a97d491a2ce20cfe90aed203848f6098ba05ba60e2ee9d1afc0c6c07cf32dad3f8e34c0b55cf900ef1f2e7a72d704f07fd32e651

doc/CHANGES.html

v0.1: Initial Release

v0.1.1:

  • customizable initial size for internal buffer
  • remove single lwt related function and lwt dependency

v0.2:

  • CI tests
  • error management improvements (use result, allow exn and option)
  • do not print 0-sized fields in binary descriptions

v0.3:

  • Adapt to json-data-encoding.0.9.1 and provide json-lexeme seq to string seq
  • Improved performance
  • maximum_length to determine static size bounds (when possible)
  • provide to_/of_string alongside to_/of_bytes
  • Improved documentation
  • Increase test coverage
  • Fix JSON encoding of Result

v0.4:

  • catch exceptions in user-provided functions
  • provide conv_guard to help enforce invariants
  • remove unused read_error constructor: Invalid_size
  • check that int31 is actually within int31 bounds
  • add "slicing" feature to analyse binary encoded values

v0.5:

  • add compact encoding combinators
  • add fixed-length list and fixed-length array combinators
  • fix bug wherein mu (… option …) caused an infinite recursion
  • fix roundtrip property of BSON
  • fix error management of lazy encodings (consistent with non-lazy encodings)
  • add a default argument to Json.construct: ?include_default_fields, which is simply passed on to Json_encoding.construct
  • fix missing exported type

v0.5.1:

  • fix bug wherein infinite recursion protection prevented some legitimate uses

v0.5.2:

  • make compact encoding's JSON encoding less opinionated

v0.5.3:

  • fix bug wherein the binary description of zeroable encodings was invalid RST
  • make compact encodings JSON output identical to that of vanilla encodings

v0.6:

  • OCaml 4.14 support (including CI tests)
  • new tutorial
  • fix pathological performance issues when generating some binary descriptions for mu+union encodings

v0.6.1:

  • improve error management when converting lazy-bytes into JSON

v0.7:

  • add module with safer encoding combinators
  • extend Registration API to allow introspection
  • improve binary schema generation
  • allow dynamic-width ints for ints (with proper overflow checks)
  • allow dynamic-width ints (à la n) as size headers
  • allow to use length-of-collection as header information instead of size
  • export type equalities between Encoding.t and encoding and so on
  • improve documentation
  • add new string/bytes combinator with parameters to control the JSON representation
  • fix bug in check-size combinator

v0.7.1:

  • fixed binary-schema reference duplication issue

v1.0.0:

  • merge in the json-data-encoding repository
  • allow bigstring encodings
  • allow to chose endianness of integers
  • allow to ignore extra object fields when destructing JSON
  • improve performance of JSON construction/destruction
  • improve self documentation of compact encodings
  • improve (further) error management when converting lazy-bytes into JSON

v1.0.1:

  • fixed a bug where negative lengths were accepted by the binary reader
OCaml

Innovation. Community. Security.