Cargo Features

[dependencies]
icu_datagen = { version = "1.5.0", default-features = false, features = ["provider", "baked_exporter", "blob_exporter", "blob_input", "fs_exporter", "legacy_api", "bin", "rayon", "use_wasm", "use_icu4c", "networking", "experimental_components"] }
default = baked_exporter, bin, blob_exporter, fs_exporter, legacy_api, networking, provider, rayon, use_wasm

These default features are set whenever icu_datagen is added without default-features = false somewhere in the dependency tree.

provider default legacy_api

Enables icu_codepointtrie_builder ^0.3.8, icu_collections, icu_pattern ^0.2.0, icu_provider_adapters, itertools ^0.10.3, litemap, ndarray ^0.15.0, serde, serde-aux, serde_json, tinystr ^0.7.5, toml ^0.5.8, twox-hash ^1.4.2, zerotrie ^0.1.3, zerovec ^0.10.2, and zip ^0.6.0, datagen of icu_collator, serde of icu_locid, datagen and lstm of icu_segmenter, datagen of icu_timezone, datagen of icu_calendar and icu_casemap, datagen of icu_locid_transform and icu_normalizer, datagen of icu_plurals and icu_properties, datagen of icu_datetime, icu_decimal, icu_list, and optional icu_experimental ~0.1.0 and calendrical_calculations

DatagenProvider

ICU infrastructure

and either and elsa

either:

External dependencies

baked_exporter default legacy_api

Enables crlify and databake ^0.1.8, itertools ^0.10.3 and proc-macro2, datagen of icu_calendar, icu_casemap, icu_collator, icu_datetime, icu_decimal, icu_list, icu_locid_transform, icu_normalizer, icu_plurals, icu_properties, icu_segmenter, icu_timezone, and optional icu_experimental ~0.1.0

Affects icu_datagen::baked_exporter

blob_exporter default legacy_api

Enables icu_provider_blob

Exporters

blob_input

Enables icu_provider_blob, datagen of icu_segmenter and icu_timezone and datagen of icu_calendar, icu_casemap, icu_collator, icu_datetime, icu_decimal, icu_list, icu_locid_transform, icu_normalizer, icu_plurals, icu_properties, and optional icu_experimental ~0.1.0

icu_normalizer:

n.b. "icu_properties" + "icu_properties?/datagen" is equivalent to "icu_properties/datagen", however we specify this explicitly since "optional_dep/feature" is a footgun that leads to us often accidentally enabling features

fs_exporter default legacy_api

Enables icu_provider_fs

legacy_api default = baked_exporter, blob_exporter, fs_exporter, provider

Affects icu_datagen::keys_from_file, icu_datagen::Out, icu_datagen::datagen, icu_datagen::all_keys_with_experimental, icu_datagen::is_missing_cldr_error, icu_datagen::is_missing_icuexport_error, icu_datagen::syntax, provider::CldrLocaleSubset

bin default

Enables clap, eyre, and simple_logger ^4.0.0

clap:

"bin" feature

Required by the icu4x-datagen binary

rayon default

Enables rayon

use_wasm default

Use wasm for building codepointtries

Enables wasm of optional icu_codepointtrie_builder ^0.3.8

use_icu4c

Use local ICU4C libraries for building codepointtries (will do nothing if used with use_wasm) If neither use_wasm nor use_icu4c are enabled, rule based segmenter data will not be generated.

Enables icu4c of optional icu_codepointtrie_builder ^0.3.8

networking default

Enables ureq

experimental_components

Enables icu_experimental ~0.1.0, num-bigint, num-rational, and num-traits, experimental of icu_plurals and experimental of icu and icu_datetime

icu:

The components are needed for the registry, provider, baked exporter, with different features