Skip to content

Releases: libp2p/go-libp2p

v0.20.1

02 Jun 16:32
b54bace
Compare
Choose a tag to compare

This release fixes a bug in the yamux implementation that could occasionally lead to incorrect accounting of memory consumed by yamux streams.

Changelog

Full Changelog: v0.20.0...v0.20.1

v0.19.4

02 Jun 16:16
be5264f
Compare
Choose a tag to compare

This release fixes a bug in the yamux implementation that could occasionally lead to incorrect accounting of memory consumed by yamux streams.

Changelog

Full Changelog: v0.19.3...v0.19.4

v0.20.0

26 May 09:49
6c56eea
Compare
Choose a tag to compare

We're happy to announce the v0.20.0 release of go-libp2p.

🛠 BREAKING CHANGES

In this release, we've taken steps to reduce the go-libp2p-* repo sprawl, and move all transport-related repositories (and some others) to go-libp2p. Specifically, the following repositories were deprecated:

  • go-libp2p-blankhost
  • go-libp2p-swarm
  • go-libp2p-yamux
  • go-libp2p-mplex
  • go-libp2p-noise
  • go-libp2p-tls
  • go-tcp-transport
  • go-libp2p-quic-transport
  • go-ws-transport
  • go-libp2p-pnet
  • go-libp2p-nat
  • go-libp2p-transport-upgrader
  • go-conn-security-multistream
  • go-stream-muxer-multistream
  • go-reuseport-transport

For users of go-libp2p, this might mean that a few import paths have changed. The recommended way of updating is the following:

  1. Run go get -u ./.... This will pull in updated dependencies, including updates for all the repositories listed above.
  2. Run staticcheck ./.... All repositories listed above were deprecated, and staticcheck will generate errors when they are imported.

Changelog

Read more

v0.19.3

23 May 16:54
e32f9cb
Compare
Choose a tag to compare

What's Changed

  • update quic-go to v0.27.1 to fix an issue with the Path MTU discovery timer by @marten-seemann in #1518

Full Changelog: v0.19.2...v0.19.3

v0.19.2

11 May 20:02
Compare
Choose a tag to compare

What's Changed

  • holepunch: fix incorrect message type for the SYNC message, release v0.19.2 by @marten-seemann in #1479

Full Changelog: v0.19.1...v0.19.2

v0.19.1

02 May 19:38
4cabcba
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.19.0...v0.19.1

v0.19.0

19 Apr 12:12
0d51d87
Compare
Choose a tag to compare

We're happy to announce to v0.19.0 release of go-libp2p.

🛠 BREAKING CHANGES

AutoRelay now discovers Circuit Relay v2 nodes. AutoRelays reads peers from a channel (provided by autorelay.WithPeerSource), tests if those peers speak the relay v2 protocol and tries to obtain a reservation with these nodes.
By default, AutoRelay does not use Circuit Relay v1 nodes any more. If circuit v1 support is desired, the autorelay.WithCircuitV1Support option can be used.

The mplex stream multiplexer was removed from the default list of stream multiplexers. If you still need to support both yamux and mplex, you can manually enable it using the following libp2p.Option:

libp2p.ChainOptions(
	libp2p.Muxer("/yamux/1.0.0", yamux.DefaultTransport),
	libp2p.Muxer("/mplex/6.7.0", mplex.DefaultTransport),
)

Changelog

Contributors

Contributor Commits Lines ± Files Changed
Marten Seemann 123 +44877/-11386 659
Artem Mikheev 2 +616/-120 5
Toby 2 +107/-86 11
Rachel Chen 1 +124/-57 15
Christian Stewart 3 +106/-60 13
Andrew Gillis 2 +61/-0 3
Arash Payan 1 +5/-0 1
Elena Frank 1 +2/-2 2
ignoramous 1 +0/-1 1

v0.18.0

18 Mar 08:05
5bab581
Compare
Choose a tag to compare

We're happy to announce the v0.18.0 release of go-libp2p.

🛠 Breaking Changes

In this release, we're continuing our repo consolidation. We've moved the following repositories into go-libp2p:

  • go-libp2p-autonat
  • go-libp2p-discovery
  • go-libp2p-connmgr
  • go-addr-utils
  • go-libp2p-netutil
  • go-sockaddr

If you've been using functions from these repositories, please make sure to point those to go-libp2p.

🔦 Highlights

The main feature of v0.18.0 is the Resource Manager. The Resource Manager allows the configuration of (among others):

  • the number of incoming / outgoing connections
  • the number of incoming / outgoing streams
  • the number of streams per protocol, and per service
  • memory usage

For details on how this works, and how to change limits, refer to the README of the Resource Manager.

In this release, we've finished the transition from ipfs/go-log@v1 to ipfs/go-log@v2. One less dependency!

Changelog

Read more

v0.18.0-rc5

22 Feb 10:15
4c0e2b8
Compare
Choose a tag to compare
v0.18.0-rc5 Pre-release
Pre-release

Fixes a goroutine leak in the swarm.

v0.18.0-rc4

08 Feb 09:54
ddc3e2b
Compare
Choose a tag to compare
v0.18.0-rc4 Pre-release
Pre-release

Another rc for v0.18.0, fixes a data race in quic-transport and removes the (now unnecessary) hard stream limit from yamux.