Skip to content

v0.30.0

Compare
Choose a tag to compare
@github-actions github-actions released this 29 Aug 05:55
· 2 commits to marco/gostream since this release
37319a6

This is the first release that is compatible with Go 1.21. It drops compatibility with (the now outdated) Go 1.19.

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 (a go-libp2p user) removed support for mplex recently. See libp2p/specs#553 for more details.

Note that due to go-libp2p's 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 (since v0.24.0), and is now dropping support for draft-29.

Full Changelog

Contributors

Contributor Commits Lines ± Files Changed
Marco Munizaga 5 +405/-561 36
Marten Seemann 12 +302/-477 92
Sukun 4 +125/-52 6
Jorropo 5 +83/-28 13
Prem Chaitanya Prathi 1 +28/-1 2
GitHub 2 +6/-19 2
Prithvi Shahi 1 +10/-12 1
Christian Stewart 1 +7/-2 2
cce 1 +4/-4 3
downIoads 1 +2/-2 1

New Contributors

Full Changelog: v0.29.0...v0.30.0