Long-tail consolidation — currently both Newtonsoft.Json and System.Text.Json are in the dependency graph. Newtonsoft.Json is used directly in several places + dragged in by NJsonSchema.NewtonsoftJson. System.Text.Json is the modern standard and ships with .NET.
Scope:
- Replace direct usages of
Newtonsoft.Json.Linq / JsonConvert etc. with System.Text.Json. Largest call sites likely in Fallout.Utilities.Text.Json, Fallout.SolutionModel, Fallout.GlobalTool parameters file handling.
- Replace
NJsonSchema.NewtonsoftJson with NJsonSchema configured to use System.Text.Json (NJsonSchema supports it natively).
- Drop
Newtonsoft.Json PackageVersion.
Bigger lift; benefits: one fewer dep, modern JSON pipeline, smaller package graph.
Refs the dependency audit.
Long-tail consolidation — currently both
Newtonsoft.JsonandSystem.Text.Jsonare in the dependency graph.Newtonsoft.Jsonis used directly in several places + dragged in byNJsonSchema.NewtonsoftJson.System.Text.Jsonis the modern standard and ships with .NET.Scope:
Newtonsoft.Json.Linq/JsonConvertetc. withSystem.Text.Json. Largest call sites likely inFallout.Utilities.Text.Json,Fallout.SolutionModel,Fallout.GlobalToolparameters file handling.NJsonSchema.NewtonsoftJsonwithNJsonSchemaconfigured to useSystem.Text.Json(NJsonSchema supports it natively).Newtonsoft.JsonPackageVersion.Bigger lift; benefits: one fewer dep, modern JSON pipeline, smaller package graph.
Refs the dependency audit.