Skip to content

Releases: aaubry/YamlDotNet

Release 12.0.1

17 Sep 20:33
454171b
Compare
Choose a tag to compare
  • Update GitGub token

  • Merge pull request #707 from EdwardCooke/ec-updategithubtemplates
    Removed on-hold notices from the issue templates

  • Merge pull request #710 from lahma/fix-key-indicator
    Fix block entry indicator check

Release 12.0.0

23 Jul 16:21
ceacbdd
Compare
Choose a tag to compare
  • Merge pull request #623 from jairbubbles/add-tostring-on-yamlexception
    Do not include the Start / End in the YamlException message

    • Make sure the constructors are consistant so that Message only contains the original message
    • Add ToString to include Start / End
  • Merge pull request #624 from jairbubbles/include-start-end-in-exceptions-thrown-by-type-in
    Include start / end in exceptions thrown by type inspector

  • Merge pull request #626 from willson556/bugfix/extra-newline
    Fix #361 - Extra Windows newline in folded scalar.

  • Adapt the code and project structure to easuly build with Unity

  • Merge pull request #646 from lahma/string-builder-pool
    Introduce StringBuilderPool

  • Merge pull request #648 from lahma/avoid-params-array-in-hash-code
    Avoid extra allocations in YamlScalarNode GetHashCode

  • Merge pull request #647 from lahma/struct-mark
    Change Mark to be readonly struct

  • Merge pull request #649 from lahma/add-benchmark
    Add YamlDotNet.Benchmark

  • Update NuGet API key

  • Link to the discussion about the status of the project

  • Update README.md

  • Merge pull request #693 from EdwardCooke/ec-updates
    VS 2022, Unit Tests and fixes

  • Merge pull request #696 from aaubry/JG-update-readme
    Remove the hint that this project is on hold

  • Merge pull request #695 from EdwardCooke/ec-fix637-numberformat
    G17 was creating issues with doubles and floats

  • Merge pull request #659 from dmitry-ra/fix-issue-638
    Fix #638: Parser hangs on stream of %Y

  • Merge pull request #698 from EdwardCooke/ec-643-setonlyproperties
    Allow set only properties during deserialization

  • Merge pull request #697 from EdwardCooke/ec-fix658-releasenotes
    Change the release notes link to use github releases

  • Merge pull request #699 from EdwardCooke/ec-roundtripnulls
    Allow quoting of specialized strings like null/true/false/numbers etc

  • Merge pull request #701 from JoC0de/fix-nuget-package-spec
    fixup nuget package spec

  • Merge pull request #664 from krisrok/fix/comment-indents
    Fix/comment indents (and other comment-related issues)

  • Merge pull request #700 from EdwardCooke/ec-fix684-blockscalarkeys
    Block scalars can be keys too

  • Merge pull request #702 from EdwardCooke/ec-fix673-longminvaluedeserialize
    Make long.minvalue deserialize

  • Merge pull request #704 from aaubry/fix-prereleases-on-artifactory
    Ensure that pre-releases are always in lower case

Release 11.2.1

28 Jun 21:34
665b182
Compare
Choose a tag to compare
  • #621 Fix nullable struct serialization.
    Fixes #360

Release 11.2.0

13 Jun 15:01
78a57da
Compare
Choose a tag to compare

New features

  • #613 Fix dates not round-tripping correctly in all cases.
  • #608 Allow omitting empty collections via DefaultValuesHandling.

Release 11.1.1

09 Apr 14:04
fedcbea
Compare
Choose a tag to compare

Bugfixes

  • #600 Fix nullable enum roundtrip (fixes #544)
    There was a problem deserializing nullable enums that was introduced with release 9.1.0.

Release 11.1.0

08 Apr 15:50
7ffbb84
Compare
Choose a tag to compare

New features

  • #604 Support for deserialization of interface types (Fixes #601)
    This allows to register a concrete class for a given interface. When deserializing a value of that interface type, the concrete class will be deserialized instead.
    var sut = new DeserializerBuilder()
        .WithNamingConvention(CamelCaseNamingConvention.Instance)
        .WithTypeMapping<ICar, Car>()
        .WithTypeMapping<IModelSpec, ModelSpec>()
        .Build();
    Check this test for a more complete example

Other fixes

  • #603 Fix nullable annotation of TagName implicit converter.
  • #602 Fix nullable annotations for AnchorName implicit converter.

Release 11.0.1

01 Apr 16:32
Compare
Choose a tag to compare

Bugfixes

  • #596 Merge sequence of anchors in reverse order (fixes #594)
    When merging sequences, the order was incorrect.
    This is a breaking change. If you relied on the previous behaviour, you will need to adapt your code.

  • #563 Fix imutable pattern in EmitterSettings.SkipAnchorName.

Release 10.1.0

31 Mar 09:58
Compare
Choose a tag to compare
  • #584 Add support for adding comments to properties.
    The YamlMember attribute now has a Description property. When set, a comment is emitted when serializing that property:
    class Person
    {
        public string Name { get; set; }
    
        [YamlMember(Description = "This is the age")]
        public int Age { get; set; }
    
        [YamlMember(Description = "male or female")]
        public string Sex { get; set; }
    }
    Name: PandaTea
    # This is the age
    Age: 100
    # male or female
    Sex: male

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