Expand description

This crate contains pre-baked ICU4X data, generated by icu4x-datagen. The tool fetches locale data from CLDR and transforms them into const code in statics that ICU4X can load, via databake. lib.rs in this crate is manually written, but all other code is generated.

This crate can be regenerated when there’s a new CLDR version, though that is unlikely to result in changes in most cases (currently this only covers list formatting data, which is rather stable). It may need to be regenerated when updating ICU4X versions, especially across major versions, in case it fails to compile after an update.

It must be regenerated when adding new locales to Rust, or if Rust’s usage of ICU4X grows to need more kinds of data.

To regenerate the data, run this command:

icu4x-datagen -W --pretty --fingerprint --use-separate-crates \
--format mod -l en es fr it ja pt ru tr zh zh-Hans zh-Hant \
-k list/and@1 fallback/likelysubtags@1 fallback/parents@1 fallback/supplement/co@1 \
--cldr-tag latest --icuexport-tag latest -o src/data