The package is broken down into two primary modules. Data.Yaml provides a high-level interface based around the JSON datatypes provided by the aeson package. Text.Libyaml provides a lower-level, streaming interface. For most users, Data.Yaml is recommended.
Examples
Usage examples can be found in the Data.Yaml documentation or in the examples directory.
Additional modules
Data.Yaml.Include supports adding !include directives to your YAML files.
Data.Yaml.Builder and Data.Yaml.Parser allow more fine-grained control of parsing an rendering, as opposed to just using the aeson typeclass and datatype system for parsing and rendering.
Data.Yaml.Aeson is currently a re-export of Data.Yaml to explicitly choose to use the aeson-compatible API.
Changes
ChangeLog for yaml
0.10.2.0
Add EncodeOptions and FormatOptions to control the style of the encoded YAML. #153
Default to using literal style for multiline strings #152
0.10.1.1
Correctly declare libyaml dependency on system-libyaml flag #151
0.10.1
Avoid incurring a semigroups dependency on recent GHCs.
Fix a space leak that was introduced with 0.10.0#147
0.10.0
Add decodeFileWithWarnings which returns warnings for duplicate fields
0.9.0
Expose style and tags on mappings and sequences in Text.Libyaml #141