You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We considered supporting [AssemblyMetadata("IsTrimmable", "False")], but decided against it at the time because overuse of this attribute would potentially prevent trimming in situations where only a trim-friendly part of a library is used. Now that the trimming defaults have changed to trim-by-default, we might want to reconsider.
We also changed the MSBuild logic so that setting MSBuild metadata <IsTrimmable>false</IsTrimmable> on an individual assembly (in the ManagedAssemblyToLink itemgroup) would give it the copy action - see #2856 (comment).
Personally I still don't see much value in this, but I opened this to track the discussion since it came up in Azure/azure-sdk-for-net#24238.
The text was updated successfully, but these errors were encountered:
It would be good to have a motivating use case for this. I'm having a hard time coming up with an example of a scenario where library is reflecting on itself in an unpredictable way (the Azure issue doesn't seem to actually have one either).
The more typical scenario for trimming unfriendly code is libraries that reflect on code outside of their own assembly because they cannot reference it statically (think: Newtonsoft, Autofac). Such attribute wouldn't be useful for them, unless it disables trimming for the whole app. We probably don't want to give libraries such power.
We considered supporting
[AssemblyMetadata("IsTrimmable", "False")]
, but decided against it at the time because overuse of this attribute would potentially prevent trimming in situations where only a trim-friendly part of a library is used. Now that the trimming defaults have changed to trim-by-default, we might want to reconsider.We also changed the MSBuild logic so that setting MSBuild metadata
<IsTrimmable>false</IsTrimmable>
on an individual assembly (in theManagedAssemblyToLink
itemgroup) would give it thecopy
action - see #2856 (comment).Personally I still don't see much value in this, but I opened this to track the discussion since it came up in Azure/azure-sdk-for-net#24238.
The text was updated successfully, but these errors were encountered: