Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go-libp2p v0.30 #2428

Closed
16 of 21 tasks
marten-seemann opened this issue Jul 14, 2023 · 3 comments
Closed
16 of 21 tasks

go-libp2p v0.30 #2428

marten-seemann opened this issue Jul 14, 2023 · 3 comments

Comments

@marten-seemann
Copy link
Contributor

marten-seemann commented Jul 14, 2023

🗺 What's left for release

Planned release date: Aug 15th

QUIC:

Misc:

🔦 Highlights

This is the first release that is compatible with Go 1.21.

Deprecation of the database-backed peerstore

The database-backed peerstore, pstoreds, is now deprecated. It will be removed in a future release of go-libp2p.
The main reason for a database-backed peerstore was that it easily allowed persisting peers across reboots of a go-libp2p node. However, this comes with the problem that entries for these peers will never be pruned. It also means significantly higher latencies compared to the in-memory peerstore. A better way of persisting (a subset of) peers for bootstrapping purposes is to regularly query the in-memory peerstore and to explicitly persist those entries.
See #2329 for more motivation and discussion.

Removal of mplex

The ecosystem is in the process of removing support for one of our stream multiplexers, mplex. The only supported stream multiplexer now is yamux. Kubo removed support for mplex recently. See libp2p/specs#553 for more details.

Note that due to go-libp2p modular design, it's still possible to use mplex (or any other custom multiplexer) using the libp2p.Muxer configuration option.

Removal of QUIC draft-29

QUIC draft-29 was a somewhat widely deployed draft version of QUIC before publication of RFC 9000. The multiaddr codepoint used /quic (RFC 9000 QUIC uses /quic-v1). go-libp2p has been using /quic-v1 for a long time, and is now dropping support for draft-29.

Changelog

< changelog generated by scripts/mkreleaselog >

✅ Release Checklist

@marten-seemann
Copy link
Contributor Author

The Kubo release was pushed out by one week. In principle, this gives us one more week to get v0.30 out. However, it would be nice to release early to enable people to build with Go 1.21.

@marten-seemann
Copy link
Contributor Author

Update: quic-go has been updated to v0.37.5 in #2497. This means that master now builds with Go 1.21.

We noticed a regression that's currently blocking the v0.30 release. I'll update here once we have more details.

@marten-seemann
Copy link
Contributor Author

v0.30.0 has shipped.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant