Skip to content

Changelog

All notable changes to this project are documented in this file using the Keep a CHANGELOG principles. This project adheres to Semantic Versioning.

Unreleased

0.6.0

This pre-release improves compatible with the PHP RdKafka extension ^5.0 and ^6.0.

Added

  • Add support for PHP 8.3 and 8.4
  • Add support for librdkafka 2.1.0, 2.1.1, 2.2.0, 2.3.0, 2.4.0, 2.5.0, 2.5.3, 2.6.0, 2.6.1

Fixed

  • Fix handling of native transaction error lifecycle

0.5.0

This pre-release improves compatible with the PHP RdKafka extension ^5.0 and ^6.0.

Note: compatibility with PHP RdKafka extension ^4.0 is no longer supported.

Added

  • Add explicit support for PHP 8.1 and 8.2
  • Add support for librdkafka v1.6.2, v1.9.0, v1.9.1, v1.9.2, v2.0.0, v2.0.1, v2.0.2

Fixed

  • Fix Message header & len type handling
  • Message::headers is now always of type array
  • Message::len is null if payload is null
  • Fix Collection:key() and Collection::current() type handling
  • Collection:key() always returns int

0.4.0

This pre-release improves compatible with the PHP RdKafka extension ^4.0 and ^5.0.

Added

  • Add pausePartitions/resumePartitions to Producer/ KafkaConsumer
  • Add deleteRecords, deleteConsumerGroupOffsets and deleteGroups to Admin Client
  • Add support for librdkafka v1.6.0, v1.6.1, v1.7.0, v1.8.0, v1.8.2

Changed

  • Rename Message::_private to ::opaque
  • Mark consumeCallback in ConsumerTopic as deprecated (it is deprecated in librdkafka since v1.4.0)

Fixed

  • Fix headers param in ProducerTopic::producev does not accept null

0.3.0 - 2020-12-16

Added

  • Add support for rd_kafka_err2name
  • Add opaque reference handling in Configs & Callbacks, produce & Message

0.2.0 - 2020-12-09

This pre-release supports PHP ^7.4 and ^8.0 and librdkafka v1.0.0 - v1.5.3. It is compatible with the PHP RdKafka extension ^4.0.

Note: Transactional Producer is no longer marked as experimental.

Fixed

  • Fix empty TopicPartition metadata handling

Added

  • Add TopicPartition::getMetadataSize()
  • Add support for librdkafka v1.5.3

Changed

  • Rename KafkaError to KafkaErrorException and change its interface for rdkafka extension compatibility with v4.1.*
  • Suggests pcntl extension (instead of requires)

0.1.0 - 2020-12-06

This first pre-release supports PHP ^7.4 and ^8.0 and librdkafka v1.0.0 - v1.5.2. It is compatible with the PHP RdKafka extension 4.0.*.

Note: features marked as experimental are stable, but the interface may change in future releases.

Special thanks to @siad007 and @carusogabriel for early fixes and tweaks.

Added

  • Add Consumer (low and high level)
  • Add Producer (with support for experimental transactional producing)
  • Add Admin Client (experimental)
  • Add Mock Cluster to simplify integration tests (experimental)
  • Add FFI binding for librdkafka 1.0.0 - 1.5.2
  • Add examples and basic documentation
  • Add benchmarks