p2ptunnel icon indicating copy to clipboard operation
p2ptunnel copied to clipboard

Update module github.com/libp2p/go-libp2p to v0.37.0

Open renovate[bot] opened this issue 4 months ago • 1 comments

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/libp2p/go-libp2p v0.36.4 -> v0.37.0 age adoption passing confidence

Release Notes

libp2p/go-libp2p (github.com/libp2p/go-libp2p)

v0.37.0

Compare Source

Breaking Changes

  • The libp2p.MultiaddrResolver option now takes an interface rather than a specific pointer. This decouples the resolver from a specific implementation and also defines a better interface that is aware of bounds.
    • The swarm exports a new type ResolverFromMaDNS that implements this interface from a *madns.Resolver. The one line diff is essentially:
    -libp2p.MultiaddrResolver(rslv)
    +libp2p.MultiaddrResolver(swarm.ResolverFromMaDNS{Resolver: rslv})
    

🔦 Highlights

HTTP Peer ID Authentication (#​2854)

Authenticate a peer's identity over HTTP. This works on both libp2p stream backed HTTP transports and standard HTTP transports. There is also browser support in the js-libp2p module: https://github.com/libp2p/js-libp2p-http-fetch/tree/main.

See the spec for more details on how it works: https://github.com/libp2p/specs/blob/master/http/peer-id-auth.md

Experimental WithFxOption (#​2956)

A new libp2p Config option lets you add custom Fx options to the libp2p constructor. Use this to get access to and provide libp2p services.

For example, this allows you to easily get a reference to the ID Service of a libp2p Node. Refer to this test for a concrete code example: https://github.com/libp2p/go-libp2p/blob/c4c3a34545aab54b5b825a7adbd6a3db2c680afa/fx_options_test.go#L50-L60

In the future we'd like to expose the Fx options libp2p uses to construct itself so that users can better customize their libp2p nodes and integrate it seamlessly into their applications.

Changelog

From v0.36.5 to v0.37.0

  • feat: Add WithFxOption (#​2956)
  • Make BlackHoleState type public (#​2917)
  • connmgr: reduce log level for untagging untracked peers
  • feat(websocket): switch the underlying http server logger to use ipfs/go-log (#​2985)
  • fix(websocket): re-enable websocket transport test (#​2987)
  • relay: make only 1 reservation per peer (#​2974)
  • libp2phttp: HTTP Peer ID Authentication (#​2854)
  • chore: update quic-go to v0.48.1
  • Add backoff for updating local IP addresses on error (#​2999) Reporting credit to @​elecbug
  • fix: swarm: refactor address resolution (#​2990)
  • peerstore: limit number of non connected peers in addrbook (#​2971)
  • swarm: add a peer dial latency metric (#​2959)
  • autonat: fix interaction with autorelay (#​2967)

Full Changelog: https://github.com/libp2p/go-libp2p/compare/v0.36.5...v0.37.0

New Contributors

v0.36.5

Compare Source

What's Changed

  • basichost: ensure no duplicates in Addrs output #​2980
  • autonatv2: recover from panics #​2992
  • chore: update go-multiaddr-dns to v0.4.0 #​2994

Note

In the previous release, we called out a bug in go1.23 unbuffered timers that deadlocked go-libp2p. This has been fixed in go1.23.2. You can safely update your go.mod's go version to go1.23 now.

Full Changelog: https://github.com/libp2p/go-libp2p/compare/v0.36.4...v0.36.5


Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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.


  • [ ] If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

renovate[bot] avatar Oct 04 '24 10:10 renovate[bot]