[package]
edition = "2021"
rust-version = "1.85"
name = "partitionline"
version = "0.1.0"
authors = ["Michael Ingley <michael.ingley@gmail.com>"]
build = false
include = [
"src/**",
"tests/**",
"examples/**",
"docs/design.md",
"docs/gaps.md",
"docs/benchmark.md",
"docs/STATUS.md",
"docs/CIVILIZATION.md",
"docs/RELEASE.md",
"docs/api-stability.md",
"docs/security.md",
"docs/guide.md",
"docs/migrate-from-rdkafka.md",
"docs/zstd-spike.md",
"docs/ADOPTION.md",
"docs/schema-companion.md",
"docs/latency-baseline.json",
"CHANGELOG.md",
"deny.toml",
"Cargo.toml",
"Cargo.lock",
"clippy.toml",
"README.md",
"SECURITY.md",
"LICENSE-APACHE",
"LICENSE-MIT",
"NOTICE",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pure-Rust Apache Kafka client and protocol implementation"
homepage = "https://github.com/mingley/partitionline"
documentation = "https://docs.rs/partitionline"
readme = "README.md"
keywords = [
"kafka",
"client",
"async",
"producer",
"streaming",
]
categories = [
"network-programming",
"asynchronous",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/mingley/partitionline"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
default = []
tracing = ["dep:tracing"]
[lib]
name = "partitionline"
path = "src/lib.rs"
[[example]]
name = "admin"
path = "examples/admin.rs"
[[example]]
name = "bench_fetch"
path = "examples/bench_fetch.rs"
[[example]]
name = "bench_latency"
path = "examples/bench_latency.rs"
[[example]]
name = "bench_produce"
path = "examples/bench_produce.rs"
[[example]]
name = "consume"
path = "examples/consume.rs"
[[example]]
name = "consume_intercept"
path = "examples/consume_intercept.rs"
[[example]]
name = "cooperative"
path = "examples/cooperative.rs"
[[example]]
name = "eos"
path = "examples/eos.rs"
[[example]]
name = "group"
path = "examples/group.rs"
[[example]]
name = "intercept"
path = "examples/intercept.rs"
[[example]]
name = "kip848"
path = "examples/kip848.rs"
[[example]]
name = "metrics"
path = "examples/metrics.rs"
[[example]]
name = "oauth"
path = "examples/oauth.rs"
[[example]]
name = "offsets"
path = "examples/offsets.rs"
[[example]]
name = "pause"
path = "examples/pause.rs"
[[example]]
name = "produce"
path = "examples/produce.rs"
[[example]]
name = "roundtrip"
path = "examples/roundtrip.rs"
[[example]]
name = "sasl"
path = "examples/sasl.rs"
[[example]]
name = "share"
path = "examples/share.rs"
[[example]]
name = "tls"
path = "examples/tls.rs"
[[example]]
name = "txn"
path = "examples/txn.rs"
[[example]]
name = "wakeup"
path = "examples/wakeup.rs"
[[test]]
name = "client_api"
path = "tests/client_api.rs"
[[test]]
name = "e2e"
path = "tests/e2e.rs"
[[test]]
name = "full_surface"
path = "tests/full_surface.rs"
[[test]]
name = "fuzz_decode_smoke"
path = "tests/fuzz_decode_smoke.rs"
[[test]]
name = "kip848_live"
path = "tests/kip848_live.rs"
[[test]]
name = "mock_produce"
path = "tests/mock_produce.rs"
[[test]]
name = "roundtrip"
path = "tests/roundtrip.rs"
[dependencies.base64]
version = "0.22"
[dependencies.bytes]
version = "1"
[dependencies.crc32c]
version = "0.6"
[dependencies.flate2]
version = "1"
features = ["rust_backend"]
default-features = false
[dependencies.getrandom]
version = "0.2"
[dependencies.hmac]
version = "0.12"
[dependencies.lz4_flex]
version = "0.11"
[dependencies.parking_lot]
version = "0.12"
[dependencies.pbkdf2]
version = "0.12"
features = ["hmac"]
default-features = false
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"tls12",
]
default-features = false
[dependencies.sha2]
version = "0.10"
[dependencies.snap]
version = "1"
[dependencies.tokio]
version = "1"
features = [
"fs",
"io-util",
"macros",
"net",
"rt",
"rt-multi-thread",
"signal",
"sync",
"time",
]
[dependencies.tokio-rustls]
version = "0.26"
features = [
"ring",
"tls12",
]
default-features = false
[dependencies.tracing]
version = "0.1"
optional = true
[dependencies.webpki-roots]
version = "1"
[dev-dependencies]
[lints.clippy]
allow_attributes = "deny"
allow_attributes_without_reason = "deny"
await_holding_invalid_type = "deny"
await_holding_lock = "deny"
await_holding_refcell_ref = "deny"
cast_possible_truncation = "deny"
cast_possible_wrap = "deny"
cast_sign_loss = "deny"
disallowed_macros = "deny"
disallowed_methods = "deny"
disallowed_types = "deny"
expect_used = "deny"
indexing_slicing = "deny"
let_underscore_future = "deny"
let_underscore_must_use = "deny"
lossy_float_literal = "deny"
mem_forget = "deny"
panic = "deny"
todo = "deny"
unimplemented = "deny"
unreachable = "deny"
unwrap_used = "deny"
[lints.rust]
missing_docs = "deny"
unreachable_pub = "warn"
unsafe_code = "forbid"
unused_must_use = "deny"
unused_results = "deny"
[profile.release]
lto = "thin"
codegen-units = 1