Skip to content

Conversation

@brianrob
Copy link
Member

@brianrob brianrob commented May 7, 2021

Summary

When multiple versions of NuGet.Frameworks.dll get loaded, the first one wins. Since MSBuild depends on this DLL, it means that if someone else loads the DLL first and it doesn't match the version that MSBuild carries, then this breaks MSBuild. The original change was made to improve performance by reducing jitting from the Nuget* DLLs, but it seems that the compatibility tail is too high.

This change reverts the assembly loading behavior to its previous state. We can reevaluate options for SDK 6.0.

Fixes #6377.

Customer Impact

MSBuild API consumers that use NuGet references fail. This includes all users of Microsoft.NET.Test.Sdk.

Regression?

Yes. Worked in 16.9, regressed in 16.10 with #6126.

Testing

Manual patching of SDK works with repro project; reversion to prior behavior.

Risk

Low. Reversion to prior behavior.

brianrob added 3 commits May 6, 2021 20:52
…ks.dll to avoid multiple loads of the same assembly in different contexts."

This reverts commit 0fc8263.
Copy link
Contributor

@Forgind Forgind left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

😢

@rainersigwald
Copy link
Member

LGTM. Marked servicing-consider.

@rainersigwald rainersigwald merged commit 5ffb4fd into dotnet:vs16.10 May 11, 2021
JaynieBai pushed a commit that referenced this pull request Feb 8, 2023
)

Bumps Microsoft.CodeAnalysis.BannedApiAnalyzers from 3.3.3 to 3.3.4.

Release notes
Sourced from Microsoft.CodeAnalysis.BannedApiAnalyzers's releases.

v3.3.4
Release build of Roslyn-analyzers based on Microsoft.CodeAnalysis 3.3.1 NuGet packages. Works with VS 2019 16.9 or later.

Contains important functionality and performance bug fixes on top of v3.3.3 release
Commits
22ea642 Merge pull request #6436 from ViktorHofer/patch-1
9018071 Fix buildtransitive vs buildTransitive difference
afa5665 [main] Update dependencies from dotnet/arcade (#6423)
afee469 Merge pull request #6427 from mavasani/CodeAnalysisTreatWarningsAsErrors_Glob...
b858999 Merge pull request #6430 from dotnet/locfiles/be3abf9f-1f22-469b-b26d-7648587...
0cbc3c5 Localized file check-in by OneLocBuild Task: Build definition ID 830: Build I...
113dadc Merge pull request #6429 from dotnet/revert-6364-net7-tests
356147f Revert "Move tests to target .NET 7"
1d7244a Update documentation for CodeAnalysisTreatWarningsAsErrors implementation
6c028d3 Re-implement CodeAnalysisTreatWarningsAsErrors with globalconfig files
Additional commits viewable in compare view
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants