-
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
[browser][non-icu] HybridGlobalization
calendar data
#89255
Conversation
Tagging subscribers to 'arch-wasm': @lewing Issue DetailsContributes to #79989. This PR adds ~7k tests to ToDo:
Public APIs aftected by the change:
cc @SamMonoRT
|
Any suggestions for reviewing this? Anything to look for, or what kinda things might break? |
src/libraries/System.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAMDesignator.cs
Show resolved
Hide resolved
src/libraries/System.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAMDesignator.cs
Outdated
Show resolved
Hide resolved
...ies/System.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAbbreviatedMonthNames.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems
Show resolved
Hide resolved
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.
Big patch!! Great work!
I don't know anything about globalization, so I didn't really review the juicy details of the implementation. I reviewed what I could.
How is the hybrid case being tested? Is that enabled by default? Don't we need two separate test runs with hybrid on, and off?
src/libraries/Common/tests/TestUtilities/System/PlatformDetection.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Globalization.Calendars/tests/System/Globalization/CalendarTestBase.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAMDesignator.cs
Show resolved
Hide resolved
...aries/System.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAbbreviatedDayNames.cs
Outdated
Show resolved
Hide resolved
...em.Globalization/tests/DateTimeFormatInfo/DateTimeFormatInfoAbbreviatedMonthGenitiveNames.cs
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Globalization/CultureData.Browser.cs
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Globalization/DateTimeParse.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Globalization/DateTimeParse.cs
Outdated
Show resolved
Hide resolved
There are two test projects: for non-Hybrid:
and for Hybrid:
|
src/libraries/System.Private.CoreLib/src/System/Globalization/DateTimeParse.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/System/Globalization/CalendarData.Windows.cs
Outdated
Show resolved
Hide resolved
How much larger is dotnet.runtime.js ? |
~8,7kB |
I guess we should make it possible to link it out. Because that cost (not just this PR but all JS in the hybrid) is paid by everybody, not just somebody who enabled hybrid. |
Contributes to #79989.
This PR adds ~6k tests to
System.Globalization.Hybrid.WASM.Tests.csproj
.Size of icu_hybrid.dat without the calendar data:
with the calendar data but without collations (hybrid state before this PR):
while the original non-hybrid file is:
The size saving using Hybrid mode will be ~60% after merging this PR (and a corresponding one in icu repo that reduces icudt_hybrid.dat file size).
Public APIs aftected by the change:
cc @SamMonoRT