Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump YamlDotNet from 4.3.0 to 5.0.0 in /Tests/OxyPlotWinForms/OxyPlotWinForms #1

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Oct 17, 2019

Bumps YamlDotNet from 4.3.0 to 5.0.0.

Release notes

Sourced from YamlDotNet's releases.

Security issues and dropping legacy behaviors

/!\ This release fixes a security issue. It is strongly recommended to upgrade,
mainly if you are parsing documents from sources that you do not trust.

Many thanks to Kurt Boberg, from the DocuSign Application Security Team, who identified this issue and provided feedback on mitigation strategies.

  • Remove the legacy backwards-compatibe syntax that enabled to create
    Serializer and Deserializer directly then changing their configutation.

    In most cases, the calls to the constructors should be replaced by
    instantiations of SerializerBuilder and DeserializerBuilder.
    These can be configured at will, then used to create instances of
    (De)serializer.
    It is still possible to use the default constructors, if no configuration is needed.

  • Drop support for specifying arbitrary type names in tags.
    Support for automatically resolving a fully qualified type name
    from a tag has been discontinued. That feature was poorly designed
    and not standard.
    During deserialization, each tag mapping must be explicitly registered.
    During serialization, when using the EnsureRoundtrip method, it is necessary to
    register tag mappings for each type that will require a tag, that is, any type that
    is used as the value of a property with a different declared type.

  • Fix bug where deserialized values were not being converted to the destination type.

    var sut = new DeserializerBuilder()
        .WithTagMapping("!dbl", typeof(DoublyConverted))
        .Build();
    
    // The scalar "hello" will first be converted to DoublyConverted
    // then that value will be converted to int.
    var result = sut.Deserialize<int>("!dbl hello");
    
    Assert.Equal(5, result);
Changelog

Sourced from YamlDotNet's changelog.

Release notes

Release 7.0.0

Added support for nullable references and netstandard 2.1.

Enabling nullable references exposed many potential bugs where the code assumed
that a reference would not be null, but where it was possible for it to be null.
In most cases this did not cause an error because of the way the code was being used.

Because fixing these problems required some breaking changes, a few improvements were made to the code base to take advantage of modern C# constructs.

Overall, the following breaking changes were made:

  • Removed the default constructor from most exceptions, because that would cause some uninitialized properties.

  • Made the ParsingEvent concretizations sealed. There is no point in inheriting from these because the library assumes that they form a closed set.

  • Made many classes sealed, since they are not intended to be extended.

  • YamlDocument now throws an exception if is has no root node after loading. This should only happen when loading from an IParser that returns invalid data or is in an invalid state.

The following APIs were made obsolete (but still work as before):

  • Refactored the extension methods to IParser to have better names with a more sensible semantic. The previous extension methods, Expect<T>, Allow<T>, Peek<T> and Accept<T> are still available but have been deprecated. The new extension methods are:

    • T Consume<T>() where T : ParsingEvent
      Ensures that the current event is of the specified type, returns it and moves to the next event. Throws an exception if the next event is not of the expected type.

    • bool TryConsume<T>(out T @event) where T : ParsingEvent
      If the event is of the specified type, returns it and moves to the next event, otherwise returns null.

    • T Require<T>() where T : ParsingEvent
      Enforces that the current event is of the specified type.

    • bool Accept<T>(out T @event) where T : ParsingEvent
      Checks whether the current event is of the specified type.

  • Made the constructor of all naming conventions obsolete. Instead each has a static property named Instance. There was no point in creating multiple instances of those classes.
    Instead of:

    new SerializerBuilder()
        .WithNamingConvention(new CamelCaseNamingConvention());

    Use:

    new SerializerBuilder()
        .WithNamingConvention(CamelCaseNamingConvention.Instance);
... (truncated)
Commits
  • e024a32 Prepare release 5.0.0
  • 0ce8ac1 Drop support for specifying arbitrary type names in tags
  • c8df563 Remove legacy backwards compatibility
  • f96b7cc Ensure that tagged values are properly converted to the destination type
  • 8f20a18 Prepare release 4.3.2
  • 857192d Fix bug whe TypeConverter was being ignored on all platforms
  • 145477a Remove serialization support from exceptions
  • 113261c Add quick build task
  • 837f61a Pin Cake version
  • 667778b Merge pull request #313 from thoughtcroft/patch-1
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot ignore this [patch|minor|major] version will close this PR and stop Dependabot creating any more for this minor/major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Oct 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants