Releases: spring-projects/spring-kafka
Releases · spring-projects/spring-kafka
v2.9.10
⭐ New Features
- Make KafkaAdmin Easier to Subclass and Add a Filter Mechanism #2726
 - GH-2709: Preserve existing JAAS configuration #2718
 - Auto Config Non-Blocking Retries with asyncAcks #2707
 
🐞 Bug Fixes
- Possible dead lock between DefaultKafkaProducerFactory.expire and DefaultKafkaProducerFactory.removeProducer #2748
 - Pausing container results in WakeupException without retrying failed listener invocation #2740
 - Behavior Change When Interceptor Throws an Exception #2728
 - Fix Race Condition in DelegatingInvocableHandler #2725
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Data, Micrometer, Reactor Versions #2745
 
❤️ Contributors
Thank you to all the contributors who worked on this release:
@antonio-tomac and @edanidzerda
External Links
v3.0.8
⭐ New Features
- MMConverter Support Custom Partition Selection #2703
 - Auto Config Non-Blocking Retries with asyncAcks #2702
 - Consider providing custom KafkaSender to ReactiveKafkaProducerTemplate #2190
 
🐞 Bug Fixes
📔 Documentation
- Non-Blocking Retries don't work with BatchListener #2699
 - Fixed Typo #2698
 - docs: fix Javadoc of CommonErrorHandler::remainingRecords #2691
 - docs: fix name of overriden method #2684
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Data, Retry, Micrometer, Reactor Versions #2710
 
❤️ Contributors
Thank you to all the contributors who worked on this release:
@rajadilipkolli, @sculeb, and @tbcs
External Links
v3.0.7
⭐ New Features
🐞 Bug Fixes
📔 Documentation
- Howewever -> However #2670
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Data, Reactor, Micrometer Versions #2682
 
🔨 Tasks
- Expose user exception thrown during rebalance #2667
 - Remove duplicate native hint registration. #2659
 
❤️ Contributors
Thank you to all the contributors who worked on this release:
@MatejNedic and @michaldo
External Links
v2.9.9
v3.0.6
⭐ New Features
- GH-2638: Support Dynamic Tags via Observation #2650
 - Support Dynamic Micrometer Tags Based on Consumer/Producer Record #2638
 
🐞 Bug Fixes
- Races in KafkaListenerAnnotationBeanPostProcessor on scope=prototype bean instantiation #2642
 - "resetStateOnExceptionChange" has no effect, because the cause of "ListenerExecutionFailedException" is always a "TimestampedException" #2641
 
📔 Documentation
- Missing upgrade section in the documentation for KafkaHeaders changes #2640
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Data, Micrometer, Reactor, JUnit Versions #2657
 
External Links
v2.9.8
⭐ New Features
- Support Dynamic Micrometer Tags Based on Consumer/Producer Record #2649
 
🐞 Bug Fixes
- "resetStateOnExceptionChange" has no effect, because the cause of "ListenerExecutionFailedException" is always a "TimestampedException" #2646
 - Races in KafkaListenerAnnotationBeanPostProcessor on scope=prototype bean instantiation #2644
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Data, Reactor, Micrometer Versions #2656
 
External Links
v3.0.5
🐞 Bug Fixes
- Deadlock on lifecycleMonitor #2627
 - Allow the Spring Cloud Stream Binder to Inject a KafkaAdmin for Observability #2626
 - Reclassify Exception in FallbackBatchErrorHandler When Exception Changes #2620
 - Spring Kafka Listener uses stale oauthbearer token, fails to connect after initial token expired. #2612
 
🔨 Dependency Upgrades
- Upgrade Micrometer, Reactor, Spring Versions #2634
 
External Links
v2.9.7
🐞 Bug Fixes
- Deadlock on lifecycleMonitor #2630
 - Reclassify Exception in FallbackBatchErrorHandler When Exception Changes #2623
 - Spring Kafka Listener uses stale oauthbearer token, fails to connect after initial token expired. #2614
 - Synchronized kafka transaction is not committed nor rolled back when code from custom "afterCommit" throws exception #2606
 - Spring Messaging batch payload incompatible with Kotlin #2603
 - KafkaMessageListenerContainer pauses for a long time after error handling #2598
 
🔨 Dependency Upgrades
- Upgrade Spring Framework to 5.3.26 #2633
 
External Links
v3.0.4
⭐ New Features
- spring-kafka-test does not work with spring native graalvm #2582
 - GH-2496: Reuse retry topic for maxInterval delay #2497
 - Feature Request: Provide 
DestinationTopic.Properties#isRetryTopic()method #2377 
🐞 Bug Fixes
- Synchronized kafka transaction is not commited nor rolled back when code from custom "afterCommit" throws exception #2604
 - Spring Messaging batch payload incompatible with Kotlin #2600
 - KafkaMessageListenerContainer pauses for a long time after error handling #2596
 
📔 Documentation
- Updated README.md #2594
 
🔨 Dependency Upgrades
- Upgrade Spring Framework, Reactor Versions #2607
 
❤️ Contributors
Thank you to all the contributors who worked on this release:
External Links
v3.0.3
⭐ New Features
- Allow to use KafkaListenerContainerFactory with custom message converter for batch and record listeners #2566
 - Repeating headers in Non-Blocking Retry Mechanism #2549
 
🐞 Bug Fixes
- ProducerFactory's argument txIdPrefix of createProducer not marked as 
@Nullable#2583 - Container Does Not Pause for Missing Acks After a Rebalance #2581
 - Non-blocking retries: partition rebalance causes emergency consumer stop #2576
 - NPE in FailedBatchProcessor if Reported Index is Out of Bounds #2558
 - An application using default spring boot configuration fails at the startup when there are multiple 
@KafkaListenerwith@RetryableTopic#2554 
📔 Documentation
- The documentation of the autoFlush seems to be confusing (to me) #2562
 - GH-2516: Fix code example in the documentation for for Non-Blocking Retries - DLT Failure Behavior #2517
 
🔨 Dependency Upgrades
- Upgrade Jackson, Micrometer, Reactor, Spring Data, Spring Framework Versions #2592
 - Upgrade to Apache Kafka 3.3.2 #2552
 
🔨 Tasks
- Update Gradle Enterprise plugin #2578
 
❤️ Contributors
Thank you to all the contributors who worked on this release:
@jprinet and @jucosorin