Skip to content

Releases: dpkp/kafka-python

2.3.1

09 Apr 21:13

Choose a tag to compare

2.3.1 (Apr 9, 2026)

Fixes

  • Fix TaggedFields value encoding; add test coverage (#2725)
  • Fix zstd multi-frame decompression failure (#2717)
  • Fix KeyError in KafkaConsumer.committed() (#2710)
  • Fix VarInt/VarLong encoding; move tests to test/protocol/ (#2706)
  • Fix Fetcher._fetch_offsets_by_times retry handling (#2833)
  • Fixes to support integration testing with external KAFKA_URI (#2838)
  • Minor py2 fixes: consumer integration test; dont pip install python-snappy

2.2.19

09 Apr 21:12

Choose a tag to compare

2.2.19 (Apr 9, 2026)

Fixes

  • Fix TaggedFields value encoding; add test coverage (#2725)
  • Fix zstd multi-frame decompression failure (#2717)
  • Fix KeyError in KafkaConsumer.committed() (#2710)
  • Fix VarInt/VarLong encoding; move tests to test/protocol/ (#2706)
  • Fix Fetcher._fetch_offsets_by_times retry handling (#2833)
  • Fixes to support integration testing with external KAFKA_URI (#2838)
  • Minor py2 fixes: consumer integration test; done pip install python-snappy

2.3.0

09 Mar 21:47

Choose a tag to compare

2.3.0 (Nov 20, 2025)

2.3.x will be the last release branch with python2 support!

CLI

  • python -m cli interfaces for kafka.admin, kafka.consumer, kafka.producer (#2650)

Producer

  • KIP-654: Abort transaction with pending data with TransactionAbortedError (#2662)
  • KafkaProducer: Handle UnknownProducerIdError (#2663)
  • KIP-467: Augment ProduceResponse error messaging for specific culprit records (#2661)

Consumer

  • KIP-345: Consumer group static membership (#2625)
  • KIP-207: Add ListOffsetsRequest v5 / handle OffsetNotAvailableError (#2657)
  • Fetcher: Add missing argument in debug log (#2665)

AdminClient

  • KIP-430: Return Authorized Operations in Describe Responses (#2656)
  • Add send_request() and send_requests() to KafkaAdminClient (#2649)

Maintenance

  • Remove old/unused kafka.protocol.pickle (#2653)
  • Switch protocol code to getattr/setattr from dict (#2654)
  • Drop unused imports (#2651)

Project Infra

  • Bump github/codeql-action from 3 to 4 (#2678)
  • Bump actions/setup-python from 5 to 6 (#2674)
  • Bump actions/setup-java from 4 to 5 (#2673)
  • Bump actions/checkout from 4 to 5 (#2669)
  • Bump actions/checkout from 5 to 6 (#2694)
  • NixOS helpers

2.2.15

01 Jul 17:37

Choose a tag to compare

2.2.15 (July 1, 2025)

Fixes

2.2.14

27 Jun 16:48

Choose a tag to compare

2.2.14 (June 27, 2025)

Fixes

  • python2 fixups (#2655)
  • Fix coordinator lock contention during close() (#2652)

2.2.13

20 Jun 22:58

Choose a tag to compare

2.2.13 (June 20, 2025)

Fixes

  • Use client.await_ready() to simplify blocking wait and add timeout to admin client (#2648)
  • Fixup import style in example.py

Documentation

  • update README kafka version badge to include 4.0

2.2.12

18 Jun 23:07

Choose a tag to compare

2.2.12 (June 18, 2025)

Fixes

  • Fix construction of final GSSAPI authentication message (#2647)
  • Avoid RuntimeError on mutated _completed_fetches deque in consumer fetcher (#2646)
  • Throw exception on invalid bucket type (#2642)

2.2.11

05 Jun 21:31

Choose a tag to compare

2.2.11 (June 5, 2025)

Fixes

  • Do not ignore metadata response for single topic with error (#2640)
  • Fix decoding bug in AWS_MSK_IAM mechanism (#2639)
  • Add synchronized decorator; add lock to subscription state (#2636)
  • Update build links in documentation (#2634)

2.2.10

22 May 21:24

Choose a tag to compare

2.2.10 (May 22, 2025)

Fixes

  • Set the current host in the SASL configs (#2633)
  • Fix sasl gssapi plugin: do not rely on client_ctx.complete in auth_bytes() (#2631)

2.2.9

21 May 23:28

Choose a tag to compare

2.2.9 (May 21, 2025)

Fixes

  • Do not reset fetch positions if offset commit fetch times out (#2629)

Logging / Error Messages

  • More / updated debug logging for coordinator / consumer (#2630)