A brand new major release for zio-kafka: 3.0.0! 🥳
Zio-kafka 3.0.0 brings new features:
- a much easier to use transactional producer
- producer diagnostics
- producer metrics
- graceful shutdown of a stream (experimental)
- improved documentation
Zio-kafka 3.0.0 also brings a number of backwards incompatible changes:
- Removal of all deprecated methods, including accessor methods
- Kafka 4.x
- The new transactional producer
- Consumer diagnostics set via consumer settings
restartStreamOnRebalancing
mode is no longer supported
See the migration guide. In short: you should always first migrate to zio-kafka 2.12.0 and solve all deprecation issues.
🚀 Changes since 2.12.0
- Simplify code, use uniform type names by @erikvanoosten in #1546
- Producer metrics by @erikvanoosten in #1530
- Improve type inference for
runWithGracefulShutdown
by @erikvanoosten in #1536 - Micro optimization by using
Chunk
by @erikvanoosten in #1528 - Simplify transactional producing by @svroonland in #1434
- Simplify fetching consumer group metadata by @vermas7988 in #1474
- Remove deprecated features by @erikvanoosten in #1476
- Document transactions by @erikvanoosten in #1432
- Relax offset trait constraint by @petern-sc in #1489
- Check consumer settings for transactional producer by @vermas7988 in #1492
- More tests for rebalanceSafeCommit mode and Small stuff by @erikvanoosten in #1494
- Improve documentation about chunk-breakers by @erikvanoosten in #1506
- Improve documentation about duration of rebalances by @erikvanoosten in #1505
- Fix documentation typo by @erikvanoosten in #1508
- Preparing for producer diagnostics (3.x) by @erikvanoosten in #1452
- Fix chunk-breaking docs by @erikvanoosten in #1513
- Provide diagnostics via
ConsumerSettings
by @erikvanoosten in #1515 - Add producer diagnostics by @erikvanoosten in #1518
- Graceful shutdown of a stream for a single subscription by @svroonland in #1201
- Update kafka-clients and embedded-kafka to 4.0.0 by @zio-scala-steward in #1504
- Update migration docs for kafka 4 by @erikvanoosten in #1523
🔧 Maintenance since 2.12.0
- Simplify ProducerSpec by @erikvanoosten in #1480
- Simplify
ConsumerSpec
by @erikvanoosten in #1481 - Update README.md by @zio-assistant in #1475
- Update sbt-scalafix to 0.14.2 by @zio-scala-steward in #1478
- Update scalafmt-core to 3.9.1 by @zio-scala-steward in #1479
- Fix rebalance coordinator spec by @erikvanoosten in #1485
- Update zio-logging-slf4j, ... to 2.5.0 by @zio-scala-steward in #1486
- Update logback-classic to 1.5.17 by @zio-scala-steward in #1488
- Update zio, zio-streams, zio-test, ... to 2.1.16 by @zio-scala-steward in #1490
- Update scalafmt-core to 3.9.2 by @zio-scala-steward in #1493
- Update sbt, scripted-plugin to 1.10.9 by @zio-scala-steward in #1495
- Update sbt, scripted-plugin to 1.10.10 by @zio-scala-steward in #1496
- Update scalafmt-core to 3.9.3 by @zio-scala-steward in #1497
- Remove flaky test by @erikvanoosten in #1499
- Update scalafmt-core to 3.9.4 by @zio-scala-steward in #1500
- Update sbt, scripted-plugin to 1.10.11 by @zio-scala-steward in #1502
- Update logback-classic to 1.5.18 by @zio-scala-steward in #1503
- Update README.md by @zio-assistant in #1510
- Update migration docs by @erikvanoosten in #1512
- Only run benchmark on code changes by @erikvanoosten in #1511
- Only run benchmark on code changes (2) by @erikvanoosten in #1514
- Update zio, zio-streams, zio-test, ... to 2.1.17 by @erikvanoosten in #1517
- Add low level unit test for
produceAsync
by @erikvanoosten in #1519 - Followup of #1201 - make tests parallel again and remove non-flaky by @svroonland in #1521
- Add comment motivating use of lazy in publisher by @ytalashko in #1527
- Make all benchmarks report average time by @erikvanoosten in #1524
- Update README.md by @zio-assistant in #1525
- Update sbt-scalafix to 0.14.3 by @zio-scala-steward in #1532
- Update scala3-compiler, scala3-library, ... to 3.3.6 by @zio-scala-steward in #1533
- Update zio, zio-streams, zio-test, ... to 2.1.18 by @zio-scala-steward in #1534
- More and better producer benchmarks by @erikvanoosten in #1531
- Update sbt, scripted-plugin to 1.11.0 by @zio-scala-steward in #1535
- Add new zio-kafka course by Alvin Alexander by @erikvanoosten in #1537
- Update README.md by @zio-assistant in #1538
- Update zio, zio-streams, zio-test, ... to 2.1.19 by @zio-scala-steward in #1539
- Update embedded-kafka to 4.0.1.1 by @zio-scala-steward in #1540
- Update sbt, scripted-plugin to 1.11.1 by @zio-scala-steward in #1541
- Update zio-sbt-ci, zio-sbt-ecosystem, ... to 0.4.0-alpha.32 by @zio-scala-steward in #1544
- Update sbt, scripted-plugin to 1.11.2 by @zio-scala-steward in #1547
- Await acknowledgements in async benchmarks by @erikvanoosten in #1545
Changelog: v2.12.0...v3.0.0
🚀 Changes since 3.0.0-RC2
- Simplify code, use uniform type names by @erikvanoosten in #1546
🔧 Maintenance since 3.0.0-RC2
- Add new zio-kafka course by Alvin Alexander by @erikvanoosten in #1537
- Update README.md by @zio-assistant in #1538
- Update zio, zio-streams, zio-test, ... to 2.1.19 by @zio-scala-steward in #1539
- Update embedded-kafka to 4.0.1.1 by @zio-scala-steward in #1540
- Update sbt, scripted-plugin to 1.11.1 by @zio-scala-steward in #1541
- Update zio-sbt-ci, zio-sbt-ecosystem, ... to 0.4.0-alpha.32 by @zio-scala-steward in #1544
- Update sbt, scripted-plugin to 1.11.2 by @zio-scala-steward in #1547
- Await acknowledgements in async benchmarks by @erikvanoosten in #1545
Changelog: v3.0.0-rc2...v3.0.0