Releases: mfontanini/cppkafka
Releases · mfontanini/cppkafka
v0.4.1
- Use
CMAKE_INSTALL_LIBDIR(#291). - Do not try to export template declaration in shared lib (#292).
- CMake: set min required C++ standard to C++11 (#293).
- Do not require rdkafka if it is static lib (#301).
- Removed min/max macros on windows (#302).
- Add dllexport front of HandleDeleter to fix link error in win dll usage (#305).
- Fix memory leak in producev (#307).
- Fix memory leak in
get_member_id(#309).
v0.3.1 release
Hotfix release
This only includes this one commit which fixes a compilation issue using a newer version of librdkafka.
v0.3.0 release
This version breaks ABI compatibility, so make sure to rebuild your code after updating. As usual, thanks to all contributors!
Fixes
- Fixed windows compilation warnings (#157).
- Avoid re-ordering messages on produce failure in
BufferedProducer(#153). - Use
CMAKE_STATIC_LIBRARY_*macros for FindRdKafka (#156). - Don't leak messages in
BufferedProducer::flush(timeout)(#150). - Don't set log level to error in consumer/producer constructors (#136).
- Fix windows linker errors (#120).
- Don't use
assertinBufferedProducer(#116).
New features
- Added message header support (#115). Thanks @accelerated for the effort put into this one in particular!
- Added queue full notification in
BufferedProducer(#149). - Allow constructing
Buffers via raw arrays (#140) and (#147). - Added flush/produce termination callbacks in
BufferedProducer(#148). - Allow constructing
Buffers viastd::array(#138 and #142). - Added support for
rd_kafka_conf_set_eventsandrd_kafka_message_status(#134). - Added support for
rdkafkaevents (#125). - Allow using
std::chrono::time_pointas a timestamp inMessageBuilder(#128). - Allow using allocators in
Consumer::poll_batch(#118).
v0.2
This version breaks ABI compatibility, so make sure to rebuild your code after updating. Eventually I hope we can commit to not breaking the ABI but that will probably be after release 1.0.
Fixes
- Miscellaneous Windows build fixes.
- Don't allow constructing a
Bufferwith a null payload and a size > 0 (#88) - Make
BufferedProducerthread safe (#72) - Log error in case consumer destruction throws (#61)
- Stop using deprecated rdkafka function
rd_kafka_errno2err(#47) - Explicitly destroy callbacks on
Consumerupon object destruction (#39) - Various build system fixes
New features
- Allow using a timeout on
BufferedProducer::flushandBufferedProducer::wait_for_acks(#86) - Add pause/resume on
Producer(#87) - Check per topic/partition errors on API calls that return topic partition handle lists (#90)
- Allow forcing to use an rdkafka static library archive (#94)
- Several
BufferedProducerenhancements and fixes that make it more reliable (#78, #79, #91) - Added round robin poller (#63)
- Prevent throwing exception on rdkafka callbacks (#74)
- Allow
Metadataobjects to be non-owning (#73) - Allow pausing/resuming consumption on a whole topic (#67)
- Add wrapper for
rd_kafka_yield(#64) - Move tests to use Catch2 rather than googletest (#56)
- Include a top level
cppkafka.hheader file (#59) - Allow disabling build of tests (#51)
- Add
Consumer::poll_batch - Add
BackoffPerformerclass - Add
ConsumerDispatcherclass.
Thanks to everyone who contributed to this version, especially @accelerated who wrote a major part of the code in this release.
v0.1 - First release
Features:
- Support for rdkafka's high level consumer API
- Kafka producer
- Fetching metadata (broker, topics, etc).
- Fetching consumer group information
- Buffered producer support
- Compacted topic consumer support