Releases: Ethiraric/yaml-rust2
v0.10.4
v0.10.3
v0.10.2
Bug fixes
- Parse
(?i)[+-]?(?:inf|infinity|nan)as strings instead of floats
Changes
- Merge license files and respect
yaml-test-suiteMIT license. This means we
now correctly state that this crate can not be licensed under only the
Apache-2.0 license.
Please review your license requirement following this release.
v0.10.1
v0.10.0
Breaking Changes
- Update dependencies.
hashlinkhad a bogus requirement of>= 0.8, < 0.10, sorry. As mentioned here, range requirements shouldn't be used and I haven't been vigilant enough when reviewing. The requirement is now set to0.10.
Changes
- Force quotes on
yandnto appease the YAML 1.1 lords.
v0.9.0
Breaking Changes
- Update dependencies.
Sincehashlinkis exposed (throughYaml::Hash) and has been updated from 0.8.4 to 0.9.1, the new version ofyaml-rust2will not link properly if you explicitly rely onhashlink v0.8.
Existing code with v0.8.4 should still compile fine in v0.9.1 (see hashlink's v0.9.0 changelog).
Bug fixes
- (#37)
Parse empty scalars as""instead of"~".
Features
- Add
Yaml::is_hash. - Add better doccomments to the
IndexandIntoIteratorimplementations forYamlto better explain their quirks and design decisions.
v0.8.1
Bug fixes
-
(#29) Fix parsing failing for deeply indented scalar blocks.
-
(#21-comment) Fix parsing failing with comments immediately following a YAML tag.
Features
-
(#19)
Yamlnow implementsIndexMut<usize>andIndexMut<&'a str>. These functions may not return a mutable reference to aBAD_VALUE. Instead,index_mut()will panic if either:- The index is out of range, as per
IndexMut's requirements - The inner
Yamlvariant doesn't matchYaml::ArrayforusizeorYaml::Hashfor&'a str
- The index is out of range, as per
-
Use cargo features
This allows for more fine-grained control over MSRV and to completely remove debug code from the library when it is consumed.
The
encodingfeature, governing theYamlDecoder, has been enabled by default. Users of@davvid's fork ofyaml-rustor ofyaml-rust2might already use this. Users of the originalyaml-rustcrate may freely disable this feature (cargo <...> --no-default-features) and lower MSRV to 1.65.0. -
Duplicate keys no longer allowed
Instead of silently choosing one of two values sharing the same key in a mapping, we now issue an error. This behavior is part of the YAML specification, but not tested by the
yaml-test-suite(the parser needs to emit events for both key-values). Additionally, there is no standard way of defining which value should be chosen in case of a duplicate.
v0.7.0
Merge with @davvid's repository.
Full changelog, courtesy of @davvid:
Features:
- Multi-line strings are now emitted using block scalars.
- Error messages now contain a byte offset to aid debugging. (#176)
- Yaml now has
orandborrowed_ormethods. (#179) Yaml::load_from_bytes()is now available. (#156)- The parser and scanner now return Err() instead of calling panic.
Development:
v0.6.0
First "real" release
While v0.5.0 was certainly an improvement in YAML compliance, performance had significantly dropped. This release fixes performance issues, and should make yaml-rust2 a no-downside replacement for yaml-rust.
I do consider this as the first "real" release of this crate. More details about the process of writing yaml-rust2 and its improvements over yaml-rust can be found here
v0.5.0
v0.5.0
First version implementing all of the YAML test suite.
Version numbers are taken over from the original repository, hence starting at v0.5.0.