Skip to content

Releases: IBM/sarama

Version 1.47.0 (2026-02-27)

27 Feb 09:11
c6a7ea0

Choose a tag to compare

What's Changed

🎉 New Features / Improvements

  • perf(admin): modernize DescribeCluster RPC handling by @DCjanus in #3390
  • test: expand Java interop tests to cover all compression codecs by @dnwe in #3423

🐛 Fixes

  • fix(client): add nilguards to updateBroker by @dnwe in #3393
  • fix(broker): auto-close broken connections by @DCjanus in #3412
  • fix: set version from IBM/sarama, not main app by @adamdecaf in #3415

🔧 Maintenance

📦 Dependency updates

  • chore(deps): update module golang.org/x/crypto to v0.45.0 [security] → v0.48.0 by @renovate[bot] in #3383, #3425
  • chore(deps): bump golang.org/x/crypto from 0.42.0 to 0.45.0 across /examples (consumergroup, exactly_once, sasl_scram_client, http_server, txn_producer, interceptors) by @dependabot[bot] in #3382, #3381, #3380, #3379, #3378, #3377
  • fix(deps): update module golang.org/x/sync to v0.18.0 by @renovate[bot] in #3385
  • fix(deps): update module golang.org/x/net to v0.49.0 → v0.51.0 by @renovate[bot] and @dependabot[bot] in #3426, #3427, #3453
  • chore(deps): update golangci/golangci-lint-action action to v9 → v9.2.0 by @renovate[bot] in #3370, #3400
  • chore(deps): update dependency golangci/golangci-lint to v2.6.2 → v2.8.0 by @renovate[bot] in #3366, #3401
  • chore(deps): update docker/bake-action action to v6.10.0 by @renovate[bot] in #3392
  • chore(deps): update docker/setup-buildx-action action to v3.12.0 by @renovate[bot] in #3416
  • chore(deps): bump github.com/klauspost/compress from 1.18.1 to 1.18.4 by @dependabot[bot] in #3397, #3430, #3442
  • chore(deps): bump github.com/pierrec/lz4/v4 from 4.1.22 to 4.1.25 by @dependabot[bot] in #3411, #3432
  • chore(deps): bump the golang-x group across 1 directory with 2 updates by @dependabot[bot] in #3405
  • chore(deps): bump github.com/xdg-go/scram from 1.1.2 to 1.2.0 in /examples/sasl_scram_client by @dependabot[bot] in #3394
  • chore(deps): update dependency dominikh/go-tools to v2026 by @renovate[bot] in #3446

New Contributors

Full Changelog: v1.46.3...v1.47.0

Version 1.46.3 (2025-10-26)

26 Oct 11:38
0447c9a

Choose a tag to compare

What's Changed

🐛 Fixes

  • fix: wrap KError into error returned by IncrementalAlterConfig by @prestona in #3352
  • fix: assign sequence when flushing retry buffers by @dnwe in #3362

📦 Dependency updates

  • chore(deps): update dependency dominikh/go-tools to v2025 by @renovate[bot] in #3351
  • chore(deps): update dependency vearutop/teststat to v0.1.27 by @renovate[bot] in #3350
  • fix(deps): update module github.com/klauspost/compress to v1.18.1 by @renovate[bot] in #3355

🔧 Maintenance

  • chore(ci): extract tool versions and add renovate customManagers by @dnwe in #3346

Full Changelog: v1.46.2...v1.46.3

Version 1.46.2 (2025-10-10)

10 Oct 20:51
4c387a2

Choose a tag to compare

What's Changed

A big focus on improving our support for newer protocol versions in this release, particularly supporting a wider range of flexible versions

🎉 New Features / Improvements

🐛 Fixes

  • fix: update map rather than create a new map by @hindessm in #3302
  • fix: metadata_response valid version range by @hindessm in #3304
  • fix: add V4 as valid CreateTopicsResponse by @dnwe in #3305
  • fix: correct requiredVersion for DescribeLogDirsResponse by @dnwe in #3306
  • fix: extend TestAllocateBodyProtocolVersions for more testing by @dnwe in #3307
  • fix: non-flexible ElectLeadersRequest V0/V1 encode/decode by @hindessm in #3312
  • fix: make alterPartitionReassignmentsBlock consistent by @hindessm in #3313
  • fix: correct decodeRequest bytesRead return value by @hindessm in #3314
  • fix: decoder issues by @hindessm in #3327
  • fix: improve KIP-511 behaviour on older Kafka clusters by @dnwe in #3328
  • fix: return correct error when encoding by @hindessm in #3333
  • fix: correct ApiVersionsResponse handling of ErrUnsupportedVersion by @dnwe in #3337

📦 Dependency updates

  • chore(deps): update ossf/scorecard-action action to v2.4.3 by @renovate[bot] in #3318
  • fix(deps): update module golang.org/x/net to v0.46.0 by @renovate[bot] in #3343

🔧 Maintenance

  • chore: remove redundant insufficient data checks by @hindessm in #3300
  • refactor: use struct rather than map with one entry by @hindessm in #3301
  • chore(ci): adopt gotestsum and re-run flakes by @dnwe in #3311
  • refactor: Flexible encoding/decoding refactoring by @hindessm in #3317
  • chore(fvt): refactor docker-compose and support KRaft by @dnwe in #3323
  • fix(fvt): simplify retry using testify's EventuallyWithT by @dnwe in #3324
  • chore: add 3.9.1 and 4.1.0 version constants and FVT by @dnwe in #3325
  • refactor: get/put for KError by @hindessm in #3326
  • refactor: get/put for throttle time ms time.Duration by @hindessm in #3330
  • chore(fvt): improve testFuncConsumerGroupMember by @dnwe in #3329

➕ Other Changes

  • fix(fvt): check err before usage by @dnwe in #3338

Full Changelog: v1.46.1...v1.46.2

Version 1.46.1 (2025-09-18)

18 Sep 22:11
9bc3d14

Choose a tag to compare

Note

The go.mod directive has been bumped to 1.24.0 as the minimum version of Go required for the module. This was necessary to continue to receive updates from some of the third party dependencies that Sarama makes use of.

What's Changed

🎉 New Features / Improvements

  • feat: support more describe log dirs versions (V2-V4) by @hindessm in #3293
  • feat: support V5 ListConsumerGroups protocol by @hindessm in #3292
  • feat: add SASLv1 support for Kerberos by @dnwe in #3279

🐛 Fixes

📦 Dependency updates

  • chore(deps): bump go directive to 1.24.0 and golang.org/x/{crypto,net,sync} by @dependabot[bot] in #3288
  • chore(deps): bump the golang-x group across 6 directories with 1 update by @dependabot[bot] in #3291
  • chore(deps): bump github.com/stretchr/testify from 1.11.0 to 1.11.1 by @dependabot[bot] in #3274

🔧 Maintenance

  • chore: refactor to use modern atomic types by @Sahil-4555 in #3277
  • chore: pre-commit autoupdate to latest by @dnwe in #3278
  • chore: apply modernize fixes from gopls by @dnwe in #3297
  • chore(config): update comments of sarama.Config.Metadata.SingleFlight by @gunli in #3296
  • chore(client): update comments of client methods by @gunli in #3295

New Contributors

Full Changelog: v1.46.0...v1.46.1

Version 1.46.0 (2025-08-25)

25 Aug 10:46
107930b

Choose a tag to compare

Note

This release contains significant changes. Notably Sarama will now use the ApiVersionRequest response from each broker to aid in selecting the protocol version to use. The existing Version field in sarama.Config will continue to provide a "pinning" mechanism, but can safely be set to a maximum or higher value than the remote cluster and sarama will sensibly pick compatible versions. There is also a performance improvement relating to MetadataRequests whereby Sarama will avoid having more than a single request to each broker in-flight at any given time. These new (optimal) behaviour is on by default can be opt-ed out via the Metadata.SingleFlight field in Config.

What's Changed

🎉 New Features / Improvements

  • feat(protocol): negotiate API versions by @trapped in #3209
  • feat: option to group metadata refreshes so only one is in-flight at a time by @cupcicm in #3225
  • feat: use singleflight metadata by default by @dnwe in #3231
  • feat(protocol): support CreateTopicRequest V4 by @dnwe in #3238
  • feat: always send ApiVersionsRequest and fallback to v0 by @dnwe in #3234

🐛 Fixes

  • fix(consumer): stuck on the batch with zero records length by @sterligov in #3221
  • fix: sync response header version to clamped request header by @trapped in #3223
  • fix(decoder): handle null arrays correctly by @dnwe in #3144
  • fix: hardcode lz4 writer blocksize to 64kb by @dnwe in #3258

📦 Dependency updates

  • chore(deps): bump the golang-x group across 1 directory with 2 updates by @dependabot[bot] in #3185
  • chore(deps): bump the golang-x group across 7 directories with 2 updates by @dependabot[bot] in #3219
  • fix(deps): update module golang.org/x/net to v0.43.0 by @renovate[bot] in #3244
  • chore(deps): bump the golang-x group across 6 directories with 1 update by @dependabot[bot] in #3262
  • chore(deps): update github/codeql-action action to v3.29.9 by @renovate[bot] in #3242
  • fix(deps): update github.com/rcrowley/go-metrics digest to 65e299d by @renovate[bot] in #3164
  • fix(deps): update module github.com/stretchr/testify to v1.11.0 by @renovate[bot] in #3268
  • chore(deps): update docker/bake-action action to v6.9.0 by @renovate[bot] in #3264

🔧 Maintenance

New Contributors

Full Changelog: v1.45.2...v1.46.0

Version 1.45.2 (2025-05-28)

28 May 19:15
d4acbec

Choose a tag to compare

What's Changed

🐛 Fixes

📦 Dependency updates

  • chore(deps): bump github.com/klauspost/compress from 1.17.11 to 1.18.0 by @dependabot in #3103
  • chore(deps): bump the golang-x group across 6 directories with 1 update by @dependabot in #3114
  • chore(deps): bump the golang-x group across 7 directories with 2 updates by @dependabot in #3121
  • chore(deps): bump the go_modules group across 7 directories with 1 update by @dependabot in #3148
  • chore(deps): bump the go_modules group across 7 directories with 1 update by @dependabot in #3157
  • chore(deps): bump golang.org/x/sync from 0.12.0 to 0.14.0 in the golang-x group across 1 directory by @dependabot in #3161

➕ Other Changes

  • chore: bump minimum Go version to 1.23.0 by @dnwe in #3113
  • fix(ci): bump golangci-lint to v2 by @dnwe in #3160

New Contributors

Full Changelog: v1.45.1...v1.45.2

Version 1.45.1 (2025-03-02)

02 Mar 17:25
4001b2e

Choose a tag to compare

What's Changed

🎉 New Features / Improvements

  • feat(producer): add MaxBufferBytes to limit retry buffer size by @wanwenli in #3088
  • feat(producer): add sync pool for channel reuse by @kasimtj in #3109
  • feat: exponential backoff for clients (KIP-580) by @wanwenli in #3099

🐛 Fixes

  • fix(sasl): add nilguard around token to prevent panic by @hoo47 in #3076
  • fix(test): consumer group fetch request messages by @stsmurf in #3081
  • fix: remove redundant nil check by @knbr13 in #3089
  • fix(consumer): add recovery from no leader partitions by @liutao365 in #3101
  • produce: set MaxTimestamp by @rockwotj in #3108

📦 Dependency updates

  • chore(deps): bump go.opentelemetry.io/otel from 1.24.0 to 1.29.0 in /examples/interceptors by @dependabot in #3071
  • chore(deps): bump the otel group across 1 directory with 2 updates by @dependabot in #3072
  • chore(deps): bump the golang-x group across 1 directory with 2 updates by @dependabot in #3098

🔧 Maintenance

  • chore(deps): prevent otel upgrades for now by @dnwe in #3069
  • chore: add version constant for kafka 3.7.2 by @dnwe in #3073
  • chore(ci): fetch kafka 4.0 via tar.gz rather than git by @dnwe in #3079
  • fix(ci): tighten up github workflows by @dnwe in #3080
  • chore(ci): analyse actions in codeql by @dnwe in #3085
  • chore(ci): bump golangci-lint version to v1.63.4 by @dnwe in #3090
  • feat(ci): add dedicated staticcheck run by @dnwe in #3091

New Contributors

Full Changelog: v1.45.0...v1.45.1

Version 1.45.0 (2025-01-07)

07 Jan 14:54
061e437

Choose a tag to compare

Note

The go.mod directive has been bumped to 1.21 as the minimum version of Go required for the module. This was necessary to continue to receive updates from some of the third party dependencies that Sarama makes use of for compression.

What's Changed

🐛 Fixes

  • fix(admin): add retries for GroupCoordinator errors by @dnwe in #3053

📦 Dependency updates

  • chore(deps): bump github.com/klauspost/compress from 1.17.9 to 1.17.11 by @dependabot in #2999
  • chore(deps): bump golang.org/x/net from 0.33.0 to 0.34.0 in the golang-org-x group by @dependabot in #3054

🔧 Maintenance

  • chore: bump minimum go to 1.21 by @dnwe in #3048
  • chore(test): tag all unittests as !integration by @dnwe in #3047
  • chore(test): include kafka 4.0.0 in FV testing by @dnwe in #3045
  • fix(ci): restore the Kafka 4.0.0 FV by @dnwe in #3055

Full Changelog: v1.44.0...v1.45.0

Version 1.44.0 (2024-12-27)

27 Dec 12:06

Choose a tag to compare

Note

The go.mod directive has been bumped to 1.20 as the minimum version of Go required for the module. This was necessary to continue to receive updates from some of the third party dependencies that Sarama makes use of for compression.

What's Changed

🎉 New Features / Improvements

🐛 Fixes

📦 Dependency updates

  • chore(deps): bump the golang-org-x group across 1 directory with 2 updates by @dependabot in #3010
  • chore(deps): bump golang.org/x/crypto from 0.28.0 to 0.31.0 in the go_modules group by @dependabot in #3041
  • chore(deps): bump the golang-org-x group across 1 directory with 2 updates by @dependabot in #3040
  • chore(deps): bump github.com/pierrec/lz4/v4 from 4.1.21 to 4.1.22 by @dependabot in #3038
  • chore(deps): bump the go_modules group across 2 directories with 1 update by @dependabot in #3035
  • chore(deps): bump golang.org/x/crypto from 0.22.0 to 0.31.0 in /examples/consumergroup in the go_modules group by @dependabot in #3033
  • chore(deps): bump golang.org/x/crypto from 0.22.0 to 0.31.0 in /examples/txn_producer in the go_modules group by @dependabot in #3034
  • chore(deps): bump golang.org/x/crypto from 0.22.0 to 0.31.0 in /examples/interceptors in the go_modules group by @dependabot in #3032
  • chore(deps): bump golang.org/x/crypto from 0.22.0 to 0.31.0 in /examples/exactly_once in the go_modules group by @dependabot in #3031
  • chore(deps): bump github.com/stretchr/testify from 1.9.0 to 1.10.0 by @dependabot in #3020

🔧 Maintenance

  • chore: add newer kafka versions and bump Go in CI by @dnwe in #2969
  • fix(lint): resolve IDENTICAL_BRANCHES issue in broker by @frzifus in #2992
  • chore: add version consts for 3.8.1+3.9.0 by @dnwe in #3011
  • fix(client): refactor duplicated replica+partition logic by @Trinoooo in #2925
  • chore(deps): bump golang.org/x/net to v0.33.0 by @dnwe in #3044

New Contributors

Full Changelog: v1.43.3...v1.44.0

Version 1.43.3 (2024-08-12)

12 Aug 18:25
a46c78d

Choose a tag to compare

What's Changed

🐛 Fixes

  • fix: declare assignor variable for examples & clean up log format by @kumakichi in #2909
  • fix(consumer): maintain ordering of offset commit requests by @prestona in #2947
  • fix(producer): treat ErrKafkaStorageError as retriable by @richardartoul in #2939

📦 Dependency updates

  • chore(deps): bump the golang-org-x group across 1 directory with 2 updates by @dependabot in #2956
  • chore(deps): bump github.com/eapache/go-resiliency from 1.6.0 to 1.7.0 by @dependabot in #2944
  • chore(deps): bump github.com/klauspost/compress from 1.17.8 to 1.17.9 by @dependabot in #2926

🔧 Maintenance

  • fix(ci): correct docker-compose install by @dnwe in #2954

📝 Documentation

  • fix(doc): correct JVM's config name corresponding to MaxWaitTime by @abhipranay in #2893

New Contributors

Full Changelog: v1.43.2...v1.43.3