saphyr-serde/parser/CHANGELOG.md

2.6 KiB

Changelog

Upcoming

Breaking Changes:

  • The encoding library has been replaced with encoding_rs. If you use the trap of YamlDecoder, this change will make your code not compile. An additional enum YamlDecoderTrap has been added to abstract the underlying library and avoid breaking changes in the future. This additionally lifts the encoding dependency on your project if you were using that feature.
    • The signature of the function for YamlDecoderTrap::Call has changed:
    • The encoding::types::DecoderTrap has been replaced with YamlDecoderTrap.
      // Before, with `encoding::types::DecoderTrap::Call`
      fn(_: &mut encoding::RawDecoder, _: &[u8], _: &mut encoding::StringWriter) -> bool;
      // Now, with `YamlDecoderTrap::Call`
      fn(_: u8, _: u8, _: &[u8], _: &mut String) -> ControlFlow<Cow<'static str>>;
      
      Please refer to the YamlDecoderTrapFn documentation for more details.

Features:

  • Tags can now be retained across documents by calling keep_tags(true) on a Parser before loading documents. (#10 (#12)

  • YamlLoader structs now have a documents() method that returns the parsed documents associated with a loader.

Development:

v0.7.0

Features:

  • Multi-line strings are now emitted using block scalars.

  • Error messages now contain a byte offset to aid debugging. (#176)

  • Yaml now has or and borrowed_or methods. (#179)

  • Yaml::load_from_bytes() is now available. (#156)

  • The parser and scanner now return Err() instead of calling panic.

Development:

  • The documentation was updated to include a security note mentioning that yaml-rust is safe because it does not interpret types. (#195)

  • Updated to quickcheck 1.0. (#188)

  • hashlink is now used instead of linked_hash_map.

v0.6.0

Development:

  • is_xxx functions were moved into the private char_traits module.

  • Benchmarking tools were added.

  • Performance was improved.

v0.5.0

  • The parser now supports tag directives. (#35

  • The info field has been exposed via a new Yaml::info() API method. (#190)