Aspnetcore: JsonPatchDocument should use System.Text.Json in ASP.NET vNext

Created on 27 Jul 2020  路  7Comments  路  Source: dotnet/aspnetcore

Related to https://github.com/dotnet/aspnetcore/issues/16968
Will you accept pull-request with this feature?

affected-few area-mvc enhancement feature-JSONPatch severity-minor

All 7 comments

I propose to:

We've moved this issue to the Backlog milestone. This means that it is not going to be worked on for the coming release. We will reassess the backlog following the current release and consider this item at that time. To learn more about our issue management process and to have better expectation regarding different types of issues you can read our Triage Process.

Thanks for your willingness to help.
We would prefer to think more about this first and decide on the direction we want to go before asking for help.

There have been many issues reported regarding json patch still being tied to Newtonsoft.Json deserialization. The issues are caused by adverse effects of the association, or directly indicating dissatisfaction with it:
https://github.com/dotnet/aspnetcore/issues/12994
https://github.com/dotnet/aspnetcore/issues/13938
https://github.com/dotnet/aspnetcore/issues/14035
https://github.com/dotnet/aspnetcore/issues/16968
https://github.com/dotnet/aspnetcore/issues/22216
https://github.com/dotnet/aspnetcore/issues/22620

System.Text.Json has merits over Newtonsoft.Json purported by Microsoft with indication to fully remove the Json.NET dependency from ASP.NET Core.

Thus, we want to remove the Json.NET dependency from ASP.NET Core 3.0, so that customers can choose which version to use, without fearing they might accidentally break the underlying platform.

Configuration of json patch to only use Newtonsoft.Json processing for patch requests is contrived, requiring building an entire separate service collection with complete MVC to pull an input formatter with appropriate DI.

To indicate the intent of complete System.Text.Json support in ASP.NET Core, not have the support, and then to consistently delay in the face of consistent issues is extremely discouraging:
https://github.com/dotnet/aspnetcore/issues/12994#issuecomment-521031088
https://github.com/dotnet/aspnetcore/issues/14035#issuecomment-532773409
https://github.com/dotnet/aspnetcore/issues/14035#issuecomment-552260138
https://github.com/dotnet/aspnetcore/issues/16968#issuecomment-620212910

Do you have any news regarding this issue? Do you accept help to implement this feature?

I wonder if the easiest way to have that feature added wouldn't be to fork the feature project https://github.com/dotnet/aspnetcore/commits/master/src/Features/JsonPatch in another repo
make it works without newtonsoft
then ask dotnet/aspnetcore if they want to replace newtonsoft json patch to that one

This is bit of an annoying oversight. Any news?

Was this page helpful?
0 / 5 - 0 ratings