dependabot[bot] opened a new pull request, #40832:
URL: https://github.com/apache/beam/pull/40832

   Bumps [github.com/nats-io/nats.go](https://github.com/nats-io/nats.go) from 
1.54.0 to 1.55.0.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/nats-io/nats.go/releases";>github.com/nats-io/nats.go's 
releases</a>.</em></p>
   <blockquote>
   <h2>Release v1.55.0</h2>
   <h2>Changelog</h2>
   <p>This is the biggest nats.go release in a long time: 47 changes with more 
than half of them coming from 18 external contributors - thank you all!</p>
   <p>Most of this release is a robustness effort. Nearly 30 bug fixes address 
deadlocks, goroutine and timer leaks, data races and stalls in reconnect and 
drain handling, pull and ordered consumers, async publish and service API. It 
also adds the <code>FetchMaxBytes()</code> option and 
<code>Conn.RemoteAccount()</code>.</p>
   <h3>ADDED</h3>
   <ul>
   <li>Core NATS:
   <ul>
   <li><code>Conn.RemoteAccount()</code> and 
<code>ServerInfo.RemoteAccount</code> exposing the account the client is bound 
to (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2156";>#2156</a>)</li>
   </ul>
   </li>
   <li>JetStream:
   <ul>
   <li><code>FetchMaxBytes()</code> option to limit both the number of messages 
and total bytes in a single <code>Fetch()</code> request. Thanks <a 
href="https://github.com/manenim";><code>@​manenim</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2198";>#2198</a>)</li>
   <li><code>StreamInfo.Domain</code>, <code>StreamInfo.Alternates</code>, 
<code>StreamState.Lost</code>, <code>StreamSourceInfo.External</code> and 
<code>StreamSourceInfo.Error</code> in stream info (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2168";>#2168</a>)</li>
   <li><code>ErrStreamMessageExceedsMaximum</code> for JetStream error code 
10054, returned when a message exceeds the stream's <code>MaxMsgSize</code>. 
Thanks <a href="https://github.com/matehsan";><code>@​matehsan</code></a> for 
the contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2110";>#2110</a>)</li>
   </ul>
   </li>
   </ul>
   <h3>FIXED</h3>
   <ul>
   <li>Core NATS:
   <ul>
   <li><code>ForceReconnect()</code> called while already reconnecting 
disabling <code>ReconnectWait</code> and custom reconnect delays, so the client 
dialed in a tight loop. Thanks <a 
href="https://github.com/Arsen302";><code>@​Arsen302</code></a> for the 
contribution and <a 
href="https://github.com/MokiMeow";><code>@​MokiMeow</code></a> for the 
diagnosis and test (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2179";>#2179</a>)</li>
   <li>Connection closing for good instead of reconnecting after a partial 
write left a truncated message on the wire (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2169";>#2169</a>)</li>
   <li>Connection status listeners losing an unread event and being 
unregistered when the next status was sent (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2193";>#2193</a>)</li>
   <li>Message headers not counted against subscription pending byte limits, so 
header-heavy subscriptions could exceed the limit without reporting a slow 
consumer. Thanks <a href="https://github.com/Grivn";><code>@​Grivn</code></a> 
for the contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2200";>#2200</a>)</li>
   <li>Requests interrupted by a reconnect returning 
<code>ErrConnectionClosed</code> instead of <code>ErrDisconnected</code>. 
Thanks <a 
href="https://github.com/AshSgDe29071999";><code>@​AshSgDe29071999</code></a> 
for the contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2129";>#2129</a>)</li>
   <li>Default port added to the path instead of the host for server URLs with 
a path and no port, e.g. <code>ws://host/nats</code>. Thanks <a 
href="https://github.com/dannyshafer";><code>@​dannyshafer</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2177";>#2177</a>)</li>
   <li><code>Close()</code> during <code>Drain()</code> flipping the closed 
connection back to <code>DRAINING_PUBS</code> and flushing on it. Thanks <a 
href="https://github.com/Kshot3000";><code>@​Kshot3000</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2163";>#2163</a>)</li>
   <li><code>Drain()</code> waiting for the full <code>DrainTimeout</code> when 
the connection was closed mid-drain (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2171";>#2171</a>)</li>
   <li><code>IsSystemAccount()</code> reset to false by async INFO updates, 
such as cluster topology changes or lame duck mode (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2156";>#2156</a>)</li>
   </ul>
   </li>
   <li>JetStream:
   <ul>
   <li>Pull consumer <code>Consume()</code> and <code>Messages()</code> 
deadlocking on <code>Stop()</code> or <code>Drain()</code> while buffered 
messages were still being delivered. Thanks <a 
href="https://github.com/clwluvw";><code>@​clwluvw</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2165";>#2165</a>)</li>
   <li><code>Messages()</code> iterator goroutines leaking after the connection 
is closed. Thanks <a 
href="https://github.com/clwluvw";><code>@​clwluvw</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2166";>#2166</a>)</li>
   <li>Heartbeat timer and status listener left running when 
<code>Consume()</code> ends because the connection was closed. Thanks <a 
href="https://github.com/clwluvw";><code>@​clwluvw</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2164";>#2164</a>)</li>
   <li><code>Messages()</code> iterator returning 
<code>ErrMsgIteratorClosed</code> instead of the remaining buffered messages 
when <code>Next()</code> raced with <code>Drain()</code> (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2188";>#2188</a>)</li>
   <li>Pull consumer with <code>StopAfter</code> stalling until the missed 
heartbeat check (30s by default) after a pull expired. Thanks <a 
href="https://github.com/huynguyen7";><code>@​huynguyen7</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2208";>#2208</a>)</li>
   <li>Ordered consumer with <code>StopAfter</code> hanging on 
<code>Stop()</code>/<code>Drain()</code>, delivering too many or too few 
messages, or panicking after a consumer reset. Thanks <a 
href="https://github.com/clwluvw";><code>@​clwluvw</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2167";>#2167</a>)</li>
   <li>Ordered consumer <code>Fetch()</code>, <code>Next()</code> and 
<code>FetchBytes()</code> blocking forever after returning 
<code>ErrOrderedConsumerConcurrentRequests</code>, and 
<code>FetchNoWait()</code> restarting from the beginning of the stream (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2211";>#2211</a>)</li>
   <li>Ordered consumer <code>Consume()</code> and <code>Messages()</code> 
using the 15s pull consumer heartbeat instead of the 5s ordered default, so a 
stalled consumer was reset after ~30s instead of ~10s. Thanks <a 
href="https://github.com/arminazimi";><code>@​arminazimi</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2182";>#2182</a>)</li>
   <li><code>PublishAsync()</code> exceeding 
<code>WithPublishAsyncMaxPending()</code> under concurrent calls. Thanks <a 
href="https://github.com/ShravanthReddy";><code>@​ShravanthReddy</code></a> for 
the contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2126";>#2126</a>)</li>
   <li>Async publish error callbacks for messages pending during a reconnect 
delayed until the publisher shut down. Thanks <a 
href="https://github.com/H-XX-D";><code>@​H-XX-D</code></a> for the contribution 
(<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2150";>#2150</a>)</li>
   <li>Data race between <code>Info()</code> and <code>CachedInfo()</code> on 
streams and consumers. Thanks <a 
href="https://github.com/vulragrag-star";><code>@​vulragrag-star</code></a> for 
the contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2152";>#2152</a>)</li>
   <li>Reusing the same <code>KeyValueConfig.Sources</code> for several 
KeyValue buckets carrying the first bucket's subject transform into the next 
ones, so their reads returned <code>ErrKeyNotFound</code>. Thanks <a 
href="https://github.com/zhechen-cs";><code>@​zhechen-cs</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2190";>#2190</a>)</li>
   <li>Object Store <code>GetFile()</code> leaving trailing bytes of an 
existing destination file when downloading a shorter object. Thanks <a 
href="https://github.com/zhechen-cs";><code>@​zhechen-cs</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2197";>#2197</a>)</li>
   </ul>
   </li>
   <li>Legacy JetStream:
   <ul>
   <li>Async publish error callbacks for messages pending during a reconnect 
delayed until the publisher shut down. Thanks <a 
href="https://github.com/H-XX-D";><code>@​H-XX-D</code></a> for the contribution 
(<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2150";>#2150</a>)</li>
   <li>KeyValue <code>Create()</code> and <code>Update()</code> on a 
cross-domain mirrored bucket failing with <code>nats: no response from 
stream</code>. Thanks <a 
href="https://github.com/spicysharkco";><code>@​spicysharkco</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2203";>#2203</a>)</li>
   <li>Object Store <code>GetFile()</code> leaving trailing bytes of an 
existing destination file when downloading a shorter object. Thanks <a 
href="https://github.com/zhechen-cs";><code>@​zhechen-cs</code></a> for the 
contribution (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2197";>#2197</a>)</li>
   </ul>
   </li>
   <li>Service API:
   <ul>
   <li>Panic in <code>AddService()</code> on a closed connection (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2154";>#2154</a>)</li>
   <li>Panic with <code>send on closed channel</code> when callbacks were 
queued during <code>Stop()</code> (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2173";>#2173</a>)</li>
   <li>Service stopping on async errors from unrelated subscriptions with 
overlapping subjects. Async errors are now matched by subscription, recorded in 
endpoint stats and passed to <code>ErrorHandler</code>, and only a closed 
connection stops the service (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2174";>#2174</a>)</li>
   </ul>
   </li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/6068694d76fcf1f12bdf1e7383876aa5a3928421";><code>6068694</code></a>
 Release v1.55.0 (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2214";>#2214</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/063b4ad855b35b28d4ff3754260715bd91556735";><code>063b4ad</code></a>
 [FIXED] Honor ReconnectWait after ForceReconnect during reconnect (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2179";>#2179</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/0a4cfc17a9cc663686d67f136f0c9d4a93ee4e42";><code>0a4cfc1</code></a>
 [ADDED] JetStream: stream alternates, lost data, source external/error (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2168";>#2168</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/c3830a090da3c7d04aa5c7406d5330e43e8881e7";><code>c3830a0</code></a>
 [IMPROVED] Document default MaxAckPending for legacy JetStream subscriptions 
...</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/2560ee4d863c8fddb18236c553cc3594e2737e16";><code>2560ee4</code></a>
 [IMPROVED] Avoid per-message metadata allocations in JetStream consumers (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2212";>#2212</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/8afc207574f37b9f347e1b2f6155ea97583d8147";><code>8afc207</code></a>
 [FIXED] Ordered consumer Fetch deadlock and FetchNoWait redelivery (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2211";>#2211</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/d1936d74b2d25ae8f1da9f029b060080780a24e8";><code>d1936d7</code></a>
 [FIXED] Correct StopAfter pending accounting for pull consumers (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2208";>#2208</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/b431a0773eab367145a376926d52cdaa69a910c6";><code>b431a07</code></a>
 [FIXED] micro: service and endpoint metadata can be changed after it is set 
(...</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/ef8ce42436b59d827753f7900aeda8454ec0622d";><code>ef8ce42</code></a>
 [FIXED] micro: Reset clears the endpoint queue group in stats (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2195";>#2195</a>)</li>
   <li><a 
href="https://github.com/nats-io/nats.go/commit/e28f7bea6c2d81a77ca78cfe5efb7bda72e6be05";><code>e28f7be</code></a>
 [FIXED] Connection status listeners losing unread events (<a 
href="https://redirect.github.com/nats-io/nats.go/issues/2193";>#2193</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/nats-io/nats.go/compare/v1.54.0...v1.55.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   [![Dependabot compatibility 
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/nats-io/nats.go&package-manager=go_modules&previous-version=1.54.0&new-version=1.55.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
   
   Dependabot will resolve any conflicts with this PR as long as you don't 
alter it yourself. You can also trigger a rebase manually 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 show <dependency name> ignore conditions` will show all of 
the ignore conditions of the specified dependency
   - `@dependabot ignore this major version` will close this PR and stop 
Dependabot creating any more for this major version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this minor version` will close this PR and stop 
Dependabot creating any more for this minor version (unless you reopen the PR 
or upgrade to it yourself)
   - `@dependabot ignore this dependency` will close this PR and stop 
Dependabot creating any more for this dependency (unless you reopen the PR or 
upgrade to it yourself)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to