Skip to content

chore(deps): bump go-libp2p and go-libp2p-pubsub#11389

Merged
lidel merged 2 commits into
masterfrom
chore/bump-libp2p-pubsub-pre-release
Jul 9, 2026
Merged

chore(deps): bump go-libp2p and go-libp2p-pubsub#11389
lidel merged 2 commits into
masterfrom
chore/bump-libp2p-pubsub-pre-release

Conversation

@lidel

@lidel lidel commented Jul 8, 2026

Copy link
Copy Markdown
Member

Pins go-libp2p and go-libp2p-pubsub to master pseudo-versions, ahead of tagged releases, and documents the user-visible changes in the v0.43 changelog.

The pubsub bump is the one to look at: it frees topic state once the last peer leaves a topic, closing an unbounded memory growth path. Only nodes that opt into Pubsub.Enabled or Ipns.UsePubsub run the pubsub stack, so default configs are unaffected.

What lands

TODO

Neither dependency has a tagged release carrying these fixes yet, so both go.mod lines have a // TODO marker.

  • Does go-libp2p tag a release past v0.48.0 before 0.43 ships?
    • Yes: bump to the tag, drop the // TODO, update the changelog dependency bullet.
    • No: ship the pinned commit and open a follow-up to swap it in 0.44.
  • Does go-libp2p-pubsub tag a release past v0.16.0 before 0.43 ships?
    • Yes: bump to the tag, drop the // TODO, update the changelog dependency bullet.
    • No: ship the pinned commit anyway. The memory exhaustion fix is worth it.
  • Both // TODO markers gone before 0.43 is cut.

Out of scope

The websocket HTTP muxer/handler (go-libp2p#3509) comes along in the bump, but nothing here wires it up, so it stays out of the changelog. That is done in #11333, and will be triaged separately.

lidel added 2 commits July 8, 2026 20:50
Both are pinned to master pseudo-versions ahead of tagged releases,
with a TODO in go.mod to switch once the tags ship.

go-libp2p adds webrtc-direct v2 handshake support, keeps /certhash
stable across restarts, and stops stale addresses from accumulating
in the peerstore and in published signed peer records. It also fixes
a data race that could take the daemon down mid-response during
ipfs routing findprovs, findpeer, and dht query.

go-libp2p-pubsub frees topic state once the last peer leaves a
topic, closing an unbounded memory growth path (libp2p/go-libp2p-pubsub#705,
the Go counterpart of CVE-2026-46679). Only nodes that opt into
Pubsub.Enabled or Ipns.UsePubsub run the pubsub stack and are
affected.
Exposes go-libp2p's NonPublicAddrPublishing as an Internal flag, so a
node can be told to stop publishing addresses the wider internet cannot
reach: private, CGNAT, link-local, loopback, ULA, reserved IPv6, and
special-use DNS names such as .local.

Left unset, kubo passes no option and go-libp2p's default decides. The
default has shifted before (libp2p/go-libp2p#3460), so the flag gives
operators a way to pin the behavior, and makes it easy to see exactly
what a node publishes while chasing a routing problem.

Only the peerstore self-entry and the signed peer record are filtered.
Listening and dialing are untouched, so `ipfs id` keeps reporting the
full set.
@lidel lidel mentioned this pull request Jul 8, 2026
45 tasks
@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedgithub.com/​libp2p/​go-libp2p@​v0.48.0 ⏵ v0.48.1-0.20260708062241-95be6665b01474 +110010075100
Updatedgithub.com/​libp2p/​go-libp2p-pubsub@​v0.16.0 ⏵ v0.16.1-0.20260707102207-01917ab4bc7298100100100100

View full report

@lidel lidel marked this pull request as ready for review July 8, 2026 22:13
@lidel lidel requested a review from a team as a code owner July 8, 2026 22:13

@guillaumemichel guillaumemichel left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

Should we merge as is and bump dependencies before next release?

@lidel

lidel commented Jul 9, 2026

Copy link
Copy Markdown
Member Author

Yes, I think its lesser evil to merge as-is, and switch to final version before RC or even FINAL.

@lidel lidel merged commit 9954300 into master Jul 9, 2026
24 checks passed
@lidel lidel deleted the chore/bump-libp2p-pubsub-pre-release branch July 9, 2026 19:20
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

Successfully merging this pull request may close these issues.

2 participants