kacrab-protocol
Kafka wire protocol primitives, generated request/response structs, record
batches, compression, framing, and version negotiation for kacrab.
Scope
primitives,string,bytes_io,uuid, andtaggedimplement Kafka wire encoding helpers.frameowns request/response frame helpers.recordowns Kafka record batch v2 encoding and decoding.compressionowns gzip, snappy, lz4, and zstd codec dispatch behind feature flags.versionresolves supported API and header versions.generatedcontains committed output fromkacrab-codegen; do not edit it by hand.
Features
gzip,snappy,lz4, andzstdenable record-batch compression codecs.lz4-hcenables the C-FFI high-compression LZ4 backend.compressionenablesgzip,snappy,lz4, andzstd.message-enumsenables generated request/response wrapper enums over the per-message structs.
The default feature set is empty so the protocol crate can stay small for callers that only need primitive/generated message support.
Verification
Run protocol tests from the workspace root:
The Java matrix is ignored by default because it requires Java, Maven, and the Kafka client jar. It is the compatibility oracle for generated Kafka message wire shapes.
Author
kacrab-protocol is authored and maintained by pirumu.
License
This crate is licensed under either MIT or Apache-2.0, matching the workspace.