The supported OS release notes for .NET 5.0 state the minimum Windows Server version is 2012 R2+, however the prior version 2012 does not reach end-of-life until 2023-10-10 (https://support.microsoft.com/en-us/lifecycle/search/1163)
Considering Windows 7 is still listed as a supported OS, is there a particular reason Windows Server 2012 is not supported?
See also: #3588
Visual Studio 2019 is a requirement to build .NET 5.0, and the last version to support Windows Server 2012 was Visual Studio 2015.
https://docs.microsoft.com/en-us/visualstudio/releases/2019/system-requirements#visual-studio-2019-system-requirements
It does seem like we should either support 2012 or drop support for 7.
@dagood @richlander @terrajobst do we have some cleanup to do here? have we finalized our OS support list for .NET 5?
@NikolaMilosavljevic @leecow @dleeapho
This issue is important to me (and some other people I guess). Because there is no support for Windows Server 2012, we are currently stuck with .NET framework 4 (our product has to support all Windows versions still supported by Microsoft), which means less packages available (because very few packages author do care about being compatible with old versions) and some C# 8 features can’t be used. And if .NET 5 does not support Window Server 2012 either, we’re stuck with .NET framewor 4 until 2023.
i assume a workaround could be to deploy things to server 2012 using single file apps so it doesnt need an installed runtime? https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0#single-file-executables
Is it possible to have at least the .NET 5 runtime on Wnidows Server 2012? I don’t know where is the problem with this platform, but I think everybody would understand if the full SDK is not available.
@picrap It might not be officially supported, but if the required dependencies are installed, the .NET 5 preview runtime can in fact be installed on Windows Server 2012.
This is not exactly good news… How does the .NET setup check whether it can be installed on a given platform? If there is a strict OS check (which will then probably exclude Windows 2012 server), is there something like a --force-install switch?
@leecow In this commit: 0587778a8a4343383d3e11b9013d8911348b3852, you updated the minimum Windows Server version from 2008 R2 SP1+ to 2012 R2 SP1+ for .NET Core 3.0. What was the rationale for skipping 2012?
Closing as per @jamshedd comment in https://github.com/dotnet/core/issues/4894#issuecomment-719971773:
@xtqqczze there is no plan to change our support position on Windows Server 2012. A newer version in the same server family is available in the form of Server 2012 R2, the expectation is that the newer R2 version is used in order to be in a supported state. While both Server 2012 and Windows 7 are still in use the decisions for the two platforms were made independently given the usage of the two platforms in the ecosystem is quite different.
I do realize that there is a conflict between the general statement around supporting OS platforms while they're still in support and specific instances like the Server 2012 case and Windows 7 SP1 ESU program and this conflict can cause confusion. I think we can adequately address that by adding a statement on our main lifecycle page for this - when there's a conflict between the general policy statement and the support platforms listed for a specific version of .NET, the latter will prevail.
Agree with @jamshedd . In addition Windows Server 2012 R2 is the minimal Windows Server version supported for .NET Core 3.1. Reverting that for vNext of 3.1 is not an option and ideal. Also, VS 2019 Update 8 is the minimum VS version that supports .NET 5 Development on Windows and for that VS version (16.8), the minimal Windows Server version supported is Windows 2012 R2.
Most helpful comment
It does seem like we should either support 2012 or drop support for 7.
@dagood @richlander @terrajobst do we have some cleanup to do here? have we finalized our OS support list for .NET 5?