Normalize Unicode strings from seed data before comparing#38617
Open
AndriySvyryd wants to merge 1 commit into
Open
Normalize Unicode strings from seed data before comparing#38617AndriySvyryd wants to merge 1 commit into
AndriySvyryd wants to merge 1 commit into
Conversation
6 tasks
There was a problem hiding this comment.
Pull request overview
Addresses #38191 by making seed-data string comparisons resilient to Unicode normalization differences (e.g., NFC vs NFD), preventing spurious “pending model changes” / migration scaffolding when models/snapshots are authored on different OSes.
Changes:
- Normalize seed-data string values to NFC when building seed identity keys and when comparing source/target seed values during diffing.
- Add a regression test asserting no migration operations are produced when seed strings differ only by Unicode normalization form.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| test/EFCore.Relational.Tests/Migrations/Internal/MigrationsModelDifferTest.cs | Adds coverage for NFC vs NFD equivalence in seed-data diffing (no-op expected). |
| src/EFCore.Relational/Migrations/Internal/MigrationsModelDiffer.cs | Introduces NFC normalization helper and applies it to seed key/value comparisons during model diffing. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Fixes #38191