unicode-org / icu4x

Solving i18n for client-side and resource-constrained environments.
https://icu4x.unicode.org
Other
1.29k stars 164 forks source link

Consider splitting locale-fallbacking data out of icu_properties #5120

Open hsivonen opened 5 days ago

hsivonen commented 5 days ago

https://github.com/servo/rust-url/issues/939 shows the build of icu_properties blocking on icu_locid_transform getting compiled. I gather the exemplar_chars module is the culprit.

We should consider splitting the exemplar_chars module, which is locale-dependent CLDR data and not locale-independent Unicode Database data into a different crate.

sffc commented 5 days ago

I agree there's room for improvement here. If icu_properties is all singleton keys, we could likely drop the icu_locid_transform dependency (note: crates are being reorganized in 2.0, but we wouldn't be able to entirely avoid the LocaleFallbacker dependency so long as we have exemplar chars, I think.

Manishearth commented 3 days ago

Concrete proposal:

LGTM: @sffc @hsivonen