During verybadcat/CSharpMath#143, the following bug was encountered.
The following behaviour for Linux and Mac is consistent across .NET Core 3.1.5 and .NET 5 preview 6.
For Windows, this is a regression from .NET Core 3.1.5 to .NET 5 preview 6 with the introduction of ICU as noted by @danmosemsft.
Microsoft Windows [Version 10.0.18363.959]
(c) 2019 Microsoft Corporation. All rights reserved.
C:\Users\hadri>dotnet --info
.NET Core SDK (reflecting any global.json):
Version: 3.1.301
Commit: 7feb845744
Runtime Environment:
OS Name: Windows
OS Version: 10.0.18363
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\3.1.301\
Host (useful for support):
Version: 3.1.5
Commit: 65cd789777
.NET Core SDKs installed:
2.1.604 [C:\Program Files\dotnet\sdk]
2.1.700 [C:\Program Files\dotnet\sdk]
2.1.701 [C:\Program Files\dotnet\sdk]
2.1.801 [C:\Program Files\dotnet\sdk]
2.1.802 [C:\Program Files\dotnet\sdk]
2.2.301 [C:\Program Files\dotnet\sdk]
2.2.401 [C:\Program Files\dotnet\sdk]
2.2.402 [C:\Program Files\dotnet\sdk]
3.1.300-preview-015135 [C:\Program Files\dotnet\sdk]
3.1.301 [C:\Program Files\dotnet\sdk]
.NET Core runtimes installed:
Microsoft.AspNetCore.All 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.19 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.19 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.19 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 3.1.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
To install additional .NET Core runtimes or SDKs:
https://aka.ms/dotnet-download
C:\Users\hadri>dotnet fsi
Microsoft (R) F# Interactive version 10.9.1.0 for F# 4.7
Copyright (c) Microsoft Corporation. All Rights Reserved.
For help type #help;;
> "12345".StartsWith("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.CurrentCultureIgnoreCase);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.CurrentCultureIgnoreCase);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.CurrentCultureIgnoreCase);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
MacBook-Pro:CSharpMath innotech$ dotnet fsi
Welcome to .NET 5.0!
---------------------
SDK Version: 5.0.100-preview.6.20318.15
Telemetry
---------
The .NET tools collect usage data in order to help us improve your experience. The data is anonymous. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate run 'dotnet dev-certs https --trust' (Windows and macOS only).
Learn about HTTPS: https://aka.ms/dotnet-https
----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Microsoft (R) F# Interactive version 10.10.0.0 for F# 4.7
Copyright (c) Microsoft Corporation. All Rights Reserved.
For help type #help;;
> "12345".StartsWith("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = true
> "12345".StartsWith("\u007F", System.StringComparison.CurrentCultureIgnoreCase)
val it : bool = true
> "12345".StartsWith("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = true
> "12345".StartsWith("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = true
> "12345".StartsWith("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".StartsWith("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = true
> "12345".EndsWith("\u007F", System.StringComparison.CurrentCultureIgnoreCase);;
val it : bool = true
> "12345".EndsWith("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = true
> "12345".EndsWith("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = true
> "12345".EndsWith("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".EndsWith("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.CurrentCulture);;
val it : bool = true
> "12345".Contains("\u007F", System.StringComparison.CurrentCultureIgnoreCase);;
val it : bool = true
> "12345".Contains("\u007F", System.StringComparison.InvariantCulture);;
val it : bool = true
> "12345".Contains("\u007F", System.StringComparison.InvariantCultureIgnoreCase);;
val it : bool = true
> "12345".Contains("\u007F", System.StringComparison.Ordinal);;
val it : bool = false
> "12345".Contains("\u007F", System.StringComparison.OrdinalIgnoreCase);;
val it : bool = false
> #quit;;
MacBook-Pro:CSharpMath innotech$ dotnet --info
.NET SDK (reflecting any global.json):
Version: 5.0.100-preview.6.20318.15
Commit: 4356580024
Runtime Environment:
OS Name: Mac OS X
OS Version: 10.15
OS Platform: Darwin
RID: osx.10.15-x64
Base Path: /usr/local/share/dotnet/sdk/5.0.100-preview.6.20318.15/
Host (useful for support):
Version: 5.0.0-preview.6.20305.6
Commit: 4ba9ecaabd
.NET SDKs installed:
2.0.0 [/usr/local/share/dotnet/sdk]
2.1.403 [/usr/local/share/dotnet/sdk]
2.1.504 [/usr/local/share/dotnet/sdk]
2.1.505 [/usr/local/share/dotnet/sdk]
2.2.107 [/usr/local/share/dotnet/sdk]
2.2.300 [/usr/local/share/dotnet/sdk]
3.0.100 [/usr/local/share/dotnet/sdk]
3.1.101 [/usr/local/share/dotnet/sdk]
3.1.102 [/usr/local/share/dotnet/sdk]
3.1.200 [/usr/local/share/dotnet/sdk]
3.1.300 [/usr/local/share/dotnet/sdk]
3.1.301 [/usr/local/share/dotnet/sdk]
5.0.100-preview.6.20318.15 [/usr/local/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.AspNetCore.All 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.8 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.All 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All]
Microsoft.AspNetCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.8 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 3.1.5 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.0-preview.6.20312.15 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.9 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.15 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.16 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.17 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.18 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.1.19 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 2.2.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 3.1.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.0-preview.6.20305.6 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
To install additional .NET runtimes or SDKs:
https://aka.ms/dotnet-download
During verybadcat/CSharpMath#143, the following bug was encountered.
The following behaviour for Linux and Mac is consistent across .NET Core 3.1.5 and .NET 5 preview 6.
For Windows, this is a regression from .NET Core 3.1.5 to .NET 5 preview 6 with the introduction of ICU as noted by @danmosemsft.