Skip to content

[release/8.0] Fix handling of default values for struct types in RDG #53047

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Jan 4, 2024

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Dec 28, 2023

Backport of #51193 to release/8.0

/cc @captainsafia

Description

The current strategy for generating string literals for given defaults values in RDG does not handle the full spectrum

Closes #51183.

Customer Impact

Without this bug fix, RDG may generate uncompilable code for scenarios where the users may be defining parameters with default values that have a struct type. There is no viable workaround to users for this issue (outside of disabling compile-time codegen).

Regression?

  • Yes
  • No

Risk

  • High
  • Medium
  • Low

As part of this work, we've added test coverage to validate the behavior of codegen for parameters with default values of various struct and value types. Tests indicate that new logic works as expected for the this set of built-in types.

Verification

  • Manual (required)
  • Automated

Packaging changes reviewed?

  • Yes
  • No
  • N/A

@ghost ghost added the area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions label Dec 28, 2023
@ghost ghost added this to the 8.0.x milestone Dec 28, 2023
@ghost
Copy link

ghost commented Dec 28, 2023

Hi @github-actions[bot]. If this is not a tell-mode PR, please make sure to follow the instructions laid out in the servicing process document.
Otherwise, please add tell-mode label.

@captainsafia captainsafia added feature-rdg area-minimal Includes minimal APIs, endpoint filters, parameter binding, request delegate generator etc and removed area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions labels Dec 28, 2023
@wtgodbe
Copy link
Member

wtgodbe commented Jan 3, 2024

@captainsafia can you get this one approved/servicing approved?

@captainsafia
Copy link
Member

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@captainsafia captainsafia added the Servicing-consider Shiproom approval is required for the issue label Jan 4, 2024
@ghost
Copy link

ghost commented Jan 4, 2024

Hi @github-actions[bot]. Please make sure you've updated the PR description to use the Shiproom Template. Also, make sure this PR is not marked as a draft and is ready-to-merge.

To learn more about how to prepare a servicing PR click here.

@captainsafia captainsafia changed the title [release/8.0] Fix handling of default values in RDG [release/8.0] Fix handling of default values for struct types in RDG Jan 4, 2024
@captainsafia captainsafia added Servicing-approved Shiproom has approved the issue and removed Servicing-consider Shiproom approval is required for the issue labels Jan 4, 2024
@ghost
Copy link

ghost commented Jan 4, 2024

Hi @github-actions[bot]. This PR was just approved to be included in the upcoming servicing release. Somebody from the @dotnet/aspnet-build team will get it merged when the branches are open. Until then, please make sure all the CI checks pass and the PR is reviewed.

@captainsafia
Copy link
Member

Approved via email.

@wtgodbe wtgodbe merged commit 3a4cdc7 into release/8.0 Jan 4, 2024
@wtgodbe wtgodbe deleted the backport/pr-51193-to-release/8.0 branch January 4, 2024 17:18
@ghost ghost removed this from the 8.0.x milestone Jan 4, 2024
@ghost ghost added this to the 8.0.2 milestone Jan 4, 2024
@ghost ghost added the area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework label Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-infrastructure Includes: MSBuild projects/targets, build scripts, CI, Installers and shared framework area-minimal Includes minimal APIs, endpoint filters, parameter binding, request delegate generator etc feature-rdg Servicing-approved Shiproom has approved the issue
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants