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
assert
inBufferedProducer
(#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
Buffer
s via raw arrays (#140) and (#147). - Added flush/produce termination callbacks in
BufferedProducer
(#148). - Allow constructing
Buffer
s viastd::array
(#138 and #142). - Added support for
rd_kafka_conf_set_events
andrd_kafka_message_status
(#134). - Added support for
rdkafka
events (#125). - Allow using
std::chrono::time_point
as 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
Buffer
with a null payload and a size > 0 (#88) - Make
BufferedProducer
thread safe (#72) - Log error in case consumer destruction throws (#61)
- Stop using deprecated rdkafka function
rd_kafka_errno2err
(#47) - Explicitly destroy callbacks on
Consumer
upon object destruction (#39) - Various build system fixes
New features
- Allow using a timeout on
BufferedProducer::flush
andBufferedProducer::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
BufferedProducer
enhancements and fixes that make it more reliable (#78, #79, #91) - Added round robin poller (#63)
- Prevent throwing exception on rdkafka callbacks (#74)
- Allow
Metadata
objects 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.h
header file (#59) - Allow disabling build of tests (#51)
- Add
Consumer::poll_batch
- Add
BackoffPerformer
class - Add
ConsumerDispatcher
class.
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