v1.8.4
Lantern v1.8.4
Fix: the standalone lantern daemon could not fetch cold blocks over Bitswap.
The standalone CLI built its Bitswap client without the Filecoin protocol
prefix, so it negotiated the boxo/IPFS default /ipfs/bitswap/... instead of
Filecoin's /chain/ipfs/bitswap/.... Mainnet and calibration peers rejected
every stream (protocols not supported: /ipfs/bitswap/...), so Bitswap served
zero blocks and the HTTP gateway carried the entire cold-block tail. The
embedded daemon (pkg/daemon, used by Curio Core / maxboom) already set the
prefix, so only the standalone path was affected.
Fixed
- Bitswap protocol prefix on the standalone daemon.
cmd/lanternnow sets
ProtocolPrefix: network.BitswapProtocolPrefix()(/chain) on its Bitswap
client, matching the embedded daemon. Verified on Filecoin mainnet:
Bitswap now serves cold state blocks from the swarm (0 → tens of blocks under
a ~300-read load), and Glif stays at zero. (#50)
Added
- Dashboard: live Bitswap detail on the dev page. The "Block source
counters" card now shows Bitswap blocks served, bytes in, and want failures
(5s auto-refresh) next to the per-source hit table, so an operator can confirm
the swarm is carrying cold blocks rather than the gateway doing all the work.
Notes
- No wire/protocol changes.
pkg/daemonandwalletpublic APIs unchanged. - Upgrade is recommended for anyone running the standalone
lantern daemon:
before this fix, all cold-block fetches fell to the gateway/Glif because the
swarm path was silently mis-negotiated.
Install
See the install section of the README. latest resolves to this release.