Change tool TFMs to net6.0 and drop 3.1 hosting support (#3588)
authorJuan Hoyos <juan.s.hoyos@outlook.com>
Tue, 10 Jan 2023 21:41:12 +0000 (13:41 -0800)
committerGitHub <noreply@github.com>
Tue, 10 Jan 2023 21:41:12 +0000 (13:41 -0800)
* Remove 3.1 as target rid, move to 6.0, drop 3.1 testing
* Fix missing pieces to drop 3.1 build and test
* Remove netcoreapp3.1 hosting for SOS.
* Stop using 6.0.12 prebuilts - limit Microsoft.NETCore.Client to netstandard2.0 on SourceBuild
* Remove references to net5.0

Co-authored-by: kasperk81 <83082615+kasperk81@users.noreply.github.com>
44 files changed:
eng/AuxMsbuildFiles/SdkPackOverrides.targets
eng/Build-Native.cmd
eng/CleanupPrivateBuild.csproj [deleted file]
eng/CleanupPrivateBuild.proj [new file with mode: 0644]
eng/CreateVersionFile.csproj [deleted file]
eng/CreateVersionFile.proj [new file with mode: 0644]
eng/InstallRuntimes.proj
eng/SourceBuildPrebuiltBaseline.xml
eng/Versions.props
eng/build.ps1
eng/build.sh
eng/configure-toolset.ps1 [deleted file]
eng/configure-toolset.sh [deleted file]
global.json
src/Microsoft.Diagnostics.NETCore.Client/Microsoft.Diagnostics.NETCore.Client.csproj
src/Microsoft.Diagnostics.TestHelpers/AcquireDotNetTestStep.cs
src/Microsoft.Diagnostics.TestHelpers/CliDebuggeeCompiler.cs
src/Microsoft.Diagnostics.TestHelpers/Microsoft.Diagnostics.TestHelpers.csproj
src/SOS/SOS.UnitTests/ConfigFiles/Unix/Debugger.Tests.Config.txt
src/SOS/SOS.UnitTests/ConfigFiles/Windows/Debugger.Tests.Config.txt
src/SOS/SOS.UnitTests/Debuggees/DesktopClrHost/CMakeLists.txt
src/SOS/SOS.UnitTests/Debuggees/Directory.Build.props
src/SOS/extensions/hostcoreclr.cpp
src/SOS/lldbplugin.tests/TestDebuggee/TestDebuggee.csproj
src/Tools/Directory.Build.props
src/Tools/dotnet-counters/dotnet-counters.csproj
src/Tools/dotnet-dump/dotnet-dump.csproj
src/Tools/dotnet-gcdump/dotnet-gcdump.csproj
src/Tools/dotnet-sos/dotnet-sos.csproj
src/Tools/dotnet-stack/dotnet-stack.csproj
src/Tools/dotnet-trace/CommandLine/PrintReportHelper.cs
src/Tools/dotnet-trace/dotnet-trace.csproj
src/singlefile-tools.proj
src/tests/CommonTestRunner/CommonTestRunner.csproj
src/tests/CommonTestRunner/ConfigFiles/Unix/Debugger.Tests.Config.txt
src/tests/CommonTestRunner/ConfigFiles/Windows/Debugger.Tests.Config.txt
src/tests/DacCompareNativeTypes/DacCompareNativeTypes.csproj
src/tests/Directory.Build.props
src/tests/EventPipeTracee/EventPipeTracee.csproj
src/tests/ExitCodeTracee/ExitCodeTracee.csproj
src/tests/Grape/Grape.csproj
src/tests/StackTracee/StackTracee.csproj
src/tests/Tracee/Tracee.csproj
src/tests/benchmarks/benchmarks.csproj

index 6251cd23893dd443ad5f48941babdd36dfae2d0d..710727a87c3112bd71d62c30ef5beb5600d965d5 100644 (file)
       <KnownRuntimePack>
         <LatestRuntimeFrameworkVersion Condition="'%(TargetFramework)' == 'net6.0'">$(MicrosoftNETCoreApp60Version)</LatestRuntimeFrameworkVersion>
       </KnownRuntimePack>
-
-      <KnownFrameworkReference>
-        <LatestRuntimeFrameworkVersion Condition="'%(TargetFramework)' == 'netcoreapp3.1'">$(MicrosoftNETCoreApp31Version)</LatestRuntimeFrameworkVersion>
-      </KnownFrameworkReference>
-      <KnownAppHostPack>
-        <AppHostPackVersion Condition="'%(TargetFramework)' == 'netcoreapp3.1'">$(MicrosoftNETCoreApp31Version)</AppHostPackVersion>
-      </KnownAppHostPack>
     </ItemGroup>
   </Target>
 </Project>
\ No newline at end of file
index bf16c8a02eb891004659368dfd215badfdaff042..7af07daa6deda61eb7056d7e868f8a8598dd4026 100644 (file)
@@ -179,7 +179,7 @@ if /i %__BuildCrossArch% EQU 1 (
 
     echo Generating Version Header
     set __GenerateVersionLog="%__LogDir%\GenerateVersion.binlog"
-    powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__ProjectDir%\eng\common\msbuild.ps1" "%__ProjectDir%\eng\CreateVersionFile.csproj" /bl:!__GenerateVersionLog! /t:GenerateVersionFiles /restore /p:FileVersionFile=%__RootBinDir%\bin\FileVersion.txt /p:GenerateVersionHeader=true /p:NativeVersionHeaderFile=%__ArtifactsIntermediatesDir%\_version.h %__CommonBuildArgs%
+    powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__ProjectDir%\eng\common\msbuild.ps1" "%__ProjectDir%\eng\CreateVersionFile.proj" /bl:!__GenerateVersionLog! /t:GenerateVersionFiles /restore /p:FileVersionFile=%__RootBinDir%\bin\FileVersion.txt /p:GenerateVersionHeader=true /p:NativeVersionHeaderFile=%__ArtifactsIntermediatesDir%\_version.h %__CommonBuildArgs%
     if not !errorlevel! == 0 (
         echo Generate Version Header FAILED
         goto ExitWithError
@@ -253,7 +253,7 @@ if %__Build% EQU 1 (
 
     echo Generating Version Header
     set __GenerateVersionLog="%__LogDir%\GenerateVersion.binlog"
-    powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__ProjectDir%\eng\common\msbuild.ps1" "%__ProjectDir%\eng\CreateVersionFile.csproj" /bl:!__GenerateVersionLog! /t:GenerateVersionFiles /restore /p:FileVersionFile=%__RootBinDir%\bin\FileVersion.txt /p:GenerateVersionHeader=true /p:NativeVersionHeaderFile=%__ArtifactsIntermediatesDir%\_version.h %__CommonBuildArgs%
+    powershell -NoProfile -ExecutionPolicy ByPass -NoLogo -File "%__ProjectDir%\eng\common\msbuild.ps1" "%__ProjectDir%\eng\CreateVersionFile.proj" /bl:!__GenerateVersionLog! /t:GenerateVersionFiles /restore /p:FileVersionFile=%__RootBinDir%\bin\FileVersion.txt /p:GenerateVersionHeader=true /p:NativeVersionHeaderFile=%__ArtifactsIntermediatesDir%\_version.h %__CommonBuildArgs%
     if not !errorlevel! == 0 (
         echo Generate Version Header FAILED
         goto ExitWithError
@@ -296,8 +296,9 @@ if %__Build% EQU 1 (
 
 REM Copy the native SOS binaries to where these tools expect for CI & VS testing
 
-set "__dotnet_sos=%__RootBinDir%\bin\dotnet-sos\%__BuildType%\netcoreapp3.1"
-set "__dotnet_dump=%__RootBinDir%\bin\dotnet-dump\%__BuildType%\netcoreapp3.1"
+set "__targetRid=net6.0"
+set "__dotnet_sos=%__RootBinDir%\bin\dotnet-sos\%__BuildType%\%__targetRid%"
+set "__dotnet_dump=%__RootBinDir%\bin\dotnet-dump\%__BuildType%\%__targetRid%"
 mkdir %__dotnet_sos%\win-%__BuildArch%
 mkdir %__dotnet_sos%\publish\win-%__BuildArch%
 mkdir %__dotnet_dump%\win-%__BuildArch%
diff --git a/eng/CleanupPrivateBuild.csproj b/eng/CleanupPrivateBuild.csproj
deleted file mode 100644 (file)
index bb22950..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<Project Sdk="Microsoft.NET.Sdk">
-  <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
-  </PropertyGroup>
-  
-  <Import Project="$(RepositoryEngineeringDir)\InstallRuntimes.proj" />
-</Project>
-
diff --git a/eng/CleanupPrivateBuild.proj b/eng/CleanupPrivateBuild.proj
new file mode 100644 (file)
index 0000000..7f48d9c
--- /dev/null
@@ -0,0 +1,9 @@
+<Project Sdk="Microsoft.Build.NoTargets">
+  <PropertyGroup>
+    <TargetFramework>netstandard2.0</TargetFramework>
+    <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    <SkipGetTargetFrameworkProperties>false</SkipGetTargetFrameworkProperties>
+  </PropertyGroup> 
+
+  <Import Project="$(RepositoryEngineeringDir)\InstallRuntimes.proj" />
+</Project>
diff --git a/eng/CreateVersionFile.csproj b/eng/CreateVersionFile.csproj
deleted file mode 100644 (file)
index f3d5d14..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-<!-- All Rights Reserved. Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE file in the project root for more information. -->
-<Project Sdk="Microsoft.NET.Sdk">
-  <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
-  </PropertyGroup>
-
-  <Target Name="GenerateVersionFiles" DependsOnTargets="GenerateVersionHeader;GenerateVersionSourceFile" />
-
-  <Target Name="GenerateVersionHeader" DependsOnTargets="GetAssemblyVersion;AddSourceRevisionToInformationalVersion" Condition="'$(NativeVersionHeaderFile)' != '' and '$(GenerateVersionHeader)' == 'true' and !Exists($(NativeVersionHeaderFile))">
-
-    <Error Message="VersionSuffixDateStamp is missing" Condition="'$(VersionSuffixDateStamp)' == ''" />
-
-    <PropertyGroup>
-      <ProductVersion>$(FileVersion.Replace(".", ","))</ProductVersion>
-    </PropertyGroup>
-
-    <PropertyGroup>
-      <NativeVersionLines>
-<![CDATA[
-#ifndef VER_COMPANYNAME_STR
-#define VER_COMPANYNAME_STR         "Microsoft Corporation"
-#endif
-#ifndef VER_PRODUCTNAME_STR
-#define VER_PRODUCTNAME_STR         "Microsoft\xae .NET Framework"
-#endif
-#undef VER_PRODUCTVERSION
-#define VER_PRODUCTVERSION          $(ProductVersion)
-#undef VER_PRODUCTVERSION_STR
-#define VER_PRODUCTVERSION_STR      "$(InformationalVersion)"
-#undef VER_FILEVERSION
-#define VER_FILEVERSION             $(ProductVersion)  
-#undef VER_FILEVERSION_STR
-#define VER_FILEVERSION_STR         "$(FileVersion)"
-#ifndef VER_LEGALCOPYRIGHT_STR
-#define VER_LEGALCOPYRIGHT_STR      "\xa9 Microsoft Corporation. All rights reserved."
-#endif
-]]>
-      </NativeVersionLines>
-    </PropertyGroup>
-
-    <WriteLinesToFile File="$(NativeVersionHeaderFile)"
-                      Lines="$(NativeVersionLines.Replace(';', '%3B'))"
-                      Overwrite="true"
-                      WriteOnlyWhenDifferent="true" />
-
-    <ItemGroup>
-      <FileWrites Include="$(NativeVersionHeaderFile)" />
-    </ItemGroup>
-
-    <Message Importance="High" Text="Created version file $(NativeVersionHeaderFile)" />
-  </Target>
-
-  <!-- Non Windows versioning requires to generate a source file and include it on the compilation. -->
-  <Target Name="GenerateVersionSourceFile" DependsOnTargets="GetAssemblyVersion;AddSourceRevisionToInformationalVersion" Condition="'$(NativeVersionSourceFile)' != '' and '$(GenerateVersionSourceFile)' == 'true' and !Exists($(NativeVersionHeaderFile))">
-
-    <!-- Get Username -->
-    <PropertyGroup>
-      <VersionUserName Condition="'$(VersionUserName)' == ''">$(USERNAME)</VersionUserName>
-    </PropertyGroup>
-
-    <Exec Command="whoami" Condition="'$(VersionUserName)' == ''" StandardOutputImportance="Low" IgnoreExitCode="true" IgnoreStandardErrorWarningFormat="true" ConsoleToMSBuild="true">
-      <Output TaskParameter="ConsoleOutput" PropertyName="VersionUserName" />
-    </Exec>
-
-    <!-- Get Hostname -->
-    <PropertyGroup>
-      <VersionHostName Condition="'$(VersionHostName)' == ''">$(COMPUTERNAME)</VersionHostName>
-    </PropertyGroup>
-
-    <Exec Command="hostname" Condition="'$(RunningOnUnix)'=='true' AND '$(VersionHostName)'==''" StandardOutputImportance="Low" IgnoreExitCode="true" IgnoreStandardErrorWarningFormat="true" ConsoleToMSBuild="true">
-      <Output TaskParameter="ConsoleOutput" PropertyName="VersionHostName" />
-    </Exec>
-
-    <PropertyGroup>
-      <BuiltByString Condition="'$(VersionUserName)' != '' AND '$(VersionHostName)' != ''">$(BuiltByString) %40BuiltBy: $(VersionUserName)-$(VersionHostName)</BuiltByString>
-    </PropertyGroup>
-
-    <PropertyGroup>
-      <!-- SOS (strike.cpp) has a dependency on this variable being public and that it begins with the @(#)Version prefix -->
-      <NativeVersionLines>
-<![CDATA[
-char sccsid[] __attribute__((used)) = "@(#)Version $(InformationalVersion)$(BuiltByString)";
- ]]>
-      </NativeVersionLines>
-    </PropertyGroup>
-
-    <WriteLinesToFile File="$(NativeVersionSourceFile)"
-                      Lines="$(NativeVersionLines.Replace(';', '%3B'))"
-                      Overwrite="true"
-                      WriteOnlyWhenDifferent="true" />
-
-    <ItemGroup>
-      <FileWrites Include="$(NativeVersionSourceFile)" />
-    </ItemGroup>
-
-    <Message Importance="High" Text="Created version file $(NativeVersionSourceFile)" />
-  </Target>
-</Project>
diff --git a/eng/CreateVersionFile.proj b/eng/CreateVersionFile.proj
new file mode 100644 (file)
index 0000000..0ebcdee
--- /dev/null
@@ -0,0 +1,100 @@
+<!-- All Rights Reserved. Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE file in the project root for more information. -->
+<Project Sdk="Microsoft.Build.NoTargets">
+  <PropertyGroup>
+    <TargetFramework>netstandard2.0</TargetFramework>
+    <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    <SkipGetTargetFrameworkProperties>false</SkipGetTargetFrameworkProperties>
+  </PropertyGroup>  
+
+  <Target Name="GenerateVersionFiles" DependsOnTargets="GenerateVersionHeader;GenerateVersionSourceFile" />
+
+  <Target Name="GenerateVersionHeader" DependsOnTargets="GetAssemblyVersion;AddSourceRevisionToInformationalVersion" Condition="'$(NativeVersionHeaderFile)' != '' and '$(GenerateVersionHeader)' == 'true' and !Exists($(NativeVersionHeaderFile))">
+
+    <Error Message="VersionSuffixDateStamp is missing" Condition="'$(VersionSuffixDateStamp)' == ''" />
+
+    <PropertyGroup>
+      <ProductVersion>$(FileVersion.Replace(".", ","))</ProductVersion>
+    </PropertyGroup>
+
+    <PropertyGroup>
+      <NativeVersionLines>
+<![CDATA[
+#ifndef VER_COMPANYNAME_STR
+#define VER_COMPANYNAME_STR         "Microsoft Corporation"
+#endif
+#ifndef VER_PRODUCTNAME_STR
+#define VER_PRODUCTNAME_STR         "Microsoft\xae .NET Framework"
+#endif
+#undef VER_PRODUCTVERSION
+#define VER_PRODUCTVERSION          $(ProductVersion)
+#undef VER_PRODUCTVERSION_STR
+#define VER_PRODUCTVERSION_STR      "$(InformationalVersion)"
+#undef VER_FILEVERSION
+#define VER_FILEVERSION             $(ProductVersion)  
+#undef VER_FILEVERSION_STR
+#define VER_FILEVERSION_STR         "$(FileVersion)"
+#ifndef VER_LEGALCOPYRIGHT_STR
+#define VER_LEGALCOPYRIGHT_STR      "\xa9 Microsoft Corporation. All rights reserved."
+#endif
+]]>
+      </NativeVersionLines>
+    </PropertyGroup>
+
+    <WriteLinesToFile File="$(NativeVersionHeaderFile)"
+                      Lines="$(NativeVersionLines.Replace(';', '%3B'))"
+                      Overwrite="true"
+                      WriteOnlyWhenDifferent="true" />
+
+    <ItemGroup>
+      <FileWrites Include="$(NativeVersionHeaderFile)" />
+    </ItemGroup>
+
+    <Message Importance="High" Text="Created version file $(NativeVersionHeaderFile)" />
+  </Target>
+
+  <!-- Non Windows versioning requires to generate a source file and include it on the compilation. -->
+  <Target Name="GenerateVersionSourceFile" DependsOnTargets="GetAssemblyVersion;AddSourceRevisionToInformationalVersion" Condition="'$(NativeVersionSourceFile)' != '' and '$(GenerateVersionSourceFile)' == 'true' and !Exists($(NativeVersionHeaderFile))">
+
+    <!-- Get Username -->
+    <PropertyGroup>
+      <VersionUserName Condition="'$(VersionUserName)' == ''">$(USERNAME)</VersionUserName>
+    </PropertyGroup>
+
+    <Exec Command="whoami" Condition="'$(VersionUserName)' == ''" StandardOutputImportance="Low" IgnoreExitCode="true" IgnoreStandardErrorWarningFormat="true" ConsoleToMSBuild="true">
+      <Output TaskParameter="ConsoleOutput" PropertyName="VersionUserName" />
+    </Exec>
+
+    <!-- Get Hostname -->
+    <PropertyGroup>
+      <VersionHostName Condition="'$(VersionHostName)' == ''">$(COMPUTERNAME)</VersionHostName>
+    </PropertyGroup>
+
+    <Exec Command="hostname" Condition="'$(RunningOnUnix)'=='true' AND '$(VersionHostName)'==''" StandardOutputImportance="Low" IgnoreExitCode="true" IgnoreStandardErrorWarningFormat="true" ConsoleToMSBuild="true">
+      <Output TaskParameter="ConsoleOutput" PropertyName="VersionHostName" />
+    </Exec>
+
+    <PropertyGroup>
+      <BuiltByString Condition="'$(VersionUserName)' != '' AND '$(VersionHostName)' != ''">$(BuiltByString) %40BuiltBy: $(VersionUserName)-$(VersionHostName)</BuiltByString>
+    </PropertyGroup>
+
+    <PropertyGroup>
+      <!-- SOS (strike.cpp) has a dependency on this variable being public and that it begins with the @(#)Version prefix -->
+      <NativeVersionLines>
+<![CDATA[
+char sccsid[] __attribute__((used)) = "@(#)Version $(InformationalVersion)$(BuiltByString)";
+ ]]>
+      </NativeVersionLines>
+    </PropertyGroup>
+
+    <WriteLinesToFile File="$(NativeVersionSourceFile)"
+                      Lines="$(NativeVersionLines.Replace(';', '%3B'))"
+                      Overwrite="true"
+                      WriteOnlyWhenDifferent="true" />
+
+    <ItemGroup>
+      <FileWrites Include="$(NativeVersionSourceFile)" />
+    </ItemGroup>
+
+    <Message Importance="High" Text="Created version file $(NativeVersionSourceFile)" />
+  </Target>
+</Project>
index eac7bdc378ce87c0f06fea38bd749b9ec0c8f43c..5e466ed3ad2b90d174faf93aebb980f12d23bb3f 100644 (file)
@@ -22,7 +22,6 @@
      $(MicrosoftAspNetCoreAppRefVersion)                        - latest dotnet aspnetcore stable version (the version that actually is installed)
 
      $(MicrosoftNETCoreApp60Version) $(MicrosoftAspNetCoreApp60Version) - 6.0 version
-     $(MicrosoftNETCoreApp31Version) $(MicrosoftAspNetCoreApp31Version) - 3.1 version
 
      $(SingleFileRuntimeLatestVersion)  - The latest version of the runtime used to build single-file apps
      $(SingleFileRuntime60Version)      - The 6.0.x version of the runtime used to build single-file apps
@@ -86,7 +85,6 @@
   <ItemGroup Condition="!$(InternalReleaseTesting) and !$(PrivateBuildTesting)">
     <TestVersions Include="Latest" RuntimeVersion="$(VSRedistCommonNetCoreSharedFrameworkx6470Version)" AspNetVersion="$(MicrosoftAspNetCoreAppRefInternalVersion)" />
     <TestVersions Include="60" RuntimeVersion="$(MicrosoftNETCoreApp60Version)" AspNetVersion="$(MicrosoftAspNetCoreApp60Version)" />
-    <TestVersions Include="31" RuntimeVersion="$(MicrosoftNETCoreApp31Version)" AspNetVersion="$(MicrosoftAspNetCoreApp31Version)" Condition="$(Enable31Testing)" />
   </ItemGroup>
 
   <!-- Local private build testing -->
           Outputs="$(TestConfigFileName)">
 
     <PropertyGroup Condition="'$(PrivateBuildTesting)' != 'true' AND '$(InternalReleaseTesting)' != 'true'">
-      <RuntimeVersion31 Condition="$(Enable31Testing)">$(MicrosoftNETCoreApp31Version)</RuntimeVersion31>
-      <AspNetCoreVersion31 Condition="$(Enable31Testing)">$(MicrosoftAspNetCoreApp31Version)</AspNetCoreVersion31>
-
       <RuntimeVersion60>$(MicrosoftNETCoreApp60Version)</RuntimeVersion60>
       <AspNetCoreVersion60>$(MicrosoftAspNetCoreApp60Version)</AspNetCoreVersion60>
+      <!-- TODO: Add others -->
     </PropertyGroup>
 
     <PropertyGroup>
index 941c37c4be4468127b0b285cefb0a6e88a01aa10..26918f1556cd8bcda2bb4849eea67ffe3d16e477 100644 (file)
@@ -2,4 +2,4 @@
   <IgnorePatterns>
     <UsagePattern IdentityGlob="Microsoft.SourceBuild.Intermediate.*" />
   </IgnorePatterns>
-</UsageData>
+</UsageData>
\ No newline at end of file
index bbd188777fb79aacabfe3ef536300c1ad513cd2b..c78e1f2593d2a8c77fe0feb2c26fee255118b1f7 100644 (file)
@@ -28,8 +28,6 @@
   </PropertyGroup>
   <PropertyGroup>
     <!-- Runtime versions to test -->
-    <MicrosoftNETCoreApp31Version>3.1.28</MicrosoftNETCoreApp31Version>
-    <MicrosoftAspNetCoreApp31Version>$(MicrosoftNETCoreApp31Version)</MicrosoftAspNetCoreApp31Version>
     <MicrosoftNETCoreApp60Version>6.0.8</MicrosoftNETCoreApp60Version>
     <MicrosoftAspNetCoreApp60Version>$(MicrosoftNETCoreApp60Version)</MicrosoftAspNetCoreApp60Version>
     <!-- The SDK runtime version used to build single-file apps (currently hardcoded) -->
index 722f061bcc4a556d86151989ef5a38d77474ba0e..b107d420882ea8caf2d3d71d7d39ea1138142e86 100644 (file)
@@ -53,7 +53,7 @@ if ($bundletools) {
 
 # Remove the private build registry keys
 if ($cleanupprivatebuild) {
-    Invoke-Expression "& `"$engroot\common\msbuild.ps1`" $engroot\CleanupPrivateBuild.csproj /v:$verbosity /t:CleanupPrivateBuild /p:BuildArch=$architecture /p:TestArchitectures=$architecture"
+    Invoke-Expression "& `"$engroot\common\msbuild.ps1`" $engroot\CleanupPrivateBuild.proj /v:$verbosity /t:CleanupPrivateBuild /p:BuildArch=$architecture /p:TestArchitectures=$architecture"
     exit $lastExitCode
 }
 
index 2b15f23fb9b5eaf2946e268f86407d9f4e3fe6a6..08fa93f2454f38f2512b3a89fd8e379bec41d620 100755 (executable)
@@ -202,7 +202,7 @@ if [[ "$__NativeBuild" == 1 ]]; then
     __GenerateVersionLog="$__LogsDir/GenerateVersion.binlog"
 
     "$__RepoRootDir/eng/common/msbuild.sh" \
-        $__RepoRootDir/eng/CreateVersionFile.csproj \
+        $__RepoRootDir/eng/CreateVersionFile.proj \
         /bl:$__GenerateVersionLog \
         /t:GenerateVersionFiles \
         /restore \
@@ -230,8 +230,9 @@ fi
 #
 
 if [[ "$__NativeBuild" == 1 || "$__Test" == 1 ]]; then
-    __dotnet_sos=$__RootBinDir/bin/dotnet-sos/$__BuildType/netcoreapp3.1/publish/$__DistroRid
-    __dotnet_dump=$__RootBinDir/bin/dotnet-dump/$__BuildType/netcoreapp3.1/publish/$__DistroRid
+    __targetRid=net6.0
+    __dotnet_sos=$__RootBinDir/bin/dotnet-sos/$__BuildType/$__targetRid/publish/$__DistroRid
+    __dotnet_dump=$__RootBinDir/bin/dotnet-dump/$__BuildType/$__targetRid/publish/$__DistroRid
 
     mkdir -p "$__dotnet_sos"
     mkdir -p "$__dotnet_dump"
diff --git a/eng/configure-toolset.ps1 b/eng/configure-toolset.ps1
deleted file mode 100644 (file)
index 377252c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-# We depend on a local cli for a number of our buildtool
-# commands like init-tools so for now we need to disable
-# using the globally installed dotnet
-
-$script:useInstalledDotNetCli = $false
-
-# Always use the local repo packages directory instead of
-# the user's NuGet cache
-#$script:useGlobalNuGetCache = $false
-
-# Working around issue https://github.com/dotnet/arcade/issues/2673
-$script:DisableNativeToolsetInstalls = $true
diff --git a/eng/configure-toolset.sh b/eng/configure-toolset.sh
deleted file mode 100644 (file)
index ca72d0b..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-# We depend on a local cli for a number of our buildtool
-# commands like init-tools so for now we need to disable
-# using the globally installed dotnet
-
-use_installed_dotnet_cli=false
-
-# Always use the local repo packages directory instead of
-# the user's NuGet cache
-#use_global_nuget_cache=false
-
-# Working around issue https://github.com/dotnet/arcade/issues/2673
-DisableNativeToolsetInstalls=true
index 248ecac30823c6a51cc51cbd94948dae8d710b67..8e96bb6033f66e6c6a35be1f67feaa0e63508dd4 100644 (file)
@@ -1,14 +1,12 @@
 {
   "tools": {
-    "dotnet": "7.0.100",
+    "dotnet": "7.0.101",
     "runtimes": {
       "dotnet/x64": [
-        "$(MicrosoftNETCoreApp31Version)",
         "$(MicrosoftNETCoreApp60Version)",
         "$(VSRedistCommonNetCoreSharedFrameworkx6470Version)"
       ],
       "dotnet/x86": [
-        "$(MicrosoftNETCoreApp31Version)",
         "$(MicrosoftNETCoreApp60Version)",
         "$(VSRedistCommonNetCoreSharedFrameworkx6470Version)"
       ],
index 3d097fafcb77d5a9394afde6b28f845688466abe..ff2856f1c2a66e7fe7c18eca6c2d20e514e582ca 100644 (file)
@@ -1,7 +1,8 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
     <OutputType>Library</OutputType>
-    <TargetFrameworks>netstandard2.0;netcoreapp3.1</TargetFrameworks>
+    <TargetFrameworks Condition="'$(DotNetBuildFromSource)' != 'true'">netstandard2.0;net6.0</TargetFrameworks>
+    <TargetFramework Condition="'$(DotNetBuildFromSource)' == 'true'">netstandard2.0</TargetFramework>
     <RootNamespace>Microsoft.Diagnostics.NETCore.Client</RootNamespace>
     <Description>.NET Core Diagnostics Client Library</Description>
     <VersionPrefix>0.2.0</VersionPrefix>
index e5b088231abfc95c6e62b38737cbf1fb835906da..b078b6c34e60908474c347360cd12e752fc1aa28 100644 (file)
@@ -5,7 +5,7 @@
 using System;
 using System.IO;
 using System.IO.Compression;
-using System.Net;
+using System.Net.Http;
 using System.Threading.Tasks;
 using Xunit.Abstractions;
 
@@ -133,28 +133,17 @@ namespace Microsoft.Diagnostics.TestHelpers
         async static Task DownloadFile(string remotePath, string localPath, ITestOutputHelper output)
         {
             output.WriteLine("Downloading: " + remotePath + " -> " + localPath);
+            using HttpClient client = new ();
+            using HttpResponseMessage response = await client.GetAsync(remotePath);
+            response.EnsureSuccessStatusCode();
+            using Stream stream = await response.Content.ReadAsStreamAsync().ConfigureAwait(false);
             Directory.CreateDirectory(Path.GetDirectoryName(localPath));
-            WebRequest request = HttpWebRequest.Create(remotePath);
-            WebResponse response = await request.GetResponseAsync();
-            using (FileStream localZipStream = File.OpenWrite(localPath))
-            {
-                // TODO: restore the CopyToAsync code after System.Net.Http.dll is 
-                // updated to a newer version. The current old version has a bug 
-                // where the copy never finished.
-                // await response.GetResponseStream().CopyToAsync(localZipStream);
-                byte[] buffer = new byte[16 * 1024];
-                long bytesLeft = response.ContentLength;
-
-                while (bytesLeft > 0)
-                {
-                    int read = response.GetResponseStream().Read(buffer, 0, buffer.Length);
-                    if (read == 0)
-                        break;
-                    localZipStream.Write(buffer, 0, read);
-                    bytesLeft -= read;
-                }
-                output.WriteLine("Downloading finished");
-            }
+            using FileStream localZipStream = File.OpenWrite(localPath);
+            // TODO: restore the CopyToAsync code after System.Net.Http.dll is 
+            // updated to a newer version. The current old version has a bug 
+            // where the copy never finished.
+            await stream.CopyToAsync(localZipStream);
+            output.WriteLine("Downloading finished");
         }
 
         async static Task UnGZip(string gzipPath, string expandedFilePath, ITestOutputHelper output)
index c1ec9a902380cb34fb9c903e2cce0fd799184c73..2f1a51873e14d53fcd8152993e7359e7cf21bb85 100644 (file)
@@ -52,7 +52,7 @@ namespace Microsoft.Diagnostics.TestHelpers
 
         protected override string GetFramework(TestConfiguration config)
         {
-            return config.BuildProjectFramework ?? "netcoreapp3.1";
+            return config.BuildProjectFramework ?? "net6.0";
         }
 
         protected override string GetDebuggeeBinaryDirPath(string debuggeeProjectDirPath, string framework, string runtime)
index f2d83c5aa16b231ccd130087bd0df93f6b9f861c..d1316d1f77dfe31191eb52ff6b885f3254b07345 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <NoWarn>;1591;1701</NoWarn>
     <IsTestProject>false</IsTestProject>
index 873b2f3b36b58449cd55cb8c345914f541f32a4f..c29ae7de11b99a8e2b5ce99cacbb9ea10b3ac14a 100644 (file)
@@ -25,9 +25,7 @@
   <TestWebApp3 Condition="'$(InternalReleaseTesting)' == 'true'">false</TestWebApp3>
 
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '7')">net7.0</BuildProjectFrameworkLatest>
-  <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '5')">net5.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '6')">net6.0</BuildProjectFrameworkLatest>
-  <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '3.1')">netcoreapp3.1</BuildProjectFrameworkLatest>
 
   <DebuggeeSourceRoot>$(RepoRootDir)/src/SOS/SOS.UnitTests/Debuggees</DebuggeeSourceRoot>
   <DebuggeeMsbuildAuxRoot>$(RepoRootDir)/eng/AuxMsbuildFiles</DebuggeeMsbuildAuxRoot>
       <BuildProjectFramework>net6.0</BuildProjectFramework>
       <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
     </Option>
-    <Option Condition="'$(RuntimeVersion31)' != ''">
-      <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-      <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-      <SetHostRuntime>$(DotNetRoot)/shared/Microsoft.NETCore.App/$(RuntimeFrameworkVersion)</SetHostRuntime>
-    </Option>
     <!--
         SOS.StackAndOtherTests (cli because tested with embedded, portable PDBs and single-file)
       -->
           <BuildProjectFramework>net6.0</BuildProjectFramework>
           <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
         </Option>
-        <Option Condition="'$(RuntimeVersion31)' != ''">
-          <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-          <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-        </Option>
       </Options>
     </Option>
     <!--
           <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
           <FrameworkVersion>$(AspNetCoreVersion60)</FrameworkVersion>
         </Option>
-        <Option Condition="'$(AspNetCoreVersion31)' != ''">
-          <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-          <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-          <FrameworkVersion>$(AspNetCoreVersion31)</FrameworkVersion>
-        </Option>
       </Options>
     </Option>
   </Options>
   </Options>
 
   <DotNetDumpHost>$(DotNetRoot)/dotnet</DotNetDumpHost>
-  <DotNetDumpPath>$(RootBinDir)/bin/dotnet-dump/$(TargetConfiguration)/netcoreapp3.1/publish/dotnet-dump.dll</DotNetDumpPath>
+  <DotNetDumpPath>$(RootBinDir)/bin/dotnet-dump/$(TargetConfiguration)/net6.0/publish/dotnet-dump.dll</DotNetDumpPath>
   <DebuggeeDumpOutputRootDir>$(DumpDir)/$(TestProduct)/$(RuntimeFrameworkVersion)/$(BuildProjectFramework)</DebuggeeDumpOutputRootDir>
   <DebuggeeDumpInputRootDir>$(DebuggeeDumpOutputRootDir)</DebuggeeDumpInputRootDir>
 
index 50ba15ace46fec5508710b5194a25fa8cb2e7691..49f7e681cc323a023b53bc77127cc527f53967e5 100644 (file)
@@ -33,7 +33,6 @@
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '7')">net7.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '6')">net6.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '5')">net5.0</BuildProjectFrameworkLatest>
-  <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '3.1')">netcoreapp3.1</BuildProjectFrameworkLatest>
 
   <DesktopFrameworkPath Condition="$(TargetArchitecture) == x64">$(WinDir)\Microsoft.Net\Framework64\v4.0.30319\</DesktopFrameworkPath>
   <DesktopFrameworkPath Condition="$(TargetArchitecture) != x64">$(WinDir)\Microsoft.Net\Framework\v4.0.30319\</DesktopFrameworkPath>
           <BuildProjectFramework>net6.0</BuildProjectFramework>
           <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
         </Option>
-        <Option Condition="'$(RuntimeVersion31)' != ''">
-          <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-          <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-          <SetHostRuntime>$(DotNetRoot)/shared/Microsoft.NETCore.App/$(RuntimeFrameworkVersion)</SetHostRuntime>
-        </Option>
         <!--
             SOS.StackAndOtherTests (cli because tested with full, embedded and portable PDBs)
           -->
               <BuildProjectFramework>net6.0</BuildProjectFramework>
               <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
             </Option>
-            <Option Condition="'$(RuntimeVersion31)' != ''">
-              <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-              <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-            </Option>
           </Options>
         </Option>
         <!--
               <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
               <FrameworkVersion>$(AspNetCoreVersion60)</FrameworkVersion>
             </Option>
-            <Option Condition="'$(AspNetCoreVersion31)' != ''">
-              <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-              <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-              <FrameworkVersion>$(AspNetCoreVersion31)</FrameworkVersion>
-            </Option>
           </Options>
         </Option>
       </Options>
 
   <SOSPath>$(InstallDir)\sos.dll</SOSPath>
   <DotNetDumpHost>$(DotNetRoot)\dotnet.exe</DotNetDumpHost>
-  <DotNetDumpPath>$(RootBinDir)\bin\dotnet-dump\$(TargetConfiguration)\netcoreapp3.1\publish\dotnet-dump.dll</DotNetDumpPath>
+  <DotNetDumpPath>$(RootBinDir)\bin\dotnet-dump\$(TargetConfiguration)\net6.0\publish\dotnet-dump.dll</DotNetDumpPath>
   <DebuggeeDumpOutputRootDir>$(DumpDir)\$(TestProduct)\$(RuntimeFrameworkVersion)\$(BuildProjectFramework)</DebuggeeDumpOutputRootDir>
   <DebuggeeDumpInputRootDir>$(DebuggeeDumpOutputRootDir)</DebuggeeDumpInputRootDir>
 </Configuration>
index 80ed07d8d55a8068d81400b7d6841b9c51cbf498..4693d5da1ee353cdc1741e8a20380e91389e0141 100644 (file)
@@ -32,6 +32,5 @@ add_library_clr(DesktopClrHost SHARED ${DESKTOPCLRHOST_SOURCES})
 
 target_link_libraries(DesktopClrHost ${DESKTOPCLRHOST_LIBRARY})
 
-install(TARGETS DesktopClrHost DESTINATION ${CLR_MANAGED_BINARY_DIR}/WebApp3/${CLR_BUILD_TYPE}/netcoreapp3.1)
 install(TARGETS DesktopClrHost DESTINATION ${CLR_MANAGED_BINARY_DIR}/WebApp3/${CLR_BUILD_TYPE}/net6.0)
 install(TARGETS DesktopClrHost DESTINATION ${CLR_MANAGED_BINARY_DIR}/WebApp3/${CLR_BUILD_TYPE}/net7.0)
index 89b039761e88f25a8bd2982836992e5512bc90cd..9fa03e574beea2ea9836b8a05615e65cf91a3899 100644 (file)
@@ -6,6 +6,6 @@
     <DebugType Condition="'$(TargetFramework)' == 'net462'">full</DebugType>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <Optimize>false</Optimize>
-    <BuildTargetFrameworks>netcoreapp3.1;net6.0;net7.0</BuildTargetFrameworks>
+    <BuildTargetFrameworks>net6.0;net7.0</BuildTargetFrameworks>
   </PropertyGroup>
 </Project>
index 6ae8b0f7156983b799f591e30a7e88126c2c708d..9c46f89f20b6a8f1ef96d8266c5a1152284fd885 100644 (file)
@@ -70,12 +70,9 @@ namespace RuntimeHostingConstants
 {
     // This list is in probing order.
     constexpr RuntimeVersion SupportedHostRuntimeVersions[] = {
+        {7, 0},
         {6, 0},
-#if !(defined(HOST_OSX) && defined(HOST_ARM64))
-        {3, 1},
-        {5, 0},
-#endif
-        {7, 0}
+        {8, 0}
     };
 
     constexpr char DotnetRootEnvVar[] = "DOTNET_ROOT";
@@ -122,9 +119,8 @@ namespace RuntimeHostingConstants
         "/usr/local/share/dotnet"
 #else
         "/rh-dotnet60/root/usr/bin/dotnet",
-        "/rh-dotnet31/root/usr/bin/dotnet",
-        "/rh-dotnet50/root/usr/bin/dotnet",
         "/rh-dotnet70/root/usr/bin/dotnet",
+        "/rh-dotnet80/root/usr/bin/dotnet",
         "/usr/share/dotnet",
 #endif
     };
@@ -322,12 +318,15 @@ static std::string GetTpaListForRuntimeVersion(
     //       assembly version than the ones in the ones in the framework. The test could just
     //       have a list of assemblies we pack with the versions, and if we end up using a newer assembly
     //       fail the test and point to update this list.
-    if (hostRuntimeVersion.Major < 5)
-    {
-        AddFileToTpaList(directory, "System.Collections.Immutable.dll", tpaList);
-        AddFileToTpaList(directory, "System.Reflection.Metadata.dll", tpaList);
-        AddFileToTpaList(directory, "System.Runtime.CompilerServices.Unsafe.dll", tpaList);
-    }
+    //
+    //       There's currently no DLLs SOS requires that are of a higher version than those provided by
+    //       the supported host frameworks. In case it's needed, add: a section here before AddFilesFromDirectoryToTpaList.
+    // 
+    //           if (hostRuntimeVersion.Major < 5)
+    //           {
+    //               AddFileToTpaList(directory, "System.Collections.Immutable.dll", tpaList);
+    //               ...
+    //           }
 
     // Trust the runtime assemblies that are newer than the ones needed and provided by SOS's managed
     // components.
@@ -375,6 +374,7 @@ static bool FindDotNetVersion(const RuntimeVersion& runtimeVersion, std::string&
         return true;
     }
 
+
     return false;
 }
 
@@ -516,7 +516,7 @@ static HRESULT GetHostRuntime(std::string& coreClrPath, std::string& hostRuntime
 
         if (hostRuntimeVersion.Major == 0)
         {
-            TraceError("Error: Failed to find runtime directory within %s\n", hostRuntimeDirectory.c_str());
+            TraceError("Error: Failed to find a supported runtime within %s\n", hostRuntimeDirectory.c_str());
             return E_FAIL;
         }
 
index 5741187fae5b78a001270c42312f975f6d7d8207..8069c5a84b1967b43cf4fac1ef0826d187de6967 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFrameworks>netcoreapp3.1</TargetFrameworks>
+    <TargetFrameworks>net6.0</TargetFrameworks>
   </PropertyGroup>
 </Project>
index 47ac0e2273c76d4bb2e7f4ebd9da8b22d5827193..82cc5387a2e3ae83cd582c7b8bc56e55064d596b 100644 (file)
@@ -12,6 +12,7 @@
   <Choose>
     <When Condition="'$(BundleTools)' == 'true'">
       <PropertyGroup>
+        <IncludeAllContentForSelfExtract>true</IncludeAllContentForSelfExtract>
         <SelfContained>false</SelfContained>
         <PublishDir>$(BundledToolsPath)$(Configuration)\$(RuntimeIdentifier)\</PublishDir>
         <PublishSingleFile>true</PublishSingleFile>
index 982ddbd75c93b92cfde6476595158560f63dd4e1..777b8b96472dac6cfdab7ebc685e346fb6dc18b3 100644 (file)
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <ToolCommandName>dotnet-counters</ToolCommandName>
     <RootNamespace>Microsoft.Diagnostics.Tools.Counters</RootNamespace>
index fedbe362a4876918fe244c8b1c8663d78cc94078..1699965407ce7072fcf4b1d020073d8960951341 100644 (file)
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
     <ToolCommandName>dotnet-dump</ToolCommandName>
     <RootNamespace>Microsoft.Diagnostic.Tools.Dump</RootNamespace>
index f60c1a44eaadd82c089086ad7822f35a450c6f93..f97de920e1a72a6527ca22bd0800e7ffd9e32cdf 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <RootNamespace>Microsoft.Diagnostics.Tools.GCDump</RootNamespace>
     <ToolCommandName>dotnet-gcdump</ToolCommandName>
     <Description>.NET Managed Heap Dump and Analysis Tool</Description>
index 136378c3ccf4d11aa5a3ee17a75c9bf0a4803317..071f3638a1505076cb75be19ccb2613a7452307d 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <ToolCommandName>dotnet-sos</ToolCommandName>
     <RootNamespace>Microsoft.Diagnostics.Tools.SOS</RootNamespace>
     <Description>Diagnostic SOS installer</Description>
index 4d21756bb63908dedc6d90089ee2f37ca90c3d1a..74254cdb7a8791105a6978c9485a8bfaf2bd6de6 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <RootNamespace>Microsoft.Diagnostics.Tools.Stack</RootNamespace>
     <ToolCommandName>dotnet-stack</ToolCommandName>
     <Description>.NET Stack Printing Tool</Description>
index ee8d184c70ad302023b186177e4143423ea0b758..1926192b68d53f10ec4fc542d1e0b70663cfd00d 100644 (file)
@@ -94,7 +94,7 @@ namespace Microsoft.Diagnostics.Tools.Trace.CommandLine
             }
 
             int n = nodesToReport.Count;
-            int maxDigit = n.ToString().Count();
+            int maxDigit = (int) Math.Log10(n) + 1;
             string extra = new string(' ', maxDigit - 1);
 
             string header = "Top " + n.ToString() + " Functions (" + measureType + ")";
@@ -111,7 +111,7 @@ namespace Microsoft.Diagnostics.Tools.Trace.CommandLine
             for(int i = 0; i < n; i++)
             {
 
-                int iLength = (i+1).ToString().Count();
+                int iLength = (int) Math.Log10(i + 1) + 1;
                 int numSpace = maxDigit - iLength + 1;
 
                 CallTreeNodeBase node = nodesToReport[i];
index 267812665f138b851251c45e01113531ca8ef07f..1beb21c32d2be5966aca2a59a07a95c9e630ee4d 100644 (file)
@@ -1,6 +1,6 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <RootNamespace>Microsoft.Diagnostics.Tools.Trace</RootNamespace>
     <ToolCommandName>dotnet-trace</ToolCommandName>
     <Description>.NET Performance Trace Tool</Description>
index 0c3873fe832630d90ee271324c535d17e970e38a..1699214d779c4699f21f5f916d1b07d5a9498a4f 100644 (file)
@@ -1,8 +1,8 @@
 <Project Sdk="Microsoft.Build.NoTargets">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
-    <SupportedRids>win-x64;win-x86;win-arm;win-arm64;linux-x64;linux-musl-arm64;osx-x64;linux-arm64;linux-musl-x64;linux-arm</SupportedRids>
+    <TargetFramework>net6.0</TargetFramework>
+    <SupportedRids>win-x64;win-x86;win-arm;win-arm64;linux-x64;linux-musl-arm64;osx-x64;osx-arm64;linux-arm64;linux-musl-x64;linux-arm</SupportedRids>
     <ArcadeSdkMSBuildProjectDir>$([System.IO.Path]::GetDirectoryName('$(ArcadeSdkBuildTasksAssembly)'))\..\</ArcadeSdkMSBuildProjectDir>
     <ArcadeSdkSignProject>$(ArcadeSdkMSBuildProjectDir)Sign.proj</ArcadeSdkSignProject>
     <BundledToolsZipDirectory>$(BundledToolsPath)$(Configuration)/zips/</BundledToolsZipDirectory>
index 3afde20e39cc9f218badf04bdfa0ad50ba355802..e7b48a55bfd4d1b11125a2c48d3f05fc51594d03 100644 (file)
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
     <CommonTestRunnerConfigFileName>$(OutputPath)$(TargetFramework)\Debugger.Tests.Common.txt</CommonTestRunnerConfigFileName>
   </PropertyGroup>
 
index 5fddf13339f970ec31db8caeec6fa4d27c0357f5..2bb1ac9fee8dba9f37a216684aab07b4eb5d9dfc 100644 (file)
@@ -11,7 +11,6 @@
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '7')">net7.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '6')">net6.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '5')">net5.0</BuildProjectFrameworkLatest>
-  <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '3.1')">netcoreapp3.1</BuildProjectFrameworkLatest>
 
   <TestProduct>ProjectK</TestProduct>
   <DebuggeeSourceRoot>$(RepoRootDir)/src/tests</DebuggeeSourceRoot>
       <BuildProjectFramework>net6.0</BuildProjectFramework>
       <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
     </Option>
-    <Option Condition="'$(RuntimeVersion31)' != ''">
-      <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-      <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-    </Option>
   </Options>
 
   <!-- Single-file debuggees don't need the host -->
@@ -51,5 +46,5 @@
   <HostArgs Condition="'$(PublishSingleFile)' != 'true'">--fx-version $(RuntimeFrameworkVersion)</HostArgs>
 
   <DotNetTraceHost>$(DotNetRoot)/dotnet</DotNetTraceHost>
-  <DotNetTracePath>$(RootBinDir)/bin/dotnet-trace/$(TargetConfiguration)/netcoreapp3.1/dotnet-trace.dll</DotNetTracePath>
+  <DotNetTracePath>$(RootBinDir)/bin/dotnet-trace/$(TargetConfiguration)/net6.0/dotnet-trace.dll</DotNetTracePath>
 </Configuration>
index ea51d1d00fe00555346c129e8e74efd2bfddb3fd..704c426a2cc9f84467ac34592e9efc58fb7e10b9 100644 (file)
@@ -12,7 +12,6 @@
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '7')">net7.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '6')">net6.0</BuildProjectFrameworkLatest>
   <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '5')">net5.0</BuildProjectFrameworkLatest>
-  <BuildProjectFrameworkLatest Condition="StartsWith('$(RuntimeVersionLatest)', '3.1')">netcoreapp3.1</BuildProjectFrameworkLatest>
 
   <TestProduct>ProjectK</TestProduct>
   <DebuggeeSourceRoot>$(RepoRootDir)\src\tests</DebuggeeSourceRoot>
       <BuildProjectFramework>net6.0</BuildProjectFramework>
       <RuntimeFrameworkVersion>$(RuntimeVersion60)</RuntimeFrameworkVersion>
     </Option>
-    <Option Condition="'$(RuntimeVersion31)' != ''">
-      <BuildProjectFramework>netcoreapp3.1</BuildProjectFramework>
-      <RuntimeFrameworkVersion>$(RuntimeVersion31)</RuntimeFrameworkVersion>
-    </Option>
   </Options>
 
   <!-- Single-file debuggees don't need the host -->
@@ -50,5 +45,5 @@
   <HostArgs Condition="'$(PublishSingleFile)' != 'true'">--fx-version $(RuntimeFrameworkVersion)</HostArgs>
 
   <DotNetTraceHost>$(DotNetRoot)\dotnet.exe</DotNetTraceHost>
-  <DotNetTracePath>$(RootBinDir)\bin\dotnet-trace\$(TargetConfiguration)\netcoreapp3.1\dotnet-trace.dll</DotNetTracePath>
+  <DotNetTracePath>$(RootBinDir)\bin\dotnet-trace\$(TargetConfiguration)\net6.0\dotnet-trace.dll</DotNetTracePath>
 </Configuration>
index c73e0d1692ab38cc8596bbd32ae080d903aaa778..41f1d5ad4b264b0844c13899d88f54301b98a4e6 100644 (file)
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
   </PropertyGroup>
 
 </Project>
index eaf4b4e2f5993a347dce1ddaeefc5971711ea73d..fe30b78e0687b049d9467f0132dfaa1b050e973f 100644 (file)
@@ -4,13 +4,7 @@
   <PropertyGroup>
     <BuildArch Condition="'$(BuildArch)' == ''">$(Platform)</BuildArch>
     <BuildArch Condition="'$(BuildArch)' == 'AnyCpu'">$([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture.ToString().ToLowerInvariant)</BuildArch>
-
-    <!-- Don't run any unit tests on .NET Core 3.1 on arm64. MacOS M1 doesn't have a 3.1 SDK -->
-    <Enable31Testing>true</Enable31Testing>
-    <Enable31Testing Condition="'$(BuildArch)' == 'arm64'">false</Enable31Testing>
-
-    <UnitTestTargetFrameworks Condition="$(Enable31Testing)">netcoreapp3.1;net6.0;net7.0</UnitTestTargetFrameworks>
-    <UnitTestTargetFrameworks Condition="!$(Enable31Testing)">net6.0;net7.0</UnitTestTargetFrameworks>
+    <UnitTestTargetFrameworks>net6.0;net7.0</UnitTestTargetFrameworks>
   </PropertyGroup>
 
 </Project>
index 0d7605719edf1030eb68149680035e34df5c70fa..fad4801e1797fc844ca735d430697160b3a3f342 100644 (file)
@@ -2,7 +2,7 @@
   <PropertyGroup>
     <OutputType>Exe</OutputType>
     <TargetFramework Condition="'$(BuildProjectFramework)' != ''">$(BuildProjectFramework)</TargetFramework>
-    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">netcoreapp3.1;net6.0;net7.0</TargetFrameworks>
+    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">net6.0;net7.0</TargetFrameworks>
   </PropertyGroup>
 
   <ItemGroup>
index 6b634ef18150468262be96a68514b3230cc72850..05388fd5f4c717b34f2374205e88f7c13d445f74 100644 (file)
@@ -2,6 +2,6 @@
   <PropertyGroup>
     <OutputType>Exe</OutputType>
     <TargetFramework Condition="'$(BuildProjectFramework)' != ''">$(BuildProjectFramework)</TargetFramework>
-    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">netcoreapp3.1;net6.0;net7.0</TargetFrameworks>
+    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">net6.0;net7.0</TargetFrameworks>
   </PropertyGroup>
 </Project>
index 4b033d9a1d137f40a9ef7a39670b8d2ef5c845bc..e72911e15d9eddca6c4b7153da2cfa0bb335735d 100644 (file)
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
index 6b634ef18150468262be96a68514b3230cc72850..05388fd5f4c717b34f2374205e88f7c13d445f74 100644 (file)
@@ -2,6 +2,6 @@
   <PropertyGroup>
     <OutputType>Exe</OutputType>
     <TargetFramework Condition="'$(BuildProjectFramework)' != ''">$(BuildProjectFramework)</TargetFramework>
-    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">netcoreapp3.1;net6.0;net7.0</TargetFrameworks>
+    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">net6.0;net7.0</TargetFrameworks>
   </PropertyGroup>
 </Project>
index 6b634ef18150468262be96a68514b3230cc72850..05388fd5f4c717b34f2374205e88f7c13d445f74 100644 (file)
@@ -2,6 +2,6 @@
   <PropertyGroup>
     <OutputType>Exe</OutputType>
     <TargetFramework Condition="'$(BuildProjectFramework)' != ''">$(BuildProjectFramework)</TargetFramework>
-    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">netcoreapp3.1;net6.0;net7.0</TargetFrameworks>
+    <TargetFrameworks Condition="'$(BuildProjectFramework)' == ''">net6.0;net7.0</TargetFrameworks>
   </PropertyGroup>
 </Project>
index 59e56dcba32ddc36e131cff9e44ba42067f7fd22..5173a12603871f0a86b3b6248b6ce86a412503c7 100644 (file)
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <OutputType>Exe</OutputType>
-    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <TargetFramework>net6.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>