libp2p 0.37.2 → 0.37.3-3c0fb13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/README.md +1 -2
  2. package/dist/src/address-manager/index.d.ts +2 -2
  3. package/dist/src/address-manager/index.d.ts.map +1 -1
  4. package/dist/src/circuit/auto-relay.d.ts +4 -4
  5. package/dist/src/circuit/auto-relay.d.ts.map +1 -1
  6. package/dist/src/circuit/circuit/hop.d.ts +5 -4
  7. package/dist/src/circuit/circuit/hop.d.ts.map +1 -1
  8. package/dist/src/circuit/circuit/hop.js +8 -4
  9. package/dist/src/circuit/circuit/hop.js.map +1 -1
  10. package/dist/src/circuit/circuit/stop.d.ts +3 -2
  11. package/dist/src/circuit/circuit/stop.d.ts.map +1 -1
  12. package/dist/src/circuit/circuit/stop.js +4 -2
  13. package/dist/src/circuit/circuit/stop.js.map +1 -1
  14. package/dist/src/circuit/circuit/stream-handler.d.ts +1 -1
  15. package/dist/src/circuit/circuit/stream-handler.d.ts.map +1 -1
  16. package/dist/src/circuit/index.d.ts +4 -12
  17. package/dist/src/circuit/index.d.ts.map +1 -1
  18. package/dist/src/circuit/index.js.map +1 -1
  19. package/dist/src/circuit/listener.d.ts +3 -3
  20. package/dist/src/circuit/listener.d.ts.map +1 -1
  21. package/dist/src/circuit/transport.d.ts +8 -5
  22. package/dist/src/circuit/transport.d.ts.map +1 -1
  23. package/dist/src/circuit/transport.js +81 -59
  24. package/dist/src/circuit/transport.js.map +1 -1
  25. package/dist/src/config.d.ts.map +1 -1
  26. package/dist/src/config.js +27 -4
  27. package/dist/src/config.js.map +1 -1
  28. package/dist/src/connection-manager/auto-dialler.d.ts +1 -1
  29. package/dist/src/connection-manager/auto-dialler.d.ts.map +1 -1
  30. package/dist/src/connection-manager/dialer/auto-dialer.d.ts +2 -2
  31. package/dist/src/connection-manager/dialer/auto-dialer.d.ts.map +1 -1
  32. package/dist/src/connection-manager/dialer/auto-dialer.js +6 -0
  33. package/dist/src/connection-manager/dialer/auto-dialer.js.map +1 -1
  34. package/dist/src/connection-manager/dialer/dial-request.d.ts +1 -1
  35. package/dist/src/connection-manager/dialer/dial-request.d.ts.map +1 -1
  36. package/dist/src/connection-manager/dialer/index.d.ts +9 -9
  37. package/dist/src/connection-manager/dialer/index.d.ts.map +1 -1
  38. package/dist/src/connection-manager/dialer/index.js +11 -11
  39. package/dist/src/connection-manager/dialer/index.js.map +1 -1
  40. package/dist/src/connection-manager/index.d.ts +24 -20
  41. package/dist/src/connection-manager/index.d.ts.map +1 -1
  42. package/dist/src/connection-manager/index.js +209 -82
  43. package/dist/src/connection-manager/index.js.map +1 -1
  44. package/dist/src/constants.d.ts +4 -0
  45. package/dist/src/constants.d.ts.map +1 -1
  46. package/dist/src/constants.js +4 -0
  47. package/dist/src/constants.js.map +1 -1
  48. package/dist/src/content-routing/index.d.ts +4 -4
  49. package/dist/src/content-routing/index.d.ts.map +1 -1
  50. package/dist/src/content-routing/utils.d.ts +2 -2
  51. package/dist/src/content-routing/utils.d.ts.map +1 -1
  52. package/dist/src/dht/dht-content-routing.d.ts +3 -3
  53. package/dist/src/dht/dht-content-routing.d.ts.map +1 -1
  54. package/dist/src/dht/dht-peer-routing.d.ts +5 -5
  55. package/dist/src/dht/dht-peer-routing.d.ts.map +1 -1
  56. package/dist/src/dht/dummy-dht.d.ts +3 -3
  57. package/dist/src/dht/dummy-dht.d.ts.map +1 -1
  58. package/dist/src/dht/dummy-dht.js +1 -1
  59. package/dist/src/dht/dummy-dht.js.map +1 -1
  60. package/dist/src/errors.d.ts +4 -1
  61. package/dist/src/errors.d.ts.map +1 -1
  62. package/dist/src/errors.js +3 -0
  63. package/dist/src/errors.js.map +1 -1
  64. package/dist/src/fetch/index.d.ts +11 -4
  65. package/dist/src/fetch/index.d.ts.map +1 -1
  66. package/dist/src/fetch/index.js +82 -41
  67. package/dist/src/fetch/index.js.map +1 -1
  68. package/dist/src/get-peer.d.ts +2 -2
  69. package/dist/src/get-peer.d.ts.map +1 -1
  70. package/dist/src/get-peer.js +1 -1
  71. package/dist/src/get-peer.js.map +1 -1
  72. package/dist/src/identify/index.d.ts +8 -8
  73. package/dist/src/identify/index.d.ts.map +1 -1
  74. package/dist/src/identify/index.js +48 -33
  75. package/dist/src/identify/index.js.map +1 -1
  76. package/dist/src/index.d.ts +18 -17
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/index.js.map +1 -1
  79. package/dist/src/insecure/index.d.ts +2 -2
  80. package/dist/src/insecure/index.d.ts.map +1 -1
  81. package/dist/src/insecure/index.js +1 -1
  82. package/dist/src/insecure/index.js.map +1 -1
  83. package/dist/src/keychain/index.d.ts +2 -2
  84. package/dist/src/keychain/index.d.ts.map +1 -1
  85. package/dist/src/libp2p.d.ts +14 -14
  86. package/dist/src/libp2p.d.ts.map +1 -1
  87. package/dist/src/libp2p.js +17 -17
  88. package/dist/src/libp2p.js.map +1 -1
  89. package/dist/src/metrics/index.d.ts +3 -3
  90. package/dist/src/metrics/index.d.ts.map +1 -1
  91. package/dist/src/metrics/index.js +6 -2
  92. package/dist/src/metrics/index.js.map +1 -1
  93. package/dist/src/metrics/moving-average.d.ts +1 -1
  94. package/dist/src/metrics/moving-average.d.ts.map +1 -1
  95. package/dist/src/metrics/stats.d.ts +1 -1
  96. package/dist/src/metrics/stats.d.ts.map +1 -1
  97. package/dist/src/nat-manager.d.ts +1 -1
  98. package/dist/src/nat-manager.d.ts.map +1 -1
  99. package/dist/src/peer-record-updater.d.ts +1 -1
  100. package/dist/src/peer-record-updater.d.ts.map +1 -1
  101. package/dist/src/peer-routing.d.ts +4 -4
  102. package/dist/src/peer-routing.d.ts.map +1 -1
  103. package/dist/src/ping/index.d.ts +10 -3
  104. package/dist/src/ping/index.d.ts.map +1 -1
  105. package/dist/src/ping/index.js +31 -8
  106. package/dist/src/ping/index.js.map +1 -1
  107. package/dist/src/pnet/index.d.ts +1 -2
  108. package/dist/src/pnet/index.d.ts.map +1 -1
  109. package/dist/src/pnet/index.js.map +1 -1
  110. package/dist/src/pubsub/dummy-pubsub.d.ts +2 -2
  111. package/dist/src/pubsub/dummy-pubsub.d.ts.map +1 -1
  112. package/dist/src/registrar.d.ts +10 -8
  113. package/dist/src/registrar.d.ts.map +1 -1
  114. package/dist/src/registrar.js +63 -44
  115. package/dist/src/registrar.js.map +1 -1
  116. package/dist/src/transport-manager.d.ts +3 -3
  117. package/dist/src/transport-manager.d.ts.map +1 -1
  118. package/dist/src/upgrader.d.ts +12 -6
  119. package/dist/src/upgrader.d.ts.map +1 -1
  120. package/dist/src/upgrader.js +164 -65
  121. package/dist/src/upgrader.js.map +1 -1
  122. package/dist/src/version.d.ts.map +1 -1
  123. package/dist/src/version.js.map +1 -1
  124. package/package.json +56 -32
  125. package/src/address-manager/index.ts +2 -2
  126. package/src/circuit/auto-relay.ts +4 -4
  127. package/src/circuit/circuit/hop.ts +15 -8
  128. package/src/circuit/circuit/stop.ts +8 -4
  129. package/src/circuit/circuit/stream-handler.ts +1 -1
  130. package/src/circuit/index.ts +4 -13
  131. package/src/circuit/listener.ts +3 -3
  132. package/src/circuit/transport.ts +90 -63
  133. package/src/config.ts +27 -4
  134. package/src/connection-manager/auto-dialler.ts +1 -1
  135. package/src/connection-manager/dialer/auto-dialer.ts +8 -2
  136. package/src/connection-manager/dialer/dial-request.ts +1 -1
  137. package/src/connection-manager/dialer/index.ts +15 -15
  138. package/src/connection-manager/index.ts +267 -97
  139. package/src/constants.ts +5 -0
  140. package/src/content-routing/index.ts +2 -2
  141. package/src/content-routing/utils.ts +2 -2
  142. package/src/dht/dht-content-routing.ts +2 -2
  143. package/src/dht/dht-peer-routing.ts +3 -3
  144. package/src/dht/dummy-dht.ts +3 -3
  145. package/src/errors.ts +4 -1
  146. package/src/fetch/index.ts +120 -53
  147. package/src/get-peer.ts +3 -3
  148. package/src/identify/index.ts +60 -42
  149. package/src/index.ts +18 -17
  150. package/src/insecure/index.ts +3 -3
  151. package/src/keychain/index.ts +2 -2
  152. package/src/libp2p.ts +34 -29
  153. package/src/metrics/index.ts +9 -5
  154. package/src/metrics/moving-average.ts +1 -1
  155. package/src/metrics/stats.ts +1 -1
  156. package/src/nat-manager.ts +1 -1
  157. package/src/peer-record-updater.ts +1 -1
  158. package/src/peer-routing.ts +4 -4
  159. package/src/ping/index.ts +47 -14
  160. package/src/pnet/index.ts +1 -2
  161. package/src/pubsub/dummy-pubsub.ts +2 -2
  162. package/src/registrar.ts +79 -55
  163. package/src/transport-manager.ts +3 -3
  164. package/src/upgrader.ts +204 -76
  165. package/src/version.ts +1 -2
@@ -5,13 +5,15 @@ import { LatencyMonitor } from './latency-monitor.js';
5
5
  // @ts-expect-error retimer does not have types
6
6
  import retimer from 'retimer';
7
7
  import { CustomEvent, EventEmitter } from '@libp2p/interfaces/events';
8
- import { trackedMap } from '@libp2p/tracked-map';
9
8
  import { codes } from '../errors.js';
10
- import { isPeerId } from '@libp2p/interfaces/peer-id';
9
+ import { isPeerId } from '@libp2p/interface-peer-id';
11
10
  import { setMaxListeners } from 'events';
12
- import { Components } from '@libp2p/interfaces/components';
13
- import * as STATUS from '@libp2p/interfaces/connection/status';
11
+ import { Components } from '@libp2p/components';
12
+ import * as STATUS from '@libp2p/interface-connection/status';
14
13
  import { Dialer } from './dialer/index.js';
14
+ import { PeerMap } from '@libp2p/peer-collections';
15
+ import { TimeoutController } from 'timeout-abort-controller';
16
+ import { KEEP_ALIVE } from '@libp2p/interface-peer-store/tags';
15
17
  const log = logger('libp2p:connection-manager');
16
18
  const defaultOptions = {
17
19
  maxConnections: Infinity,
@@ -22,12 +24,11 @@ const defaultOptions = {
22
24
  maxEventLoopDelay: Infinity,
23
25
  pollInterval: 2000,
24
26
  autoDialInterval: 10000,
25
- movingAverageInterval: 60000,
26
- defaultPeerValue: 1
27
+ movingAverageInterval: 60000
27
28
  };
29
+ const METRICS_SYSTEM = 'libp2p';
28
30
  const METRICS_COMPONENT = 'connection-manager';
29
- const METRICS_PEER_CONNECTIONS = 'peer-connections';
30
- const METRICS_PEER_VALUES = 'peer-values';
31
+ const STARTUP_RECONNECT_TIMEOUT = 60000;
31
32
  /**
32
33
  * Responsible for managing known connections.
33
34
  */
@@ -40,24 +41,10 @@ export class DefaultConnectionManager extends EventEmitter {
40
41
  throw errCode(new Error('Connection Manager maxConnections must be greater than minConnections'), codes.ERR_INVALID_PARAMETERS);
41
42
  }
42
43
  log('options: %o', this.opts);
43
- /**
44
- * Map of peer identifiers to their peer value for pruning connections.
45
- *
46
- * @type {Map<string, number>}
47
- */
48
- this.peerValues = trackedMap({
49
- component: METRICS_COMPONENT,
50
- metric: METRICS_PEER_VALUES,
51
- metrics: this.components.getMetrics()
52
- });
53
44
  /**
54
45
  * Map of connections per peer
55
46
  */
56
- this.connections = trackedMap({
57
- component: METRICS_COMPONENT,
58
- metric: METRICS_PEER_CONNECTIONS,
59
- metrics: this.components.getMetrics()
60
- });
47
+ this.connections = new Map();
61
48
  this.started = false;
62
49
  this._checkMetrics = this._checkMetrics.bind(this);
63
50
  this.latencyMonitor = new LatencyMonitor({
@@ -72,10 +59,85 @@ export class DefaultConnectionManager extends EventEmitter {
72
59
  this.dialer = new Dialer(this.opts);
73
60
  this.onConnect = this.onConnect.bind(this);
74
61
  this.onDisconnect = this.onDisconnect.bind(this);
62
+ this.startupReconnectTimeout = init.startupReconnectTimeout ?? STARTUP_RECONNECT_TIMEOUT;
63
+ this.dialTimeout = init.dialTimeout ?? 30000;
75
64
  }
76
65
  init(components) {
77
66
  this.components = components;
78
67
  this.dialer.init(components);
68
+ // track inbound/outbound connections
69
+ this.components.getMetrics()?.updateComponentMetric({
70
+ system: METRICS_SYSTEM,
71
+ component: METRICS_COMPONENT,
72
+ metric: 'connections',
73
+ label: 'direction',
74
+ value: () => {
75
+ const metric = {
76
+ inbound: 0,
77
+ outbound: 0
78
+ };
79
+ for (const conns of this.connections.values()) {
80
+ for (const conn of conns) {
81
+ if (conn.stat.direction === 'inbound') {
82
+ metric.inbound++;
83
+ }
84
+ else {
85
+ metric.outbound++;
86
+ }
87
+ }
88
+ }
89
+ return metric;
90
+ }
91
+ });
92
+ // track total number of streams per protocol
93
+ this.components.getMetrics()?.updateComponentMetric({
94
+ system: METRICS_SYSTEM,
95
+ component: METRICS_COMPONENT,
96
+ metric: 'protocol-streams-total',
97
+ label: 'protocol',
98
+ value: () => {
99
+ const metric = {};
100
+ for (const conns of this.connections.values()) {
101
+ for (const conn of conns) {
102
+ for (const stream of conn.streams) {
103
+ const key = `${stream.stat.direction} ${stream.stat.protocol ?? 'unnegotiated'}`;
104
+ metric[key] = (metric[key] ?? 0) + 1;
105
+ }
106
+ }
107
+ }
108
+ return metric;
109
+ }
110
+ });
111
+ // track 90th percentile of streams per protocol
112
+ this.components.getMetrics()?.updateComponentMetric({
113
+ system: METRICS_SYSTEM,
114
+ component: METRICS_COMPONENT,
115
+ metric: 'protocol-streams-per-connection-90th-percentile',
116
+ label: 'protocol',
117
+ value: () => {
118
+ const allStreams = {};
119
+ for (const conns of this.connections.values()) {
120
+ for (const conn of conns) {
121
+ const streams = {};
122
+ for (const stream of conn.streams) {
123
+ const key = `${stream.stat.direction} ${stream.stat.protocol ?? 'unnegotiated'}`;
124
+ streams[key] = (streams[key] ?? 0) + 1;
125
+ }
126
+ for (const [protocol, count] of Object.entries(streams)) {
127
+ allStreams[protocol] = allStreams[protocol] ?? [];
128
+ allStreams[protocol].push(count);
129
+ }
130
+ }
131
+ }
132
+ const metric = {};
133
+ for (let [protocol, counts] of Object.entries(allStreams)) {
134
+ counts = counts.sort((a, b) => a - b);
135
+ const index = Math.floor(counts.length * 0.9);
136
+ metric[protocol] = counts[index];
137
+ }
138
+ return metric;
139
+ }
140
+ });
79
141
  }
80
142
  isStarted() {
81
143
  return this.started;
@@ -99,8 +161,40 @@ export class DefaultConnectionManager extends EventEmitter {
99
161
  async afterStart() {
100
162
  this.components.getUpgrader().addEventListener('connection', this.onConnect);
101
163
  this.components.getUpgrader().addEventListener('connectionEnd', this.onDisconnect);
164
+ // re-connect to any peers with the KEEP_ALIVE tag
165
+ void Promise.resolve()
166
+ .then(async () => {
167
+ const keepAlivePeers = [];
168
+ for (const peer of await this.components.getPeerStore().all()) {
169
+ const tags = await this.components.getPeerStore().getTags(peer.id);
170
+ const hasKeepAlive = tags.filter(tag => tag.name === KEEP_ALIVE).length > 0;
171
+ if (hasKeepAlive) {
172
+ keepAlivePeers.push(peer.id);
173
+ }
174
+ }
175
+ this.connectOnStartupController?.clear();
176
+ this.connectOnStartupController = new TimeoutController(this.startupReconnectTimeout);
177
+ try {
178
+ // fails on node < 15.4
179
+ setMaxListeners?.(Infinity, this.connectOnStartupController.signal);
180
+ }
181
+ catch { }
182
+ await Promise.all(keepAlivePeers.map(async (peer) => {
183
+ await this.openConnection(peer, {
184
+ signal: this.connectOnStartupController?.signal
185
+ })
186
+ .catch(err => {
187
+ log.error(err);
188
+ });
189
+ }));
190
+ })
191
+ .finally(() => {
192
+ this.connectOnStartupController?.clear();
193
+ });
102
194
  }
103
195
  async beforeStop() {
196
+ // if we are still dialing KEEP_ALIVE peers, abort those dials
197
+ this.connectOnStartupController?.abort();
104
198
  this.components.getUpgrader().removeEventListener('connection', this.onConnect);
105
199
  this.components.getUpgrader().removeEventListener('connectionEnd', this.onDisconnect);
106
200
  }
@@ -138,16 +232,6 @@ export class DefaultConnectionManager extends EventEmitter {
138
232
  await Promise.all(tasks);
139
233
  this.connections.clear();
140
234
  }
141
- /**
142
- * Sets the value of the given peer. Peers with lower values
143
- * will be disconnected first.
144
- */
145
- setPeerValue(peerId, value) {
146
- if (value < 0 || value > 1) {
147
- throw new Error('value should be a number between 0 and 1');
148
- }
149
- this.peerValues.set(peerId.toString(), value);
150
- }
151
235
  /**
152
236
  * Checks the libp2p metrics to determine if any values have exceeded
153
237
  * the configured maximums.
@@ -199,10 +283,9 @@ export class DefaultConnectionManager extends EventEmitter {
199
283
  if (peerId.publicKey != null) {
200
284
  await this.components.getPeerStore().keyBook.set(peerId, peerId.publicKey);
201
285
  }
202
- if (!this.peerValues.has(peerIdStr)) {
203
- this.peerValues.set(peerIdStr, this.opts.defaultPeerValue);
204
- }
205
- await this._checkMaxLimit('maxConnections', this.getConnections().length);
286
+ const numConnections = this.getConnections().length;
287
+ const toPrune = numConnections - this.opts.maxConnections;
288
+ await this._checkMaxLimit('maxConnections', numConnections, toPrune);
206
289
  this.dispatchEvent(new CustomEvent('peer:connect', { detail: connection }));
207
290
  }
208
291
  /**
@@ -222,7 +305,6 @@ export class DefaultConnectionManager extends EventEmitter {
222
305
  }
223
306
  else if (storedConn != null) {
224
307
  this.connections.delete(peerId);
225
- this.peerValues.delete(connection.remotePeer.toString());
226
308
  this.dispatchEvent(new CustomEvent('peer:disconnect', { detail: connection }));
227
309
  this.components.getMetrics()?.onPeerDisconnected(connection.remotePeer);
228
310
  }
@@ -237,32 +319,49 @@ export class DefaultConnectionManager extends EventEmitter {
237
319
  }
238
320
  return conns;
239
321
  }
240
- async openConnection(peerId, options) {
322
+ async openConnection(peerId, options = {}) {
241
323
  log('dial to %p', peerId);
242
324
  const existingConnections = this.getConnections(peerId);
243
325
  if (existingConnections.length > 0) {
244
326
  log('had an existing connection to %p', peerId);
245
327
  return existingConnections[0];
246
328
  }
247
- const connection = await this.dialer.dial(peerId, options);
248
- let peerConnections = this.connections.get(peerId.toString());
249
- if (peerConnections == null) {
250
- peerConnections = [];
251
- this.connections.set(peerId.toString(), peerConnections);
329
+ let timeoutController;
330
+ if (options?.signal == null) {
331
+ timeoutController = new TimeoutController(this.dialTimeout);
332
+ options.signal = timeoutController.signal;
333
+ try {
334
+ // fails on node < 15.4
335
+ setMaxListeners?.(Infinity, timeoutController.signal);
336
+ }
337
+ catch { }
252
338
  }
253
- // we get notified of connections via the Upgrader emitting "connection"
254
- // events, double check we aren't already tracking this connection before
255
- // storing it
256
- let trackedConnection = false;
257
- for (const conn of peerConnections) {
258
- if (conn.id === connection.id) {
259
- trackedConnection = true;
339
+ try {
340
+ const connection = await this.dialer.dial(peerId, options);
341
+ let peerConnections = this.connections.get(peerId.toString());
342
+ if (peerConnections == null) {
343
+ peerConnections = [];
344
+ this.connections.set(peerId.toString(), peerConnections);
345
+ }
346
+ // we get notified of connections via the Upgrader emitting "connection"
347
+ // events, double check we aren't already tracking this connection before
348
+ // storing it
349
+ let trackedConnection = false;
350
+ for (const conn of peerConnections) {
351
+ if (conn.id === connection.id) {
352
+ trackedConnection = true;
353
+ }
354
+ }
355
+ if (!trackedConnection) {
356
+ peerConnections.push(connection);
260
357
  }
358
+ return connection;
261
359
  }
262
- if (!trackedConnection) {
263
- peerConnections.push(connection);
360
+ finally {
361
+ if (timeoutController != null) {
362
+ timeoutController.clear();
363
+ }
264
364
  }
265
- return connection;
266
365
  }
267
366
  async closeConnections(peerId) {
268
367
  const connections = this.connections.get(peerId.toString()) ?? [];
@@ -290,7 +389,7 @@ export class DefaultConnectionManager extends EventEmitter {
290
389
  */
291
390
  _onLatencyMeasure(evt) {
292
391
  const { detail: summary } = evt;
293
- this._checkMaxLimit('maxEventLoopDelay', summary.avgMs)
392
+ this._checkMaxLimit('maxEventLoopDelay', summary.avgMs, 1)
294
393
  .catch(err => {
295
394
  log.error(err);
296
395
  });
@@ -298,42 +397,70 @@ export class DefaultConnectionManager extends EventEmitter {
298
397
  /**
299
398
  * If the `value` of `name` has exceeded its limit, maybe close a connection
300
399
  */
301
- async _checkMaxLimit(name, value) {
400
+ async _checkMaxLimit(name, value, toPrune = 1) {
302
401
  const limit = this.opts[name];
303
402
  log.trace('checking limit of %s. current value: %d of %d', name, value, limit);
304
403
  if (value > limit) {
305
- log('%s: limit exceeded: %p, %d', this.components.getPeerId(), name, value);
306
- await this._maybeDisconnectOne();
404
+ log('%s: limit exceeded: %p, %d/%d, pruning %d connection(s)', this.components.getPeerId(), name, value, limit, toPrune);
405
+ await this._maybePruneConnections(toPrune);
307
406
  }
308
407
  }
309
408
  /**
310
- * If we have more connections than our maximum, close a connection
311
- * to the lowest valued peer.
409
+ * If we have more connections than our maximum, select some excess connections
410
+ * to prune based on peer value
312
411
  */
313
- async _maybeDisconnectOne() {
314
- if (this.opts.minConnections < this.connections.size) {
315
- const peerValues = Array.from(new Map([...this.peerValues.entries()].sort((a, b) => a[1] - b[1])));
316
- log('%p: sorted peer values: %j', this.components.getPeerId(), peerValues);
317
- const disconnectPeer = peerValues[0];
318
- if (disconnectPeer != null) {
319
- const peerId = disconnectPeer[0];
320
- log('%p: lowest value peer is %s', this.components.getPeerId(), peerId);
321
- log('%p: closing a connection to %j', this.components.getPeerId(), peerId);
322
- for (const connections of this.connections.values()) {
323
- if (connections[0].remotePeer.toString() === peerId) {
324
- void connections[0].close()
325
- .catch(err => {
326
- log.error(err);
327
- });
328
- // TODO: should not need to invoke this manually
329
- this.onDisconnect(new CustomEvent('connectionEnd', {
330
- detail: connections[0]
331
- }));
332
- break;
333
- }
334
- }
412
+ async _maybePruneConnections(toPrune) {
413
+ const connections = this.getConnections();
414
+ if (connections.length <= this.opts.minConnections || toPrune < 1) {
415
+ return;
416
+ }
417
+ const peerValues = new PeerMap();
418
+ // work out peer values
419
+ for (const connection of connections) {
420
+ const remotePeer = connection.remotePeer;
421
+ if (peerValues.has(remotePeer)) {
422
+ continue;
335
423
  }
424
+ const tags = await this.components.getPeerStore().getTags(remotePeer);
425
+ // sum all tag values
426
+ peerValues.set(remotePeer, tags.reduce((acc, curr) => {
427
+ return acc + curr.value;
428
+ }, 0));
336
429
  }
430
+ // sort by value, lowest to highest
431
+ const sortedConnections = connections.sort((a, b) => {
432
+ const peerAValue = peerValues.get(a.remotePeer) ?? 0;
433
+ const peerBValue = peerValues.get(b.remotePeer) ?? 0;
434
+ if (peerAValue > peerBValue) {
435
+ return 1;
436
+ }
437
+ if (peerAValue < peerBValue) {
438
+ return -1;
439
+ }
440
+ return 0;
441
+ });
442
+ // close some connections
443
+ const toClose = [];
444
+ for (const connection of sortedConnections) {
445
+ log('too many connections open - closing a connection to %p', connection.remotePeer);
446
+ toClose.push(connection);
447
+ if (toClose.length === toPrune) {
448
+ break;
449
+ }
450
+ }
451
+ // close connections
452
+ await Promise.all(toClose.map(async (connection) => {
453
+ try {
454
+ await connection.close();
455
+ }
456
+ catch (err) {
457
+ log.error(err);
458
+ }
459
+ // TODO: should not need to invoke this manually
460
+ this.onDisconnect(new CustomEvent('connectionEnd', {
461
+ detail: connection
462
+ }));
463
+ }));
337
464
  }
338
465
  }
339
466
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection-manager/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/connection-manager/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,10 @@
2
2
  * How long in ms a dial attempt is allowed to take
3
3
  */
4
4
  export declare const DIAL_TIMEOUT = 30000;
5
+ /**
6
+ * How long in ms an inbound connection upgrade is allowed to take
7
+ */
8
+ export declare const INBOUND_UPGRADE_TIMEOUT = 30000;
5
9
  /**
6
10
  * Maximum allowed concurrent dials
7
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,CAAA;AAEhC;;GAEG;AACH,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC;;GAEG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAA;AAEnC,eAAO,MAAM,OAAO;;;;;CASnB,CAAA"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,CAAA;AAEhC;;GAEG;AACH,eAAO,MAAM,uBAAuB,QAAO,CAAA;AAE3C;;GAEG;AACH,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC;;GAEG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAA;AAEnC;;GAEG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAA;AAEnC,eAAO,MAAM,OAAO;;;;;CASnB,CAAA"}
@@ -2,6 +2,10 @@
2
2
  * How long in ms a dial attempt is allowed to take
3
3
  */
4
4
  export const DIAL_TIMEOUT = 30e3;
5
+ /**
6
+ * How long in ms an inbound connection upgrade is allowed to take
7
+ */
8
+ export const INBOUND_UPGRADE_TIMEOUT = 30e3;
5
9
  /**
6
10
  * Maximum allowed concurrent dials
7
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAA;AAEhC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAA;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAEnC;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAEnC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,2BAA2B,EAAE,IAAI;IACjC,sBAAsB,EAAE,IAAI;IAC5B,sBAAsB,EAAE;QACtB,EAAE,GAAG,IAAI;QACT,CAAC,GAAG,EAAE,GAAG,IAAI;QACb,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa;KAC7B;IACD,oBAAoB,EAAE,EAAE;CACzB,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAA;AAEhC;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAA;AAErC;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAA;AAEnC;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAA;AAEnC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,2BAA2B,EAAE,IAAI;IACjC,sBAAsB,EAAE,IAAI;IAC5B,sBAAsB,EAAE;QACtB,EAAE,GAAG,IAAI;QACT,CAAC,GAAG,EAAE,GAAG,IAAI;QACb,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa;KAC7B;IACD,oBAAoB,EAAE,EAAE;CACzB,CAAA"}
@@ -1,8 +1,8 @@
1
- import type { ContentRouting } from '@libp2p/interfaces/content-routing';
1
+ import type { ContentRouting } from '@libp2p/interface-content-routing';
2
2
  import type { AbortOptions } from '@libp2p/interfaces';
3
3
  import type { Startable } from '@libp2p/interfaces/startable';
4
4
  import type { CID } from 'multiformats/cid';
5
- import type { Components } from '@libp2p/interfaces/components';
5
+ import type { Components } from '@libp2p/components';
6
6
  export interface CompoundContentRoutingInit {
7
7
  routers: ContentRouting[];
8
8
  }
@@ -17,7 +17,7 @@ export declare class CompoundContentRouting implements ContentRouting, Startable
17
17
  /**
18
18
  * Iterates over all content routers in parallel to find providers of the given key
19
19
  */
20
- findProviders(key: CID, options?: AbortOptions): AsyncGenerator<import("@libp2p/interfaces/dist/src/peer-info").PeerInfo, void, unknown>;
20
+ findProviders(key: CID, options?: AbortOptions): AsyncGenerator<import("@libp2p/interface-peer-info").PeerInfo, void, unknown>;
21
21
  /**
22
22
  * Iterates over all content routers in parallel to notify it is
23
23
  * a provider of the given key
@@ -36,7 +36,7 @@ export declare class CompoundContentRouting implements ContentRouting, Startable
36
36
  * Get the `n` values to the given key without sorting
37
37
  */
38
38
  getMany(key: Uint8Array, nVals: number, options: AbortOptions): AsyncGenerator<{
39
- from: import("@libp2p/interfaces/dist/src/peer-id").PeerId;
39
+ from: import("@libp2p/interface-peer-id").PeerId;
40
40
  val: Uint8Array;
41
41
  }, void, unknown>;
42
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/content-routing/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,cAAc,EAAE,CAAA;CAC1B;AAED,qBAAa,sBAAuB,YAAW,cAAc,EAAE,SAAS;IACtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;gBAE1B,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,0BAA0B;IAMrE,SAAS;IAIH,KAAK;IAIL,IAAI;IAIV;;OAEG;IACK,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAe3D;;;OAGG;IACG,OAAO,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAQnD;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY;IAYrE;;;OAGG;IACG,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAkBxE;;OAEG;IACK,OAAO,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;;;;CA8BvE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/content-routing/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAC7D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,cAAc,EAAE,CAAA;CAC1B;AAED,qBAAa,sBAAuB,YAAW,cAAc,EAAE,SAAS;IACtE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;gBAE1B,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,0BAA0B;IAMrE,SAAS;IAIH,KAAK;IAIL,IAAI;IAIV;;OAEG;IACK,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAe3D;;;OAGG;IACG,OAAO,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAQnD;;OAEG;IACG,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY;IAYrE;;;OAGG;IACG,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;IAkBxE;;OAEG;IACK,OAAO,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;;;;CA8BvE"}
@@ -1,6 +1,6 @@
1
1
  import type { Source } from 'it-stream-types';
2
- import type { PeerInfo } from '@libp2p/interfaces/peer-info';
3
- import type { PeerStore } from '@libp2p/interfaces/peer-store';
2
+ import type { PeerInfo } from '@libp2p/interface-peer-info';
3
+ import type { PeerStore } from '@libp2p/interface-peer-store';
4
4
  /**
5
5
  * Store the multiaddrs from every peer in the passed peer store
6
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/content-routing/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAA;AAE9D;;GAEG;AACH,wBAAwB,cAAc,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,6CAOrF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,2CAcpD;AAED;;GAEG;AACH,wBAAwB,YAAY,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,GAAE,MAAU,2CAY9E"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/content-routing/utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAE7D;;GAEG;AACH,wBAAwB,cAAc,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,6CAOrF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,2CAcpD;AAED;;GAEG;AACH,wBAAwB,YAAY,CAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,GAAE,MAAU,2CAY9E"}
@@ -1,5 +1,5 @@
1
- import type { DHT } from '@libp2p/interfaces/dht';
2
- import type { ContentRouting } from '@libp2p/interfaces/content-routing';
1
+ import type { DHT } from '@libp2p/interface-dht';
2
+ import type { ContentRouting } from '@libp2p/interface-content-routing';
3
3
  import type { CID } from 'multiformats/cid';
4
4
  import type { AbortOptions } from '@libp2p/interfaces';
5
5
  /**
@@ -9,7 +9,7 @@ export declare class DHTContentRouting implements ContentRouting {
9
9
  private readonly dht;
10
10
  constructor(dht: DHT);
11
11
  provide(cid: CID): Promise<void>;
12
- findProviders(cid: CID, options?: AbortOptions): AsyncGenerator<import("@libp2p/interfaces/dist/src/peer-info").PeerInfo, void, undefined>;
12
+ findProviders(cid: CID, options?: AbortOptions): AsyncGenerator<import("@libp2p/interface-peer-info").PeerInfo, void, undefined>;
13
13
  put(key: Uint8Array, value: Uint8Array, options?: AbortOptions): Promise<void>;
14
14
  get(key: Uint8Array, options?: AbortOptions): Promise<Uint8Array>;
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dht-content-routing.d.ts","sourceRoot":"","sources":["../../../src/dht/dht-content-routing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;gBAEZ,GAAG,EAAE,GAAG;IAIf,OAAO,CAAE,GAAG,EAAE,GAAG;IAIf,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAQrD,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/E,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;CASzE"}
1
+ {"version":3,"file":"dht-content-routing.d.ts","sourceRoot":"","sources":["../../../src/dht/dht-content-routing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AACvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;GAEG;AACH,qBAAa,iBAAkB,YAAW,cAAc;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;gBAEZ,GAAG,EAAE,GAAG;IAIf,OAAO,CAAE,GAAG,EAAE,GAAG;IAIf,aAAa,CAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAQrD,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/E,GAAG,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC;CASzE"}
@@ -1,6 +1,6 @@
1
- import type { PeerRouting } from '@libp2p/interfaces/peer-routing';
2
- import type { DHT } from '@libp2p/interfaces/dht';
3
- import type { PeerId } from '@libp2p/interfaces/peer-id';
1
+ import type { PeerRouting } from '@libp2p/interface-peer-routing';
2
+ import type { DHT } from '@libp2p/interface-dht';
3
+ import type { PeerId } from '@libp2p/interface-peer-id';
4
4
  import type { AbortOptions } from '@libp2p/interfaces';
5
5
  /**
6
6
  * Wrapper class to convert events into returned values
@@ -8,7 +8,7 @@ import type { AbortOptions } from '@libp2p/interfaces';
8
8
  export declare class DHTPeerRouting implements PeerRouting {
9
9
  private readonly dht;
10
10
  constructor(dht: DHT);
11
- findPeer(peerId: PeerId, options?: AbortOptions): Promise<import("@libp2p/interfaces/dist/src/peer-info").PeerInfo>;
12
- getClosestPeers(key: Uint8Array, options?: AbortOptions): AsyncGenerator<import("@libp2p/interfaces/dist/src/peer-info").PeerInfo, void, undefined>;
11
+ findPeer(peerId: PeerId, options?: AbortOptions): Promise<import("@libp2p/interface-peer-info").PeerInfo>;
12
+ getClosestPeers(key: Uint8Array, options?: AbortOptions): AsyncGenerator<import("@libp2p/interface-peer-info").PeerInfo, void, undefined>;
13
13
  }
14
14
  //# sourceMappingURL=dht-peer-routing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dht-peer-routing.d.ts","sourceRoot":"","sources":["../../../src/dht/dht-peer-routing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;GAEG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;gBAEZ,GAAG,EAAE,GAAG;IAIf,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB;IAUlD,eAAe,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB;CAOrE"}
1
+ {"version":3,"file":"dht-peer-routing.d.ts","sourceRoot":"","sources":["../../../src/dht/dht-peer-routing.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;GAEG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAK;gBAEZ,GAAG,EAAE,GAAG;IAIf,QAAQ,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB;IAUlD,eAAe,CAAE,GAAG,EAAE,UAAU,EAAE,OAAO,GAAE,YAAiB;CAOrE"}
@@ -1,7 +1,7 @@
1
- import type { DualDHT, QueryEvent, SingleDHT } from '@libp2p/interfaces/dht';
2
- import type { PeerDiscoveryEvents } from '@libp2p/interfaces/peer-discovery';
1
+ import type { DualDHT, QueryEvent, SingleDHT } from '@libp2p/interface-dht';
2
+ import type { PeerDiscoveryEvents } from '@libp2p/interface-peer-discovery';
3
3
  import { EventEmitter } from '@libp2p/interfaces/events';
4
- import { symbol } from '@libp2p/interfaces/peer-discovery';
4
+ import { symbol } from '@libp2p/interface-peer-discovery';
5
5
  export declare class DummyDHT extends EventEmitter<PeerDiscoveryEvents> implements DualDHT {
6
6
  get [symbol](): true;
7
7
  get [Symbol.toStringTag](): string;
@@ -1 +1 @@
1
- {"version":3,"file":"dummy-dht.d.ts","sourceRoot":"","sources":["../../../src/dht/dummy-dht.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAA;AAG5E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AAE1D,qBAAa,QAAS,SAAQ,YAAY,CAAC,mBAAmB,CAAE,YAAW,OAAO;IAChF,IAAI,CAAC,MAAM,CAAC,IAAK,IAAI,CAEpB;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAEvB;IAED,IAAI,GAAG,IAAK,SAAS,CAEpB;IAED,IAAI,GAAG,IAAK,SAAS,CAEpB;IAED,GAAG,IAAK,aAAa,CAAC,UAAU,CAAC;IAIjC,aAAa,IAAK,aAAa,CAAC,UAAU,CAAC;IAI3C,QAAQ,IAAK,aAAa,CAAC,UAAU,CAAC;IAItC,eAAe,IAAK,aAAa,CAAC,UAAU,CAAC;IAI7C,OAAO,IAAK,aAAa,CAAC,UAAU,CAAC;IAIrC,GAAG,IAAK,aAAa,CAAC,UAAU,CAAC;IAI3B,OAAO,IAAK,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAIxC,OAAO,IAAK,OAAO,CAAC,IAAI,CAAC;IAIzB,mBAAmB,IAAK,OAAO,CAAC,IAAI,CAAC;CAG5C"}
1
+ {"version":3,"file":"dummy-dht.d.ts","sourceRoot":"","sources":["../../../src/dht/dummy-dht.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAA;AAEzD,qBAAa,QAAS,SAAQ,YAAY,CAAC,mBAAmB,CAAE,YAAW,OAAO;IAChF,IAAI,CAAC,MAAM,CAAC,IAAK,IAAI,CAEpB;IAED,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,WAEvB;IAED,IAAI,GAAG,IAAK,SAAS,CAEpB;IAED,IAAI,GAAG,IAAK,SAAS,CAEpB;IAED,GAAG,IAAK,aAAa,CAAC,UAAU,CAAC;IAIjC,aAAa,IAAK,aAAa,CAAC,UAAU,CAAC;IAI3C,QAAQ,IAAK,aAAa,CAAC,UAAU,CAAC;IAItC,eAAe,IAAK,aAAa,CAAC,UAAU,CAAC;IAI7C,OAAO,IAAK,aAAa,CAAC,UAAU,CAAC;IAIrC,GAAG,IAAK,aAAa,CAAC,UAAU,CAAC;IAI3B,OAAO,IAAK,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAIxC,OAAO,IAAK,OAAO,CAAC,IAAI,CAAC;IAIzB,mBAAmB,IAAK,OAAO,CAAC,IAAI,CAAC;CAG5C"}
@@ -1,7 +1,7 @@
1
1
  import errCode from 'err-code';
2
2
  import { messages, codes } from '../errors.js';
3
3
  import { EventEmitter } from '@libp2p/interfaces/events';
4
- import { symbol } from '@libp2p/interfaces/peer-discovery';
4
+ import { symbol } from '@libp2p/interface-peer-discovery';
5
5
  export class DummyDHT extends EventEmitter {
6
6
  get [symbol]() {
7
7
  return true;