Support Yaml 1.2, and stop advertising Yaml 1.0 support.
This also updates the vendored libyaml to 0.2.5 (@favonia #37).
Yaml.Utilmodule with a number of useful combinators
Yaml.valuetypes, such as retrieving keys and
values, finding entries and converting to OCaml native
types (@patricoferris #43)
Move the sexpression derivers into a separate
yaml-sexpopam package). This reduces dependencies
on the main library. You can still use
ppx_sexplib_convderivers by simply replacing the
Yaml.value(or other type) with
an alias that also includes the Sexp conversion functions in
its scope. (@alan-j-hu @avsm #46).
When outputting values, wrap special values like "true" or
"1.0" in double quotes, so that
interpret them as a non-string value (@avsm #47).
Track anchors and mappings in
Yaml.yaml(but not in the
Yaml.valueJSON representation). This also allows non-scalar
values to be used as keys. (@favonia #38)
Bump the internal write buffer for stream emission to
256k from 64k, as people are writing ever-larger Yaml
files! In the future, this static buffer will be replaced
by a dynamically growing output buffer but for now needs
to be set manually.
The minimum supported OCaml version is now OCaml 4.05.
Fix a memory unsoundness issue with larger files in the
bindings to libyaml, which fixes spurious errors when parsing
larger YAML files (#35 marcinkoziej)
Expose more information about error locations while parsing
a Yaml file (#34 @marcinkoziej)
Add test for a large Yaml file (#30 @pmonson711)
Bump size of internal serialisation buffer in
to 64KB from 16KB (@avsm).
Switch CI to GitHub Actions (@avsm)
Depend on dune-configurator in the build to be compatible
with dune 2.0 and higher (@avsm)
Add unexpected error codes to error messages so that
debugging errors from libyaml is possible (#28 @mjambon)
Represent quoted scalars as strings in Json encoding (#22 @rizo, fixes #20).
Expose more detailed scalar information in
Avoid printing the decimal point when the float number is an
integer (#25 @kit-ty-kate)
Support parsing of canonical Yaml null, float and bool
values (@avsm, fixes #15 #16).
Port from jbuilder to dune (#2 @rgrinberg)
Use dune.configurator for config probing (#18 @emillon)
Upgrade opam metadata to 2.0 format (@avsm)
Suppress some C warnings on build due to ctypes autogen
until ctypes gains support for unsigned char types (@avsm)
Add Windows build support (@avsm #11)
Refresh libyaml to upstream changeset 85d1f168ef39f4 (@avsm)
Switch CI to Azure Pipelines and test Windows, Linux and
Add Junit output to the Alcotest (@avsm)
Repair build on ppc64le by using Configurator to query CFLAGS.
ppc64le needs an
mcmodel=smalldue to a quick of the architecture.
Minor improvements to ocamldoc documentation.
dune-releaseis used for release now.
Explicitly depend on
sexplibin jbuild description.
Remove use of deprecated build variables in jbuild file.
Yaml_unixmodule with functions to read and write
from files directly.
Eliminate runtime dependency on
Str(#10 from @yallop)
Various build fixes (#9 #8 #7 from @diml @rgrinberg).
Initial public release.