What's Changed
New Features 🎉
- Make AdminClient optional by @graemerocher in #1343
- Add per-class Kafka listener consumer strategy by @graemerocher in #1305
- Introduce id for KafkaListener by @graemerocher in #1347
- Add Kafka listener invocation scope by @graemerocher in #1336
- Default async KafkaClient methods to TaskExecutors.BLOCKING by @graemerocher in #1354
Bug Fixes 🐞
- Fix batch deserialization seek with disabled offsets by @graemerocher in #1300
- Fix Kafka Streams metric naming collisions by @graemerocher in #1306
- Fix Prometheus warnings from optional Kafka node-id tags by @graemerocher in #1298
- Fix Prometheus consumer metric tag stability by @graemerocher in #1329
- Fix recovery for expired transactional producers by @graemerocher in #1328
- Add regression coverage for deserialization consumer records by @graemerocher in #1339
- Fix Kafka Streams health endpoint regression on Kafka 4.x by @graemerocher in #1302
Improvements ⭐
- Make null kafka config errors explicit by @graemerocher in #1318
- Refactor tests to not use KafkaConsumer internals by @graemerocher in #1322
- Add LOG_AND_RESUME_AT_NEXT_RECORD DLQ support by @graemerocher in #1317
- Change log level for Kafka offset commit errors when using CooperativeSticky assignment strategy by @graemerocher in #1312
- Add global Kafka Streams disable configuration by @graemerocher in #1346
- Fix Kafka Streams SHUTDOWN_APPLICATION shutdown by @graemerocher in #1351
- Document schema registry overrides for named clients by @graemerocher in #1352
- Align Kafka metrics with Micrometer naming by @graemerocher in #1349
Docs 📖
- Clarify KafkaClient executor ordering with CompletableFuture by @graemerocher in #1326
- Clarify SYNC_PER_RECORD commit behavior by @graemerocher in #1330
- Document runtime Kafka bootstrap configuration by @graemerocher in #1332
- Add guide for Avro and Protobuf serialization by @graemerocher in #1335
- Document same-topic multi-type Kafka listeners by @graemerocher in #1337
- Document multiple Kafka Streams configuration by @graemerocher in #1334
- Update 6.0 release history by @graemerocher in #1358
Dependency updates 🚀
- Update dependency org.apache.groovy:groovy to v4.0.31 by @renovate[bot] in #1325
- Update dependency org.graalvm.sdk:graal-sdk to v25.0.3 by @renovate[bot] in #1331
- Update dependency org.lz4:lz4-java to v1.8.1 by @renovate[bot] in #1340
- Update Micronaut dependencies by @renovate[bot] in #1342
- Update dependency io.micronaut:micronaut-core-bom to v5.0.0-M26 by @renovate[bot] in #1353
Other Changes 💡
- Fix KafkaConfigurationSpec CI regression on 6.0.x by @graemerocher in #1324
- Fix missing imports for compilation by @graemerocher in #1357
Full Changelog: v6.0.0-M2...v6.0.0-RC1