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 should do this ASAP because it massively improves the user experience for SDK resolution in scenarios like NuGet/Home#13471 - adding this data would effectively remove the workload and 'normal' SDK resolvers from the list of resolvers used for NuGet SDK resolution, leaving only the most likely error messages.
for the Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver we need to add the line <ResolvableSdkPattern>Microsoft.NET.SDK.WorkloadAutoImportPropsLocator|Microsoft.NET.SDK.WorkloadManifestTargetsLocator</ResolvableSdkPattern> to the existing xml file.
for the Microsoft.DotNet.MSBuildSdkResolver we don't seem to create such an xml file and the story is a bit more muddled. This resolver seems to orchestrate a few other resolvers? So we'd need to create a regex with the superset of all of the expected names for the 'nested' resolvers (which right now looks like the workload resolver and the 'normal' SDK path resolver?).
Is your feature request related to a problem? Please describe.
This feature improves performance. MSBuild would skip loading additional assemblies with sdk resolvers when they are not needed.
Describe the solution you'd like
After merging this msbuild PR it is possible to add
<ResolvableSdkPattern>
to manifests of msbuild sdk resolvers. Consider to use it for resolvers Microsoft.DotNet.MSBuildSdkResolver and Microsoft.NET.Sdk.WorkloadMSBuildSdkResolver which live in this repo.Note that further we would need to keep the pattern up to date. Suggested pattern is
Microsoft\.NET.* | <some exceptional cases>
Additional context
See this page for more details about sdk resolution and the recent change of the algorithm in MSBuild.
The text was updated successfully, but these errors were encountered: