Commit 86e1968
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 >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 "pkg/kgo: remove SetOffsets restriction of "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
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
342 | 342 | | |
343 | 343 | | |
344 | 344 | | |
345 | | - | |
346 | | - | |
347 | | - | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
348 | 348 | | |
349 | 349 | | |
350 | 350 | | |
| |||
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
0 commit comments