Skip to content

Switch JSON serializer usage over to new source generator APIs #31877

Description

@CoffeeFlux

Until this happens, the default Blazor template will have a size regression: dotnet/runtime#51311

New APIs: dotnet/runtime#45448 (comment)

Initial attempt: https://github.com/eerhardt/aspnetcore/commits/json-tmp

cc: @mkArtakMSFT @eerhardt @layomia

Activity

  1. added
    enhancementThis issue represents an ask for new feature or an enhancement to an existing one
    on Apr 19, 2021
  2. 2 remaining items

  3. added
    Priority:1Work that is critical for the release, but we could probably ship without
    and removed on Jan 3, 2024
  4. mkArtakMSFT commented on May 1, 2024

    @mkArtakMSFT
    Contributor

    @MackinnonBuck what is left here to be done?

  5. MackinnonBuck commented on May 13, 2024

    @MackinnonBuck
    Member

    As of #54956, we've started to use the STJ source generator during WebAssembly startup. This was a targeted change whose goal was to improve startup performance. We also scoped the changes to be limited to those that didn't require new public API.

    In the future, we could revisit this area by creating new public APIs that enable customers to utilize the STJ source generator for JS interop, persistent component state, etc. We currently have #39839 and #40683 to track specific scenarios that could benefit from supporting the STJ source generator, and we can open new issues in the future for additional scenarios.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Pillar: Technical DebtPriority:1Work that is critical for the release, but we could probably ship withoutarea-blazorIncludes: Blazor, Razor ComponentsenhancementThis issue represents an ask for new feature or an enhancement to an existing onefeature-blazor-jsinteropThis issue is related to JSInterop in Blazor

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions