[package]
name = "json-streaming"
version = "1.0.5"
edition = "2024"
authors = [
"Arno Haase <arno.haase@haase-consulting.com>",
]
description = "a library for reading and writing JSON from / to a stream without the need to materialize the data in memory. Provides both blocking and async APIs."
categories = [
"no-std",
"no-std::no-alloc",
"parser-implementations",
"web-programming",
]
keywords = [
"json",
"streaming",
"async",
"no-std",
"no_std",
]
license = "Apache-2.0"
repository = "https://github.com/arnohaase/json-streaming"
documentation = "https://docs.rs/json-streaming"
[features]
default = ["blocking", "std", "non-blocking"]
blocking = []
non-blocking = ["std"]
std = []
tokio = ["non-blocking", "std"]
[dev-dependencies]
rstest = "0.26"
tokio = { version = "1.47", default-features = false, features = ["macros", "rt-multi-thread", "rt"] }
[dependencies]
async-trait = "0.1"
tokio = { version = "1", default-features = false, features = ["io-util"] }
[[example]]
name = "blocking"
path = "examples/blocking.rs"
required-features = ["blocking", "std"]
[[example]]
name = "float_format"
path = "examples/float_format.rs"
required-features = ["blocking", "std"]
[[example]]
name = "jsonlines"
path = "examples/jsonlines.rs"
required-features = ["blocking", "std"]
[[example]]
name = "no_std"
path = "examples/no_std.rs"
required-features = ["blocking"]
[[example]]
name = "number_parsing"
path = "examples/number_parsing.rs"
required-features = ["blocking", "std"]
[[example]]
name = "skipping"
path = "examples/skipping.rs"
required-features = ["blocking", "std"]
[[example]]
name = "non-blocking"
path = "examples/non_blocking.rs"
required-features = ["tokio"]