.NET Framework is the original Windows-only version of the .NET
runtime and class library.
.NET Core was then created as a cross-platform version of .NET
and has differences to .NET Framework. It works in Docker.
.NET Standard is a standard for class libraries that Framework
and Core both adhere to - to allow cross-implementation dev.
.NET Core v2.1 became EOL in August 2021 ^1 and there's no image
to run it on Mac M1 machines. We should bump in any case. Framework
and Standard are still comfortably in support* and changing the min
version of Core doesn't have any impact on those settings.
*.NET Standard is actually being deprecated with .NET Framework 5
^2. Moving to .NET Core 3.1 is just a short term measure: this and
.NET Core 5 are both EOL in May 2022, so we should look at shifting
the minimum .NET Core version to 6.
Testing
I had to manually tweak our Appveyor account to get this build to pass,
as it hard codes the config file it uses to the one on master.
https://www.pivotaltracker.com/story/show/181753597
There are 3 incarnations of .NET:
.NET Framework is the original Windows-only version of the .NET runtime and class library.
.NET Core was then created as a cross-platform version of .NET and has differences to .NET Framework. It works in Docker.
.NET Standard is a standard for class libraries that Framework and Core both adhere to - to allow cross-implementation dev.
.NET Core v2.1 became EOL in August 2021 ^1 and there's no image to run it on Mac M1 machines. We should bump in any case. Framework and Standard are still comfortably in support* and changing the min version of Core doesn't have any impact on those settings.
*.NET Standard is actually being deprecated with .NET Framework 5 ^2. Moving to .NET Core 3.1 is just a short term measure: this and .NET Core 5 are both EOL in May 2022, so we should look at shifting the minimum .NET Core version to 6.
Testing
I had to manually tweak our Appveyor account to get this build to pass, as it hard codes the config file it uses to the one on master.