Skip to content

Switching to ICU #15668

@iSazonov

Description

@iSazonov

Summary of the new feature / enhancement

We caught an amazing problem in #14513 - a test failed because of a difference in string sorting on different platforms.

I tested on different Windows systems and was very amazed to see different behavior on different Windows versions too.

After consulting with .Net team it turned out that although the latest versions of .Net work with ICU but Windows 10 older versions do not support ICU completely. This is the version used in PowerShell CI Windows.

See dotnet/runtime#54472 (comment) and follow comments.

If we want to have full consistency across all platforms and versions we should include System.Globalization.AppLocalIcu package in our Windows distribution.

This probably makes sense since users may also encounter unpredictable string handling and sorting is just one of those scenarios.

Proposed technical implementation details (optional)

dotnet/runtime#54472 (comment)

<ItemGroup">
  <PackageReference Include="Microsoft.ICU.ICU4C.Runtime" Version="68.2.0.6" />
  <RuntimeHostConfigurationOption Include="System.Globalization.AppLocalIcu" Value="68.2" />
</ItemGroup>

Metadata

Metadata

Assignees

No one assigned

    Labels

    Committee-ReviewedPS-Committee has reviewed this and made a decisionIssue-Enhancementthe issue is more of a feature request than a bugResolution-DeclinedThe proposed feature is declined.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions