From b8d2e61801480569f175a46462caf83bec0324f9 Mon Sep 17 00:00:00 2001 From: Jared Parsons Date: Sun, 6 Feb 2022 21:07:02 -0800 Subject: [PATCH] Remove netstandard1.3 from code base (#59177) * Remove netstandard1.3 from code base The remote debugger components moved to their minimum framework install to 4.6.2 where it was previously 2.0. That means we can remove the uses of `netstandard1.3` in our code base as they existed just to support this specific case. This means we can also remove our use of `net2.0` in the code base and replace it with `net462`. That is a more involved changed though and going to take that a piece at a time. Removing `netstandard1.3` is an important step because presently it's blocking us from updating to the latest System.Collections.Immutable as it dropped support for `netstandard1.3` * Revert change to generated file * Revert changes to our source dist packages * Fix rebuild exclusion * test issues * fix --- .../Core/Portable/CaseInsensitiveComparison.cs | 8 ++++---- .../Core/Portable/InternalUtilities/FailFast.cs | 6 +----- .../Core/Portable/InternalUtilities/FatalError.cs | 2 +- ...osoft.CodeAnalysis.CSharp.ResultProvider.csproj | 3 +-- .../Microsoft.CodeAnalysis.FunctionResolver.csproj | 3 +-- .../Microsoft.CodeAnalysis.ResultProvider.csproj | 4 ++-- .../Package/ExpressionEvaluatorPackage.csproj | 2 +- ....CodeAnalysis.VisualBasic.ResultProvider.vbproj | 3 +-- .../VS.ExternalAPIs.Roslyn.Package.csproj | 14 +++++++------- 9 files changed, 19 insertions(+), 26 deletions(-) diff --git a/src/Compilers/Core/Portable/CaseInsensitiveComparison.cs b/src/Compilers/Core/Portable/CaseInsensitiveComparison.cs index 937429ff7b6b1..865c51408aaf7 100644 --- a/src/Compilers/Core/Portable/CaseInsensitiveComparison.cs +++ b/src/Compilers/Core/Portable/CaseInsensitiveComparison.cs @@ -117,7 +117,7 @@ public override int Compare(string? str1, string? str2) return str1.Length - str2.Length; } -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 public int Compare(ReadOnlySpan str1, ReadOnlySpan str2) { int len = Math.Min(str1.Length, str2.Length); @@ -168,7 +168,7 @@ public override bool Equals(string? str1, string? str2) return true; } -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 public bool Equals(ReadOnlySpan str1, ReadOnlySpan str2) { if (str1.Length != str2.Length) @@ -293,7 +293,7 @@ public override int GetHashCode(string str) /// public static bool Equals(string left, string right) => s_comparer.Equals(left, right); -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 /// /// Determines if two strings are equal according to Unicode rules for case-insensitive /// identifier comparison (lower-case mapping). @@ -335,7 +335,7 @@ public override int GetHashCode(string str) /// public static int Compare(string left, string right) => s_comparer.Compare(left, right); -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 /// /// Compares two strings according to the Unicode rules for case-insensitive /// identifier comparison (lower-case mapping). diff --git a/src/Compilers/Core/Portable/InternalUtilities/FailFast.cs b/src/Compilers/Core/Portable/InternalUtilities/FailFast.cs index 3260ed46f5beb..b53cf5cea8948 100644 --- a/src/Compilers/Core/Portable/InternalUtilities/FailFast.cs +++ b/src/Compilers/Core/Portable/InternalUtilities/FailFast.cs @@ -20,9 +20,7 @@ internal static class FailFast [DebuggerHidden] [DoesNotReturn] -#if !NETSTANDARD1_3 [MethodImpl(MethodImplOptions.Synchronized)] -#endif internal static void OnFatalException(Exception exception) { // EDMAURER Now using the managed API to fail fast so as to default @@ -49,9 +47,7 @@ internal static void OnFatalException(Exception exception) [DebuggerHidden] [DoesNotReturn] -#if !NETSTANDARD1_3 [MethodImpl(MethodImplOptions.Synchronized)] -#endif internal static void Fail(string message) { DumpStackTrace(message: message); @@ -82,7 +78,7 @@ internal static void DumpStackTrace(Exception? exception = null, string? message } } -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 Console.WriteLine("Stack trace of handler"); var stackTrace = new StackTrace(); Console.WriteLine(stackTrace.ToString()); diff --git a/src/Compilers/Core/Portable/InternalUtilities/FatalError.cs b/src/Compilers/Core/Portable/InternalUtilities/FatalError.cs index 92d5741a69472..af766990930ed 100644 --- a/src/Compilers/Core/Portable/InternalUtilities/FatalError.cs +++ b/src/Compilers/Core/Portable/InternalUtilities/FatalError.cs @@ -60,7 +60,7 @@ public static void OverwriteHandler(ErrorReporterHandler? value) // In the result provider, we aren't copying our handler to somewhere else, so we don't // need this method. It's too much of a challenge to shared code to work in // old versions of the runtime since APIs changed over time. -#if !NET20 && !NETSTANDARD1_3 +#if !NET20 /// /// Copies the handler in this instance to the linked copy of this type in this other assembly. diff --git a/src/ExpressionEvaluator/CSharp/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.CSharp.ResultProvider.csproj b/src/ExpressionEvaluator/CSharp/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.CSharp.ResultProvider.csproj index 230395a943404..b984824f83ed2 100644 --- a/src/ExpressionEvaluator/CSharp/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.CSharp.ResultProvider.csproj +++ b/src/ExpressionEvaluator/CSharp/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.CSharp.ResultProvider.csproj @@ -5,8 +5,7 @@ Library Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ResultProvider - - netstandard1.3 + netstandard2.0 full diff --git a/src/ExpressionEvaluator/Core/Source/FunctionResolver/Microsoft.CodeAnalysis.FunctionResolver.csproj b/src/ExpressionEvaluator/Core/Source/FunctionResolver/Microsoft.CodeAnalysis.FunctionResolver.csproj index 72d0cac354d38..e1f9cf121dabc 100644 --- a/src/ExpressionEvaluator/Core/Source/FunctionResolver/Microsoft.CodeAnalysis.FunctionResolver.csproj +++ b/src/ExpressionEvaluator/Core/Source/FunctionResolver/Microsoft.CodeAnalysis.FunctionResolver.csproj @@ -6,8 +6,7 @@ Microsoft.CodeAnalysis.ExpressionEvaluator Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver true - - net45;netstandard1.3 + net45;netstandard2.0 diff --git a/src/ExpressionEvaluator/Core/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.ResultProvider.csproj b/src/ExpressionEvaluator/Core/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.ResultProvider.csproj index 12de7084e861c..740281bca5615 100644 --- a/src/ExpressionEvaluator/Core/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.ResultProvider.csproj +++ b/src/ExpressionEvaluator/Core/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.ResultProvider.csproj @@ -5,8 +5,7 @@ Library Microsoft.CodeAnalysis.ExpressionEvaluator Microsoft.CodeAnalysis.ExpressionEvaluator.ResultProvider - - netstandard1.3 + netstandard2.0 full @@ -78,6 +77,7 @@ + \ No newline at end of file diff --git a/src/ExpressionEvaluator/Package/ExpressionEvaluatorPackage.csproj b/src/ExpressionEvaluator/Package/ExpressionEvaluatorPackage.csproj index fb28bdb6c0f7e..457732308ebdc 100644 --- a/src/ExpressionEvaluator/Package/ExpressionEvaluatorPackage.csproj +++ b/src/ExpressionEvaluator/Package/ExpressionEvaluatorPackage.csproj @@ -35,7 +35,7 @@ BuiltProjectOutputGroup%3bVsdConfigOutputGroup;SatelliteDllsProjectOutputGroup DebugSymbolsProjectOutputGroup true - TargetFramework=netstandard1.3 + TargetFramework=netstandard2.0 BindingRedirect diff --git a/src/ExpressionEvaluator/VisualBasic/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.VisualBasic.ResultProvider.vbproj b/src/ExpressionEvaluator/VisualBasic/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.VisualBasic.ResultProvider.vbproj index 6e5c1b8f8cba3..459fd83d79d62 100644 --- a/src/ExpressionEvaluator/VisualBasic/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.VisualBasic.ResultProvider.vbproj +++ b/src/ExpressionEvaluator/VisualBasic/Source/ResultProvider/Portable/Microsoft.CodeAnalysis.VisualBasic.ResultProvider.vbproj @@ -4,8 +4,7 @@ Library Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ResultProvider - - netstandard1.3 + netstandard2.0 diff --git a/src/NuGet/VisualStudio/VS.ExternalAPIs.Roslyn.Package.csproj b/src/NuGet/VisualStudio/VS.ExternalAPIs.Roslyn.Package.csproj index cd1b782a9970f..a37588aae1c42 100644 --- a/src/NuGet/VisualStudio/VS.ExternalAPIs.Roslyn.Package.csproj +++ b/src/NuGet/VisualStudio/VS.ExternalAPIs.Roslyn.Package.csproj @@ -100,10 +100,10 @@ <_File Include="$(ArtifactsBinDir)Microsoft.VisualStudio.LanguageServices.Xaml\$(Configuration)\net472\Microsoft.VisualStudio.LanguageServices.Xaml.dll" TargetDir="" /> <_File Include="$(ArtifactsBinDir)Microsoft.VisualStudio.LanguageServices\$(Configuration)\net472\Microsoft.VisualStudio.LanguageServices.dll" TargetDir="" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.ResultProvider\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ResultProvider\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ResultProvider\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.FunctionResolver\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.dll" TargetDir="" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.ResultProvider\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ResultProvider\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ResultProvider\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ResultProvider.dll" TargetDir="" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.FunctionResolver\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.dll" TargetDir="" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ExpressionCompiler\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ExpressionCompiler.dll" TargetDir="" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ExpressionCompiler\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.dll" TargetDir="" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.ExpressionCompiler\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.ExpressionEvaluator.ExpressionCompiler.dll" TargetDir="" /> @@ -113,10 +113,10 @@ <_File Include="$(ArtifactsBinDir)ResultProvider.NetFX20\$(Configuration)\net20\Microsoft.CodeAnalysis.ExpressionEvaluator.ResultProvider.dll" TargetDir="RemoteDebugger\net20" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.FunctionResolver\$(Configuration)\net45\Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.dll" TargetDir="RemoteDebugger\net45" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ResultProvider\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ResultProvider.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ResultProvider\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ResultProvider.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.CSharp.ExpressionCompiler\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.CSharp.ExpressionEvaluator.ExpressionCompiler.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ResultProvider\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ResultProvider.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> - <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.FunctionResolver\$(Configuration)\netstandard1.3\Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ResultProvider\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ResultProvider.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> + <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.FunctionResolver\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.ExpressionEvaluator.FunctionResolver.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" /> <_File Include="$(ArtifactsBinDir)Microsoft.CodeAnalysis.VisualBasic.ExpressionCompiler\$(Configuration)\netstandard2.0\Microsoft.CodeAnalysis.VisualBasic.ExpressionEvaluator.ExpressionCompiler.vsdconfig" TargetDir="LanguageServiceRegistration\ExpressionEvaluatorPackage" />