@libp2p/interface 0.1.2-e9099d40 → 0.1.2-f1053159

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 (57) hide show
  1. package/dist/src/connection/index.d.ts +10 -10
  2. package/dist/src/connection/index.d.ts.map +1 -1
  3. package/dist/src/connection-encrypter/index.d.ts +2 -2
  4. package/dist/src/connection-encrypter/index.d.ts.map +1 -1
  5. package/dist/src/connection-gater/index.d.ts +12 -12
  6. package/dist/src/connection-gater/index.d.ts.map +1 -1
  7. package/dist/src/content-routing/index.d.ts +4 -4
  8. package/dist/src/content-routing/index.d.ts.map +1 -1
  9. package/dist/src/index.d.ts +13 -13
  10. package/dist/src/index.d.ts.map +1 -1
  11. package/dist/src/keychain/index.d.ts +11 -11
  12. package/dist/src/keychain/index.d.ts.map +1 -1
  13. package/dist/src/keys/index.d.ts +10 -10
  14. package/dist/src/keys/index.d.ts.map +1 -1
  15. package/dist/src/metrics/index.d.ts +16 -16
  16. package/dist/src/metrics/index.d.ts.map +1 -1
  17. package/dist/src/peer-id/index.d.ts +4 -4
  18. package/dist/src/peer-id/index.d.ts.map +1 -1
  19. package/dist/src/peer-routing/index.d.ts +2 -2
  20. package/dist/src/peer-routing/index.d.ts.map +1 -1
  21. package/dist/src/peer-store/index.d.ts +9 -9
  22. package/dist/src/peer-store/index.d.ts.map +1 -1
  23. package/dist/src/pubsub/index.d.ts +10 -10
  24. package/dist/src/pubsub/index.d.ts.map +1 -1
  25. package/dist/src/record/index.d.ts +5 -5
  26. package/dist/src/record/index.d.ts.map +1 -1
  27. package/dist/src/startable.d.ts +7 -7
  28. package/dist/src/startable.d.ts.map +1 -1
  29. package/dist/src/stream-muxer/index.d.ts +6 -6
  30. package/dist/src/stream-muxer/index.d.ts.map +1 -1
  31. package/dist/src/stream-muxer/stream.d.ts +13 -7
  32. package/dist/src/stream-muxer/stream.d.ts.map +1 -1
  33. package/dist/src/stream-muxer/stream.js +31 -19
  34. package/dist/src/stream-muxer/stream.js.map +1 -1
  35. package/dist/src/topology/index.d.ts +2 -2
  36. package/dist/src/topology/index.d.ts.map +1 -1
  37. package/dist/src/transport/index.d.ts +7 -7
  38. package/dist/src/transport/index.d.ts.map +1 -1
  39. package/package.json +6 -2
  40. package/src/connection/index.ts +10 -10
  41. package/src/connection-encrypter/index.ts +2 -2
  42. package/src/connection-gater/index.ts +12 -12
  43. package/src/content-routing/index.ts +4 -4
  44. package/src/index.ts +13 -13
  45. package/src/keychain/index.ts +11 -11
  46. package/src/keys/index.ts +10 -10
  47. package/src/metrics/index.ts +16 -16
  48. package/src/peer-id/index.ts +4 -4
  49. package/src/peer-routing/index.ts +2 -2
  50. package/src/peer-store/index.ts +9 -9
  51. package/src/pubsub/index.ts +10 -10
  52. package/src/record/index.ts +5 -5
  53. package/src/startable.ts +7 -7
  54. package/src/stream-muxer/index.ts +6 -6
  55. package/src/stream-muxer/stream.ts +52 -30
  56. package/src/topology/index.ts +2 -2
  57. package/src/transport/index.ts +7 -7
@@ -1,10 +1,12 @@
1
1
  import { abortableSource } from 'abortable-iterator';
2
2
  import { pushable } from 'it-pushable';
3
3
  import defer, {} from 'p-defer';
4
+ import { raceSignal } from 'race-signal';
4
5
  import { Uint8ArrayList } from 'uint8arraylist';
5
6
  import { CodeError } from '../errors.js';
6
7
  const ERR_STREAM_RESET = 'ERR_STREAM_RESET';
7
8
  const ERR_SINK_INVALID_STATE = 'ERR_SINK_INVALID_STATE';
9
+ const DEFAULT_SEND_CLOSE_WRITE_TIMEOUT = 5000;
8
10
  function isPromise(res) {
9
11
  return res != null && typeof res.then === 'function';
10
12
  }
@@ -27,6 +29,7 @@ export class AbstractStream {
27
29
  onCloseWrite;
28
30
  onReset;
29
31
  onAbort;
32
+ sendCloseWriteTimeout;
30
33
  log;
31
34
  constructor(init) {
32
35
  this.sinkController = new AbortController();
@@ -42,6 +45,7 @@ export class AbstractStream {
42
45
  this.timeline = {
43
46
  open: Date.now()
44
47
  };
48
+ this.sendCloseWriteTimeout = init.sendCloseWriteTimeout ?? DEFAULT_SEND_CLOSE_WRITE_TIMEOUT;
45
49
  this.onEnd = init.onEnd;
46
50
  this.onCloseRead = init?.onCloseRead;
47
51
  this.onCloseWrite = init?.onCloseWrite;
@@ -55,7 +59,6 @@ export class AbstractStream {
55
59
  else {
56
60
  this.log.trace('source ended');
57
61
  }
58
- this.readStatus = 'closed';
59
62
  this.onSourceEnd(err);
60
63
  }
61
64
  });
@@ -88,10 +91,15 @@ export class AbstractStream {
88
91
  await res;
89
92
  }
90
93
  }
91
- this.log.trace('sink finished reading from source');
92
- this.writeStatus = 'done';
93
- this.log.trace('sink calling closeWrite');
94
- await this.closeWrite(options);
94
+ this.log.trace('sink finished reading from source, write status is "%s"', this.writeStatus);
95
+ if (this.writeStatus === 'writing') {
96
+ this.writeStatus = 'closing';
97
+ this.log.trace('send close write to remote');
98
+ await this.sendCloseWrite({
99
+ signal: AbortSignal.timeout(this.sendCloseWriteTimeout)
100
+ });
101
+ this.writeStatus = 'closed';
102
+ }
95
103
  this.onSinkEnd();
96
104
  }
97
105
  catch (err) {
@@ -109,6 +117,7 @@ export class AbstractStream {
109
117
  return;
110
118
  }
111
119
  this.timeline.closeRead = Date.now();
120
+ this.readStatus = 'closed';
112
121
  if (err != null && this.endErr == null) {
113
122
  this.endErr = err;
114
123
  }
@@ -116,6 +125,9 @@ export class AbstractStream {
116
125
  if (this.timeline.closeWrite != null) {
117
126
  this.log.trace('source and sink ended');
118
127
  this.timeline.close = Date.now();
128
+ if (this.status !== 'aborted' && this.status !== 'reset') {
129
+ this.status = 'closed';
130
+ }
119
131
  if (this.onEnd != null) {
120
132
  this.onEnd(this.endErr);
121
133
  }
@@ -129,6 +141,7 @@ export class AbstractStream {
129
141
  return;
130
142
  }
131
143
  this.timeline.closeWrite = Date.now();
144
+ this.writeStatus = 'closed';
132
145
  if (err != null && this.endErr == null) {
133
146
  this.endErr = err;
134
147
  }
@@ -136,6 +149,9 @@ export class AbstractStream {
136
149
  if (this.timeline.closeRead != null) {
137
150
  this.log.trace('sink and source ended');
138
151
  this.timeline.close = Date.now();
152
+ if (this.status !== 'aborted' && this.status !== 'reset') {
153
+ this.status = 'closed';
154
+ }
139
155
  if (this.onEnd != null) {
140
156
  this.onEnd(this.endErr);
141
157
  }
@@ -162,14 +178,14 @@ export class AbstractStream {
162
178
  this.log.trace('closing readable end of stream with starting read status "%s"', this.readStatus);
163
179
  const readStatus = this.readStatus;
164
180
  this.readStatus = 'closing';
165
- if (readStatus === 'ready') {
166
- this.log.trace('ending internal source queue');
167
- this.streamSource.end();
168
- }
169
181
  if (this.status !== 'reset' && this.status !== 'aborted' && this.timeline.closeRead == null) {
170
182
  this.log.trace('send close read to remote');
171
183
  await this.sendCloseRead(options);
172
184
  }
185
+ if (readStatus === 'ready') {
186
+ this.log.trace('ending internal source queue');
187
+ this.streamSource.end();
188
+ }
173
189
  this.log.trace('closed readable end of stream');
174
190
  }
175
191
  async closeWrite(options = {}) {
@@ -177,13 +193,11 @@ export class AbstractStream {
177
193
  return;
178
194
  }
179
195
  this.log.trace('closing writable end of stream with starting write status "%s"', this.writeStatus);
180
- const writeStatus = this.writeStatus;
181
196
  if (this.writeStatus === 'ready') {
182
197
  this.log.trace('sink was never sunk, sink an empty array');
183
- await this.sink([]);
198
+ await raceSignal(this.sink([]), options.signal);
184
199
  }
185
- this.writeStatus = 'closing';
186
- if (writeStatus === 'writing') {
200
+ if (this.writeStatus === 'writing') {
187
201
  // stop reading from the source passed to `.sink` in the microtask queue
188
202
  // - this lets any data queued by the user in the current tick get read
189
203
  // before we exit
@@ -191,14 +205,11 @@ export class AbstractStream {
191
205
  queueMicrotask(() => {
192
206
  this.log.trace('aborting source passed to .sink');
193
207
  this.sinkController.abort();
194
- this.sinkEnd.promise.then(resolve, reject);
208
+ raceSignal(this.sinkEnd.promise, options.signal)
209
+ .then(resolve, reject);
195
210
  });
196
211
  });
197
212
  }
198
- if (this.status !== 'reset' && this.status !== 'aborted' && this.timeline.closeWrite == null) {
199
- this.log.trace('send close write to remote');
200
- await this.sendCloseWrite(options);
201
- }
202
213
  this.writeStatus = 'closed';
203
214
  this.log.trace('closed writable end of stream');
204
215
  }
@@ -234,6 +245,7 @@ export class AbstractStream {
234
245
  }
235
246
  const err = new CodeError('stream reset', ERR_STREAM_RESET);
236
247
  this.status = 'reset';
248
+ this.timeline.reset = Date.now();
237
249
  this._closeSinkAndSource(err);
238
250
  this.onReset?.();
239
251
  }
@@ -290,7 +302,7 @@ export class AbstractStream {
290
302
  this.log('received destroy but we are already closed');
291
303
  return;
292
304
  }
293
- this.log.trace('muxer destroyed');
305
+ this.log.trace('stream destroyed');
294
306
  this._closeSinkAndSource();
295
307
  }
296
308
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../src/stream-muxer/stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../src/stream-muxer/stream.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { PeerId } from '../peer-id/index.js';
3
3
  export interface Topology {
4
4
  min?: number;
5
5
  max?: number;
6
- onConnect?: (peerId: PeerId, conn: Connection) => void;
7
- onDisconnect?: (peerId: PeerId) => void;
6
+ onConnect?(peerId: PeerId, conn: Connection): void;
7
+ onDisconnect?(peerId: PeerId): void;
8
8
  }
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/topology/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAEjD,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,CAAA;IACtD,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/topology/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAEjD,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IAEZ,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IAClD,YAAY,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC"}
@@ -13,17 +13,17 @@ export interface Listener extends EventEmitter<ListenerEvents> {
13
13
  /**
14
14
  * Start a listener
15
15
  */
16
- listen: (multiaddr: Multiaddr) => Promise<void>;
16
+ listen(multiaddr: Multiaddr): Promise<void>;
17
17
  /**
18
18
  * Get listen addresses
19
19
  */
20
- getAddrs: () => Multiaddr[];
20
+ getAddrs(): Multiaddr[];
21
21
  /**
22
22
  * Close listener
23
23
  *
24
24
  * @returns {Promise<void>}
25
25
  */
26
- close: () => Promise<void>;
26
+ close(): Promise<void>;
27
27
  }
28
28
  export declare const symbol: unique symbol;
29
29
  export interface ConnectionHandler {
@@ -54,11 +54,11 @@ export interface Transport {
54
54
  /**
55
55
  * Dial a given multiaddr.
56
56
  */
57
- dial: (ma: Multiaddr, options: DialOptions) => Promise<Connection>;
57
+ dial(ma: Multiaddr, options: DialOptions): Promise<Connection>;
58
58
  /**
59
59
  * Create transport listeners.
60
60
  */
61
- createListener: (options: CreateListenerOptions) => Listener;
61
+ createListener(options: CreateListenerOptions): Listener;
62
62
  /**
63
63
  * Takes a list of `Multiaddr`s and returns only valid addresses for the transport
64
64
  */
@@ -92,10 +92,10 @@ export interface Upgrader {
92
92
  /**
93
93
  * Upgrades an outbound connection on `transport.dial`.
94
94
  */
95
- upgradeOutbound: (maConn: MultiaddrConnection, opts?: UpgraderOptions) => Promise<Connection>;
95
+ upgradeOutbound(maConn: MultiaddrConnection, opts?: UpgraderOptions): Promise<Connection>;
96
96
  /**
97
97
  * Upgrades an inbound connection on transport listener.
98
98
  */
99
- upgradeInbound: (maConn: MultiaddrConnection, opts?: UpgraderOptions) => Promise<Connection>;
99
+ upgradeInbound(maConn: MultiaddrConnection, opts?: UpgraderOptions): Promise<Connection>;
100
100
  }
101
101
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;IACrC,WAAW,EAAE,WAAW,CAAA;IACxB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IAC3B,OAAO,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY,CAAC,cAAc,CAAC;IAC5D;;OAEG;IACH,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C;;OAEG;IACH,QAAQ,EAAE,MAAM,SAAS,EAAE,CAAA;IAC3B;;;;OAIG;IACH,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3B;AAED,eAAO,MAAM,MAAM,eAAkC,CAAA;AAErD,MAAM,WAAW,iBAAiB;IAAG,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE;AAErE,MAAM,WAAW,eAAe;IAAG,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAAA;CAAE;AAE3E,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,CAAC,MAAM,CAAC,EAAE,IAAI,CAAA;IAEd;;OAEG;IACH,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAElE;;OAEG;IACH,cAAc,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,QAAQ,CAAA;IAE5D;;OAEG;IACH,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,wBAAgB,WAAW,CAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAE3D;AAED;;GAEG;AACH,oBAAY,cAAc;IACxB;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,QAAQ,IAAA;CACT;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAA;IAEjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAE7F;;OAEG;IACH,cAAc,EAAE,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE,eAAe,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;CAC7F"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/transport/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAExD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;IACrC,WAAW,EAAE,WAAW,CAAA;IACxB,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IAC3B,OAAO,EAAE,WAAW,CAAA;CACrB;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY,CAAC,cAAc,CAAC;IAC5D;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3C;;OAEG;IACH,QAAQ,IAAI,SAAS,EAAE,CAAA;IACvB;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,eAAO,MAAM,MAAM,eAAkC,CAAA;AAErD,MAAM,WAAW,iBAAiB;IAAG,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE;AAErE,MAAM,WAAW,eAAe;IAAG,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAAA;CAAE;AAE3E,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,QAAQ,EAAE,QAAQ,CAAA;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB;;OAEG;IACH,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAE5B;;OAEG;IACH,CAAC,MAAM,CAAC,EAAE,IAAI,CAAA;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAE9D;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,QAAQ,CAAA;IAExD;;OAEG;IACH,MAAM,EAAE,eAAe,CAAA;CACxB;AAED,wBAAgB,WAAW,CAAE,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAE3D;AAED;;GAEG;AACH,oBAAY,cAAc;IACxB;;OAEG;IACH,SAAS,IAAI;IAEb;;OAEG;IACH,QAAQ,IAAA;CACT;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAA;IAEjC;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAEzF;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACzF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/interface",
3
- "version": "0.1.2-e9099d40",
3
+ "version": "0.1.2-f1053159",
4
4
  "description": "The interface implemented by a libp2p node",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/master/packages/interface#readme",
@@ -164,11 +164,15 @@
164
164
  "it-stream-types": "^2.0.1",
165
165
  "multiformats": "^12.0.1",
166
166
  "p-defer": "^4.0.0",
167
+ "race-signal": "^1.0.0",
167
168
  "uint8arraylist": "^2.4.3"
168
169
  },
169
170
  "devDependencies": {
170
171
  "@types/sinon": "^10.0.15",
171
- "aegir": "^40.0.8",
172
+ "aegir": "^41.0.2",
173
+ "delay": "^6.0.0",
174
+ "it-all": "^3.0.3",
175
+ "it-drain": "^3.0.3",
172
176
  "sinon": "^16.0.0",
173
177
  "sinon-ts": "^1.0.0"
174
178
  }
@@ -101,7 +101,7 @@ export interface Stream extends Duplex<AsyncGenerator<Uint8ArrayList>, Source<Ui
101
101
  *
102
102
  * The sink and the source will return normally.
103
103
  */
104
- close: (options?: AbortOptions) => Promise<void>
104
+ close(options?: AbortOptions): Promise<void>
105
105
 
106
106
  /**
107
107
  * Closes the stream for **reading**. If iterating over the source of this stream in a `for await of` loop, it will return (exit the loop) after any buffered data has been consumed.
@@ -110,14 +110,14 @@ export interface Stream extends Duplex<AsyncGenerator<Uint8ArrayList>, Source<Ui
110
110
  *
111
111
  * The source will return normally, the sink will continue to consume.
112
112
  */
113
- closeRead: (options?: AbortOptions) => Promise<void>
113
+ closeRead(options?: AbortOptions): Promise<void>
114
114
 
115
115
  /**
116
116
  * Closes the stream for **writing**. If iterating over the source of this stream in a `for await of` loop, it will return (exit the loop) after any buffered data has been consumed.
117
117
  *
118
118
  * The source will return normally, the sink will continue to consume.
119
119
  */
120
- closeWrite: (options?: AbortOptions) => Promise<void>
120
+ closeWrite(options?: AbortOptions): Promise<void>
121
121
 
122
122
  /**
123
123
  * Closes the stream for **reading** *and* **writing**. This should be called when a *local error* has occurred.
@@ -128,7 +128,7 @@ export interface Stream extends Duplex<AsyncGenerator<Uint8ArrayList>, Source<Ui
128
128
  *
129
129
  * The sink will return and the source will throw if an error is passed or return normally if not.
130
130
  */
131
- abort: (err: Error) => void
131
+ abort(err: Error): void
132
132
 
133
133
  /**
134
134
  * Unique identifier for a stream. Identifiers are not unique across muxers.
@@ -256,18 +256,18 @@ export interface Connection {
256
256
  /**
257
257
  * Create a new stream on this connection and negotiate one of the passed protocols
258
258
  */
259
- newStream: (protocols: string | string[], options?: NewStreamOptions) => Promise<Stream>
259
+ newStream(protocols: string | string[], options?: NewStreamOptions): Promise<Stream>
260
260
 
261
261
  /**
262
262
  * Gracefully close the connection. All queued data will be written to the
263
263
  * underlying transport.
264
264
  */
265
- close: (options?: AbortOptions) => Promise<void>
265
+ close(options?: AbortOptions): Promise<void>
266
266
 
267
267
  /**
268
268
  * Immediately close the connection, any queued data will be discarded
269
269
  */
270
- abort: (err: Error) => void
270
+ abort(err: Error): void
271
271
  }
272
272
 
273
273
  export const symbol = Symbol.for('@libp2p/connection')
@@ -282,7 +282,7 @@ export interface ConnectionProtector {
282
282
  * between its two peers from the PSK the Protector instance was
283
283
  * created with.
284
284
  */
285
- protect: (connection: MultiaddrConnection) => Promise<MultiaddrConnection>
285
+ protect(connection: MultiaddrConnection): Promise<MultiaddrConnection>
286
286
  }
287
287
 
288
288
  export interface MultiaddrConnectionTimeline {
@@ -313,12 +313,12 @@ export interface MultiaddrConnection extends Duplex<AsyncGenerator<Uint8Array>,
313
313
  * Gracefully close the connection. All queued data will be written to the
314
314
  * underlying transport.
315
315
  */
316
- close: (options?: AbortOptions) => Promise<void>
316
+ close(options?: AbortOptions): Promise<void>
317
317
 
318
318
  /**
319
319
  * Immediately close the connection, any queued data will be discarded
320
320
  */
321
- abort: (err: Error) => void
321
+ abort(err: Error): void
322
322
 
323
323
  /**
324
324
  * The address of the remote end of the connection
@@ -13,14 +13,14 @@ export interface ConnectionEncrypter<Extension = unknown> {
13
13
  * pass it for extra verification, otherwise it will be determined during
14
14
  * the handshake.
15
15
  */
16
- secureOutbound: (localPeer: PeerId, connection: Duplex<AsyncGenerator<Uint8Array>, Source<Uint8Array>, Promise<void>>, remotePeer?: PeerId) => Promise<SecuredConnection<Extension>>
16
+ secureOutbound(localPeer: PeerId, connection: Duplex<AsyncGenerator<Uint8Array>, Source<Uint8Array>, Promise<void>>, remotePeer?: PeerId): Promise<SecuredConnection<Extension>>
17
17
 
18
18
  /**
19
19
  * Decrypt incoming data. If the remote PeerId is known,
20
20
  * pass it for extra verification, otherwise it will be determined during
21
21
  * the handshake
22
22
  */
23
- secureInbound: (localPeer: PeerId, connection: Duplex<AsyncGenerator<Uint8Array>, Source<Uint8Array>, Promise<void>>, remotePeer?: PeerId) => Promise<SecuredConnection<Extension>>
23
+ secureInbound(localPeer: PeerId, connection: Duplex<AsyncGenerator<Uint8Array>, Source<Uint8Array>, Promise<void>>, remotePeer?: PeerId): Promise<SecuredConnection<Extension>>
24
24
  }
25
25
 
26
26
  export interface SecuredConnection<Extension = unknown> {
@@ -12,7 +12,7 @@ export interface ConnectionGater {
12
12
  *
13
13
  * Return true to prevent dialing the passed peer.
14
14
  */
15
- denyDialPeer?: (peerId: PeerId) => Promise<boolean>
15
+ denyDialPeer?(peerId: PeerId): Promise<boolean>
16
16
 
17
17
  /**
18
18
  * denyDialMultiaddr tests whether we're permitted to dial the specified
@@ -23,7 +23,7 @@ export interface ConnectionGater {
23
23
  *
24
24
  * Return true to prevent dialing the passed peer on the passed multiaddr.
25
25
  */
26
- denyDialMultiaddr?: (multiaddr: Multiaddr) => Promise<boolean>
26
+ denyDialMultiaddr?(multiaddr: Multiaddr): Promise<boolean>
27
27
 
28
28
  /**
29
29
  * denyInboundConnection tests whether an incipient inbound connection is allowed.
@@ -33,7 +33,7 @@ export interface ConnectionGater {
33
33
  *
34
34
  * Return true to deny the incoming passed connection.
35
35
  */
36
- denyInboundConnection?: (maConn: MultiaddrConnection) => Promise<boolean>
36
+ denyInboundConnection?(maConn: MultiaddrConnection): Promise<boolean>
37
37
 
38
38
  /**
39
39
  * denyOutboundConnection tests whether an incipient outbound connection is allowed.
@@ -43,7 +43,7 @@ export interface ConnectionGater {
43
43
  *
44
44
  * Return true to deny the incoming passed connection.
45
45
  */
46
- denyOutboundConnection?: (peerId: PeerId, maConn: MultiaddrConnection) => Promise<boolean>
46
+ denyOutboundConnection?(peerId: PeerId, maConn: MultiaddrConnection): Promise<boolean>
47
47
 
48
48
  /**
49
49
  * denyInboundEncryptedConnection tests whether a given connection, now encrypted,
@@ -55,7 +55,7 @@ export interface ConnectionGater {
55
55
  *
56
56
  * Return true to deny the passed secured connection.
57
57
  */
58
- denyInboundEncryptedConnection?: (peerId: PeerId, maConn: MultiaddrConnection) => Promise<boolean>
58
+ denyInboundEncryptedConnection?(peerId: PeerId, maConn: MultiaddrConnection): Promise<boolean>
59
59
 
60
60
  /**
61
61
  * denyOutboundEncryptedConnection tests whether a given connection, now encrypted,
@@ -67,7 +67,7 @@ export interface ConnectionGater {
67
67
  *
68
68
  * Return true to deny the passed secured connection.
69
69
  */
70
- denyOutboundEncryptedConnection?: (peerId: PeerId, maConn: MultiaddrConnection) => Promise<boolean>
70
+ denyOutboundEncryptedConnection?(peerId: PeerId, maConn: MultiaddrConnection): Promise<boolean>
71
71
 
72
72
  /**
73
73
  * denyInboundUpgradedConnection tests whether a fully capable connection is allowed.
@@ -77,7 +77,7 @@ export interface ConnectionGater {
77
77
  *
78
78
  * Return true to deny the passed upgraded connection.
79
79
  */
80
- denyInboundUpgradedConnection?: (peerId: PeerId, maConn: MultiaddrConnection) => Promise<boolean>
80
+ denyInboundUpgradedConnection?(peerId: PeerId, maConn: MultiaddrConnection): Promise<boolean>
81
81
 
82
82
  /**
83
83
  * denyOutboundUpgradedConnection tests whether a fully capable connection is allowed.
@@ -87,7 +87,7 @@ export interface ConnectionGater {
87
87
  *
88
88
  * Return true to deny the passed upgraded connection.
89
89
  */
90
- denyOutboundUpgradedConnection?: (peerId: PeerId, maConn: MultiaddrConnection) => Promise<boolean>
90
+ denyOutboundUpgradedConnection?(peerId: PeerId, maConn: MultiaddrConnection): Promise<boolean>
91
91
 
92
92
  /**
93
93
  * denyInboundRelayReservation tests whether a remote peer is allowed make a
@@ -95,7 +95,7 @@ export interface ConnectionGater {
95
95
  *
96
96
  * Return true to deny the relay reservation.
97
97
  */
98
- denyInboundRelayReservation?: (source: PeerId) => Promise<boolean>
98
+ denyInboundRelayReservation?(source: PeerId): Promise<boolean>
99
99
 
100
100
  /**
101
101
  * denyOutboundRelayedConnection tests whether a remote peer is allowed to open a relayed
@@ -106,7 +106,7 @@ export interface ConnectionGater {
106
106
  *
107
107
  * Return true to deny the relayed connection.
108
108
  */
109
- denyOutboundRelayedConnection?: (source: PeerId, destination: PeerId) => Promise<boolean>
109
+ denyOutboundRelayedConnection?(source: PeerId, destination: PeerId): Promise<boolean>
110
110
 
111
111
  /**
112
112
  * denyInboundRelayedConnection tests whether a remote peer is allowed to open a relayed
@@ -117,12 +117,12 @@ export interface ConnectionGater {
117
117
  *
118
118
  * Return true to deny the relayed connection.
119
119
  */
120
- denyInboundRelayedConnection?: (relay: PeerId, remotePeer: PeerId) => Promise<boolean>
120
+ denyInboundRelayedConnection?(relay: PeerId, remotePeer: PeerId): Promise<boolean>
121
121
 
122
122
  /**
123
123
  * Used by the address book to filter passed addresses.
124
124
  *
125
125
  * Return true to allow storing the passed multiaddr for the passed peer.
126
126
  */
127
- filterMultiaddrForPeer?: (peer: PeerId, multiaddr: Multiaddr) => Promise<boolean>
127
+ filterMultiaddrForPeer?(peer: PeerId, multiaddr: Multiaddr): Promise<boolean>
128
128
  }
@@ -35,7 +35,7 @@ export interface ContentRouting {
35
35
  * await contentRouting.provide(cid)
36
36
  * ```
37
37
  */
38
- provide: (cid: CID, options?: AbortOptions) => Promise<void>
38
+ provide(cid: CID, options?: AbortOptions): Promise<void>
39
39
 
40
40
  /**
41
41
  * Find the providers of the passed CID.
@@ -49,7 +49,7 @@ export interface ContentRouting {
49
49
  * }
50
50
  * ```
51
51
  */
52
- findProviders: (cid: CID, options?: AbortOptions) => AsyncIterable<PeerInfo>
52
+ findProviders(cid: CID, options?: AbortOptions): AsyncIterable<PeerInfo>
53
53
 
54
54
  /**
55
55
  * Puts a value corresponding to the passed key in a way that can later be
@@ -65,7 +65,7 @@ export interface ContentRouting {
65
65
  * await contentRouting.put(key, value)
66
66
  * ```
67
67
  */
68
- put: (key: Uint8Array, value: Uint8Array, options?: AbortOptions) => Promise<void>
68
+ put(key: Uint8Array, value: Uint8Array, options?: AbortOptions): Promise<void>
69
69
 
70
70
  /**
71
71
  * Retrieves a value from the network corresponding to the passed key.
@@ -79,5 +79,5 @@ export interface ContentRouting {
79
79
  * const value = await contentRouting.get(key)
80
80
  * ```
81
81
  */
82
- get: (key: Uint8Array, options?: AbortOptions) => Promise<Uint8Array>
82
+ get(key: Uint8Array, options?: AbortOptions): Promise<Uint8Array>
83
83
  }
package/src/index.ts CHANGED
@@ -418,7 +418,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
418
418
  * // [ <Multiaddr 047f00000106f9ba - /ip4/127.0.0.1/tcp/63930> ]
419
419
  * ```
420
420
  */
421
- getMultiaddrs: () => Multiaddr[]
421
+ getMultiaddrs(): Multiaddr[]
422
422
 
423
423
  /**
424
424
  * Returns a list of supported protocols
@@ -430,7 +430,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
430
430
  * // [ '/ipfs/ping/1.0.0', '/ipfs/id/1.0.0' ]
431
431
  * ```
432
432
  */
433
- getProtocols: () => string[]
433
+ getProtocols(): string[]
434
434
 
435
435
  /**
436
436
  * Return a list of all connections this node has open, optionally filtering
@@ -445,7 +445,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
445
445
  * }
446
446
  * ```
447
447
  */
448
- getConnections: (peerId?: PeerId) => Connection[]
448
+ getConnections(peerId?: PeerId): Connection[]
449
449
 
450
450
  /**
451
451
  * Return the list of dials currently in progress or queued to start
@@ -458,12 +458,12 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
458
458
  * }
459
459
  * ```
460
460
  */
461
- getDialQueue: () => PendingDial[]
461
+ getDialQueue(): PendingDial[]
462
462
 
463
463
  /**
464
464
  * Return a list of all peers we currently have a connection open to
465
465
  */
466
- getPeers: () => PeerId[]
466
+ getPeers(): PeerId[]
467
467
 
468
468
  /**
469
469
  * Dials to the provided peer. If successful, the known metadata of the
@@ -485,7 +485,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
485
485
  * await conn.close()
486
486
  * ```
487
487
  */
488
- dial: (peer: PeerId | Multiaddr | Multiaddr[], options?: AbortOptions) => Promise<Connection>
488
+ dial(peer: PeerId | Multiaddr | Multiaddr[], options?: AbortOptions): Promise<Connection>
489
489
 
490
490
  /**
491
491
  * Dials to the provided peer and tries to handshake with the given protocols in order.
@@ -503,7 +503,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
503
503
  * pipe([1, 2, 3], stream, consume)
504
504
  * ```
505
505
  */
506
- dialProtocol: (peer: PeerId | Multiaddr | Multiaddr[], protocols: string | string[], options?: NewStreamOptions) => Promise<Stream>
506
+ dialProtocol(peer: PeerId | Multiaddr | Multiaddr[], protocols: string | string[], options?: NewStreamOptions): Promise<Stream>
507
507
 
508
508
  /**
509
509
  * Attempts to gracefully close an open connection to the given peer. If the
@@ -518,7 +518,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
518
518
  * await libp2p.hangUp(remotePeerId)
519
519
  * ```
520
520
  */
521
- hangUp: (peer: PeerId | Multiaddr, options?: AbortOptions) => Promise<void>
521
+ hangUp(peer: PeerId | Multiaddr, options?: AbortOptions): Promise<void>
522
522
 
523
523
  /**
524
524
  * Sets up [multistream-select routing](https://github.com/multiformats/multistream-select) of protocols to their application handlers. Whenever a stream is opened on one of the provided protocols, the handler will be called. `handle` must be called in order to register a handler and support for a given protocol. This also informs other peers of the protocols you support.
@@ -540,7 +540,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
540
540
  * })
541
541
  * ```
542
542
  */
543
- handle: (protocol: string | string[], handler: StreamHandler, options?: StreamHandlerOptions) => Promise<void>
543
+ handle(protocol: string | string[], handler: StreamHandler, options?: StreamHandlerOptions): Promise<void>
544
544
 
545
545
  /**
546
546
  * Removes the handler for each protocol. The protocol
@@ -552,7 +552,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
552
552
  * libp2p.unhandle(['/echo/1.0.0'])
553
553
  * ```
554
554
  */
555
- unhandle: (protocols: string[] | string) => Promise<void>
555
+ unhandle(protocols: string[] | string): Promise<void>
556
556
 
557
557
  /**
558
558
  * Register a topology to be informed when peers are encountered that
@@ -571,7 +571,7 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
571
571
  * })
572
572
  * ```
573
573
  */
574
- register: (protocol: string, topology: Topology) => Promise<string>
574
+ register(protocol: string, topology: Topology): Promise<string>
575
575
 
576
576
  /**
577
577
  * Unregister topology to no longer be informed when peers connect or
@@ -585,14 +585,14 @@ export interface Libp2p<T extends ServiceMap = ServiceMap> extends Startable, Ev
585
585
  * libp2p.unregister(id)
586
586
  * ```
587
587
  */
588
- unregister: (id: string) => void
588
+ unregister(id: string): void
589
589
 
590
590
  /**
591
591
  * Returns the public key for the passed PeerId. If the PeerId is of the 'RSA' type
592
592
  * this may mean searching the DHT if the key is not present in the KeyStore.
593
593
  * A set of user defined services
594
594
  */
595
- getPublicKey: (peer: PeerId, options?: AbortOptions) => Promise<Uint8Array>
595
+ getPublicKey(peer: PeerId, options?: AbortOptions): Promise<Uint8Array>
596
596
 
597
597
  /**
598
598
  * A set of user defined services