#apache-kafka #kafka #parser #apache #thread-safe #send-sync #consumer-offsets

konsumer_offsets

A library crate to parse the content of the Kafka __consumer_offsets internal topic

6 releases

0.3.0 Jun 30, 2023
0.2.2 Jun 23, 2023
0.2.0 Mar 28, 2023
0.1.1 Mar 13, 2023
0.1.0 Jan 18, 2023

#1496 in Parser implementations

Download history 12/week @ 2024-01-05 4/week @ 2024-01-12 4/week @ 2024-02-16 13/week @ 2024-02-23 8/week @ 2024-03-01 5/week @ 2024-03-08 9/week @ 2024-03-15 3/week @ 2024-03-22 40/week @ 2024-03-29

57 downloads per month
Used in kommitted

MIT/Apache

64KB
633 lines

konsumer_offsets CI_s Doc_s Ver_s Down_s Lic_s

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

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.

Dependencies

~0.4–7.5MB
~32K SLoC