diff --git a/packages/ipfs-core/src/components/libp2p.js b/packages/ipfs-core/src/components/libp2p.js
index <HASH>..<HASH> 100644
--- a/packages/ipfs-core/src/components/libp2p.js
+++ b/packages/ipfs-core/src/components/libp2p.js
@@ -129,7 +129,10 @@ function getLibp2pOptions ({ options, config, datastore, keychainConfig, peerId,
       })
     ],
     streamMuxers: [
-      new Mplex()
+      new Mplex({
+        // temporary fix until we can limit streams on a per-protocol basis
+        maxStreamsPerConnection: Infinity
+      })
     ],
     connectionEncryption: [
       NOISE
diff --git a/packages/ipfs-core/src/components/pubsub.js b/packages/ipfs-core/src/components/pubsub.js
index <HASH>..<HASH> 100644
--- a/packages/ipfs-core/src/components/pubsub.js
+++ b/packages/ipfs-core/src/components/pubsub.js
@@ -98,7 +98,7 @@ export function createPubsub ({ network, config }) {
     // no more pubsub handlers, remove message listener
     if (Object.keys(handlers).length === 0) {
       libp2p.pubsub.removeEventListener('message', onMessage)
-      onMessage = null
+      onMessage = undefined
     }
   }
fix: onMessage assignment should be undefined not null (#<I>)

Assign according to the type