Release Dates


These dates are goals and subject to change, but we expect to stay on the Time Based Release Plan unless unexpected critical issues come up. While the earliest possible release date is 2w after code freeze, release candidates (RCs) will roll out as needed until the release vote passes.

The release manager is Konstantine Karantasis

How to Contribute

Before code freeze:

After code freeze:

Open Issues


Also feel free to refer to this release page for more details of the included tickets (requires log in to the Apache Kafka Jira project).

Planned KIP Content

Note: The planned content is not binding - final content will be based the features committed by branch-cutting date. See Kafka Improvement Proposals for the full list of KIPs.

KIPJIRAComponent
KIP-751: Drop support for Scala 2.12 in Kafka 4.0 (deprecate in 3.0)

Documentation
KIP-750: Drop support for Java 8 in Kafka 4.0 (deprecate in 3.0)

Documentation
KIP-746: Revise KRaft Metadata Records

Core
KIP-745: Connect API to restart connector and tasks

Connect
KIP-744: Migrate TaskMetadata and ThreadMetadata to an interface with internal implementation

Streams
KIP-743: Remove config value 0.10.0-2.4 of Streams built-in metrics version config

Streams
KIP-741: Change default serde to be null

Streams
KIP-740: Clean up public API in TaskId and fix TaskMetadata#taskId()

Streams
KIP-738: Removal of Connect's internal converter properties

Connect
KIP-735: Increase default consumer session timeout

Clients
KIP-734: Improve AdminClient.listOffsets to return timestamp and offset for the record with the largest timestamp

Clients
KIP-733: change Kafka Streams default replication factor config

Streams
KIP-732: Deprecate eos-alpha and replace eos-beta with eos-v2

Streams
KIP-730: Producer ID generation in KRaft mode

Core, Clients
KIP-725: Streamlining configurations for WindowedSerializer and WindowedDeserializer.

Streams
KIP-724: Drop support for message formats v0 and v1

Core, Clients
KIP-722: Enable connector client overrides by default

Connect
KIP-721: Enable connector log contexts in Connect Log4j configuration

Connect
KIP-720: Deprecate MirrorMaker v1

Core
KIP-716: Allow configuring the location of the offset-syncs topic with MirrorMaker2

MirrorMaker
KIP-715: Expose Committed offset in streams

Streams
KIP-709: Extend OffsetFetch requests to accept multiple group ids.

Core, Clients
KIP-707: The future of KafkaFuture

Clients

KIP-699: Update FindCoordinator to resolve multiple Coordinators at a time

Core, Clients
KIP-695: Further Improve Kafka Streams Timestamp SynchronizationStreams
KIP-679: Producer will enable the strongest delivery guarantee by default

Clients
KIP-666: Add Instant-based methods to ReadOnlySessionStore

Streams
KIP-633: Drop 24 hour default of grace period in Streams

Streams
KIP-630: Kafka Raft Snapshot

Core
KIP-623: Add "internal-topics" option to streams application reset tool

Streams, Tools
KIP-622: Add currentSystemTimeMs and currentStreamTimeMs to ProcessorContext

Streams
KIP-466: Add support for List<T> serialization and deserialization

Clients, Streams


Postponed to subsequent release

KIPJIRAComponent
KIP-726: Make the "cooperative-sticky, range" as the default assignor

Clients
KIP-708: Rack awareness for Kafka Streams

Streams
KIP-698: Add Explicit User Initialization of Broker-side State to Kafka Streams

Streams
KIP-691: Enhance Transactional Producer Exception Handling

Clients
KIP-653: Upgrade log4j to log4j2

Applies to almost all the components
KIP-405: Kafka Tiered Storage

Core
KIP-390: Support Compression Level

Clients