[package]
name = "simd-json"
version = "0.14.2"
authors = ["Heinz N. Gies <heinz@licenser.net>", "Sunny Gleason"]
edition = "2021"
exclude = ["data/*", "fuzz/*"]
license = "Apache-2.0 OR MIT"
description = "High performance JSON parser based on a port of simdjson"
repository = "https://github.com/simd-lite/simd-json"
readme = "README.md"
documentation = "https://docs.rs/simd-json"
rust-version = "1.64"
[target.'cfg(target_family = "wasm")'.dependencies]
getrandom = { version = "0.2", features = ["js"] }
[dependencies]
simdutf8 = { version = "0.1.4", features = ["public_imp", "aarch64_neon"] }
beef = { version = "0.5", optional = true }
halfbrown = "0.2"
value-trait = { version = "0.10" }
once_cell = { version = "1.17", optional = true }
ahash = { version = "0.8", optional = true }
serde = { version = "1", features = ["derive"], optional = true }
serde_json = { version = "1", optional = true }
alloc_counter = { version = "0.0.4", optional = true }
colored = { version = "2.0", optional = true }
getopts = { version = "0.2", optional = true }
jemallocator = { version = "0.5", optional = true }
perfcnt = { version = "0.8", optional = true }
ref-cast = "1.0"
[dev-dependencies]
float-cmp = "0.10"
getopts = "0.2"
core_affinity = { version = "0.8" }
[target.'cfg(not(target_family = "wasm"))'.dev-dependencies]
criterion = { version = "0.5" }
proptest = "1.0"
[lib]
bench = false
[[bench]]
name = "parse"
harness = false
[[bench]]
name = "to_tape"
harness = false
[features]
default = ["swar-number-parsing", "serde_impl", "runtime-detection"]
arraybackend = ["halfbrown/arraybackend"]
value-no-dup-keys = []
128bit = ["value-trait/128bit"]
known-key = ["once_cell", "ahash"]
swar-number-parsing = []
approx-number-parsing = []
serde_impl = ["serde", "serde_json", "halfbrown/serde"]
alloc = ["alloc_counter"]
no-inline = []
bench-serde = ["serde_json"]
ordered-float = ["value-trait/ordered-float"]
hints = []
perf = ["perfcnt", "getopts", "colored", "serde_json"]
docsrs = []
runtime-detection = ["value-trait/runtime-detection"]
bench-all = [
"bench-apache_builds",
"bench-event_stacktrace_10kb",
"bench-github_events",
"bench-canada",
"bench-citm_catalog",
"bench-log",
"bench-twitter",
]
bench-apache_builds = []
bench-event_stacktrace_10kb = []
bench-github_events = []
bench-canada = []
bench-citm_catalog = []
bench-log = []
bench-twitter = []
big-int-as-float = []
[[example]]
name = "perf"
[profile.bench]
codegen-units = 1
lto = true
opt-level = 3
[profile.release]
codegen-units = 1
lto = true
opt-level = 3
panic = "abort"
[lints.rust]
unexpected_cfgs = { level = "allow", check-cfg = [
'cfg(portable)',
'cfg(tarpaulin_include)',
] }