Version 1.60.1 (2026-07-29)
- feat(consumer): add rebalance protocol plumbing by @dnwe in https://github.com/IBM/sarama/pull/3670
- feat: add Kafka versions 4.1.2, 4.2.1 and 4.3.1 by @dnwe in https://github.com/IBM/sarama/pull/3675
- feat: raise default Kafka version to 2.8.0 by @dnwe in https://github.com/IBM/sarama/pull/3676
- feat(consumer): add cooperative sticky assignor by @dnwe in https://github.com/IBM/sarama/pull/3671
- feat: add TransactionClusterAdmin for KIP-664 detection APIs by @adrian-januzi in https://github.com/IBM/sarama/pull/3669
- feat(offset): commit revoked partitions on cooperative rebalance by @dnwe in https://github.com/IBM/sarama/pull/3688
- fix(consumer): preserve pauses across reassignment by @dnwe in https://github.com/IBM/sarama/pull/3681
- fix(producer): wake stranded brokerProducer when partition unmutes by @dnwe in https://github.com/IBM/sarama/pull/3692
- fix(deps): update module github.com/klauspost/compress to v1.19.1 by @renovate[bot] in https://github.com/IBM/sarama/pull/3649
- chore(deps): update ossf/scorecard-action action to v2.4.4 by @renovate[bot] in https://github.com/IBM/sarama/pull/3683
- refactor(consumer): separate join and sync round by @dnwe in https://github.com/IBM/sarama/pull/3680
- @adrian-januzi made their first contribution in https://github.com/IBM/sarama/pull/3669
Full Changelog: https://github.com/IBM/sarama/compare/v1.60.0...v1.60.1
Version 1.60.0 (2026-07-13)
- feat: support Metadata V11 by @dnwe in https://github.com/IBM/sarama/pull/3636
- feat: support Produce V10 by @dnwe in https://github.com/IBM/sarama/pull/3637
- feat: support DescribeProducers v0 by @dnwe in https://github.com/IBM/sarama/pull/3659
- feat: support DescribeTransactions v0 by @dnwe in https://github.com/IBM/sarama/pull/3661
- feat: support int64 arrays in flexible protocol by @dnwe in https://github.com/IBM/sarama/pull/3662
- feat: support ListTransactions v0 and v1 by @dnwe in https://github.com/IBM/sarama/pull/3663
- feat: more flexible protocols for kafka28 parity by @dnwe in https://github.com/IBM/sarama/pull/3664
- feat: support KIP-516 topic ids by @dnwe in https://github.com/IBM/sarama/pull/3666
- fix: correct fetch v12 tagged struct encoding by @dnwe in https://github.com/IBM/sarama/pull/3638
- fix: map new metadata request v8 to kafka 2.3.0 by @fereidani in https://github.com/IBM/sarama/pull/3642
- fix: handle zstd encoder and decoder construction errors by @fereidani in https://github.com/IBM/sarama/pull/3643
- fix: release retry mute on shutdown handoff by @dnwe in https://github.com/IBM/sarama/pull/3645
- fix: order non-idempotent connection retries by @dnwe in https://github.com/IBM/sarama/pull/3644
- chore(deps): bump the golang-x group across 1 directory with 3 updates by @dependabot[bot] in https://github.com/IBM/sarama/pull/3660
- chore(deps): update docker/setup-buildx-action action to v4.2.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3658
- chore(deps): update docker/bake-action action to v7.3.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3652
- chore(deps): bump github.com/klauspost/compress from 1.18.6 to 1.19.0 by @dependabot[bot] in https://github.com/IBM/sarama/pull/3651
- chore(deps): update golangci/golangci-lint-action action to v9.3.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3648
- fix: correct typos in comments and godoc by @maxtaran2010 in https://github.com/IBM/sarama/pull/3656
- @fereidani made their first contribution in https://github.com/IBM/sarama/pull/3642
- @maxtaran2010 made their first contribution in https://github.com/IBM/sarama/pull/3656
Full Changelog: https://github.com/IBM/sarama/compare/v1.50.3...v1.60.0
Version 1.50.3 (2026-06-15)
- feat: support Fetch v12 by @dnwe in https://github.com/IBM/sarama/pull/3609
- feat: support CreateTopics v6 by @dnwe in https://github.com/IBM/sarama/pull/3622
- feat: support DeleteTopics v5 by @dnwe in https://github.com/IBM/sarama/pull/3624
- feat: support AddPartitionsToTxn v3 by @hindessm in https://github.com/IBM/sarama/pull/3625
- feat: support Produce v9 by @dnwe in https://github.com/IBM/sarama/pull/3629
- feat: support CreatePartitions v3 by @dnwe in https://github.com/IBM/sarama/pull/3631
- feat: expose broker features from ApiVersions v3 by @dnwe in https://github.com/IBM/sarama/pull/3633
- feat: support UpdateFeatures by @dnwe in https://github.com/IBM/sarama/pull/3632
- feat: add OnAssignmentBalanceStrategy, the onAssignment half of the assignor contract by @lizthegrey in https://github.com/IBM/sarama/pull/3627
- feat: support ApiVersions V4 and discover upgradable features in test by @dnwe in https://github.com/IBM/sarama/pull/3634
- fix: avoid makeslice "len out of range" panics on invalid response by @hindessm in https://github.com/IBM/sarama/pull/3612
- fix: avoid makeslice panic in request decode too by @dnwe in https://github.com/IBM/sarama/pull/3613
- fix(test): wait for leaders after topic create by @dnwe in https://github.com/IBM/sarama/pull/3623
- fix(consumer): don't panic on requeue after unref by @dnwe in https://github.com/IBM/sarama/pull/3630
- chore(deps): update golang-x to v0.53.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3618
- fix(deps): update module golang.org/x/sys to v0.46.0 - autoclosed by @renovate[bot] in https://github.com/IBM/sarama/pull/3617
- fix(deps): update module golang.org/x/sync to v0.21.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3616
- fix(deps): update module golang.org/x/net to v0.56.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3626
- chore: update default Kafka version to 2.6 by @dnwe in https://github.com/IBM/sarama/pull/3608
- chore: more protocol version placeholders by @hindessm in https://github.com/IBM/sarama/pull/3610
- chore: extend fuzz testing to more types by @dnwe in https://github.com/IBM/sarama/pull/3614
- chore: clean up Int32 array encode/decode by @hindessm in https://github.com/IBM/sarama/pull/3619
- chore: apply Go's modernize fixes by @dnwe in https://github.com/IBM/sarama/pull/3621
Full Changelog: https://github.com/IBM/sarama/compare/v1.50.2...v1.50.3
Version 1.50.2 (2026-06-05)
- feat(consumer): add support for SyncGroupRequest/Response v5 (KIP-559) by @dnwe in https://github.com/IBM/sarama/pull/3591
- feat(txn): add protocol support for TxnOffsetCommit v3 by @dnwe in https://github.com/IBM/sarama/pull/3592
- feat(txn): support consumer group metadata in TxnOffsetCommit v3 by @dnwe in https://github.com/IBM/sarama/pull/3593
- feat(admin): add protocol support for DeleteRecords v2 (KIP-482) by @dnwe in https://github.com/IBM/sarama/pull/3594
- feat(protocol): add support for DescribeConfigs v3 and v4 by @dnwe in https://github.com/IBM/sarama/pull/3596
- feat(admin): add DescribeConfigs for multiple resources by @dnwe in https://github.com/IBM/sarama/pull/3600
- feat(consumer): option to cap decompressed batch size by @dnwe in https://github.com/IBM/sarama/pull/3604
- fix(admin): retry ACL and SCRAM ops on stale controller by @dnwe in https://github.com/IBM/sarama/pull/3598
- fix(deps): update module github.com/pierrec/lz4/v4 to v4.1.27 by @renovate[bot] in https://github.com/IBM/sarama/pull/3597
Full Changelog: https://github.com/IBM/sarama/compare/v1.50.1...v1.50.2
Version 1.50.1 (2026-05-27)
- fix: correct requiredVersion for V8 JoinGroup and add protocol version placeholders by @dnwe in https://github.com/IBM/sarama/pull/3585
Full Changelog: https://github.com/IBM/sarama/compare/v1.50.0...v1.50.1
Version 1.50.0 (2026-05-27)
- feat: add Java-compatible murmur2 partitioner by @dnwe in https://github.com/IBM/sarama/pull/3567
- feat(protocol): support LeaveGroupRequest/Response v5 (KIP-800) by @dnwe in https://github.com/IBM/sarama/pull/3576
- feat(protocol): support JoinGroupRequest/Response v8 (KIP-800) by @dnwe in https://github.com/IBM/sarama/pull/3577
- feat(consumer_group): set cancellation cause on session context by @prakhar7651 in https://github.com/IBM/sarama/pull/3575
- feat(consumer_group): send KIP-800 reason on JoinGroup and LeaveGroup by @dnwe in https://github.com/IBM/sarama/pull/3584
- feat: add Kafka 4.3.0 version placeholder by @dnwe in https://github.com/IBM/sarama/pull/3587
- feat(admin): support OffsetFetchRequest v8 by @dnwe in https://github.com/IBM/sarama/pull/3565
- fix(client): don't log ErrNoTopicsToUpdateMetadata every tick by @dnwe in https://github.com/IBM/sarama/pull/3566
- fix(broker): snapshot fetch meters before deferred Mark by @dnwe in https://github.com/IBM/sarama/pull/3563
- fix: prevent len out of range panic on 32bit architectures by @gibmat in https://github.com/IBM/sarama/pull/3579
- fix(offset): retry fetchInitialOffset on top-level coordinator errors by @dnwe in https://github.com/IBM/sarama/pull/3574
- chore(deps): update docker/bake-action action to v7.2.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3568
- fix(deps): update module golang.org/x/sys to v0.45.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3570
- chore(deps): update golangci/golangci-lint-action action to v9.2.1 by @renovate[bot] in https://github.com/IBM/sarama/pull/3571
- chore(deps): update module golang.org/x/crypto to v0.52.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3572
- fix(deps): update module golang.org/x/net to v0.55.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3573
- chore(deps): update docker/setup-buildx-action action to v4.1.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3578
- refactor: replace eapache/queue with generic ring buffer by @dnwe in https://github.com/IBM/sarama/pull/3560
- test(fvt): use a per-message timeout in follower failover test by @dnwe in https://github.com/IBM/sarama/pull/3562
- @gibmat made their first contribution in https://github.com/IBM/sarama/pull/3579
- @prakhar7651 made their first contribution in https://github.com/IBM/sarama/pull/3575
Full Changelog: https://github.com/IBM/sarama/compare/v1.49.0...v1.50.0
Version 1.49.0 (2026-05-18)
- fix(consumer): decouple FetchRequest.MaxBytes from MaxResponseSize by @dnwe in https://github.com/IBM/sarama/pull/3538
- feat(consumer): warn on sustained partition retries by @dnwe in https://github.com/IBM/sarama/pull/3535
- feat(producer): add Produce v8 request/response support by @dnwe in https://github.com/IBM/sarama/pull/3540
- feat(consumer): cap partition consumer retries by @dnwe in https://github.com/IBM/sarama/pull/3539
- feat: support FindCoordinator V3 protocol by @hindessm in https://github.com/IBM/sarama/pull/3544
- feat: support describe acls v2 by @hindessm in https://github.com/IBM/sarama/pull/3548
- feat: support create acls v2 by @hindessm in https://github.com/IBM/sarama/pull/3549
- feat: support delete acls v2 by @hindessm in https://github.com/IBM/sarama/pull/3550
- feat: support sasl authenticate v2 by @hindessm in https://github.com/IBM/sarama/pull/3551
- feat: support create partitions v2 by @hindessm in https://github.com/IBM/sarama/pull/3554
- feat: support join group v7 by @hindessm in https://github.com/IBM/sarama/pull/3555
- fix: flexible decoder out-of-bounds panic by @hindessm in https://github.com/IBM/sarama/pull/3543
- fix(consumer): size partial-batch retry correctly by @dnwe in https://github.com/IBM/sarama/pull/3541
- feat(consumer): add OffsetCommit v8 request/response support by @dnwe in https://github.com/IBM/sarama/pull/3545
- fix: decode nullable ACL describe error messages by @dnwe in https://github.com/IBM/sarama/pull/3552
- fix(consumer): lease preferred read replicas by @dnwe in https://github.com/IBM/sarama/pull/3553
- fix(producer): honour Retry.Backoff in idempotent retryBatch by @dnwe in https://github.com/IBM/sarama/pull/3557
- chore: better bounds checking by @hindessm in https://github.com/IBM/sarama/pull/3546
- chore: bump deps in ./examples tree by @dnwe in https://github.com/IBM/sarama/pull/3558
- docs: add AlterPartitionReassignments example and functional test by @dnwe in https://github.com/IBM/sarama/pull/3556
Full Changelog: https://github.com/IBM/sarama/compare/v1.48.2...v1.49.0
Version 1.48.2 (2026-05-13)
- feat(admin): add KIP-396 list/alter offsets APIs by @DCjanus in https://github.com/IBM/sarama/pull/3419
- feat: add SubscriptionUserDataProvider hook for BalanceStrategy by @lizthegrey in https://github.com/IBM/sarama/pull/3506
- perf(zstd): scale idle zstd encoder cap to GOMAXPROCS by @lizthegrey in https://github.com/IBM/sarama/pull/3507
- fix: retry ListTopics on transient transport errors by @huynhanx03 in https://github.com/IBM/sarama/pull/3497
- test(fvt): only safeClose if we created by @dnwe in https://github.com/IBM/sarama/pull/3530
- fix(client): scope metadata refresh errors to requested topics by @dnwe in https://github.com/IBM/sarama/pull/3532
- test(fvt): speedup functional test runs by @dnwe in https://github.com/IBM/sarama/pull/3528
Full Changelog: https://github.com/IBM/sarama/compare/v1.48.1...v1.48.2
Version 1.48.1 (2026-05-10)
- perf: cache topic batch-size metric lookup by @huynhanx03 in https://github.com/IBM/sarama/pull/3498
- fix: stabilise TestFuncTxnProduceAndCommitOffset flakes by @dnwe in https://github.com/IBM/sarama/pull/3517
- test: relax producer batch metrics assertions by @DCjanus in https://github.com/IBM/sarama/pull/3523
- fix: prevent race during partition consumer close by @dnwe in https://github.com/IBM/sarama/pull/3524
- fix: return leaderless errors in metadata refresh by @dnwe in https://github.com/IBM/sarama/pull/3525
- chore(deps): update dependency golangci/golangci-lint to v2.12.1 by @renovate[bot] in https://github.com/IBM/sarama/pull/3509
- chore(deps): bump github.com/klauspost/compress from 1.18.5 to 1.18.6 by @dependabot[bot] in https://github.com/IBM/sarama/pull/3508
- chore(deps): bump golang.org/x/sys from 0.43.0 to 0.44.0 in the golang-x group across 1 directory by @dependabot[bot] in https://github.com/IBM/sarama/pull/3520
- chore(deps): update module golang.org/x/crypto to v0.51.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3521
- fix(deps): update module golang.org/x/net to v0.54.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3526
- chore(deps): update dependency golangci/golangci-lint to v2.12.2 by @renovate[bot] in https://github.com/IBM/sarama/pull/3515
- chore: add testifylint and fix lint warnings by @dnwe in https://github.com/IBM/sarama/pull/3522
- @huynhanx03 made their first contribution in https://github.com/IBM/sarama/pull/3498
Full Changelog: https://github.com/IBM/sarama/compare/v1.48.0...v1.48.1
Version 1.48.0 (2026-04-24)
- feat(producer): partition muting for msg ordering by @dnwe in https://github.com/IBM/sarama/pull/3422
- fix: handle nullable metadata in OffsetFetchResponse by @dnwe in https://github.com/IBM/sarama/pull/3473
- fix: nil response/done channels after SASLv1 failure by @dnwe in https://github.com/IBM/sarama/pull/3474
- fix(protocol): handle ElectLeaders V1 non-flexible headers by @DCjanus in https://github.com/IBM/sarama/pull/3478
- fix: correct a number of goroutine leaks by @dnwe in https://github.com/IBM/sarama/pull/3476
- fix: resolve deadlock in concurrent offset commits by @dnwe in https://github.com/IBM/sarama/pull/3477
- fix(consumer): avoid broker race in response feeder by @DCjanus in https://github.com/IBM/sarama/pull/3486
- fix: stop dispatcher for dying children in brokerConsumer.abort() by @lizthegrey in https://github.com/IBM/sarama/pull/3492
- fix: close broken tcp connections by @Asphaltt in https://github.com/IBM/sarama/pull/3384
- fix: add Unwrap() to DescribeConfigError and AlterConfigError by @ShinThirty in https://github.com/IBM/sarama/pull/3487
- chore(deps): update dependency golangci/golangci-lint to v2.11.1 by @renovate[bot] in https://github.com/IBM/sarama/pull/3462
- chore(deps): bump github.com/pierrec/lz4/v4 from 4.1.25 to 4.1.26 by @dependabot[bot] in https://github.com/IBM/sarama/pull/3461
- chore(deps): bump golang.org/x/sync from 0.19.0 to 0.20.0 in the golang-x group across 1 directory by @dependabot[bot] in https://github.com/IBM/sarama/pull/3466
- chore(deps): update module golang.org/x/crypto to v0.49.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3468
- chore(deps): update dependency golangci/golangci-lint to v2.11.3 by @renovate[bot] in https://github.com/IBM/sarama/pull/3464
- fix(deps): update module golang.org/x/net to v0.52.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3472
- fix(deps): update module github.com/klauspost/compress to v1.18.5 by @renovate[bot] in https://github.com/IBM/sarama/pull/3480
- chore(deps): update module golang.org/x/crypto to v0.50.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3489
- fix(deps): update module golang.org/x/net to v0.53.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3493
- chore(deps): update docker/setup-buildx-action action to v4 by @renovate[bot] in https://github.com/IBM/sarama/pull/3458
- chore(deps): update docker/bake-action action to v7.1.0 by @renovate[bot] in https://github.com/IBM/sarama/pull/3459
- chore: add kafka versions 3.9.2 and 4.2.0 by @edoardocomar in https://github.com/IBM/sarama/pull/3471
- Update the Kakfa Protocol Specification Link by @MohishKhadse55 in https://github.com/IBM/sarama/pull/3463
- chore(deps): update dependency golangci/golangci-lint to v2.11.4 by @renovate[bot] in https://github.com/IBM/sarama/pull/3482
- fix: update API version URL as previous link was not working by @MohishKhadse55 in https://github.com/IBM/sarama/pull/3485
- @MohishKhadse55 made their first contribution in https://github.com/IBM/sarama/pull/3463
- @Asphaltt made their first contribution in https://github.com/IBM/sarama/pull/3384
- @ShinThirty made their first contribution in https://github.com/IBM/sarama/pull/3487
Full Changelog: https://github.com/IBM/sarama/compare/v1.47.0...v1.48.0