This happens because dotnet --info is not working as expected and preventing .NET Core 3.1 SDK installation which will cause remote debugging to fail unless a .NET Core 3.1 SDK is already installed.
While investigating #15, I realized that debugging of a .NETCoreApp,3.1 isn't installing the .NET Core 3.1 SDK so debugging fails. I didn't realize this during my testing because a 3.1 SDK was already installed during previous tests.
The problem is that dotnet --info executed within a .NET Core 3.1 project folder us reporting that the SDK version is 5.0.100 even though the project targets .NETCoreApp,3.1. I assumed that this would examine the .csproj file in the directory and then apply any global.json rules. It looks like that's not actually happening.
[x] Stop using dotnet --info to determine the SDK required by a project. Instead, we'll simply use the highest SDK version from our catalog that's compatible with the project target. This isn't ideal because it may use a different SDK on the Raspberry than is being used on the workstation and it won't honor any global.json file, but this should work quite well for most folks.
[x] Relocate the test projects from neonAUTOMATION to the RaspberryDebugger repo.
[x] Upgrade the existing test projects to explicitly target .NET 5 and create a new console project that targets .NET Core 3.1, for testing.
This happens because
dotnet --info
is not working as expected and preventing .NET Core 3.1 SDK installation which will cause remote debugging to fail unless a .NET Core 3.1 SDK is already installed.While investigating #15, I realized that debugging of a .NETCoreApp,3.1 isn't installing the .NET Core 3.1 SDK so debugging fails. I didn't realize this during my testing because a 3.1 SDK was already installed during previous tests.
The problem is that
dotnet --info
executed within a .NET Core 3.1 project folder us reporting that the SDK version is 5.0.100 even though the project targets .NETCoreApp,3.1. I assumed that this would examine the.csproj
file in the directory and then apply anyglobal.json
rules. It looks like that's not actually happening.[x] Stop using
dotnet --info
to determine the SDK required by a project. Instead, we'll simply use the highest SDK version from our catalog that's compatible with the project target. This isn't ideal because it may use a different SDK on the Raspberry than is being used on the workstation and it won't honor anyglobal.json
file, but this should work quite well for most folks.[x] Relocate the test projects from neonAUTOMATION to the RaspberryDebugger repo.
[x] Upgrade the existing test projects to explicitly target .NET 5 and create a new console project that targets .NET Core 3.1, for testing.