[Breaking change]: .NET 7 to enable using ICU on Windows Server 2019 #30319
Labels
breaking-change
Indicates a .NET Core breaking change
🏁 Release: .NET 7
Work items for the .NET 7 release
Description
Since .NET 5.0, .NET switched using ICU library for globalization support instead of NLS Win32 APIs when running on Windows. This change was applied to Windows 10 clients but was not applied to Windows Server 2019. This breaking change is in .NET 7.0, ICU libraries will be used on Windows Server 2019 by default. The doc .NET globalization and ICU has more information about the globalization behavior difference between ICU and NLS and the expected breaking cases. This doc describe how to revert back to old behavior using NLS if needed too.
Version
.NET 7 RC 1
Previous behavior
When using .NET 5.0 and .NET 6.0 on Windows Server 2019, the globalization support was done by using NLS Win32 APIs.
New behavior
Starting from .NET 7.0 and running on Windows Server 2019, the globalization support by default will be using ICU libraries instead of NLS APIs.
Type of breaking change
Reason for change
Recommended action
Users using .NET 7.0 on Windows Server 2019 will need to test their apps or services before shipping it to ensure the behavior and not breaking any users. Apps or services want to revert back to the old behavior, they can Use NLS instead of ICU to do that.
Feature area
Globalization
Affected APIs
All Globalization APIs include string comparisons, culture data, date/time/number formatting and parsing, string normalization, and resources lookup.
The text was updated successfully, but these errors were encountered: