Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github May 1, 2025

Bumps github.com/quic-go/quic-go from 0.46.0 to 0.51.0.

Release notes

Sourced from github.com/quic-go/quic-go's releases.

v0.51.0

This release introduces client-side support for QUIC Connection Migration (server-side support was added in the last release). Clients can now probe multiple paths and switch between them mid-connection. For example, this enables seamless migration from Wi-Fi to a cellular connection when Wi-Fi connectivity deteriorates.

For details on using the new Connection Migration API, please refer to the documentation.

Breaking Changes

  • The error returned from Connection.OpenStream, OpenUniStream, OpenStreamSync and OpenUniStreamSync doesn't implement net.Error anymore. Use error assertion on StreamLimitReachedError instead: #5060
  • ClientHelloInfo was renamed to ClientInfo: #5016

Other Notable Changes

  • Documentation improvements: #4955 (thanks to @​mark-rushakoff!), #5047, #5061
  • http3: reject duplicate pseudo headers: #4993 (thanks to @​pittgi!)
  • Correctly handle undefined IPv4 / IPv6 preferred address values: #4985, #4986
  • Fix potential deadlock when OpenStreamSync context is cancelled: #5037 (thanks to @​sukunrt for a very helpful review!)
  • Stateless resets are now properly detected when zero-length Connection IDs are used: #5027

Behind The Scenes

  • As in the last couple of releases, we continued our ongoing effort to migrate away from the Ginkgo test suite (tracking issue #3652). The quic package is now fully migrated (#4957, #4969, #5033, #5040, #5054). There are still ~5300 LOC of Ginkgo tests to clean up, mainly in the congestion and the http3 package.
  • We've fully migrated from math/rand and golang.org/x/exp/rand to the new math/rand/v2 package: #5044, #5045, #5046

v0.50.1

This patch release contains a backported fix for a remote-triggered panic in the probe packet loss detection logic: #4998.

Full Changelog: quic-go/quic-go@v0.50.0...v0.50.1

v0.50.0

This release implements server-side path-probing (as described in section 9 of RFC 9000): #4932, #4933, #4935, #4938, #4939, #4940, #4941, #4944, #4947, #4959.

When the server receives a packet for an existing connection from a different IP address / port, it first needs to probe the new path before it can send packets on that path. This happens when the client experiences a NAT rebinding, and when the client attempts to migrate to a new connection. Previous versions of quic-go would accept the packets from the new path, but never switch to the new path.

Note that the client side connection migration logic (#234) is not yet implemented in quic-go (but we're working on it!).

Major Changes

  • use the new crypto/tls 0-RTT API that we helped design in 2023: #4953
  • use a ringbuffer to store received packets, significantly reducing memory consumption: #4929
  • according to our Go version policy, we removed support for Go 1.22. quic-go now requires Go 1.23 or Go 1.24: #4880
  • the connection timer logic was refactored, enabling future changes to this code path: #4927

Other Fixes

  • fix busy-looping when pacing packets and the send queue blocks: #4943
  • don't drop undecryptable packets when deriving 2 sets of keys at the same time (i.e. when resuming a 0-RTT connection): #4950

... (truncated)

Commits
  • d35b5ac use ed25519 instead of RSA in tests and examples (#5050)
  • 03e9359 improve documentation of errors returned from connection and streams (#5061)
  • 65d75f1 fix panic when probe packet containing a PATH_RESPONSE is lost (#5063)
  • a1aa369 don't use net.Errors for streams map error (#5060)
  • 9e1afd4 migrate the streams map tests away from Ginkgo (#5040)
  • 79e5680 migrate the retransmission queue tests away from Ginkgo (#5054)
  • 2cfc9b8 refactor retransmission queue to enable splitting of 1-RTT CRYPTO frames (#5058)
  • 0c1db89 fix flaky TestStreamsMapOutgoingRandomizedOpenStreamSync (#5056)
  • 02fea84 simplify the API of the retransmission queue (#4793)
  • 7548cc0 protocol: fix flaky TestVersionGreasing (#5051)
  • Additional commits viewable in compare view

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

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 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)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels May 1, 2025
@mstmdev
Copy link
Member

mstmdev commented Jul 2, 2025

@dependabot recreate

@dependabot dependabot bot force-pushed the dependabot/go_modules/github.com/quic-go/quic-go-0.51.0 branch from b024207 to 60b4509 Compare July 2, 2025 05:08
@mstmdev
Copy link
Member

mstmdev commented Jul 2, 2025

@dependabot recreate

Bumps [github.com/quic-go/quic-go](https://github.com/quic-go/quic-go) from 0.46.0 to 0.51.0.
- [Release notes](https://github.com/quic-go/quic-go/releases)
- [Changelog](https://github.com/quic-go/quic-go/blob/master/Changelog.md)
- [Commits](quic-go/quic-go@v0.46.0...v0.51.0)

---
updated-dependencies:
- dependency-name: github.com/quic-go/quic-go
  dependency-version: 0.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot force-pushed the dependabot/go_modules/github.com/quic-go/quic-go-0.51.0 branch from 60b4509 to db09306 Compare July 2, 2025 05:15
@codecov
Copy link

codecov bot commented Jul 2, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.21%. Comparing base (d85528a) to head (b2aaa05).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #40   +/-   ##
=======================================
  Coverage   90.21%   90.21%           
=======================================
  Files          17       17           
  Lines         664      664           
=======================================
  Hits          599      599           
  Misses         59       59           
  Partials        6        6           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@mstmdev mstmdev merged commit 0cda890 into main Jul 2, 2025
8 checks passed
@mstmdev mstmdev deleted the dependabot/go_modules/github.com/quic-go/quic-go-0.51.0 branch July 2, 2025 05:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants