Skip to content

List of Breaking/Planned changes for MSBuild.Locator v2.0 #282

@YuliiaKovalova

Description

@YuliiaKovalova
  1. Remove extra property AllowQueryAllRuntimeVersions. AllowAllRuntimeVersions from VisualStudioInstanceQueryOptions.cs means the same, but can't clean up immediately due to backward compatibility.
  2. There is a request to add a warning message about the possible compatibility issues - sometimes MSBuild that is being loaded is just too old to have modern things. Add warning message about the used MSBuild version #272 & Identify architecture of found MSBuild #130
    Change API to...
class MSBuildLocationResult
{
  public bool IsCompatibleWithCurrentRuntime;
  public MSBuildLocatorWarning[] Warnings;
  public string RootPath;
  public MSBuildDiscoveryType Context;

  public Version Version;
  public Architecture Architecture; 


  public void Register() {}
}
  1. Project targeting .NET 6 cannot use Microsoft.Build 17.4.0 nuget package. dotnet/msbuild#8166 - compatibility warning
  2. Add some guardrails to MSBuild Locator #254 - can be also a part of compatibility warning section
  3. Can we avoid binding redirects since Locator controls binding? #83 - find the way to implement this
  4. Add handling for the case described here: [Bug]: Project object can no longer be created if the change wave 17.10 is in use. dotnet/msbuild#9869 (comment)
  5. Handle the case for the versions clash: [Bug]: No way to load NuGet.Frameworks into Default ALC dotnet/msbuild#10228
  6. Improve the error message for sdk resolution: Improve error message "Failed to find all versions of .NET Core MSBuild. Call to hostfxr_resolve_sdk2. There may be more details in stderr" #331

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions