[package] name = "rskafka_wasi" version = "0.3.1" edition = "2021" license = "MIT/Apache-2.0" readme = "README.md" keywords = [ "api", "async", "kafka", "protocol", "wasi" ] categories = ["api-bindings"] description = " A minimal Rust client for Apache Kafka " repository = "https://github.com/WasmEdge/rskafka_wasi" documentation = "https://docs.rs/rskafka/" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] async-socks5 = { version = "0.5", optional = true } async-trait = "0.1" bytes = "1.1" chrono = { version = "0.4", default-features = false } crc32c = "0.6" flate2 = { version = "1", optional = true } futures = "0.3" integer-encoding = "3" lz4 = { version = "1.23", optional = true } parking_lot = "0.12" pin-project-lite = "0.2" rand = "0.8" rustls = { version = "0.20", optional = true } snap = { version = "1", optional = true } thiserror = "1.0" tokio-rustls = { version = "0.23", optional = true } tracing = "0.1" zstd = { version = "0.11", optional = true } [target.'cfg(not(target_os="wasi"))'.dependencies] tokio = { version = "1.19", default-features = false, features = ["io-util", "net", "rt", "sync", "time", "macros"] } [target.'cfg(target_os="wasi")'.dependencies] tokio_wasi = { version = "1", default-features = false, features = ["io-util", "net", "rt", "sync", "time", "macros"] } [dev-dependencies] assert_matches = "1.5" criterion = { version = "0.4", features = ["async_tokio"] } dotenvy = "0.15.1" futures = "0.3" once_cell = "1.9" rustls-pemfile = "1.0" tracing-log = "0.1" tracing-subscriber = { version = "0.3", features = ["env-filter"] } uuid = { version = "1.0", features = ["v4"] } [target.'cfg(not(target_os="wasi"))'.dev-dependencies] j4rs = "0.14" procspawn = "0.10" proptest = "1" proptest-derive = "0.3" rdkafka = { version = "0.29", default-features = false, features = ["libz", "tokio", "zstd"] } tokio = { version = "1.14", features = ["macros", "rt-multi-thread"] } [features] default = [ "compression-gzip", "compression-snappy", ] full = [ "compression-gzip", "compression-lz4", "compression-snappy", "compression-zstd", "transport-socks5", "transport-tls", ] compression-gzip = ["flate2"] compression-lz4 = ["lz4"] compression-snappy = ["snap"] compression-zstd = ["zstd"] transport-socks5 = ["async-socks5"] transport-tls = ["rustls", "tokio-rustls"] unstable-fuzzing = [] [lib] # For `cargo bench -- --save-baseline ...` # See https://github.com/bheisler/criterion.rs/issues/275. name = "rskafka" path = "src/lib.rs" bench = false [[bench]] name = "throughput" harness = false [workspace] members = [ ".", # "fuzz", ] [profile.bench] debug = true # tune release profile for fuzzing [profile.release] debug = true [package.metadata.docs.rs] all-features = true