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
The .NET Core SDK implemented a performance enhancement with dotnet/sdk#1805 that allows the conflict resolution tasks to not need to load assemblies in the common case. This works by using a bit of MSBuild metadata called PackageConflictOverrides. These items tell conflict resolution that if it sees a conflict between two NuGet packages, with certain versions, it can immediately resolve the conflict without loading assemblies.
Since Microsoft.NETCore.App and NETStandard.Library 2.0.0 had already shipped, we couldn't add this metadata into the packages.
However, going forward we could consider generating this metadata in new Microsoft.NETCore.App and NETStandard.Library packages, if more package overrides are created and we see a performance degradation again. See dotnet/sdk#1805 (comment).
However, going forward we could consider generating this metadata in new Microsoft.NETCore.App and NETStandard.Library packages, if more package overrides are created and we see a performance degradation again.
Is this something that can happen in 3.0? Will the move away from "real" NuGet packages to packs make generation not useful?
If the override list won't change at all in the future, maybe we can close this issue.
I think this issue can now be closed with dotnet/core-setup#6507. The only thing listed here that wasn't explicitly covered is generating the overridden packages and versions, but I'm not sure that is worth the effort. If we find maintaining that the .txt file manually is too cumbersome, we can re-open this issue, or just create a new one at that time.
The .NET Core SDK implemented a performance enhancement with dotnet/sdk#1805 that allows the conflict resolution tasks to not need to load assemblies in the common case. This works by using a bit of MSBuild metadata called PackageConflictOverrides. These items tell conflict resolution that if it sees a conflict between two NuGet packages, with certain versions, it can immediately resolve the conflict without loading assemblies.
Since Microsoft.NETCore.App and NETStandard.Library 2.0.0 had already shipped, we couldn't add this metadata into the packages.
However, going forward we could consider generating this metadata in new Microsoft.NETCore.App and NETStandard.Library packages, if more package overrides are created and we see a performance degradation again. See dotnet/sdk#1805 (comment).
/cc @ericstj @nguerrera @weshaggard
The text was updated successfully, but these errors were encountered: