[package]
name = "encoding_rs"
description = "A Gecko-oriented implementation of the Encoding Standard"
version = "0.8.41"
edition = '2024'
authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
license = "(Apache-2.0 OR MIT) AND BSD-3-Clause"
include = ["build.rs", "src/**/*.rs", "/data", "Cargo.toml", "COPYRIGHT", "LICENSE*", "README.md"]
readme = "README.md"
documentation = "https://docs.rs/encoding_rs/"
homepage = "https://docs.rs/encoding_rs/"
repository = "https://github.com/hsivonen/encoding_rs"
keywords = ["encoding", "web", "unicode", "charset"]
categories = ["text-processing", "encoding", "web-programming", "internationalization"]
rust-version = "1.88"
build = "build.rs"
[features]
default = ["alloc"]
alloc = []
std = ["multiversion/std"]
simd-accel = ["any_all_workaround", "rustversion"]
less-slow-kanji-encode = []
less-slow-big5-hanzi-encode = []
less-slow-gb-hanzi-encode = []
fast-hangul-encode = []
fast-hanja-encode = []
fast-kanji-encode = []
fast-gb-hanzi-encode = []
fast-big5-hanzi-encode = []
fast-legacy-encode = ["fast-hangul-encode",
"fast-hanja-encode",
"fast-kanji-encode",
"fast-gb-hanzi-encode",
"fast-big5-hanzi-encode"]
[dependencies]
cfg-if = "1.0"
serde = { version = "1.0", optional = true }
any_all_workaround = { version = "0.1.0" , optional = true }
rustversion = { version = "1.0.19", optional = true }
multiversion_no_op = "1.0.0"
scopeguard = { version = "1", default-features = false }
[target.'cfg(all(any(target_arch = "x86_64", target_arch = "x86"), not(all(target_feature = "avx2", target_feature = "bmi1"))))'.dependencies]
multiversion = { version = ">=0.8.0,<0.10.0", default-features = false }
[target.'cfg(any(target_arch = "x86_64", target_arch = "x86", target_arch = "aarch64", all(target_arch = "wasm32", target_feature = "simd128")))'.dependencies]
simdutf8 = { version = "0.1.5", default-features = false, features = ["aarch64_neon", "public_imp"] }
[target.'cfg(any(target_arch = "x86_64", target_arch = "x86"))'.dependencies]
core_detect = "1"
[dev-dependencies]
serde_derive = "1.0"
bincode = "1.0"
serde_json = "1.0"
[build-dependencies]
rustversion = "1.0.19"
[profile.release]
lto = true
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(fuzzing)'] }