Update on .NET 8 support
With .NET 8 now in release candidate stage I want to share an update about our current thinking about .NET 8 support in Optimizely CMS and Customized Commerce and our DXP cloud platform.
With the .NET 8 RC1 we have done basic verification of the compatibility of CMS 12 and Commerce 14 in site projects compiled against .NET 8 and running in a .NET 8 runtime in our DXP platform. So far so good.
We will continue to do more thorough testing of our packages running in .NET 8 before we officially announce .NET 8 compatibility. This might not be in time for the .NET 8 release in November, but keep in mind that .NET 6 is fully supported by Microsoft until November 2024. .NET 7 as an STS release is supported until May 2024. Our goal is to provide full .NET 8 support in time for that, so that any customers currently running on .NET 7 can continue to be fully supported.
As you probably know, and as also described in the post announcing .NET 7 support, modern .NET has a high level of backward compatibility. A project can compile and run against a newer .NET version than libraries it references are compiled against. Supporting .NET 8 does not require a library assembly changing its compilation target to .NET 8, unless it is affected by breaking changes in .NET 8.
For these reasons, we will continue to ship CMS 12 and Commerce 14 with assemblies compiled for .NET 6. We will not add .NET 8 compiled assemblies unless that is the only way to resolve a regression bug resulting from running in .NET 8. We will eventually switch our compilation target to .NET 8, but most likely as part of a future major version release.