You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
go-libp2p now has experimental support for WebTransport, powered by webtransport-go. WebTransport is a brand-new transport protocol currently under development at the IETF and w3c, and already supported by Chrome. WebTransport allows browsers to establish an encrypted, stream-multiplexed connection (running on top of QUIC) to servers.
Because support is still experimental, WebTransport has be explicitly enabled. When constructing a node, pass in the WebTransport transport, and configure a WebTransport listen address:
It's now possible to disable reuseport for the QUIC transport (quic: add DisableReuseport option #1476). Note: If disabled, QUIC cannot be use for NAT hole punching.
If no listen addresses are specified, a libp2p now listens on TCP and QUIC (both IPv4 and IPv6).
Transports can now have a say in how a multiaddr is resolved: Add Resolver interface to transport #1719. This allows transports to modify the multiaddr before the address is dialed. A transport can set the SNI field for TLS or decide to do its own domain name resolution.
Yamux now regularly remeasures the RTT of the underlying connection. The RTT is used to auto-tune the size of the receive buffer.
The QUIC and TCP transports now don't collect metrics, unless the WithMetrics option is passed to their constructor (QUIC change, TCP change).
Changelog
< changelog generated by scripts/mkreleaselog >
✅ Release Checklist
Stage 0 - Finishing Touches
Go through relevant libp2p repos looking for unreleased changes that should make it into the release. If you find any, cut releases.
Run go get -u ./... to see if there are any out-of-date deps that look important. If there are, bubble them. Try to avoid directly updating indirect deps in go-libp2p's go.mod when possible.
Stage 1 - Release
Publish the release through the GitHub UI, adding the release notes. Some users rely on this to receive notifications of new releases.
🗺 What's left for release
WebTransport: Tracking issue #1717
Yamux:
Misc:
DisableReuseport
option #1476https://github.com/orgs/libp2p/projects/3/views/2?filterQuery=release%3A%220.23%22
🔦 Highlights
WebTransport
go-libp2p now has experimental support for WebTransport, powered by webtransport-go. WebTransport is a brand-new transport protocol currently under development at the IETF and w3c, and already supported by Chrome. WebTransport allows browsers to establish an encrypted, stream-multiplexed connection (running on top of QUIC) to servers.
js-libp2p is currently working on a WebTransport client implementation: https://github.com/libp2p/js-libp2p-webtransport.
How to enable
Because support is still experimental, WebTransport has be explicitly enabled. When constructing a node, pass in the WebTransport transport, and configure a WebTransport listen address:
Other
DisableReuseport
option #1476). Note: If disabled, QUIC cannot be use for NAT hole punching.WithMetrics
option is passed to their constructor (QUIC change, TCP change).Changelog
< changelog generated by scripts/mkreleaselog >
✅ Release Checklist
go get -u ./...
to see if there are any out-of-date deps that look important. If there are, bubble them. Try to avoid directly updating indirect deps in go-libp2p'sgo.mod
when possible.The text was updated successfully, but these errors were encountered: