[package]
name = "dsq-io"
version = "0.1.0"
edition = "2021"
authors = ["Durable Programming LLC"]
description = "I/O utilities for dsq - handles reading and writing to disk, STDIN, STDOUT"
license = "MIT OR Apache-2.0"
repository = "https://github.com/durableprogramming/dsq"
keywords = ["io", "file", "stdin", "stdout"]
categories = ["filesystem"]

[lints]
workspace = true

[dependencies]
# Error handling
thiserror = { workspace = true }
anyhow = { workspace = true }
polars = { workspace = true }


# JSON serialization
serde_json = { workspace = true }

# Local crates
dsq-shared = { version = "0.1.0", path = "../dsq-shared" }

[target.'cfg(target_arch = "wasm32")'.dependencies]
dsq-formats = { version = "0.1.0", path = "../dsq-formats", features = [] }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { workspace = true, features = ["fs", "io-util", "io-std", "macros", "rt"] }
dsq-formats = { version = "0.1.0", path = "../dsq-formats", features = ["parquet"] }
# Avro support (for error types)
apache-avro = { workspace = true }

[dev-dependencies]
tempfile = { workspace = true }
