Doridian / wsvpn

VPN over WebSocket and WebTransport
BSD 3-Clause "New" or "Revised" License
120 stars 12 forks source link

Update module github.com/quic-go/quic-go to v0.41.0 #452

Closed renovate[bot] closed 5 months ago

renovate[bot] commented 5 months ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/quic-go/quic-go v0.40.1 -> v0.41.0 age adoption passing confidence

[!WARNING] Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

quic-go/quic-go (github.com/quic-go/quic-go) ### [`v0.41.0`](https://togithub.com/quic-go/quic-go/releases/tag/v0.41.0) [Compare Source](https://togithub.com/quic-go/quic-go/compare/v0.40.1...v0.41.0) #### New Features - When calling `quic.Connection.SendDatagram`, we now queue up to 32 DATAGRAMs before blocking this method: [#​4222](https://togithub.com/quic-go/quic-go/issues/4222). This should lead to significant performance improvements for applications that send a lot of datagrams. - DATAGRAM frames that don't fit into a packet (at the current MTU) are now dropped: [#​4221](https://togithub.com/quic-go/quic-go/issues/4221). - http3: The remote address (as a `net.Addr`) can now be obtained from the HTTP/3 request context using the `http3.RemoteAddrContextKey`: [#​4208](https://togithub.com/quic-go/quic-go/issues/4208). Thanks to [@​oncilla](https://togithub.com/oncilla)! - http3: When an `http.Handler` panics, the stream is now reset: [#​4181](https://togithub.com/quic-go/quic-go/issues/4181). Thanks to [@​WeidiDeng](https://togithub.com/WeidiDeng)! - http3: The `http3.Server` now has a `ConnContext` function, working analogously to `http.Server.ConnContext`: [#​4230](https://togithub.com/quic-go/quic-go/issues/4230). Thanks to [@​rthellend](https://togithub.com/rthellend)! - logging: Information about the negotiated ALPN is logged using `logging.ConnectionTracer.ChoseALPN`: [#​4216](https://togithub.com/quic-go/quic-go/issues/4216). Thanks to [@​birneee](https://togithub.com/birneee)! - qlog: The package now provides an implementation of the `quic.Config.ConnectionTracer` callback that reads the QLOGDIR environment variable, and writes qlogs to that directory. Thanks to [@​birneee](https://togithub.com/birneee)! #### Breaking Changes - This release drops support for Go 1.20 ([#​4195](https://togithub.com/quic-go/quic-go/issues/4195)). We decided to support the old Go version a little bit earlier than usual (before the Go 1.22 release) this time, since this allowed us to completely remove our custom TLS fork that was necessary before crypto/tls gained QUIC support in Go 1.21. If you rely on Go 1.20, you can continue using the v0.40.1 release. - The `DroppedPacket` callback on the `logging.ConnectionTracer` now contains the packet number of the dropped packet, allowing for better logging of duplicate packets: [#​4171](https://togithub.com/quic-go/quic-go/issues/4171) #### Other Changes - Only attempt 0-RTT resumption if the session-ticket allowed 0-RTT: [#​4183](https://togithub.com/quic-go/quic-go/issues/4183) - http3: The context cancelation error is now returned from `RoundTrip`: [#​4203](https://togithub.com/quic-go/quic-go/issues/4203) - http3: use the `AdditionalSettings` for on HTTP/3 requests: [#​4156](https://togithub.com/quic-go/quic-go/issues/4156) #### Please support quic-go! Is your project / company relying on quic-go? Please consider [funding the project](https://togithub.com/sponsors/marten-seemann). Any support is highly appreciated! #### Changelog - congestion: don't use floating point math when calculating pacing times by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4148](https://togithub.com/quic-go/quic-go/pull/4148) - don't set the TLS version in the transport by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4135](https://togithub.com/quic-go/quic-go/pull/4135) - ackhandler: immediately acknowledge ECN-CE marked packets by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4147](https://togithub.com/quic-go/quic-go/pull/4147) - README: fix typo by [@​anderspitman](https://togithub.com/anderspitman) in [https://github.com/quic-go/quic-go/pull/4166](https://togithub.com/quic-go/quic-go/pull/4166) - fix flaky server test by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4167](https://togithub.com/quic-go/quic-go/pull/4167) - fix serialization of connection ID in filenames of qlog files by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4170](https://togithub.com/quic-go/quic-go/pull/4170) - logging: pass the packet number to ConnectionTracer.DroppedPacket by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4171](https://togithub.com/quic-go/quic-go/pull/4171) - interop: update Go version to 1.21.4 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4179](https://togithub.com/quic-go/quic-go/pull/4179) - wire: reject NEW_CONNECTION_ID frames with zero-length conneciton IDs by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4180](https://togithub.com/quic-go/quic-go/pull/4180) - send large max_datagram_frame size, introduce a DatagramTooLargeError error by [@​chungthuang](https://togithub.com/chungthuang) in [https://github.com/quic-go/quic-go/pull/4143](https://togithub.com/quic-go/quic-go/pull/4143) - fuzzing: add transport parameter validation logic by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4175](https://togithub.com/quic-go/quic-go/pull/4175) - reduce calls to time.Now() calls in connection by [@​birneee](https://togithub.com/birneee) in [https://github.com/quic-go/quic-go/pull/4191](https://togithub.com/quic-go/quic-go/pull/4191) - http3: use the AdditionalSettings for requests by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4156](https://togithub.com/quic-go/quic-go/pull/4156) - README: add gost project by [@​char8x](https://togithub.com/char8x) in [https://github.com/quic-go/quic-go/pull/4154](https://togithub.com/quic-go/quic-go/pull/4154) - qtls: only attempt 0-RTT resumption for 0-RTT enabled session tickets by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4183](https://togithub.com/quic-go/quic-go/pull/4183) - examples: close listener, connection and stream in echo client and server by [@​rfyiamcool](https://togithub.com/rfyiamcool) in [https://github.com/quic-go/quic-go/pull/4188](https://togithub.com/quic-go/quic-go/pull/4188) - fuzzing: update Go version to 1.21 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4192](https://togithub.com/quic-go/quic-go/pull/4192) - integrationtests: remove leftover code for Go 1.19 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4193](https://togithub.com/quic-go/quic-go/pull/4193) - limit the number of queued PATH_RESPONSE frames to 256 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4199](https://togithub.com/quic-go/quic-go/pull/4199) - don't retransmit PATH_CHALLENGE and PATH_RESPONSE frames by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4200](https://togithub.com/quic-go/quic-go/pull/4200) - ci: update golangci-lint to v1.55.2 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4204](https://togithub.com/quic-go/quic-go/pull/4204) - fuzzing: add frame field validation logic by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4206](https://togithub.com/quic-go/quic-go/pull/4206) - http3: add remote address to request context by [@​oncilla](https://togithub.com/oncilla) in [https://github.com/quic-go/quic-go/pull/4208](https://togithub.com/quic-go/quic-go/pull/4208) - http3: reset stream when a handler panics by [@​WeidiDeng](https://togithub.com/WeidiDeng) in [https://github.com/quic-go/quic-go/pull/4181](https://togithub.com/quic-go/quic-go/pull/4181) - http3: don't use error string as a format string by [@​nanokatze](https://togithub.com/nanokatze) in [https://github.com/quic-go/quic-go/pull/4211](https://togithub.com/quic-go/quic-go/pull/4211) - http3: improve debug message when determining the listener port fails by [@​nanokatze](https://togithub.com/nanokatze) in [https://github.com/quic-go/quic-go/pull/4214](https://togithub.com/quic-go/quic-go/pull/4214) - http3: return the context cancellation error from RoundTrip by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4203](https://togithub.com/quic-go/quic-go/pull/4203) - qlog: add support for alpn_information event by [@​birneee](https://togithub.com/birneee) in [https://github.com/quic-go/quic-go/pull/4216](https://togithub.com/quic-go/quic-go/pull/4216) - drop support for Go 1.20, build on Go 1.22rc1 by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4195](https://togithub.com/quic-go/quic-go/pull/4195) - utils: use time.Duration.Abs by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4217](https://togithub.com/quic-go/quic-go/pull/4217) - utils: switch to builtin min and max funtions by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4218](https://togithub.com/quic-go/quic-go/pull/4218) - http3: fix channel size in ListenAndServe by [@​narqo](https://togithub.com/narqo) in [https://github.com/quic-go/quic-go/pull/4219](https://togithub.com/quic-go/quic-go/pull/4219) - qtls: remove unneeded type alias for the tls.QUICEncryptionLevel by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4220](https://togithub.com/quic-go/quic-go/pull/4220) - discard DATAGRAM frames that don't fit into packets without an ACK by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4221](https://togithub.com/quic-go/quic-go/pull/4221) - queue up to 32 DATAGRAM frames to send by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4222](https://togithub.com/quic-go/quic-go/pull/4222) - use a ring buffer for the datagram queue by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4223](https://togithub.com/quic-go/quic-go/pull/4223) - handshake: remove unneeded mutex in cryptoSetup by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4227](https://togithub.com/quic-go/quic-go/pull/4227) - README: add RoadRunner to list of projects by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4226](https://togithub.com/quic-go/quic-go/pull/4226) - wire: use netip.AddrPort in the Preferred Address transport parameter by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4232](https://togithub.com/quic-go/quic-go/pull/4232) - ackhandler: refactor ACK queueing logic by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4225](https://togithub.com/quic-go/quic-go/pull/4225) - fix race condition when dropping Initial packet with short connection ID by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4236](https://togithub.com/quic-go/quic-go/pull/4236) - http3: add ConnContext to the server by [@​rthellend](https://togithub.com/rthellend) in [https://github.com/quic-go/quic-go/pull/4230](https://togithub.com/quic-go/quic-go/pull/4230) - example: add config flag for TLS key and cert for the server by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4237](https://togithub.com/quic-go/quic-go/pull/4237) - wire: improve logging of connection ID retirements by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4241](https://togithub.com/quic-go/quic-go/pull/4241) - qlog: add a default tracer that writes to QLOGDIR by [@​birneee](https://togithub.com/birneee) in [https://github.com/quic-go/quic-go/pull/4233](https://togithub.com/quic-go/quic-go/pull/4233) - example: remove -v flag and custom logger configuration by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4242](https://togithub.com/quic-go/quic-go/pull/4242) - example: remove -qlog flag in favor of QLOGDIR by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4243](https://togithub.com/quic-go/quic-go/pull/4243) - http3: add a basic README by [@​marten-seemann](https://togithub.com/marten-seemann) in [https://github.com/quic-go/quic-go/pull/4246](https://togithub.com/quic-go/quic-go/pull/4246) #### New Contributors - [@​anderspitman](https://togithub.com/anderspitman) made their first contribution in [https://github.com/quic-go/quic-go/pull/4166](https://togithub.com/quic-go/quic-go/pull/4166) - [@​chungthuang](https://togithub.com/chungthuang) made their first contribution in [https://github.com/quic-go/quic-go/pull/4143](https://togithub.com/quic-go/quic-go/pull/4143) - [@​char8x](https://togithub.com/char8x) made their first contribution in [https://github.com/quic-go/quic-go/pull/4154](https://togithub.com/quic-go/quic-go/pull/4154) - [@​rfyiamcool](https://togithub.com/rfyiamcool) made their first contribution in [https://github.com/quic-go/quic-go/pull/4188](https://togithub.com/quic-go/quic-go/pull/4188) - [@​oncilla](https://togithub.com/oncilla) made their first contribution in [https://github.com/quic-go/quic-go/pull/4208](https://togithub.com/quic-go/quic-go/pull/4208) - [@​nanokatze](https://togithub.com/nanokatze) made their first contribution in [https://github.com/quic-go/quic-go/pull/4211](https://togithub.com/quic-go/quic-go/pull/4211) - [@​narqo](https://togithub.com/narqo) made their first contribution in [https://github.com/quic-go/quic-go/pull/4219](https://togithub.com/quic-go/quic-go/pull/4219) - [@​rthellend](https://togithub.com/rthellend) made their first contribution in [https://github.com/quic-go/quic-go/pull/4230](https://togithub.com/quic-go/quic-go/pull/4230) **Full Changelog**: https://github.com/quic-go/quic-go/compare/v0.40.0...v0.41.0

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.