A library crate to parse the content of the [Kafka] [__consumer_offsets
] internal topic.
Features
- Most complete parser for [
__consumer_offsets
] messages out there
- Reverse-engineering of Kafka 3.x parsing logic, making it retro-compatible by default
- Able to parse the subscription and assignment data contained in
GroupMetadata
messages:
beyond what even the Kafka own parser can do
- Every struct and field is well documented
- Internal parsing functions are also documented and have references to the code they are based upon:
if you read the code, you can go correlate to the [Kafka] codebase that its imitating
- Parsing is based on [bytes_parser] and errors on [thiserror], so it's easy to read
and handles result errors idiomatically
- All types exported by this crate are "Thread Safe" and "Async/Await Safe":
we enforce the implementation of
Sized + Send + Sync + Unpin
- Support (via feature flags) to parse Unix timestamps via the [chrono] or [time] crates
- Support (via feature flags) for serialization/deserialization via the [serde] crate
License
Licensed under either of
- Apache License, Version 2.0
(LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license
(LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.