Skip to content

v0.26.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 19 Dec 21:32
17db35a

What's Changed

Added

  • bitswap/client: Improved timeout configuration for block requests
    • Exposed DontHaveTimeoutConfig to hold configuration values for dontHaveTimeoutMgr which controls how long to wait for requested block before emitting a synthetic DontHave response
    • Added DefaultDontHaveTimeoutConfig() to return a DontHaveTimeoutConfig populated with default values
    • Added optional WithDontHaveTimeoutConfig to allow passing a custom DontHaveTimeoutConfig
    • Setting SetSendDontHaves(false) works the same as before. Behind the scenes, it will disable dontHaveTimeoutMgr by passing a nil onDontHaveTimeout to newDontHaveTimeoutMgr.

Changed

  • 🛠 blockstore and blockservice's WriteThrough() option now takes an "enabled" parameter: WriteThrough(enabled bool).
  • Replaced unmaintained mock time implementation uses in tests: from => to
  • bitswap/client: if a libp2p connection has a context, use context.AfterFunc to cleanup the connection.
  • upgrade to go-libp2p-kad-dht v0.28.1
  • upgrade to go-libp2p v0.38.1
  • blockstore/blockservice: change option to WriteThrough(enabled bool) #749
  • mfs: improve mfs republisher #754

Fixed

  • mfs: directory cache is now cleared on Flush(), liberating the memory used by the otherwise ever-growing cache. References to directories and sub-directories should be renewed after flushing.
  • bitswap/client: Fix leak due to cid queue never getting cleaned up #756
  • bitswap: Drop stream references on Close/Reset 760

Full Changelog: v0.25.0...v0.26.0