P2P Docs

Release Overview

Curated overview of releases across P2P's building blocks and helpers—Hypercore, Hyperdrive, HyperDHT, and Corestore—breaking changes, removals, and additions.

A curated record of changes across P2P's building blocks and helpers, newest first. For the raw upstream record, see each module's GitHub releases; this page is the docs-team view of what the changes mean for your application.

Looking for pear CLI or pear-* module releases instead? See Pear's release overview. For Bare's releases, see Bare's release overview.

2026-08-24 — P2P module updates

Hypercore — v11.35.2, v11.35.1, v11.35.0

  • Added (v11.35.0): core.getManifest([options]) returns the manifest, optionally in its encoded wire form via options.raw.
  • Added (v11.35.0): Hypercore.parseManifest(manifest, [key]) decodes and validates a manifest, optionally checking it hashes to a given key.
  • Changed (v11.35.0): the manifest option accepts an encoded manifest Buffer—a Buffer is read as a public key only when it is exactly 32 bytes.
  • Fixed (v11.35.1): the idle range completion scan.
  • Fixed (v11.35.2): the replicator bails out when the core is closing, instead of continuing work against a closing session.

HyperDHT — v6.33.2, v6.33.1

  • Fixed (v6.33.1): a node was pushed twice during HyperDHT initialization.
  • Fixed (v6.33.1): the clearing timeout is unreferenced, so it no longer holds the process open.
  • Fixed (v6.33.2): handshakes received while suspended are cleaned up, and clearing is reordered to match.

Compact-encoding — v3.3.2, v3.3.1

  • Added (v3.3.2): TypeScript typings.
  • Added (v3.3.1): validation on the signed integer codecs, so out-of-range values are rejected rather than silently encoded.

2026-07-30 — P2P module updates

Hypercore — v11.34.0–v11.35.1

  • Changed (v11.34.0): the tree-node proof cache is enabled, cutting repeated proof work for peers that serve many connections.
  • Added (v11.35.0): a manifest can be supplied as a raw buffer.
  • Fixed (v11.35.1): the idle range-completion scan.
  • Fixed (v11.34.1): the latest batch is always selected.

Hyperdrive — v13.3.3

  • Fixed: drive.download() and drive.has() silently stalled or fetched the wrong data for entries written with dedup: true. Those entries store blobs as a non-contiguous block map rather than a contiguous range, and the contiguous form was being used for every entry. downloadDiff() had the same bug.

HyperDHT — v6.33.0

  • Fixed: relayed server connections now inherit connectionKeepAlive the way direct sockets already did, and a relay-to-direct upgrade sends an explicit handoff packet so the peer observes the direct path before the relay is torn down.
  • Fixed: a LAN shortcut no longer blocks hole-punch fallback, and relay sockets close once a direct connection is established.
  • Removed: the internal global.Pear reference, following the Pear v3 removal of the ambient Pear API.

Corestore — v7.12.0, v7.11.1

  • Changed (v7.12.0): suspend() no longer performs an implicit flush. Write-ahead-log filtering makes reopening cheap, so the flush is no longer needed on every suspend.
  • Added (v7.11.1): a treeCache option for tuning Hypercore's tree-node cache—raise maxSize on peers that serve more connections than usual.

See also

On this page