[package]
name = "icu_locid_transform"
description = "API for Unicode Language and Locale Identifiers canonicalization"
authors.workspace = true
categories.workspace = true
edition.workspace = true
homepage.workspace = true
include.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
version.workspace = true
[package.metadata.cargo-all-features]
skip_optional_dependencies = true
denylist = ["bench"]
[package.metadata.docs.rs]
all-features = true
[dependencies]
icu_locid = { workspace = true, features = ["zerovec"] }
icu_provider = { workspace = true, features = ["macros"] }
serde = { workspace = true, features = ["derive", "alloc"], optional = true }
tinystr = { workspace = true, features = ["alloc", "zerovec"] }
zerovec = { workspace = true, features = ["yoke"] }
databake = { workspace = true, optional = true, features = ["derive"] }
displaydoc = { workspace = true }
icu_locid_transform_data = { workspace = true, optional = true }
[dev-dependencies]
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
icu = { path = "../../components/icu", default-features = false }
writeable = { path = "../../utils/writeable" }
[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
criterion = { workspace = true }
[lib]
bench = false
[features]
default = ["compiled_data"]
std = []
bench = ["serde"]
serde = ["dep:serde", "icu_locid/serde", "tinystr/serde", "zerovec/serde", "icu_provider/serde"]
datagen = ["serde", "dep:databake", "zerovec/databake", "icu_locid/databake", "tinystr/databake"]
compiled_data = ["dep:icu_locid_transform_data"]
[[bench]]
name = "locale_canonicalizer"
harness = false
[[test]]
name = "locale_canonicalizer"
required-features = ["serde"]