(work originally by mikem, I just split his mega-commit so history would a little more understandable)
<RuntimeFrameworkVersion>$(RuntimeVersionLatest)</RuntimeFrameworkVersion>
</Option>
<Option Condition="'$(DailyTest)' != 'true'">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
+ <!-- Build the debuggee for 2.1 but run it on 2.2 -->
<BuildProjectFramework>netcoreapp2.1</BuildProjectFramework>
- <RuntimeFrameworkVersion>$(RuntimeVersion21)</RuntimeFrameworkVersion>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion22)</BuildProjectMicrosoftNetCoreAppVersion>
+ <RuntimeFrameworkVersion>$(RuntimeVersion22)</RuntimeFrameworkVersion>
</Option>
<Option Condition="'$(DailyTest)' != 'true'">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion20)</BuildProjectMicrosoftNetCoreAppVersion>
- <BuildProjectFramework>netcoreapp2.0</BuildProjectFramework>
- <RuntimeFrameworkVersion>$(RuntimeVersion20)</RuntimeFrameworkVersion>
+ <BuildProjectFramework>netcoreapp2.1</BuildProjectFramework>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
+ <RuntimeFrameworkVersion>$(RuntimeVersion21)</RuntimeFrameworkVersion>
</Option>
<Option Condition="Exists('$(RepoRootDir)/.dotnet/shared/Microsoft.NETCore.App/$(RuntimeVersion11)')">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion11)</BuildProjectMicrosoftNetCoreAppVersion>
<BuildProjectFramework>netcoreapp1.1</BuildProjectFramework>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion11)</BuildProjectMicrosoftNetCoreAppVersion>
<RuntimeFrameworkVersion>$(RuntimeVersion11)</RuntimeFrameworkVersion>
<!-- createdump doesn't exists in 1.1 -->
<GenerateDumpWithGDB>true</GenerateDumpWithGDB>
<!-- SOS needs at least 2.0 to run. The default without this is to use the runtime being debuggged to host SOS.NETCore -->
- <SOSHostRuntime>$(RepoRootDir)/.dotnet/shared/Microsoft.NETCore.App/$(RuntimeVersion20)</SOSHostRuntime>
+ <SOSHostRuntime>$(RepoRootDir)/.dotnet/shared/Microsoft.NETCore.App/$(RuntimeVersion21)</SOSHostRuntime>
</Option>
</Options>
<Options>
<Option>
<!-- Build the debuggee for 2.1 but run it on latest -->
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
<BuildProjectFramework>netcoreapp2.1</BuildProjectFramework>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
<RuntimeFrameworkVersion>$(RuntimeVersionLatest)</RuntimeFrameworkVersion>
</Option>
<Option Condition="'$(DailyTest)' != 'true'">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
+ <!-- Build the debuggee for 2.1 but run it on 2.2 -->
<BuildProjectFramework>netcoreapp2.1</BuildProjectFramework>
- <RuntimeFrameworkVersion>$(RuntimeVersion21)</RuntimeFrameworkVersion>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion22)</BuildProjectMicrosoftNetCoreAppVersion>
+ <RuntimeFrameworkVersion>$(RuntimeVersion22)</RuntimeFrameworkVersion>
</Option>
<Option Condition="'$(DailyTest)' != 'true'">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion20)</BuildProjectMicrosoftNetCoreAppVersion>
- <BuildProjectFramework>netcoreapp2.0</BuildProjectFramework>
- <RuntimeFrameworkVersion>$(RuntimeVersion20)</RuntimeFrameworkVersion>
+ <BuildProjectFramework>netcoreapp2.1</BuildProjectFramework>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion21)</BuildProjectMicrosoftNetCoreAppVersion>
+ <RuntimeFrameworkVersion>$(RuntimeVersion21)</RuntimeFrameworkVersion>
</Option>
<Option Condition="'$(DailyTest)' != 'true'">
- <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion11)</BuildProjectMicrosoftNetCoreAppVersion>
<BuildProjectFramework>netcoreapp1.1</BuildProjectFramework>
+ <BuildProjectMicrosoftNetCoreAppVersion>$(RuntimeVersion11)</BuildProjectMicrosoftNetCoreAppVersion>
<RuntimeFrameworkVersion>$(RuntimeVersion11)</RuntimeFrameworkVersion>
<!-- SOS needs at least 2.0 to run. The default without this is to use the runtime being debuggged to host SOS.NETCore -->
- <SOSHostRuntime>$(RepoRootDir)\.dotnet\shared\Microsoft.NETCore.App\$(RuntimeVersion20)</SOSHostRuntime>
+ <SOSHostRuntime>$(RepoRootDir)\.dotnet\shared\Microsoft.NETCore.App\$(RuntimeVersion21)</SOSHostRuntime>
</Option>
</Options>
<HostExe>$(RepoRootDir)\.dotnet\dotnet.exe</HostExe>
ENDIF:LIVE
# Verify that ClrStack with no options works
+SOSCOMMAND:SetSymbolServer -ms
+SOSCOMMAND:SetHostRuntime
SOSCOMMAND:ClrStack
VERIFY:.*OS Thread Id:\s+0x<HEXVAL>\s+.*
VERIFY:\s+Child\s+SP\s+IP\s+Call Site\s+
VERIFY:\s+<HEXVAL>\s+<HEXVAL>\s+SymbolTestApp\.Program\.Foo2\(.*\)\s+\[(?i:.*[\\|/]SymbolTestApp\.cs) @ 29\]\s*
VERIFY:\s+<HEXVAL>\s+<HEXVAL>\s+SymbolTestApp\.Program\.Foo1\(.*\)\s+\[(?i:.*[\\|/]SymbolTestApp\.cs) @ 24\]\s*
VERIFY:\s+<HEXVAL>\s+<HEXVAL>\s+SymbolTestApp\.Program\.Main\(.*\)\s+\[(?i:.*[\\|/]SymbolTestApp\.cs) @ 19\]\s*
+SOSCOMMAND:SetSymbolServer -disable
# Verify that ClrStack with managed/native mixed works
IFDEF:PROJECTK
VERIFY:.*\s+<HEXVAL>\s+<HEXVAL>\s+SymbolTestApp\.Program\.Main\(.*\)\s+\[(?i:.*[\\|/]SymbolTestApp\.cs) @ 19\]\s*
ENDIF:PROJECTK
-# Disable ClrStack -i until coreclr issue #17259
-IFDEF:DESKTOP
-
# Verify that ClrStack with the ICorDebug options works
SOSCOMMAND:ClrStack -i
IFDEF:PROJECTK
VERIFY:.*\s+Stack walk complete.\s+
ENDIF:PROJECTK
-ENDIF:DESKTOP
-
# Verify DumpStackObjects works
IFDEF:PROJECTK
SOSCOMMAND:DumpStackObjects
# 2) Verifying that ClrStack with managed/native mixed works
IFDEF:PROJECTK
+SOSCOMMAND:SetSymbolServer -ms -loadsymbols
+SOSCOMMAND:SetHostRuntime
SOSCOMMAND:ClrStack -f
VERIFY:.*OS Thread Id:\s+0x<HEXVAL>\s+.*
VERIFY:\s+Child\s+SP\s+IP\s+Call Site\s+
IFDEF:64BIT
VERIFY:.*\s+<HEXVAL>\s+<HEXVAL>\s+(?i:NestedExceptionTest.*)!NestedExceptionTest\.Program\.Main\(.*\)\s+\+\s+<DECVAL>\s+\[(?i:.*[\\|/]NestedExceptionTest\.cs) @ 13\s*\]\s+
ENDIF:64BIT
+SOSCOMMAND:SetSymbolServer -disable
ENDIF:PROJECTK
# 3) Verifying that ClrStack all option works (locals/params)
ENDIF:64BIT
ENDIF:PROJECTK
-# Disable ClrStack -i until coreclr issue #17259
-IFDEF:DESKTOP
-
# 5) Verifying that ClrStack with the ICorDebug options works
SOSCOMMAND:ClrStack -i
VERIFY:.*\s+Dumping managed stack and managed variables using ICorDebug.\s+
VERIFY:.*\s+Stack walk complete.\s+
ENDIF:PROJECTK
-ENDIF:DESKTOP
-
# 7) Verify DumpStackObjects works
IFDEF:PROJECTK
SOSCOMMAND:DumpStackObjects