Skip to content

Releases: aaubry/YamlDotNet

Release 10.0.0

27 Mar 19:48
Compare
Choose a tag to compare

New features

  • #592 adds the ability specify additional indentation for lists. By default, the emitter emits:
    list:
    - item1
    - item2
    
    By using this option, the emitter will output:
    list:
      - item1
      - item2
    

Bug fixes

  • #598 Fixed AnchorNotFoundException if there is a reference to an anchor of a node which is being deserialized. This happens in cyclic references.

Other changes

  • Breaking - Binary serialization support has been removed as there was no practical use-case for it.

  • Refactor Portability.cs into conditionally included files to improve maintainability.
    There is now a set of directories under YamlDotNet/Helpers/Portability. Each directory's name contains a list of target platforms, separated by +. Each of those files is included only when building for one of those target platforms. Each directory may also contain a subsirectory named others. The files in this directory are included only when building for one target platform that is not in it's parent name.

  • Make the type Nothing a ValueType
    There's no need for it to be a reference type.

  • Use a custom type to represent anchor names
    This enables the compiler to detect when we pass something else
    where an anchor name is expected.

  • Use a custom type to represent tag names
    This enables the compiler to detect when we pass something else
    where a tag name is expected.

  • Release notes are no longer stored in the repository, because this forced a new meaningless commit to be created for each release.

Release 9.1.4

27 Mar 19:52
Compare
Choose a tag to compare
  • Fix LookAheadBuffer trying to read from the stream after reaching its end

Release 9.1.3

27 Mar 19:52
Compare
Choose a tag to compare
  • Fix an error when a stream returns less than the requested amount of bytes
    Fixes #560

Release 9.1.2

27 Mar 19:52
Compare
Choose a tag to compare
  • Fix writePtr decrementation in InsertionQueue [#558]

This fixes another critical bug that was causing failures while parsing Yaml documents. If you are using release 9.1.1, please use this version instead.

Release 9.1.1

27 Mar 19:52
Compare
Choose a tag to compare
  • Fix off by one error when resizing InsertionQueue

This fixes a critical bug that was causing failures while parsing Yaml documents. If you are using release 9.1.0, please use this version instead.

Release 9.1.0

27 Mar 19:53
Compare
Choose a tag to compare

Improvements

  • Small performance improvements. Addresses [#519]
  • [#490] Add anchor/alias support in JsonEventEmitter
  • [#540] Allow block style in multiline scalars with trailing spaces
  • [#482] Add support for private properties in the serializer.

Bugfixes

  • Fix KeyNotFoundException in WithoutTypeInspector (fixes [#507])
  • [#539] Fix deserialization for Nullable types.
  • [#491] Disallow usage of alias before anchor declaration
  • [#542] Fix the order of YamlMappingNode items
    YamlMappingNode will now return the items in the order they appear inside the document.

Release 8.1.2

27 Mar 19:54
Compare
Choose a tag to compare

Bug fixes

  • Merge #483 - Allow values after DocumentStart token
  • Merge #497 - Fix indentation check for first content line - fixes #492

Release 8.1.1

27 Mar 19:54
Compare
Choose a tag to compare

Bug fixes

  • Improve compliance with the official YAML test suite: #467, #469 and #475.

  • Make YamlMemberAttribute.DefaultValuesHandling actually usable. Fixes #466.

  • Actually inherit YamlIgnore attributes: #481.

New features

  • Add LowerCaseNamingConvention: #477.

Release 8.1.0

27 Mar 19:54
Compare
Choose a tag to compare

New features and improvements

  • Made CachedTypeInspector thread safe #386
    Previously, using an instance of Serializer or Deserializer was not thread-safe,
    although the intention was for them to be thread safe. The only mutable state is
    inside CachedTypeInspector and was not properly protected against concurrent mutation.

Other fixes

  • Fix type conflicts when targeting frameworks without nullability attributes #460

Change the default value handling behavior.

19 Oct 16:52
Compare
Choose a tag to compare

New features and improvements

  • Change the default value handling behavior. Fixes #427
    This is a breaking change to the default behaviour of the serializer, which will now always emit null and default values.
    It is possible to configure this behaviour by using the ConfigureDefaultValuesHandling method on SerializerBuilder.

    More details are available in the documentation.

  • Add default implementations for the following non-generic collections to DefaultObjectFactory:

    • IEnumerable
    • ICollection
    • IList
    • IDictionary
  • Remove obsolete and unused SerializationOptions enum. Fixes #438

  • Throw descriptive exceptions when using the "linq" methods of YamlNode. Relates to #437

Bug fixes

  • Never emit document end indicator on stream end. Fixes #436
  • Fix exception when deserializing an interface. Fixes #439