Skip to content

Commit 603e10e

Browse files
committed
Release 2.2.0
1 parent fb04626 commit 603e10e

File tree

3 files changed

+101
-1
lines changed

3 files changed

+101
-1
lines changed

CHANGES.md

+46
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,49 @@
1+
# 2.2.0 (Apr 28, 2025)
2+
3+
KafkaProducer
4+
* KIP-98: Add idempotent producer support (#2569)
5+
* KIP-98: Transactional Producer (#2587)
6+
* KIP-98: Add offsets support to transactional KafkaProducer (#2590)
7+
* Prefix producer logs w/ client id and transactional id (#2591)
8+
* KAFKA-5429: Ignore produce response if batch was previously aborted
9+
* KIP-91: KafkaProducer `delivery_timeout_ms`
10+
* Default retries -> infinite
11+
* Expand KafkaProducer docstring w/ idempotent and transactional notes
12+
* RecordAccumulator: Use helper method to get/set `_tp_locks`; get dq with lock in reenqueue()
13+
14+
KafkaConsumer
15+
* KIP-98: Add Consumer support for `READ_COMMITTED` (#2582)
16+
* KIP-394: handle `MEMBER_ID_REQUIRED` error w/ second join group request (#2598)
17+
* KAFKA-5078: Defer fetch record exception if iterator has already moved across a valid record
18+
* KAFKA-5075: Defer consumer fetcher exception if fetch position has already increased
19+
* KAFKA-4937: Batch offset fetches in the Consumer
20+
* KAFKA-4547: Avoid resetting paused partitions to committed offsets
21+
* KAFKA-6397: Consumer should not block setting positions of unavailable partitions (#2593)
22+
23+
Potentially Breaking Changes (internal)
24+
* Rename CorruptRecordException -> CorruptRecordError
25+
* Rename Coordinator errors to generic not group (#2585)
26+
* Rename `ClusterMetadata.add_group_coordinator` -> `add_coordinator` + support txn type
27+
* Use SaslAuthenticationFailedError in kafka.conn connection failure; Drop unused AuthenticationFailedError
28+
* Remove old/unused errors; reorder; KafkaTimeout -> retriable
29+
* Drop `log_start_offset` from producer RecordMetadata
30+
31+
Internal
32+
* MemoryRecords iterator; MemoryRecordsBuilder records() helper
33+
* Convert `DefaultRecordsBuilder.size_in_bytes` to classmethod
34+
35+
Fixes
36+
* Resolve datetime deprecation warnings (#2589)
37+
* Avoid self refcount in log messages; test thread close on all pythons
38+
* Fix client.wakeup() race from producer/sender close
39+
* Fix ElectionNotNeededError handling in admin client
40+
41+
Tests
42+
* Move integration tests and fixtures to test/integration/; simplify unit fixtures (#2588)
43+
* Expand Sender test coverage (#2586)
44+
* py2 test fixups
45+
* Drop unused KafkaClient import from `test_fetcher`
46+
147
# 2.1.5 (Apr 4, 2025)
248

349
Fixes

docs/changelog.rst

+54
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,60 @@
11
Changelog
22
=========
33

4+
2.2.0 (Apr 28, 2025)
5+
####################
6+
7+
KafkaProducer
8+
-------------
9+
* KIP-98: Add idempotent producer support (#2569)
10+
* KIP-98: Transactional Producer (#2587)
11+
* KIP-98: Add offsets support to transactional KafkaProducer (#2590)
12+
* Prefix producer logs w/ client id and transactional id (#2591)
13+
* KAFKA-5429: Ignore produce response if batch was previously aborted
14+
* KIP-91: KafkaProducer `delivery_timeout_ms`
15+
* Default retries -> infinite
16+
* Expand KafkaProducer docstring w/ idempotent and transactional notes
17+
* RecordAccumulator: Use helper method to get/set `_tp_locks`; get dq with lock in reenqueue()
18+
19+
KafkaConsumer
20+
-------------
21+
* KIP-98: Add Consumer support for `READ_COMMITTED` (#2582)
22+
* KIP-394: handle `MEMBER_ID_REQUIRED` error w/ second join group request (#2598)
23+
* KAFKA-5078: Defer fetch record exception if iterator has already moved across a valid record
24+
* KAFKA-5075: Defer consumer fetcher exception if fetch position has already increased
25+
* KAFKA-4937: Batch offset fetches in the Consumer
26+
* KAFKA-4547: Avoid resetting paused partitions to committed offsets
27+
* KAFKA-6397: Consumer should not block setting positions of unavailable partitions (#2593)
28+
29+
Potentially Breaking Changes (internal)
30+
---------------------------------------
31+
* Rename CorruptRecordException -> CorruptRecordError
32+
* Rename Coordinator errors to generic not group (#2585)
33+
* Rename `ClusterMetadata.add_group_coordinator` -> `add_coordinator` + support txn type
34+
* Use SaslAuthenticationFailedError in kafka.conn connection failure; Drop unused AuthenticationFailedError
35+
* Remove old/unused errors; reorder; KafkaTimeout -> retriable
36+
* Drop `log_start_offset` from producer RecordMetadata
37+
38+
Internal
39+
--------
40+
* MemoryRecords iterator; MemoryRecordsBuilder records() helper
41+
* Convert `DefaultRecordsBuilder.size_in_bytes` to classmethod
42+
43+
Fixes
44+
-----
45+
* Resolve datetime deprecation warnings (#2589)
46+
* Avoid self refcount in log messages; test thread close on all pythons
47+
* Fix client.wakeup() race from producer/sender close
48+
* Fix ElectionNotNeededError handling in admin client
49+
50+
Tests
51+
-----
52+
* Move integration tests and fixtures to test/integration/; simplify unit fixtures (#2588)
53+
* Expand Sender test coverage (#2586)
54+
* py2 test fixups
55+
* Drop unused KafkaClient import from `test_fetcher`
56+
57+
458
2.1.5 (Apr 4, 2025)
559
###################
660

kafka/version.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
__version__ = '2.2.0.dev'
1+
__version__ = '2.2.0'

0 commit comments

Comments
 (0)