Add interfaces for serializer and deserializer (fixes #350).
Fixes:
Fixed issue #348 that caused the assembly to have version 0.0.0.0.
Metadata update
This release adds the repository location to the package metadata. No functional changes were made.
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");
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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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](https://github.com/P3D-Legacy/P3D-Legacy-Launcher/network/alerts).
Bumps YamlDotNet from 4.2.1 to 5.1.0.
Release notes
Sourced from YamlDotNet's releases.
... (truncated)
Commits
34215af
Prepare release 5.1.050dadfb
Merge branch 'add-interfaces' of https://github.com/grofit/YamlDotNet into gr...bc681de
Fix missing assembly versionc0c446e
Updated to add interfaces for serializersf9f69e9
Give proper credit to Kurt Boberg5ec2dd7
Merge pull request #330 from samneirinck/source-locatione32473a
Add repository locatione024a32
Prepare release 5.0.00ce8ac1
Drop support for specifying arbitrary type names in tagsc8df563
Remove legacy backwards compatibilityDependabot 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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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](https://github.com/P3D-Legacy/P3D-Legacy-Launcher/network/alerts).