Skip to content

Commit 86e1968

Browse files
dependabot[bot]guy.arbitman
andauthored
Bump the franz-go group across 1 directory with 3 updates (#36886)
Bumps the franz-go group with 2 updates in the / directory: [github.com/twmb/franz-go](https://github.com/twmb/franz-go) and [github.com/twmb/franz-go/pkg/kadm](https://github.com/twmb/franz-go). Updates `github.com/twmb/franz-go` from 1.18.2-0.20250413173443-1d5a55fa468d to 1.19.1 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/twmb/franz-go/blob/master/CHANGELOG.md">github.com/twmb/franz-go's changelog</a>.</em></p> <blockquote> <h1>v1.19.1</h1> <p>This release fixes a very old bug that finally started being possible to hit in v1.19.0. The v1.19.0 release does not work for Kafka versions pre-4.0. This release fixes that (by fixing the bug that has existed since Kafka 2.4) and adds a GH action to test against Kafka 3.8 to help prevent regressions against older brokers as this library marches forward.</p> <ul> <li><a href="https://github.com/twmb/franz-go/commits/50aa74f1"><code>50aa74f1</code></a> kgo bugfix: ApiVersions replies only with key 18, not all keys</li> </ul> <h1>v1.19.0</h1> <p>This is the largest release of franz-go yet. The last patch release was Jan 20, '25. The last minor release was Oct 14, '24.</p> <p>A big reason for delays the past few month+ has been from spin looping tests and investigating any issue that popped up. Another big delay is that Kafka has a full company adding features -- some questionable -- and I'm one person that spent a significant amount of time catching this library up with the latest Kafka release. Lastly, Kafka released Kafka v3.9 three weeks after my last major release, and simultaneously, a few requests came in for new features in this library that required a lot of time. I wanted a bit of a break and only resumed development more seriously in late Feb. This release is likely &gt;100hrs of work over the last ~4mo, from understanding new features and implementing them, reviewing PRs, and debugging rare test failures.</p> <p>The next Kafka release is poised to implement more large features (share groups), which unfortunately will mean even more heads down time trying to bolt in yet another feature to an already large library. I hope that Confluent chills with introducing massive client-impacting changes; they've introduced more in the past year than has been introduced from 2019-2023.</p> <h2>Bug fixes / changes / deprecations</h2> <ul> <li> <p>The BasicLogger will no longer panic if only a single key (no val) is used. Thanks <a href="https://github.com/vicluq"><code>@​vicluq</code></a>!</p> </li> <li> <p>An internal coding error around managing fetch concurrency was fixed. Thanks <a href="https://github.com/iimos"><code>@​iimos</code></a>!</p> </li> <li> <p>Some off by ones with retries were fixed (tldr: we retried one fewer times than configured)</p> </li> <li> <p><code>AllowAutoTopicCreation</code> and <code>ConsumeRegex</code> can now be used together. Previously, topics would not be created if you were producing and consuming from the same client AND if you used the <code>ConsumeRegex</code> option.</p> </li> <li> <p>A data race in the consumer code path has been fixed. The race is hard to encounter (which is why it never came up even in my weeks of spin-looping tests with <code>-race</code>). See [PR <a href="https://redirect.github.com/twmb/franz-go/issues/984">#984</a>](<a href="https://redirect.github.com/twmb/franz-go/pull/984">twmb/franz-go#984</a>) for more details.</p> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/twmb/franz-go/commits/v1.19.1">compare view</a></li> </ul> </details> <br /> Updates `github.com/twmb/franz-go/pkg/kadm` from 1.12.0 to 1.16.0 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/twmb/franz-go/blob/master/CHANGELOG.md">github.com/twmb/franz-go/pkg/kadm's changelog</a>.</em></p> <blockquote> <h1>v1.16.0</h1> <p>This release contains a few minor APIs and internal improvements and fixes two minor bugs.</p> <p>One new API that is introduced also fixes a bug. API-wise, the <code>SaramaHasher</code> was actually <em>not</em> a 1:1 compatible hasher. The logic was identical, but there was a rounding error because Sarama uses int32 module arithmetic, whereas kgo used int (which is likely int64) which caused a different hash result. A new <code>SaramaCompatHasher</code> has been introduced and the old <code>SaramaHasher</code> has been deprecated.</p> <p>The other bugfix is that <code>OptValue</code> on the <code>kgo.Logger</code> option panicked if you were not using a logger. That has been fixed.</p> <p>The only other APIs that are introduced are in the <code>kversions</code> package; they are minor, see the commit list below.</p> <p>If you issue a sharded request and any of the responses has a retryable error <em>in</em> the response, this is no-longer returned as a top-level shard error. The shard error is now nil, and you can properly inspect the response fully.</p> <p>Lastly (besides other internal minor improvements not worth mentioning), metadata fetches can now inject fake fetches if the metadata response has topic or partition load errors. This is unconditionally true for non-retryable errors. If you use <code>KeepRetryableFetchErrors</code>, you can now <em>also</em> see when metadata fetching is showing unknown topic errors or other retryable errors.</p> <ul> <li><a href="https://github.com/twmb/franz-go/commit/a2340eb"><code>a2340eb</code></a> <strong>improvement</strong> pkg/kgo: inject fake fetches on metadata load errors</li> <li><a href="https://github.com/twmb/franz-go/commit/d07efd9"><code>d07efd9</code></a> <strong>feature</strong> kversion: add <code>VersionStrings</code>, <code>FromString</code>, <code>V3_6_0</code></li> <li><a href="https://github.com/twmb/franz-go/commit/8d30de0"><code>8d30de0</code></a> <strong>bugfix</strong> pkg/kgo: fix OptValue with no logger set</li> <li><a href="https://github.com/twmb/franz-go/commit/012cd7c"><code>012cd7c</code></a> <strong>improvement</strong> kgo: do not return response ErrorCode's as shard errors</li> <li><a href="https://github.com/twmb/franz-go/commit/1dc3d40"><code>1dc3d40</code></a> <strong>bugfix</strong>: actually have correct sarama compatible hasher (thanks <a href="https://github.com/C-Pro"><code>@​C-Pro</code></a>)</li> </ul> <h1>v1.15.4</h1> <p>This patch release fixes a difficult to encounter, but fatal-for-group-consuming bug.</p> <p>The sequence of events to trigger this bug:</p> <ul> <li>OffsetCommit is issued before Heartbeat</li> <li>The coordinator for the group needs to be loaded (so, likely, a previous <code>NOT_COORDINATOR</code> error was received)</li> <li>OffsetCommit triggers the load</li> <li>a second OffsetCommit happens while the first is still running, canceling the first OffsetCommit's context</li> </ul> <p>In this sequence of events, FindCoordinator will fail with <code>context.Canceled</code> and, importantly, also return that error to Heartbeat. In the guts of the client, a <code>context.Canceled</code> error <em>should</em> only happen when a group is being</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/twmb/franz-go/commit/c1a3c3d74cd85f23db46c6236c21d23713c7aae3"><code>c1a3c3d</code></a> Merge pull request <a href="https://redirect.github.com/twmb/franz-go/issues/664">#664</a> from twmb/changelog-v1.16</li> <li><a href="https://github.com/twmb/franz-go/commit/b02fa4d37bc1897ba408e30526444806ae78e0a0"><code>b02fa4d</code></a> CHANGELOG: note incoming v1.16</li> <li><a href="https://github.com/twmb/franz-go/commit/7584d23d92985eb0f2b9663210c72abb9211335a"><code>7584d23</code></a> Merge pull request <a href="https://redirect.github.com/twmb/franz-go/issues/665">#665</a> from twmb/patches-setoffsets-revert</li> <li><a href="https://github.com/twmb/franz-go/commit/405d87d3b9385d1f634535c93245210f079d37f7"><code>405d87d</code></a> Revert &quot;pkg/kgo: remove SetOffsets restriction of &quot;only previously polled par...</li> <li><a href="https://github.com/twmb/franz-go/commit/b45f393c3357fb2eeda85890092404df8cb1927c"><code>b45f393</code></a> kgo: show SetOffsets behavior problem</li> <li><a href="https://github.com/twmb/franz-go/commit/a8e33ff0f449089fe2ec8c7a8df8c65f9f278763"><code>a8e33ff</code></a> Merge pull request <a href="https://redirect.github.com/twmb/franz-go/issues/662">#662</a> from twmb/patches</li> <li><a href="https://github.com/twmb/franz-go/commit/0b3766d6b39098b6a01b58195de67e69e749250b"><code>0b3766d</code></a> Merge pull request <a href="https://redirect.github.com/twmb/franz-go/issues/622">#622</a> from C-Pro/sarama-compat-partitioner</li> <li><a href="https://github.com/twmb/franz-go/commit/3e6d9f94b142d117258991426c6b53bd46a0cd81"><code>3e6d9f9</code></a> Merge pull request <a href="https://redirect.github.com/twmb/franz-go/issues/663">#663</a> from twmb/go1.19</li> <li><a href="https://github.com/twmb/franz-go/commit/636b45cdea76bdec9e41314fe1e42df615ed63b7"><code>636b45c</code></a> kgo testing: add UnknownTopicRetries(-1)</li> <li><a href="https://github.com/twmb/franz-go/commit/c07b329e575cf22764db5c26965a338b52282569"><code>c07b329</code></a> pkg/kgo: elide broker log line if context is canceled</li> <li>Additional commits viewable in <a href="https://github.com/twmb/franz-go/compare/v1.12.0...v1.16.0">compare view</a></li> </ul> </details> <br /> Updates `github.com/twmb/franz-go/pkg/kmsg` from 1.11.2-0.20250413173443-1d5a55fa468d to 1.11.2 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/twmb/franz-go/blob/master/CHANGELOG.md">github.com/twmb/franz-go/pkg/kmsg's changelog</a>.</em></p> <blockquote> <h1>v1.11.2</h1> <p>This patch release fixes <code>HookFetchRecordUnbuffered</code> never being called if a hook also implemented <code>HookFetchRecordBuffered</code>. No existing plugin currently implements these hooks (though one will soon), so this patch is only relevant to you if you manually have added these hooks.</p> <ul> <li><a href="https://github.com/twmb/franz-go/commit/2a37df9"><code>2a37df9</code></a> <strong>bugfix</strong> kgo: patch HookFetchRecordUnbuffered</li> </ul> <h1>v1.11.1</h1> <p>This patch release fixes a bug in <code>ConsumePreferringLagFn</code>. The code could panic if you:</p> <ul> <li>Consumed from two+ topics</li> <li>Two of the topics have a different amount of partitions</li> <li>The single-partition topic has some lag, the topic with more partitions has one partition with no lag, and another partition with <em>more</em> lag than the single-partition topic</li> </ul> <p>In this case, the code previously would create a non-existent partition to consume from for the single-partition topic and this would immediately result in a panic when the fetch request was built.</p> <p>See the commit for more details.</p> <ul> <li><a href="https://github.com/twmb/franz-go/commit/38f2ec6"><code>38f2ec6</code></a> <strong>bugfix</strong> pkg/kgo: bugfix ConsumePreferringLagFn</li> </ul> <h1>v1.11.0</h1> <p>This is a small release containing two minor features and a few behavior improvements. The <code>MarkedOffsets</code> function allows for manually committing marked offsets if you override <code>OnPartitionsRevoked</code>, and <code>UnsafeAbortBufferedRecords</code> allows for forcefully dropping anything being produced (albeit with documented caveats and downsides)</p> <p>The client now guards against a broker that advertises FetchRequest v13+ (which <em>only</em> uses TopicIDs) but does not actually return / use TopicIDs. If you have an old IBP configured, the broker will not use TopicIDs even if the broker indicates it should. The client will now pin fetching to a max version of 12 if a topic has no TopicID.</p> <p>The client now sets a record's <code>Topic</code> field earlier to <code>DefaultProduceTopic</code>, which allows the <code>Topic</code> field to be known present (or known non-present) in the <code>OnRecordBuffered</code> hook.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/twmb/franz-go/commits/v1.11.2">compare view</a></li> </ul> </details> <br /> You can trigger a rebase of this PR by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> > **Note** > Automatic rebases have been disabled on this pull request as it has been open for over 30 days. Co-authored-by: guy.arbitman <guy.arbitman@datadoghq.com>
1 parent 66e5222 commit 86e1968

2 files changed

Lines changed: 9 additions & 9 deletions

File tree

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -342,9 +342,9 @@ require (
342342
github.com/syndtr/gocapability v0.0.0-20200815063812-42c35b437635
343343
github.com/tinylib/msgp v1.6.1
344344
github.com/tklauser/go-sysconf v0.3.16 // indirect
345-
github.com/twmb/franz-go v1.18.2-0.20250413173443-1d5a55fa468d
346-
github.com/twmb/franz-go/pkg/kadm v1.12.0
347-
github.com/twmb/franz-go/pkg/kmsg v1.11.2-0.20250413173443-1d5a55fa468d
345+
github.com/twmb/franz-go v1.20.6
346+
github.com/twmb/franz-go/pkg/kadm v1.17.1
347+
github.com/twmb/franz-go/pkg/kmsg v1.12.0
348348
github.com/twmb/murmur3 v1.1.8
349349
github.com/uptrace/bun v1.2.15
350350
github.com/uptrace/bun/dialect/pgdialect v1.2.15

go.sum

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)