Skip to content

Releases: mirage/repr

0.7.0

02 Aug 18:55
953d46a
Compare
Choose a tag to compare

CHANGES:

  • Add quadruples as another type combinator (#104, @patricoferris)

  • Expose the underlying Jsonm.decoder for custom JSON serialisation in
    functions like Repr.like. (#103, @patricoferris)

0.6.0

10 Jan 09:59
Compare
Choose a tag to compare

CHANGES:

  • Change the type of Repr.decode_bin to take a mutable buffer offset rather
    than threading an immutable position. (#81, @craigfe)

  • Expose a Repr.Binary module providing direct access to functions for
    interacting with Repr's binary serialisation format. (#88, @craigfe)

0.5.0

12 Oct 13:34
Compare
Choose a tag to compare

CHANGES:

  • Add Repr.int63, a representation of the Optint.Int63.t type (provided by
    the optint library). (#80, @craigfe)

  • Change Repr.{like,map,partially_abstract} functions to not require _ staged wrappers around any (monomorphic) overrides. (#77, @craigfe)

  • Fix a bug causing custom Repr.{random,random_state} implementations to be
    ignored. (#79, @craigfe)

  • Fix Repr.pre_hash to rely on itself recursively. This ensures that custom
    pre_hash functions attached to components of larger types are not ignored.
    (#71, @craigfe)

0.4.0

16 Jun 18:16
Compare
Choose a tag to compare

CHANGES:

  • Add Repr.{random,random_state}, a pair of generic functions for sampling
    random instances of representable types. (#58, @craigfe)

  • Add Repr.Size, which provides sizing functions for binary codecs that are
    more informative than the existing Repr.size_of. Types built using Repr.v
    and Repr.like must now pass a sizer built using Repr.Size.custom_*. (#69,
    @craigfe)

0.3.0

30 Apr 09:16
d410d61
Compare
Choose a tag to compare

CHANGES:

  • Repr.v is now called Repr.abstract. (#52, @craigfe)

  • Added Repr.partially_abstract, a helper combinator for constructing type
    representations with overridden operations. (#52, @craigfe)

  • Add combinators for standard library container types: ref, Lazy.t,
    Seq.t, Queue.t, Stack.t, Hashtbl.t, Set.t and Map.t.
    (#43, @craigfe)

  • Improve PPX Repr.t generation for types in the standard library. References
    to e.g. Bool.t or Stdlib.Int32.t will be resolved to the corresponding
    combinators. (#43, @craigfe)

  • Add support for deriving mutually-recursive pairs of type representations
    with ppx_repr. (#42, @craigfe)

  • Add a JSON object combinator: Json.assoc (#53, @Ngoguey42)

  • Drop the payload of NaN floating point values during JSON encoding. -nan
    strings are not emitted any more. (#55, @Ngoguey42)

Distribution 0.2.1

18 Jan 17:18
Compare
Choose a tag to compare

CHANGES:

  • Support Ppxlib versions >= 0.18.0. (#35, @craigfe)
  • Add missing dependency on ppx_deriving. (#36, CraigFe)
  • Add a representation of the Either.t type. (#33, @craigfe)

Distribution 0.2.0

18 Dec 13:43
Compare
Choose a tag to compare

CHANGES:

  • Improve performance of variable-size integers encoding and decoding.
    (#24, #30, @samoht)
  • Require short_hash operations to be explicitly unstaged.
    (#15, @craigfe)
  • Require equal and compare operations to be explicitly unstaged.
    (#16, @samoht)

Distribution 0.1.0

16 Oct 13:57
Compare
Choose a tag to compare

CHANGES:

Initial release.