Skip to content

Fix union type alias sorting#55603

Open
elicwhite wants to merge 1 commit intofacebook:mainfrom
elicwhite:export-D93262588
Open

Fix union type alias sorting#55603
elicwhite wants to merge 1 commit intofacebook:mainfrom
elicwhite:export-D93262588

Conversation

@elicwhite
Copy link
Member

Summary:
TypeAliasTypeAnnotation members in unions were all treated as equal (returning 0) by the sort comparator, which meant the merge-based comparison in compareUnionMemberArrays could not distinguish between different type aliases like ObjectA, ObjectB, and ObjectC. This caused it to compare them positionally instead of by identity, misreporting added/removed union members as type mismatches. The fix compares TypeAliasTypeAnnotation by name, similar to how StringLiteralTypeAnnotation compares by value, allowing the merge algorithm to correctly identify which members were added or removed.

Changelog: [Internal]

Differential Revision: D93262588

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Feb 18, 2026
@meta-codesync
Copy link

meta-codesync bot commented Feb 18, 2026

@elicwhite has exported this pull request. If you are a Meta employee, you can view the originating Diff in D93262588.

Summary:

TypeAliasTypeAnnotation members in unions were all treated as equal (returning 0) by the sort comparator, which meant the merge-based comparison in compareUnionMemberArrays could not distinguish between different type aliases like ObjectA, ObjectB, and ObjectC. This caused it to compare them positionally instead of by identity, misreporting added/removed union members as type mismatches. The fix compares TypeAliasTypeAnnotation by name, similar to how StringLiteralTypeAnnotation compares by value, allowing the merge algorithm to correctly identify which members were added or removed.

Changelog: [Internal]

Reviewed By: fkgozali

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

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported meta-exported p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Comments