-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Run illink before ApiCompat #66706
Run illink before ApiCompat #66706
Conversation
Tagging subscribers to 'linkable-framework': @eerhardt, @vitek-karas, @LakshanF, @sbomer, @joperezr Issue DetailsAs observed in #66634 (comment), illink currently runs after APICompat. This happens because nuget imports the ApiCompat targets earlier than the illink.targets is imported. This should flag issues where illink removes interfaces even though it shouldn't in library mode.
|
I think, in my head, the ideal model is that GenAPI would run from the untrimmed compiler output, and APICompat would run on the trimmer output. That way if GenAPI thinks something is relevant that the trimmer didn't, we catch it. |
The trimmer problem dotnet/linker#2238 has been fixed. Once it flows into runtime it should not remove any of the interfaces (or their methods). |
As observed in #66634 (comment), illink currently runs after APICompat. This happens because nuget imports the ApiCompat targets earlier than the illink.targets is imported.
11f1ccd
to
03165bd
Compare
The change is now ready. PTAL |
@ericstj @carlossanlop @dotnet/area-infrastructure-libraries can someone please approve? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
As observed in #66634 (comment), illink currently runs after APICompat. This happens because nuget imports the ApiCompat targets earlier than the illink.targets is imported.
This should flag issues where illink removes interfaces even though it shouldn't in library mode.
cc @bartonjs @ericstj