[package]
edition = "2024"
rust-version = "1.90"
name = "facet-json"
version = "0.43.2"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "JSON serialization for facet using the new format architecture"
homepage = "https://facet.rs"
readme = "README.md"
keywords = [
"json",
"serialization",
"facet",
"parsing",
"streaming",
]
categories = [
"encoding",
"parsing",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/facet-rs/facet"
[package.metadata.docs.rs]
rustdoc-args = [
"--html-in-header",
"arborium-header.html",
]
[package.metadata."docs.rs"]
rustdoc-args = [
"--html-in-header",
"arborium-header.html",
]
[features]
axum = [
"std",
"dep:axum-core",
"dep:http",
"dep:http-body-util",
"dep:mime",
]
compact_str = [
"facet/compact_str",
"facet-format/compact_str",
]
default = []
fast = [
"lexical-parse",
"dep:itoa",
"dep:zmij",
]
futures-io = [
"streaming",
"dep:futures-io",
]
iddqd = ["facet/iddqd"]
jit = ["facet-format/jit"]
lexical-parse = [
"dep:lexical-parse-float",
"dep:lexical-parse-integer",
]
net = [
"facet-format/net",
"facet-core/net",
]
smallvec = ["facet/smallvec"]
std = []
streaming = [
"dep:corosensei",
"std",
]
tokio = [
"streaming",
"dep:tokio",
]
tracing = [
"dep:tracing",
"facet-format/tracing",
"facet-reflect/tracing",
]
validate = ["facet-format/validate"]
yoke = ["facet/yoke"]
[lib]
name = "facet_json"
path = "src/lib.rs"
[[example]]
name = "profile_jit_vec"
path = "examples/profile_jit_vec.rs"
required-features = ["jit"]
[[example]]
name = "profile_serde_vec"
path = "examples/profile_serde_vec.rs"
[[test]]
name = "escapes"
path = "tests/escapes.rs"
[[test]]
name = "format_suite"
path = "tests/format_suite.rs"
harness = false
[[test]]
name = "main"
path = "tests/main.rs"
[dependencies.axum-core]
version = "0.5"
optional = true
default-features = false
[dependencies.corosensei]
version = "0.3"
optional = true
[dependencies.facet]
version = "0.43.2"
default-features = false
[dependencies.facet-core]
version = "0.43.2"
[dependencies.facet-format]
version = "0.43.2"
default-features = false
[dependencies.facet-reflect]
version = "0.43.2"
[dependencies.futures-io]
version = "0.3"
optional = true
[dependencies.http]
version = "^1.4.0"
optional = true
[dependencies.http-body-util]
version = "0.1"
optional = true
default-features = false
[dependencies.itoa]
version = "1"
optional = true
[dependencies.lexical-parse-float]
version = "1.0.5"
optional = true
[dependencies.lexical-parse-integer]
version = "1.0.5"
optional = true
[dependencies.memchr]
version = "2"
[dependencies.mime]
version = "0.3"
optional = true
[dependencies.tokio]
version = "1"
features = ["io-util"]
optional = true
default-features = false
[dependencies.tracing]
version = "^0.1.43"
features = ["std"]
optional = true
default-features = false
[dependencies.zmij]
version = "1"
optional = true
[dev-dependencies.compact_str]
version = "^0.9.0"
default-features = false
[dev-dependencies.indoc]
version = "^2.0.7"
[dev-dependencies.libtest-mimic]
version = "0.8.1"
[dev-dependencies.serde_json]
version = "^1.0.145"
features = ["alloc"]
[dev-dependencies.smol_str]
version = "^0.3.4"
default-features = false
[dev-dependencies.tendril]
version = "0.5.0"
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
]
[dev-dependencies.tracing]
version = "^0.1.43"
features = ["std"]
default-features = false
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(facet_no_doc)"]