Skip to content

Enable cross-platform testing with dotnet test on Linux - #684

Merged
kzu merged 13 commits into
mainfrom
copilot/enable-cross-platform-testing
Jan 15, 2026
Merged

Enable cross-platform testing with dotnet test on Linux#684
kzu merged 13 commits into
mainfrom
copilot/enable-cross-platform-testing

Conversation

Copilot AI commented Jan 14, 2026

Copy link
Copy Markdown
Contributor
  • Understand the issue and existing test infrastructure
  • Use conditional targeting: net472 on Windows, net10.0 on Linux
    • Using TargetFramework (singular) with OS condition since only one framework is used at a time
  • Update ModuleInitializer.cs with conditional compilation:
    • Use original Windows approach for net472 (ThisAssembly.Project.MSBuildBinPath)
    • Use cross-platform approach for net10.0 (Path.GetTempPath(), RuntimeInformation)
  • Update Builder.cs to use Path.Combine instead of hardcoded backslashes
  • Add RuntimeFactAttribute and RuntimeTheoryAttribute for platform-specific test skipping
    • Use #if !NET472 for RuntimeIdentifier property (not available in .NET Framework)
  • Update tests that require .NET Framework to use RuntimeFact("Windows") / RuntimeTheory("Windows")
  • Fix path separator issues in tests (normalize with .Replace('\\', '/'))
  • Revert path tests to original Windows format and mark as Windows-only
  • Update build.yml to use strategy matrix with windows-latest and ubuntu-latest
  • Verify tests run on Linux with dotnet test (243 tests pass, 66 skipped for Windows-only)
  • Run code review (passed)
Original prompt

Enable cross-platform testing with dotnet test on Linux


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI assigned Copilot and kzu Jan 14, 2026
@kzu
kzu marked this pull request as ready for review January 14, 2026 23:02
@kzu

kzu commented Jan 14, 2026

Copy link
Copy Markdown
Member

240 passed 240 passed 69 skipped
240 passed 240 passed 69 skipped

🧪 Details on Ubuntu 24.04.3 LTS
🧪 Details on Microsoft Windows 10.0.26100

from dotnet-retest v1.0.0 on .NET 10.0.1 with 💜 by @devlooped

Copilot AI changed the title [WIP] Enable cross-platform testing with dotnet test on Linux Enable cross-platform testing with dotnet test on Linux Jan 14, 2026
Copilot AI requested a review from kzu January 14, 2026 23:32
Copilot AI and others added 4 commits January 15, 2026 00:26
Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
…ility

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>
@kzu
kzu force-pushed the copilot/enable-cross-platform-testing branch from 42fc065 to 24b21e4 Compare January 15, 2026 03:26
@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot revert to a single build that uses runs-on with a strategy matrix based on os with windows-latest and ubuntu-latest

…tu-latest

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot revert to a single build that uses runs-on with a strategy matrix based on os with windows-latest and ubuntu-latest

Refactored to use a single build job with a strategy matrix for windows-latest and ubuntu-latest in 8167e23. The Windows-specific steps (msbuild setup, restore, desktop build, pack, sleet) are conditioned with if: matrix.os == 'windows-latest', while Linux uses dotnet build.

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot can you use if: matrix.os == 'windows-latest' && env.SLEET_CONNECTION != '' and leave the sleet step otherwise untouched? would that work?

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot can you use if: matrix.os == 'windows-latest' && env.SLEET_CONNECTION != '' and leave the sleet step otherwise untouched? would that work?

Yes, that works. Updated in 8d84572 to use if: matrix.os == 'windows-latest' && env.SLEET_CONNECTION != '' and removed the bash if statement.

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot see if you can fix the following failing tests under windows now:

🧪 Details on Microsoft Windows 10.0.26100
❌ NuGetizer.CreatePackageTests.when_creating_package_with_content_file_build_action_then_adds_as_content_file
Assert.Contains() Failure: Filter not matched in collection
Collection: [ManifestFile { Exclude = null, Source = null, Target = "contentFiles\\any\\any\\readme.txt" }]
   at NuGetizer.CreatePackageTests.when_creating_package_with_content_file_build_action_then_adds_as_content_file() in /_/src/NuGetizer.Tests/CreatePackageTests.cs:line 1039
❌ NuGetizer.CreatePackageTests.when_creating_package_with_content_file_then_adds_as_content_file
Assert.Contains() Failure: Filter not matched in collection
Collection: [ManifestFile { Exclude = null, Source = null, Target = "contentFiles\\any\\any\\readme.txt" }]
   at NuGetizer.CreatePackageTests.when_creating_package_with_content_file_then_adds_as_content_file() in /_/src/NuGetizer.Tests/CreatePackageTests.cs:line 995
❌ NuGetizer.given_a_custom_build_project.when_packing_then_can_include_content
Build results do not contain output for target GetPackageContents
   at Builder.TargetResult.AssertSuccess(ITestOutputHelper output) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 195
   at NuGetizer.given_a_custom_build_project.when_packing_then_can_include_content() in /_/src/NuGetizer.Tests/given_a_custom_build_project.cs:line 20
❌ NuGetizer.given_a_framework_library.when_getting_package_contents_then_includes_framework_references_by_default
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_framework_library\framework_library_project.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_framework_library..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_a_framework_library.cs:line 13
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Constructor(Object obj, IntPtr* args)
   at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
❌ NuGetizer.given_a_framework_library.when_include_outputs_in_package_is_false_then_does_not_include_main_assembly
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_framework_library\framework_library_project.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_framework_library..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_a_framework_library.cs:line 13
   at InvokeStub_given_a_framework_library..ctor(Object, Span`1)
   at System.Reflection.MethodBaseInvoker.InvokeWithOneArg(Object obj, BindingFlags invokeAttr, Binder binder, Object[[]] parameters, CultureInfo culture)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
❌ NuGetizer.given_a_library_with_content.content_with_package_path_is_included_even_with_pack_content_false
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_content\library_with_content.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_content..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_a_library_with_content.cs:line 16
   at InvokeStub_given_a_library_with_content..ctor(Object, Span`1)
   at System.Reflection.MethodBaseInvoker.InvokeWithOneArg(Object obj, BindingFlags invokeAttr, Binder binder, Object[[]] parameters, CultureInfo culture)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
❌ NuGetizer.given_a_library_with_content.none_copy_include_false_is_not_included
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_content\library_with_content.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_content..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_a_library_with_content.cs:line 16
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Constructor(Object obj, IntPtr* args)
   at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
❌ NuGetizer.given_a_library_with_project_reference.when_getting_package_contents_then_retrieves_main_assembly_transitively
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_project_reference\a.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_project_reference.when_getting_package_contents_then_retrieves_main_assembly_transitively() in /_/src/NuGetizer.Tests/given_a_library_with_project_reference.cs:line 20
❌ NuGetizer.given_a_library_with_project_reference.when_getting_package_contents_then_retrieves_symbols_transitively
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_project_reference\a.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_project_reference.when_getting_package_contents_then_retrieves_symbols_transitively() in /_/src/NuGetizer.Tests/given_a_library_with_project_reference.cs:line 35
❌ NuGetizer.given_a_library_with_project_reference.when_include_in_package_false_then_does_not_include_referenced_project_outputs
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_project_reference\a.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_project_reference.when_include_in_package_false_then_does_not_include_referenced_project_outputs() in /_/src/NuGetizer.Tests/given_a_library_with_project_reference.cs:line 50
❌ NuGetizer.given_a_library_with_project_reference.when_include_outputs_in_package_false_then_can_include_referenced_project_outputs
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_project_reference\a.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_project_reference.when_include_outputs_in_package_false_then_can_include_referenced_project_outputs() in /_/src/NuGetizer.Tests/given_a_library_with_project_reference.cs:line 70
❌ NuGetizer.given_a_library_with_project_reference.when_include_outputs_in_package_false_then_can_include_referenced_projects_outputs
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_library_with_project_reference\a.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_library_with_project_reference.when_include_outputs_in_package_false_then_can_include_referenced_projects_outputs() in /_/src/NuGetizer.Tests/given_a_library_with_project_reference.cs:line 94
❌ NuGetizer.given_a_localized_library.when_getting_package_contents_then_contains_localized_resources
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_a_localized_library\library.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_a_localized_library..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_a_localized_library.cs:line 14
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Constructor(Object obj, IntPtr* args)
   at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
❌ NuGetizer.given_transitive_projects.when_pack_no_build_then_succeeds
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.  D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\given_transitive_projects\Project1.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.VerifyThrowInvalidProjectFile(Boolean condition, String errorSubCategoryResourceName, BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.Shared.ProjectFileErrorUtilities.ThrowInvalidProjectFile(BuildEventFileInfo projectFile, Exception innerException, String resourceName, Object[[]] args)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>n__0(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.<>c__DisplayClass11_0.<LoadResolversFromManifest>b__0(SdkResolverManifest manifest)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverLoader.LoadResolversFromManifest(SdkResolverManifest manifest, ElementLocation location)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.GetResolvers(IReadOnlyList`1 resolversManifests, LoggingContext loggingContext, ElementLocation sdkReferenceLocation)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdkUsingResolversWithPatternsFirst(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>n__0(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.<>c__DisplayClass3_0.<ResolveSdk>b__2()
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
   at System.Lazy`1.ExecutionAndPublication(LazyHelper executionAndPublication, Boolean useDefaultConstructor)
   at System.Lazy`1.CreateValue()
   at Microsoft.Build.BackEnd.SdkResolution.CachingSdkResolverService.ResolveSdk(Int32 submissionId, SdkReference sdk, LoggingContext loggingContext, ElementLocation sdkReferenceLocation, String solutionPath, String projectPath, Boolean interactive, Boolean isRunningInVisualStudio, Boolean failOnUnresolvedSdk)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImportsFromUnescapedImportExpressionConditioned(String directoryOfImportingFile, ProjectImportElement importElement, List`1& projects, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.ExpandAndLoadImports(String directoryOfImportingFile, ProjectImportElement importElement, SdkResult& sdkResult)
   at Microsoft.Build.Evaluation.Evaluator`4.EvaluateImportElement(String directoryOfImportingFile, ProjectImportElement importElement)
   at Microsoft.Build.Evaluation.Evaluator`4.PerformDepthFirstPass(ProjectRootElement currentProjectOrImport)
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate()
   at Microsoft.Build.Evaluation.Evaluator`4.Evaluate(IEvaluatorData`4 data, Project project, ProjectRootElement root, ProjectLoadSettings loadSettings, Int32 maxNodeCount, PropertyDictionary`1 environmentProperties, ICollection`1 propertiesFromCommandLine, ILoggingService loggingService, IItemFactory`2 itemFactory, IToolsetProvider toolsetProvider, IDirectoryCacheFactory directoryCacheFactory, ProjectRootElementCacheBase projectRootElementCache, BuildEventContext buildEventContext, ISdkResolverService sdkResolverService, Int32 submissionId, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Reevaluate(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(ILoggingService loggingServiceForEvaluation, EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.ReevaluateIfNecessary(EvaluationContext evaluationContext)
   at Microsoft.Build.Evaluation.Project.ProjectImpl.Initialize(IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings, EvaluationContext evaluationContext, IDirectoryCacheFactory directoryCacheFactory, Boolean interactive)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, String subToolsetVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection, ProjectLoadSettings loadSettings)
   at Microsoft.Build.Evaluation.Project..ctor(String projectFile, IDictionary`2 globalProperties, String toolsVersion, ProjectCollection projectCollection)
   at Builder.AddSolutionConfiguration(String projectFile, Dictionary`2 properties) in /_/src/NuGetizer.Tests/Builder.cs:line 68
   at Builder.Build(String projectOrSolution, String targets, Dictionary`2 properties, ILogger[[]] loggers) in /_/src/NuGetizer.Tests/Builder.cs:line 55
   at Builder.BuildScenario(String scenarioName, Object properties, String projectName, String target, ITestOutputHelper output, Nullable`1 verbosity) in /_/src/NuGetizer.Tests/Builder.NuGetizer.cs:line 159
   at NuGetizer.given_transitive_projects..ctor(ITestOutputHelper output) in /_/src/NuGetizer.Tests/given_transitive_projects.cs:line 15
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Constructor(Object obj, IntPtr* args)
   at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
----- Inner Stack Trace -----
   at System.Reflection.RuntimeAssembly.InternalLoad(AssemblyName assemblyName, StackCrawlMark& stackMark, AssemblyLoadContext assemblyLoadContext, RuntimeAssembly requestingAssembly, Boolean throwOnFileNotFound)
   at System.Reflection.Assembly.Load(AssemblyName assemblyRef)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolverAssembly(String resolverPath)
   at Microsoft.Build.BackEnd.SdkResolution.SdkResolverLoader.LoadResolvers(String resolverPath, ElementLocation location, List`1 resolvers)

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot see if you can fix the following failing tests under windows now:

🧪 Details on Microsoft Windows 10.0.26100...

Fixed in 9f9e9ba:

  1. CreatePackageTests: Updated path assertions to normalize separators using .Replace('\\', '/') so they work on both Windows (backslash) and Linux (forward slash).

  2. given_a_custom_build_project: Marked with [RuntimeFact("Windows")] - this scenario uses Microsoft.Common.targets which requires Windows MSBuild paths.

  3. given_a_framework_library: Marked both tests with [RuntimeFact("Windows")] - targets net472 with WPF references (PresentationCore, etc.) which are Windows-only.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • cdn.devlooped.com
    • Triggering command: /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler -pipename:uWLNWgr1RP_im5CQrdK1dr&#43;edYfK0ZfQX6oT40alkJE (dns block)
  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot Remaining failure:

[34 ms]
Error Message:
Microsoft.Build.Exceptions.InvalidProjectFileException : The SDK resolver assembly "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\SdkResolvers\Microsoft.DotNet.MSBuildSdkResolver\Microsoft.DotNet.MSBuildSdkResolver.dll" could not be loaded. Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified. D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net10.0\Scenarios\4BXyYpenT4K\scenario.csproj
---- System.IO.FileNotFoundException : Could not load file or assembly 'Microsoft.DotNet.MSBuildSdkResolver, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot See if we should use the MSBuild locator as-is without our customization with ThisAssembly.Project.MSBuildBinPath. Read the docs at https://learn.microsoft.com/en-us/visualstudio/msbuild/find-and-use-msbuild-versions?view=visualstudio#use-microsoftbuildlocator to see.

…Path

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot See if we should use the MSBuild locator as-is without our customization with ThisAssembly.Project.MSBuildBinPath. Read the docs at https://learn.microsoft.com/en-us/visualstudio/msbuild/find...

Updated in 4fc72d1 to use MSBuildLocator.RegisterDefaults() instead of the hardcoded ThisAssembly.Project.MSBuildBinPath.

Per the docs, RegisterDefaults() automatically finds the appropriate MSBuild instance at runtime, which should work better across different environments (VS MSBuild, .NET SDK, etc.) and avoid the SDK resolver conflicts. The OnAssemblyResolve handler now queries instances dynamically instead of using the build-time path.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • cdn.devlooped.com
    • Triggering command: /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler -pipename:uWLNWgr1RP_im5CQrdK1dr&#43;edYfK0ZfQX6oT40alkJE (dns block)
  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)
  • learn.microsoft.com
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot that's not working. let's revert that and try conditionally building tests for net472 on windows and net10.0 otherwise. that should bring back the working approach that's currently on main (before any of these commits)

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot that's not working. let's revert that and try conditionally building tests for net472 on windows and net10.0 otherwise. that should bring back the working approach that's currently on main (b...

Implemented in 5bf1ec8. Reverted the RegisterDefaults() change and added conditional multi-targeting:

csproj changes:

  • net472 on Windows (original working approach)
  • net10.0 on Linux

ModuleInitializer.cs:

  • Uses #if NET472 conditional compilation
  • Windows: original approach with %TEMP% and MSBuild.exe
  • Linux: cross-platform with Path.GetTempPath() and RuntimeInformation

Also removed the global.json I added. This preserves the working Windows approach while enabling Linux testing.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • cdn.devlooped.com
    • Triggering command: /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler /usr/share/dotnet/sdk/10.0.101/Roslyn/bincore/VBCSCompiler -pipename:uWLNWgr1RP_im5CQrdK1dr&#43;edYfK0ZfQX6oT40alkJE (dns block)
  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot the condition shoudl be on TargetFramework (singular) not TargetFrameworks (since we're not really multi-targeting, only one)

…ional OS targeting

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot the condition shoudl be on TargetFramework (singular) not TargetFrameworks (since we're not really multi-targeting, only one)

Fixed in a2fec97. Changed TargetFrameworks to TargetFramework (singular) since we're only using one framework at a time based on the OS condition.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot seems like we need some conditional compilation for net472 for RuntimeAttributeFact:

D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\Utilities\RuntimeFactAttribute.cs(37,72): error CS0117: 'RuntimeInformation' does not contain a definition for 'RuntimeIdentifier' [D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\NuGetizer.Tests.csproj]

…able in net472)

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot seems like we need some conditional compilation for net472 for RuntimeAttributeFact:

D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\Utilities\RuntimeFactAttribute.cs(37,72): error CS0117: 'Run...

Fixed in 1aee092. Added #if !NET472 conditional compilation around the RuntimeIdentifier property in both RuntimeFactAttribute and RuntimeTheoryAttribute since RuntimeInformation.RuntimeIdentifier is only available in .NET Core/.NET 5+.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu

kzu commented Jan 15, 2026

Copy link
Copy Markdown
Member

@copilot progress!! it seems the only remaining couple bugs are path-related:

NuGetizer.InlineProjectTests.when_package_icon_relative_folder_default_then_packs_icon [FAIL]
Failed NuGetizer.InlineProjectTests.when_package_icon_relative_folder_default_then_packs_icon [5 s]
Error Message:
Assert.Contains() Failure: Filter not matched in collection
Collection: [D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\AyL9lS19TZu\bin\scenario\netstandard2.0\scenario.dll, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\AyL9lS19TZu\bin\scenario\netstandard2.0\scenario.xml, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\AyL9lS19TZu\bin\scenario\netstandard2.0\scenario.pdb, scenario]
Stack Trace:
at NuGetizer.InlineProjectTests.when_package_icon_relative_folder_default_then_packs_icon() in //src/NuGetizer.Tests/InlineProjectTests.cs:line 918
[xUnit.net 00:00:08.83] NuGetizer.InlineProjectTests.when_packagepath_ends_in_path_then_packs_basedir_dir [FAIL]
Failed NuGetizer.InlineProjectTests.when_packagepath_ends_in_path_then_packs_basedir_dir [1 s]
Error Message:
Collection: [D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\img\brand\icon.png, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\img\docs\screen.png, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\img\icon.png, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\img\screen.png, D:\a\nugetizer\nugetizer\src\NuGetizer.Tests\bin\Release\net472\Scenarios\5Ae8DaA1W9Z\bin\scenario\netstandard2.0\scenario.dll, ···]
Stack Trace:
at NuGetizer.InlineProjectTests.when_packagepath_ends_in_path_then_packs_basedir_dir() in /
/src/NuGetizer.Tests/InlineProjectTests.cs:line 1048
Assert.Contains() Failure: Filter not matched in collection
Results File: C:\Users\runneradmin\AppData\Local\Temp\ac1e1ef6e10544a98ba1afb04c8fb41c\runneradmin_runnervmybtk3_2026-01-15_04_59_10.trx

Co-authored-by: kzu <169707+kzu@users.noreply.github.com>

Copilot AI commented Jan 15, 2026

Copy link
Copy Markdown
Contributor Author

@copilot progress!! it seems the only remaining couple bugs are path-related:

NuGetizer.InlineProjectTests.when_package_icon_relative_folder_default_then_packs_icon [FAIL]...

Fixed in a8161c8. Reverted these tests to their original Windows path format (using backslashes in MSBuild project XML) and marked them with [RuntimeFact("Windows")] since the backslash paths are Windows-specific:

  • when_package_icon_relative_folder_default_then_packs_icon
  • when_packagepath_ends_in_path_then_packs_recursive_dir
  • when_packagepath_ends_in_path_then_packs_basedir_dir

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • kzu.blob.core.windows.net
    • Triggering command: /usr/bin/dotnet dotnet build src/NuGetizer.Tests/NuGetizer.Tests.csproj (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kzu
kzu merged commit bb5de0b into main Jan 15, 2026
4 checks passed
@kzu
kzu deleted the copilot/enable-cross-platform-testing branch January 15, 2026 05:40
@devlooped devlooped locked and limited conversation to collaborators Feb 15, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants