# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.89.0"
name = "facet-json"
version = "0.32.3"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "JSON serialization and deserialization for Facet types"
homepage = "https://facet.rs"
readme = "README.md"
keywords = [
    "json",
    "serialization",
    "deserialization",
    "reflection",
    "facet",
]
categories = [
    "encoding",
    "parser-implementations",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/facet-rs/facet-json"

[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]
alloc = [
    "facet-core/alloc",
    "facet-reflect/alloc",
]
axum = [
    "std",
    "dep:axum-core",
    "dep:bytes",
    "dep:http",
    "dep:http-body-util",
    "dep:mime",
]
bolero-inline-tests = ["std"]
ci = ["cranelift"]
cranelift = [
    "std",
    "dep:cranelift",
    "dep:cranelift-jit",
    "dep:cranelift-module",
    "dep:cranelift-native",
    "dep:parking_lot",
    "dep:memchr",
]
default = ["std"]
futures-io = [
    "std",
    "dep:futures-io",
    "streaming",
]
jit = ["cranelift"]
std = [
    "alloc",
    "facet-core/std",
    "facet-reflect/std",
]
streaming = [
    "std",
    "dep:corosensei",
]
tokio = [
    "std",
    "dep:tokio",
    "streaming",
]

[lib]
name = "facet_json"
path = "src/lib.rs"

[[example]]
name = "json_showcase"
path = "examples/json_showcase.rs"

[[test]]
name = "array_u64"
path = "tests/array_u64.rs"

[[test]]
name = "arrays"
path = "tests/arrays.rs"

[[test]]
name = "bool"
path = "tests/bool.rs"

[[test]]
name = "borrow_test"
path = "tests/borrow_test.rs"

[[test]]
name = "boxed"
path = "tests/boxed.rs"

[[test]]
name = "bytes"
path = "tests/bytes.rs"

[[test]]
name = "camino"
path = "tests/camino.rs"

[[test]]
name = "chrono"
path = "tests/chrono.rs"

[[test]]
name = "datetime"
path = "tests/datetime.rs"

[[test]]
name = "deny_unknown_and_default"
path = "tests/deny_unknown_and_default.rs"

[[test]]
name = "deserialize"
path = "tests/deserialize.rs"

[[test]]
name = "diagnostics"
path = "tests/diagnostics.rs"

[[test]]
name = "enums"
path = "tests/enums.rs"

[[test]]
name = "eof_and_nulls"
path = "tests/eof_and_nulls.rs"

[[test]]
name = "err"
path = "tests/err.rs"

[[test]]
name = "escapes"
path = "tests/escapes.rs"

[[test]]
name = "flatten_advanced"
path = "tests/flatten_advanced.rs"

[[test]]
name = "generated_benchmark_tests"
path = "tests/generated_benchmark_tests.rs"

[[test]]
name = "hashmap"
path = "tests/hashmap.rs"

[[test]]
name = "issue_1190"
path = "tests/issue_1190.rs"

[[test]]
name = "issue_1191"
path = "tests/issue_1191.rs"

[[test]]
name = "issue_1228"
path = "tests/issue_1228.rs"

[[test]]
name = "issue_1236"
path = "tests/issue_1236.rs"

[[test]]
name = "issue_1297"
path = "tests/issue_1297.rs"

[[test]]
name = "map"
path = "tests/map.rs"

[[test]]
name = "nonzero"
path = "tests/nonzero.rs"

[[test]]
name = "numbers"
path = "tests/numbers.rs"

[[test]]
name = "option"
path = "tests/option.rs"

[[test]]
name = "ordered-float"
path = "tests/ordered-float.rs"

[[test]]
name = "pointer"
path = "tests/pointer.rs"

[[test]]
name = "primitives"
path = "tests/primitives.rs"

[[test]]
name = "proxy_container"
path = "tests/proxy_container.rs"

[[test]]
name = "proxy_opaque"
path = "tests/proxy_opaque.rs"

[[test]]
name = "raw_json"
path = "tests/raw_json.rs"

[[test]]
name = "rename"
path = "tests/rename.rs"

[[test]]
name = "serialize"
path = "tests/serialize.rs"

[[test]]
name = "set"
path = "tests/set.rs"

[[test]]
name = "simple_array"
path = "tests/simple_array.rs"

[[test]]
name = "skip_serializing"
path = "tests/skip_serializing.rs"

[[test]]
name = "skip_unknown_fields"
path = "tests/skip_unknown_fields.rs"

[[test]]
name = "string"
path = "tests/string.rs"

[[test]]
name = "structs"
path = "tests/structs.rs"

[[test]]
name = "tenant-config"
path = "tests/tenant-config.rs"

[[test]]
name = "transparent"
path = "tests/transparent.rs"

[[test]]
name = "tuple"
path = "tests/tuple.rs"

[[test]]
name = "ulid"
path = "tests/ulid.rs"

[[test]]
name = "uuid"
path = "tests/uuid.rs"

[[test]]
name = "value"
path = "tests/value.rs"

[[test]]
name = "vec"
path = "tests/vec.rs"

[[bench]]
name = "unified_benchmarks_divan"
path = "benches/unified_benchmarks_divan.rs"
harness = false

[[bench]]
name = "unified_benchmarks_gungraun"
path = "benches/unified_benchmarks_gungraun.rs"
harness = false

[dependencies.axum-core]
version = "0.5"
optional = true
default-features = false

[dependencies.brotli]
version = "7"
optional = true

[dependencies.bytes]
version = "1"
optional = true
default-features = false

[dependencies.corosensei]
version = "0.3"
optional = true

[dependencies.cranelift]
version = "0.126"
optional = true

[dependencies.cranelift-jit]
version = "0.126"
optional = true

[dependencies.cranelift-module]
version = "0.126"
optional = true

[dependencies.cranelift-native]
version = "0.126"
optional = true

[dependencies.facet]
version = "0.32.3"
default-features = false

[dependencies.facet-core]
version = "0.32.3"
features = [
    "auto-traits",
    "bytes",
    "camino",
    "chrono",
    "fn-ptr",
    "indexmap",
    "jiff02",
    "net",
    "nonzero",
    "num-complex",
    "ordered-float",
    "ruint",
    "simd",
    "time",
    "tuples-12",
    "ulid",
    "url",
    "uuid",
]
default-features = false

[dependencies.facet-reflect]
version = "0.32.3"
features = ["miette"]
default-features = false

[dependencies.facet-solver]
version = "0.32.3"

[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.0.15"

[dependencies.lexical-parse-float]
version = "1.0.5"

[dependencies.lexical-parse-integer]
version = "1.0.5"

[dependencies.log]
version = "^0.4.29"
features = ["std"]

[dependencies.memchr]
version = "2.7"
optional = true

[dependencies.miette]
version = "^7.6.0"
features = [
    "derive",
    "fancy-no-backtrace",
    "derive",
    "fancy-no-backtrace",
]

[dependencies.mime]
version = "0.3"
optional = true
default-features = false

[dependencies.parking_lot]
version = "0.12"
optional = true

[dependencies.ryu]
version = "1"

[dependencies.strsim]
version = "0.11"

[dependencies.tokio]
version = "1"
features = ["io-util"]
optional = true
default-features = false

[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ['cfg(feature, values("jiff"))']
