-
-
Notifications
You must be signed in to change notification settings - Fork 22.8k
Update Dotnet iOS Export Process #100187
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
Update Dotnet iOS Export Process #100187
Conversation
d0d8d0c
to
3c342f8
Compare
3c342f8
to
6135603
Compare
I noticed this PR is still a draft. Are there any other changes you want to make? |
Thank you for reminding me. I hadn't gotten around to testing this yet. I tested it today and there are a few issues. My understanding was slightly off with how globalization features are being used in future versions of .NET, which I think I understand more now based off this documentation. Switching from a .NET 8 and 9 branch shows the differences. It seems that .NET 8 by default uses full ICU data ( So, basically the build system just never supported hybrid globalization and now it's not necessary for iOS with .NET 9+ since native APIs are used. So for this PR, should I change the scope to basically just check if it's .NET 8 (as that is now the minimum as of Godot 4.4), look for either |
If hybrid globalization is going away in .NET 9 and we never supported it, I wouldn't add support now. We'll move to .NET 10 eventually so there's no need to add support for something that we'll be removing soon after. I'm not sure what's the use case for custom ICU files, it doesn't seem there is a big demand for that so I would not add support for it either. |
Update iOS export to allow for hybrid globalization introduced in .NET 9 while preserving .NET 8 settings. Also allows for custom ICU or no ICU.
6135603
to
aa0ed1b
Compare
Sounds good. I revised the code to reflect what we discussed so it's ready for review now. |
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.
The changes in this PR look good to me. But I don't have an iOS device so I can't test that it works as expected.
Thanks! |
Resolves #100123
This updates the iOS export build process to allow for hybrid globalization introduced in .NET 9 while preserving .NET 8 settings. Also allows for custom ICU or no ICU.UPDATE:
After reading more about how future versions of .NET will handle globalization APIs it's unnecessary to support hybrid globalization so this updates the iOS export build process to check if the ICU file is needed (such as with .NET 8) and if not (such as with .NET 9+) the ICU file is simply omitted.