Remove Newtonsoft.Json dependency #1707
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Instead, use System.Text.Json everywhere.
JSON Configuration File
Since there's no equivalent to
MissingMemberHandling
withSystem.Text.Json
, the error messages in case of erroneous keys in the JSON configuration file have been improved. For example, if you have a typo in theenabled
key you would get this error:Those better error messages also required to have a
JsonPropertyName
attribute on all the properties. This is probably a good thing anyway since it makes the code more greppable.Newtonsoft.Json transitive dependency
Unfortunately,
Newtonsoft.Json
is still there transitively (through Buildalyzer/3.2.2 → Microsoft.Extensions.DependencyModel/2.1.0 → Newtonsoft.Json/9.0.1) but there's nothing we can do about it for now, see microsoft/vstest#2488 (comment) for a full explanation.