Releases: confluentinc/confluent-kafka-python
v2.6.1
confluent-kafka-python v2.6.1
v2.6.1 is a maintenance release with the following fixes and enhancements:
- Removed python 3.6 support. (#1592)
- Migrated build system from
setup.py
topyproject.toml
in accordance withPEP 517
andPEP 518
, improving project configuration, build system requirements management, and compatibility with modern Python packaging tools likepip
andbuild
. (#1592) - Added an example for OAUTH OIDC producer with support for confluent cloud (#1769, @sarwarbhuiyan)
confluent-kafka-python is based on librdkafka v2.6.1, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.6.0
confluent-kafka-python v2.6.0
v2.6.0 is a feature release with the following features, fixes and enhancements:
- Added Python 3.13 wheels (#1828).
- KIP-848 EA: Admin API for listing consumer groups now has an optional filter to return only groups of given types (#1830).
- KIP-460 Admin Leader Election RPC (#1818)
- Added Transactional id resource type for ACL operations (@JohnPreston, #1834).
confluent-kafka-python is based on librdkafka v2.6.0, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.5.3
confluent-kafka-python v2.5.3
v2.5.3 is a maintenance release with the following fixes and enhancements:
Fixes
- Fix an assert being triggered during push telemetry call when no metrics matched on the client side.
- Minor enhancement to JSONDeserializer to retrieve schema from Schema Registry if not provided
confluent-kafka-python is based on librdkafka v2.5.3, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.5.0
Warning
This version has introduced a regression in which an assert is triggered during PushTelemetry call. This happens when no metric is matched on the client side among those requested by broker subscription.
You won't face any problem if:
- Broker doesn't support KIP-714.
- KIP-714 feature is disabled on the broker side.
- KIP-714 feature is disabled on the client side. This is enabled by default. Set configuration
enable.metrics.push
tofalse
. - If KIP-714 is enabled on the broker side and there is no subscription configured there.
- If KIP-714 is enabled on the broker side with subscriptions that match the KIP-714 metrics defined on the client.
Having said this, we strongly recommend using v2.5.3
and above to not face this regression at all.
confluent-kafka-python v2.5.0
v2.5.0 is a feature release with the following features, fixes and enhancements:
- KIP-107 Added delete_records API. (#1710)
- Added an example to show the usage of the custom logger with
AdminClient
. (#1758) - Improve caching on Schema Registry client. (#1744)
- Removed usage of
strcpy
to enhance security of the client. (#1745) - Removed support for centos6 and centos7. (#1776)
- Fixed invalid write in
OAUTHBEARER/OIDC
extensions copy. (#1745) - Fixed documentation for default value of
operation_timeout
andrequest_timeout
in various Admin apis. (#1710) - Fixed an issue related to import error of
TopicCollection
andTopicPartitionInfo
classes when importing through other module like mypy. (#1764) - Fixed a segfault when
commit
orstore_offsets
consumer method is called incorrectly with errored Message object. (#1754) - Fixed
logger
not working when provided as an argument toAdminClient
instead of a configuration property. (#1758) - Fixed some memory leaks related to
PyDict_SetItem
. (#1710)
confluent-kafka-python is based on librdkafka v2.5.0, see the librdkafka release notes for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.4.0
confluent-kafka-python v2.4.0
v2.4.0 is a feature release with the following features, fixes and enhancements:
- KIP-848: Added KIP-848 based new consumer group rebalance protocol. The feature is an Early Access: not production ready yet. Please refer detailed doc for more information.
- Fix segfault with describe_topics and flaky connection (@lpsinger, #1692)
confluent-kafka-python is based on librdkafka v2.4.0, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.3.0
confluent-kafka-python v2.3.0
v2.3.0 is a feature release with the following features, fixes and enhancements:
- Add Python 3.12 wheels
- KIP-117: Add support for AdminAPI
describe_cluster()
anddescribe_topics()
. (@jainruchir, #1635) - KIP-430:
Return authorized operations in Describe Responses. (@jainruchir, #1635) - KIP-516: Partial support of topic identifiers. Topic identifiers in metadata response are available through the new describe_topics function (#1645).
- KIP-396: completed the implementation with the addition of
list_offsets
(#1576). - Add
Rack
to theNode
type, so AdminAPI calls can expose racks for brokers
(currently, all Describe Responses) (#1635, @jainruchir). - Fix the Describe User Scram Credentials for Describe all users or empty users list. Please refer to
issue(#1616) for more details (#1630).
confluent-kafka-python is based on librdkafka v2.3.0, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.2.0
confluent-kafka-python v2.2.0
v2.2.0 is a feature release with the following features, fixes and enhancements:
- KIP-339
IncrementalAlterConfigs API (#1517). - KIP-554:
User SASL/SCRAM credentials alteration and description (#1575). - Added documentation with an example of FIPS compliant communication with Kafka cluster.
- Fixed wrong error code parameter name in KafkaError.
confluent-kafka-python is based on librdkafka v2.2.0, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.1.1
confluent-kafka-python v2.1.1
v2.1.1 is a maintenance release with the following fixes and enhancements:
Fixes
- Added a new ConsumerGroupState UNKNOWN. The typo state UNKOWN is deprecated and will be removed in the next major version.
- Fix some Admin API documentation stating -1 for infinite timeout incorrectly.
Request timeout can't be infinite.
confluent-kafka-python is based on librdkafka v2.1.1, see the
librdkafka release notes
for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.1.0
confluent-kafka-python v2.1.0
v2.1.0 is a feature release with the following features, fixes and enhancements:
- Added
set_sasl_credentials
. This new method (on the Producer, Consumer, and AdminClient) allows modifying the stored SASL PLAIN/SCRAM credentials that will be used for subsequent (new) connections to a broker (#1511). - Wheels for Linux / arm64 (#1496).
- Added support for Default num_partitions in CreateTopics Admin API.
- Added support for password protected private key in CachedSchemaRegistryClient.
- Add reference support in Schema Registry client. (@RickTalken, #1304)
- Migrated travis jobs to Semaphore CI (#1503)
- Added support for schema references. (#1514 and @slominskir #1088)
- KIP-320: add offset leader epoch methods to the TopicPartition and Message classes (#1540).
confluent-kafka-python is based on librdkafka v2.1.0, see the librdkafka release notes for a complete list of changes, enhancements, fixes and upgrade considerations.
v2.0.2
confluent-kafka-python v2.0.2
v2.0.2 is a feature release with the following features, fixes and enhancements:
- Added Python 3.11 wheels.
- KIP-222 Add Consumer Group operations to Admin API.
- KIP-518 Allow listing consumer groups per state.
- KIP-396 Partially implemented: support for AlterConsumerGroupOffsets.
- As result of the above KIPs, added (#1449)
list_consumer_groups
Admin operation. Supports listing by state.describe_consumer_groups
Admin operation. Supports multiple groups.delete_consumer_groups
Admin operation. Supports multiple groups.list_consumer_group_offsets
Admin operation. Currently, only supports 1 group with multiple partitions. Supports require_stable option.alter_consumer_group_offsets
Admin operation. Currently, only supports 1 group with multiple offsets.
- Added
normalize.schemas
configuration property to Schema Registry client (@rayokota, #1406) - Added metadata to
TopicPartition
type andcommit()
(#1410). - Added
consumer.memberid()
for getting member id assigned to
the consumer in a consumer group (#1154). - Implemented
nb_bool
method for the Producer, so that the default (which uses len)
will not be used. This avoids situations where producers with no enqueued items would
evaluate to False (@vladz-sternum, #1445). - Deprecated
AvroProducer
andAvroConsumer
. UseAvroSerializer
andAvroDeserializer
instead. - Deprecated
list_groups
. Uselist_consumer_groups
anddescribe_consumer_groups
instead. - Improved Consumer Example to show atleast once semantics.
- Improved Serialization and Deserialization Examples.
- Documentation Improvements.
Upgrade considerations
OpenSSL 3.0.x upgrade in librdkafka requires a major version bump, as some
legacy ciphers need to be explicitly configured to continue working,
but it is highly recommended NOT to use them. The rest of the API remains
backward compatible.
confluent-kafka-python is based on librdkafka v2.0.2, see the
librdkafka v2.0.0 release notes
and later ones for a complete list of changes, enhancements, fixes and upgrade considerations.
Note: There were no v2.0.0 and v2.0.1 releases.