-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ios][wasm] Bump to ICU-72 #84849
[ios][wasm] Bump to ICU-72 #84849
Conversation
/azp run runtime-ioslike |
Azure Pipelines successfully started running 1 pipeline(s). |
|
…they are not deployed as app artifacts as they appear to be loaded on sim builds
@lambdageek I am getting a weird crash on iossimulator when testing System.Globalization tests. The test runner runs to completion, but when the app tries to finish (or seemingly tries), it crashes. https://gist.github.com/steveisok/ee8e7734a522154b96bf2831dab1b44d |
@pavelsavara I'm seeing this insanity on iOS, which wasm can't tolerate. I don't think it's wasm specific, but something icu is doing. |
I don't actually see it crashing here in the runtime - all the threads (except the one with the deep recursion inside ICU) are idle and waiting for something. It seems like the app is just getting killed. Maybe from a stack overflow on that ICU thread, or maybe something is killing it from the outside? Maybe it's some ICU bug that causes an infinite recursion? |
The place where Which looks like it's something to do with So maybe something in the icu data changed and the importer keeps returning the same file which has an I guess this is the spec for collation rules, and it has an |
Interesting. It might have to do with our filtering. Maybe we're filtering out too much and it's trying to import non existent data? |
Yea, if i'm reading this stuff right, it looks like icu4c uses something called a My guess is maybe we trimmed out too much from the data file and confused their loader |
I enabled ICU tracing and this happens over and over:
I also turned off What I'm going to do next is bring an unfiltered data file over and see if it works. |
Pretty much confirmed it's something missing from our filters. A full data file run shows it may be expecting some additional binary data:
|
# Ensure we aren't using deprecated ICU functions | ||
if(STATIC_ICU) | ||
set(ICU_FLAGS "-DHAVE_UCOL_CLONE ${ICU_FLAGS}") | ||
endif() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this changed with Filip's PR: you also need to set this here and we need to set it to 0 for Android (since we use system ICU there), and to 1 for Apple/WASM/WASI:
if(CLR_CMAKE_TARGET_ANDROID OR CLR_CMAKE_TARGET_APPLE OR CLR_CMAKE_TARGET_BROWSER OR CLR_CMAKE_TARGET_WASI) | |
set(HAVE_SET_MAX_VARIABLE 1) | |
set(HAVE_UDAT_STANDALONE_SHORTER_WEEKDAYS 1) | |
set(HAVE_UCOL_CLONE 0) | |
else() |
/azp run runtime |
Azure Pipelines successfully started running 1 pipeline(s). |
Will revisit sometime in .NET 9 |
No description provided.