Since we have Nim 0.15.0 now, NimYAML 0.7.0 follows. This list is relevant for upgrading from a previous version:
* The API has been split over several modules. Importing the [base package](http://forum.nim-lang.org///flyx.github.io/NimYAML/yaml.html) imports all subpackages, so this change is backwards-compatible. However, you are encouraged to import only those parts of the API you need. * It is possible to call all loading procs with a `string` instead of a `Stream` input. Loading YAML directly from a string will enable NimYAML to include correct line content in its parsing exceptions. This is not always possible with using Streams, where it will return an empty string instead if the line content is not available. * The API for writing custom represent/construct procs has changed. [representObject](http://forum.nim-lang.org///flyx.github.io/NimYAML/serialization.html#representobject) does not return a `YamlStreamEvent` iterator anymore. Instead, the implementation shall put its generated event(s) into the `SerializationContext`. You have to update existing code if you use that functionality. Major new features are: * The serialization API features better checks and error messages in case of invalid input. This makes NimYAML feasible for user-written configuration files. * Usage of first-class iterators has been removed to make compiling to JS possible. However, finishing this is still blocked by a Nim compiler bug, see [here](https://github.com/flyx/NimYAML/issues/24). * YAML compliance has been improved. A complete list of changes is available [here](https://github.com/flyx/NimYAML/blob/devel/CHANGELOG.md). NimYAML 0.7.0 requires Nim 0.15.0.
