5.0 Migrations: Correctly generate UseIdentityColumn(s) API in snapshot #22640
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Resolves #22632
Description
In EF Core 3.1, for provider specific annotations we generated HasAnnotation in model snapshot, which we improved to generate specific fluent API calls. For particular API call
UseIdentityColumn
we set other annotations whose values are default values in the method parameter but when generating the code, we did not account for those default values correctly generating same API with arguments.Customer Impact
This change in API causes a diff when adding new migration which can cause conflict. Further changing this after 5.0 would cause diff in other direction in future release.
How found
Customer reported on RC1.
Test coverage
We did not have proper coverage for round-tripping the API. Added tests for this API for all variations.
Regression?
Yes, from 3.1.
Risk
Low. Fix is localized, and only affect aforementioned API.