Skip to content

Remove types deriving from JsonTypeInfo<T> and mark as sealed. - #81306

Merged
eiriktsarpalis merged 4 commits into
dotnet:mainfrom
eiriktsarpalis:remove-jsontypeinfo-derived-types
Feb 2, 2023
Merged

Remove types deriving from JsonTypeInfo<T> and mark as sealed.#81306
eiriktsarpalis merged 4 commits into
dotnet:mainfrom
eiriktsarpalis:remove-jsontypeinfo-derived-types

Conversation

@eiriktsarpalis

Copy link
Copy Markdown
Member

Removes a number of generic types deriving from JsonTypeInfo<T> and marks the type itself as sealed. It also removes a number of abstract and virtual methods that were being used to perform delayed metadata resolution. The type itself should now only contain data and caches, with any metadata resolution logic being moved out to static factory methods.

Contributes to #80917.

cc @eerhardt

@ghost

Copy link
Copy Markdown

Note regarding the new-api-needs-documentation label:

This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, to please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change.

@ghost

Copy link
Copy Markdown

Tagging subscribers to this area: @dotnet/area-system-text-json, @gregsdennis
See info in area-owners.md if you want to be subscribed.

Issue Details

Removes a number of generic types deriving from JsonTypeInfo<T> and marks the type itself as sealed. It also removes a number of abstract and virtual methods that were being used to perform delayed metadata resolution. The type itself should now only contain data and caches, with any metadata resolution logic being moved out to static factory methods.

Contributes to #80917.

cc @eerhardt

Author:eiriktsarpalis
Assignees:-
Labels:

area-System.Text.Json, new-api-needs-documentation

Milestone:-

Comment threadsrc/libraries/System.Text.Json/ref/System.Text.Json.cs Outdated
@eiriktsarpaliseiriktsarpalis added the size-reduction Issues impacting final app size primary for size sensitive workloads label Jan 28, 2023
@eiriktsarpaliseiriktsarpalis added this to the 8.0.0 milestone Jan 28, 2023
@ghost

Copy link
Copy Markdown

Tagging subscribers to 'size-reduction': @eerhardt, @SamMonoRT, @marek-safar
See info in area-owners.md if you want to be subscribed.

Issue Details

Removes a number of generic types deriving from JsonTypeInfo<T> and marks the type itself as sealed. It also removes a number of abstract and virtual methods that were being used to perform delayed metadata resolution. The type itself should now only contain data and caches, with any metadata resolution logic being moved out to static factory methods.

Contributes to #80917.

cc @eerhardt

Author:eiriktsarpalis
Assignees:eiriktsarpalis
Labels:

area-System.Text.Json, new-api-needs-documentation, size-reduction

Milestone:-

@ghostghost locked as resolved and limited conversation to collaborators Mar 4, 2023
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-System.Text.Jsonnew-api-needs-documentationsize-reductionIssues impacting final app size primary for size sensitive workloads

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

@eiriktsarpalis@krwq