You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The coreclr musl build was moved to now build on alpine-3.9. If people try to use a build of the product that contains latest .NET 5 coreclr on < alpine-3.9 and hits any globalization path, it would fail with:
Process terminated. Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support.
at System.Environment.FailFast(System.String)
at System.Globalization.GlobalizationMode.GetGlobalizationInvariantMode()
at System.Globalization.GlobalizationMode..cctor()
at System.Globalization.GlobalizationMode.get_Invariant()
at System.Globalization.CultureData.CreateCultureWithInvariantData()
at System.Globalization.CultureData.get_Invariant()
at System.Globalization.CultureInfo..cctor()
at System.Globalization.CultureInfo.get_CurrentCulture()
"The reason to not to always start from the version 50 (the first one that we can possibly work with and the one present on CentOS 7) was to ensure that we do a minimal amount of scanning when we build for specific distro. Another reason was that on glibc based distros, build from a newer distro can never work on an older one anyways.
The MUSL based distros are different though, build created on a newer Alpine actually works on an older one, so it would make sense to make the initial version constant for MUSL based distros (I would use the version from 3.6)"
The coreclr musl build was moved to now build on alpine-3.9. If people try to use a build of the product that contains latest .NET 5 coreclr on < alpine-3.9 and hits any globalization path, it would fail with:
The reason for that is because we try to load the ICU version that we compiled against (defined in the headers) and 20+ versions of it.
https://github.com/dotnet/coreclr/blob/190888373afe4f526de2bd7f366ffe53cced0325/src/corefx/System.Globalization.Native/pal_icushim.c#L57-L58
@janvorli commented:
"The reason to not to always start from the version 50 (the first one that we can possibly work with and the one present on CentOS 7) was to ensure that we do a minimal amount of scanning when we build for specific distro. Another reason was that on glibc based distros, build from a newer distro can never work on an older one anyways.
The MUSL based distros are different though, build created on a newer Alpine actually works on an older one, so it would make sense to make the initial version constant for MUSL based distros (I would use the version from 3.6)"
For more details see: dotnet/corefx#41280 (comment)
cc: @wfurt @jkoritzinsky
The text was updated successfully, but these errors were encountered: