diff --git a/package.json b/package.json index 0ca90a57af..87d9c17e84 100644 --- a/package.json +++ b/package.json @@ -129,10 +129,10 @@ "joi": "^14.3.0", "joi-browser": "^13.4.0", "joi-multiaddr": "^4.0.0", - "libp2p": "~0.24.1", + "libp2p": "libp2p/js-libp2p#master", "libp2p-bootstrap": "~0.9.3", "libp2p-crypto": "~0.16.0", - "libp2p-kad-dht": "~0.14.4", + "libp2p-kad-dht": "~0.14.5", "libp2p-keychain": "~0.3.3", "libp2p-mdns": "~0.12.0", "libp2p-mplex": "~0.8.4", diff --git a/src/core/components/libp2p.js b/src/core/components/libp2p.js index bf404bf1a0..28f1a23953 100644 --- a/src/core/components/libp2p.js +++ b/src/core/components/libp2p.js @@ -84,12 +84,14 @@ function defaultBundle ({ datastore, peerInfo, peerBook, options, config }) { } }, EXPERIMENTAL: { - dht: get(options, 'EXPERIMENTAL.dht', false), pubsub: get(options, 'EXPERIMENTAL.pubsub', false) } }, connectionManager: get(options, 'connectionManager', - get(config, 'connectionManager', {})) + { + maxPeers: get(config, 'Swarm.ConnMgr.HighWater'), + minPeers: get(config, 'Swarm.ConnMgr.LowWater') + }) } const libp2pOptions = defaultsDeep(get(options, 'libp2p', {}), libp2pDefaults) diff --git a/src/core/runtime/config-browser.js b/src/core/runtime/config-browser.js index ca8c99e153..61e31eca36 100644 --- a/src/core/runtime/config-browser.js +++ b/src/core/runtime/config-browser.js @@ -25,5 +25,11 @@ module.exports = () => ({ '/dns4/nyc-2.bootstrap.libp2p.io/tcp/443/wss/ipfs/QmSoLV4Bbm51jM9C4gDYZQ9Cy3U6aXMJDAbzgu2fzaDs64', '/dns4/node0.preload.ipfs.io/tcp/443/wss/ipfs/QmZMxNdpMkewiVZLMRxaNxUeZpDUb34pWjZ1kZvsd16Zic', '/dns4/node1.preload.ipfs.io/tcp/443/wss/ipfs/Qmbut9Ywz9YEDrz8ySBSgWyJk41Uvm2QJPhwDJzJyGFsD6' - ] + ], + Swarm: { + ConnMgr: { + LowWater: 600, + HighWater: 900 + } + } }) diff --git a/src/core/runtime/config-nodejs.js b/src/core/runtime/config-nodejs.js index 5b301d1e20..4cc6584fe0 100644 --- a/src/core/runtime/config-nodejs.js +++ b/src/core/runtime/config-nodejs.js @@ -38,5 +38,11 @@ module.exports = () => ({ '/ip6/2604:a880:1:20::1d9:6001/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx', '/dns4/node0.preload.ipfs.io/tcp/443/wss/ipfs/QmZMxNdpMkewiVZLMRxaNxUeZpDUb34pWjZ1kZvsd16Zic', '/dns4/node1.preload.ipfs.io/tcp/443/wss/ipfs/Qmbut9Ywz9YEDrz8ySBSgWyJk41Uvm2QJPhwDJzJyGFsD6' - ] + ], + Swarm: { + ConnMgr: { + LowWater: 600, + HighWater: 900 + } + } }) diff --git a/src/core/runtime/libp2p-browser.js b/src/core/runtime/libp2p-browser.js index 2a14416f93..bfddc9270e 100644 --- a/src/core/runtime/libp2p-browser.js +++ b/src/core/runtime/libp2p-browser.js @@ -6,6 +6,7 @@ const WebSocketStarMulti = require('libp2p-websocket-star-multi') const Multiplex = require('libp2p-mplex') const SECIO = require('libp2p-secio') const Bootstrap = require('libp2p-bootstrap') +const KadDHT = require('libp2p-kad-dht') const libp2p = require('libp2p') const defaultsDeep = require('@nodeutils/defaults-deep') const multiaddr = require('multiaddr') @@ -37,7 +38,8 @@ class Node extends libp2p { wrtcstar.discovery, wsstar.discovery, Bootstrap - ] + ], + dht: KadDHT }, config: { peerDiscovery: { @@ -52,7 +54,6 @@ class Node extends libp2p { } }, EXPERIMENTAL: { - dht: false, pubsub: false } } diff --git a/src/core/runtime/libp2p-nodejs.js b/src/core/runtime/libp2p-nodejs.js index df50ec984d..cb34ee926a 100644 --- a/src/core/runtime/libp2p-nodejs.js +++ b/src/core/runtime/libp2p-nodejs.js @@ -56,7 +56,6 @@ class Node extends libp2p { kBucketSize: 20 }, EXPERIMENTAL: { - dht: false, pubsub: false } } diff --git a/test/core/libp2p.spec.js b/test/core/libp2p.spec.js index bd02fd29ec..35c1058f96 100644 --- a/test/core/libp2p.spec.js +++ b/test/core/libp2p.spec.js @@ -13,6 +13,7 @@ const PeerBook = require('peer-book') const WebSocketStar = require('libp2p-websocket-star') const Multiplex = require('libp2p-mplex') const SECIO = require('libp2p-secio') +const KadDHT = require('libp2p-kad-dht') const Libp2p = require('libp2p') const libp2pComponent = require('../../src/core/components/libp2p') @@ -43,7 +44,6 @@ describe('libp2p customization', function () { } }, EXPERIMENTAL: { - dht: false, pubsub: false } } @@ -92,7 +92,8 @@ describe('libp2p customization', function () { ], peerDiscovery: [ wsstar.discovery - ] + ], + dht: KadDHT } }) } @@ -142,7 +143,6 @@ describe('libp2p customization', function () { } }, EXPERIMENTAL: { - dht: false, pubsub: false } }) @@ -170,7 +170,6 @@ describe('libp2p customization', function () { } }, EXPERIMENTAL: { - dht: false, pubsub: true }, libp2p: { @@ -207,7 +206,6 @@ describe('libp2p customization', function () { } }, EXPERIMENTAL: { - dht: false, pubsub: true } })