diff --git a/package.json b/package.json index 75e9454dff..4fbb1887f5 100644 --- a/package.json +++ b/package.json @@ -108,7 +108,7 @@ "hapi-set-header": "^1.0.2", "hoek": "^5.0.2", "ipfs-api": "^17.2.4", - "ipfs-bitswap": "~0.17.4", + "ipfs-bitswap": "~0.18.0", "ipfs-block": "~0.6.1", "ipfs-block-service": "~0.13.0", "ipfs-multipart": "~0.1.0", diff --git a/src/core/components/bitswap.js b/src/core/components/bitswap.js index 373de852b8..6a1bffefc2 100644 --- a/src/core/components/bitswap.js +++ b/src/core/components/bitswap.js @@ -21,11 +21,10 @@ module.exports = function bitswap (self) { throw new Error(OFFLINE_ERROR) } - const stats = self._bitswap.stat() - stats.wantlist = formatWantlist(stats.wantlist) - stats.peers = stats.peers.map((id) => id.toB58String()) - - return stats + return Object.assign({}, self._bitswap.stat().snapshot, { + wantlist: formatWantlist(self._bitswap.getWantlist()), + peers: self._bitswap.peers().map((id) => id.toB58String()) + }) }, unwant: (key) => { if (!self.isOnline()) { diff --git a/test/core/bitswap.spec.js b/test/core/bitswap.spec.js index 4aea3ece88..2dffff99bc 100644 --- a/test/core/bitswap.spec.js +++ b/test/core/bitswap.spec.js @@ -261,8 +261,14 @@ describe('bitswap', function () { expect(stats).to.have.keys([ 'blocksReceived', + 'blocksSent', + 'dataReceived', + 'dataSent', + 'wantListLength', 'wantlist', + 'peerCount', 'peers', + 'providesBufferLength', 'dupDataReceived', 'dupBlksReceived' ])