Local data overlay on top of CLDR/ICU
Categories
(Core :: Internationalization, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox122 | --- | fixed |
People
(Reporter: zbraniecki, Assigned: eemeli)
References
Details
Attachments
(1 file)
Reporter | ||
Comment 1•8 years ago
|
||
Comment 2•8 years ago
|
||
Comment hidden (obsolete) |
Reporter | ||
Comment 4•8 years ago
|
||
Comment 5•8 years ago
|
||
Reporter | ||
Comment 6•8 years ago
|
||
Comment 7•8 years ago
|
||
Reporter | ||
Comment 8•8 years ago
|
||
Comment 9•8 years ago
|
||
Reporter | ||
Comment 10•8 years ago
|
||
Comment 11•8 years ago
|
||
Comment 12•8 years ago
|
||
Updated•8 years ago
|
Comment 13•8 years ago
|
||
Updated•7 years ago
|
Updated•2 years ago
|
Assignee | ||
Comment 14•1 year ago
|
||
We're looking into what it'd take to finally resolve this, and to have a way to overlay fixes on CLDR data as used by Firefox, as well as including at least partial internationalization support for locales that aren't included in CLDR, but for which we do provide a localization.
Reporter | ||
Comment 15•1 year ago
|
||
ICU4X data management is designed for this use case, providing two solutions:
- OverlayDataProvider
It allows us to establish a chain DataProvider which would selectively return "overlay" or route the request to ICU4XDataProvider.
This way you can have a runtime light overlay which only overrides data for selected keys, and the "full" data provider.
- MergedDataProvider
This allows us to have a combine at build time two sources into a single data package.
Assignee | ||
Comment 16•1 year ago
|
||
Presumably that would solve the issue for interfaces that use ICU4X internally, but not ICU4C, yes?
For ICU4C, I hope that there's a way to apply patches like this to effect at least some changes, and to reconsider the requirements we impose for such data patches.
I also presume that there will be a small stack of gotchas involved in adding a locale not supported by CLDR.
Assignee | ||
Comment 17•1 year ago
|
||
Assignee | ||
Comment 18•1 year ago
|
||
I added a patch adding a brief note to the Firefox docs on ICU, stating that small data changes are possible, but that anything significant should be done upstream. At the moment, in particular (but not only) Fluent makes use of Rust crates such as intl_pluralrules
that have their own separate CLDR dependencies.
So I'm pretty sure that supporting larger overlays like entirely new locales is not practically possible, but that this could and should be revisited if we get to a point where our CLDR dependencies are once again concentrated in one place, i.e. ICU4X.
Comment 19•1 year ago
|
||
Comment 20•1 year ago
|
||
bugherder |
Description
•