CHANGES:
Added
-
irmin:
-
ppx_irmin
Changed
-
irmin:
-
Add sanity checks when creating
Irmin.Type
records, variants and enums
(#956 and #966, @liautaud):Irmin.Type.{sealr,sealv,enum}
will now raiseInvalid_argument
if two
components have the same name;Irmin.Type.{field,case0,case1}
will now raiseInvalid_argument
if
the component name is not a valid UTF-8 string.
-
Changed the JSON encoding of options and unit to avoid ambiguous cases
(#967, @liautaud):()
is now encoded as{}
;None
is now encoded asnull
;Some x
is now encoded as{"some": x}
;- Fields of records which have value
None
are still omitted; - Fields of records which have value
Some x
are still unboxed intox
.
-
Changed pretty-printing of Irmin types to more closely resemble OCaml types.
e.g.pair int string
prints asint * string
. (#997, @craigfe) -
The type
Irmin.S.tree
is now abstract. The previous form can be coerced
to/from the abstract representation with the new functions
Irmin.S.Tree.{v,destruct}
respectively. (#990, @craigfe)
-
irmin-mem