[package] categories = ["asynchronous", "network-programming", "web-programming"] description = "HTTP body streaming support for Axum: json/csv/protobuf/arrow/txt" edition = "2021" rust-version = "1.56" homepage = "https://github.com/abdolence/axum-streams-rs" repository = "https://github.com/abdolence/axum-streams-rs" documentation = "https://docs.rs/axum-streams" keywords = ["http", "web", "axus", 'stream'] license = "Apache-2.0" name = "axum-streams" readme = "README.md" include = ["Cargo.toml", "src/**/*.rs", "README.md", "LICENSE"] version = "0.19.0" [badges] maintenance = { status = "actively-developed" } [lib] name = "axum_streams" path = "src/lib.rs" [dependencies] axum = { version = "0.7" } bytes = "1" http = "1" http-body = "1" mime = "0.3" tokio = "1" serde = { version = "1", features = ["serde_derive"], optional = true } serde_json = { version = "1", optional = true } tokio-stream = { version = "0.1" } tokio-util = { version = "0.7" } futures = "0.3" csv = { version = "1.3", optional = true } prost = { version= "0.13", optional = true } arrow = { version = "53", features = ["ipc"], optional = true } [features] default = [] json = ["dep:serde", "dep:serde_json"] csv = ["dep:csv", "dep:serde"] protobuf = ["dep:prost"] arrow = ["dep:arrow"] text = [] [dev-dependencies] futures = "0.3" hyper = "1" reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "multipart"] } tower = { version = "0.5", default-features = false, features = ["util", "make"] } tower-http = { version = "0.5", features = ["util", "map-response-body"] } tower-layer = "0.3" tower-service = "0.3" tokio = { version = "1", features = ["full"] } prost = { version= "0.13", features = ["prost-derive"] } arrow = { version = "53", features = ["ipc"] } tracing = "0.1" tracing-subscriber = { version = "0.3"} cargo-husky = { version = "1.5", default-features = false, features = ["run-for-all", "prepush-hook", "run-cargo-fmt"] } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [[example]] name = "json-example" path = "examples/json-example.rs" required-features = ["json"] [[example]] name = "csv-example" path = "examples/csv-example.rs" required-features = ["csv"] [[example]] name = "protobuf-example" path = "examples/protobuf-example.rs" required-features = ["protobuf"] [[example]] name = "text-example" path = "examples/text-example.rs" required-features = ["text"] [[example]] name = "json-array-complex-structure" path = "examples/json-array-complex-structure.rs" required-features = ["json"] [[example]] name = "json-with-buffering" path = "examples/json-with-buffering.rs" required-features = ["json"] [[example]] name = "json-with-errors-example" path = "examples/json-with-errors-example.rs" required-features = ["json"] [[example]] name = "arrow-example" path = "examples/arrow-example.rs" required-features = ["arrow"]