Skip to content

Releases: mfontanini/cppkafka

v0.4.1

24 Jan 19:40
Compare
Choose a tag to compare
  • 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

14 Feb 02:28
Compare
Choose a tag to compare

Hotfix release

This only includes this one commit which fixes a compilation issue using a newer version of librdkafka.

v0.3.0 release

27 Jan 17:45
Compare
Choose a tag to compare

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 in BufferedProducer (#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 via std::array (#138 and #142).
  • Added support for rd_kafka_conf_set_events and rd_kafka_message_status (#134).
  • Added support for rdkafka events (#125).
  • Allow using std::chrono::time_point as a timestamp in MessageBuilder (#128).
  • Allow using allocators in Consumer::poll_batch (#118).

v0.2

21 Sep 01:25
Compare
Choose a tag to compare

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 and BufferedProducer::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

06 Jun 03:10
Compare
Choose a tag to compare

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