@libp2p/floodsub 4.0.1 → 5.0.0

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.
package/README.md CHANGED
@@ -1,10 +1,9 @@
1
1
  # @libp2p/floodsub <!-- omit in toc -->
2
2
 
3
3
  [![libp2p.io](https://img.shields.io/badge/project-libp2p-yellow.svg?style=flat-square)](http://libp2p.io/)
4
- [![IRC](https://img.shields.io/badge/freenode-%23libp2p-yellow.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23libp2p)
5
4
  [![Discuss](https://img.shields.io/discourse/https/discuss.libp2p.io/posts.svg?style=flat-square)](https://discuss.libp2p.io)
6
5
  [![codecov](https://img.shields.io/codecov/c/github/libp2p/js-libp2p-floodsub.svg?style=flat-square)](https://codecov.io/gh/libp2p/js-libp2p-floodsub)
7
- [![CI](https://img.shields.io/github/workflow/status/libp2p/js-libp2p-interfaces/test%20&%20maybe%20release/master?style=flat-square)](https://github.com/libp2p/js-libp2p-floodsub/actions/workflows/js-test-and-release.yml)
6
+ [![CI](https://img.shields.io/github/workflow/status/libp2p/js-libp2p-floodsub/test%20&%20maybe%20release/master?style=flat-square)](https://github.com/libp2p/js-libp2p-floodsub/actions/workflows/js-test-and-release.yml)
8
7
 
9
8
  > libp2p-floodsub, also known as pubsub-flood or just dumbsub, this implementation of pubsub focused on delivering an API for Publish/Subscribe, but with no CastTree Forming (it just floods the network).
10
9
 
@@ -33,18 +32,21 @@ Instead please use [gossipsub](https://www.npmjs.com/package/@chainsafe/libp2p-g
33
32
  ## Usage
34
33
 
35
34
  ```JavaScript
36
- import { FloodSub } from '@libp2p/floodsub'
35
+ import { createLibp2pNode } from 'libp2p'
36
+ import { floodsub } from '@libp2p/floodsub'
37
37
 
38
- const fsub = new FloodSub()
39
-
40
- await fsub.start()
38
+ const node = await createLibp2pNode({
39
+ pubsub: floodsub()
40
+ //... other options
41
+ })
42
+ await node.start()
41
43
 
42
- fsub.addEventListener('message', (data) => {
43
- console.log(data)
44
+ node.pubsub.subscribe('fruit')
45
+ node.pubsub.addEventListener('message', (evt) => {
46
+ console.log(evt)
44
47
  })
45
- fsub.subscribe('fruit')
46
48
 
47
- fsub.publish('fruit', new TextEncoder().encode('banana'))
49
+ node.pubsub.publish('fruit', new TextEncoder().encode('banana'))
48
50
  ```
49
51
 
50
52
  ## License
@@ -1,13 +1,15 @@
1
- import { PubSubBaseProtocol } from '@libp2p/pubsub';
1
+ import { PubSubBaseProtocol, PubSubComponents } from '@libp2p/pubsub';
2
2
  import { multicodec } from './config.js';
3
3
  import { SimpleTimeCache } from './cache.js';
4
- import type { PubSubInit, Message, PubSubRPC, PubSubRPCMessage, PublishResult } from '@libp2p/interface-pubsub';
4
+ import type { PubSubInit, Message, PubSubRPC, PubSubRPCMessage, PublishResult, PubSub } from '@libp2p/interface-pubsub';
5
5
  import type { PeerId } from '@libp2p/interface-peer-id';
6
6
  import type { Uint8ArrayList } from 'uint8arraylist';
7
7
  export { multicodec };
8
8
  export interface FloodSubInit extends PubSubInit {
9
9
  seenTTL?: number;
10
10
  }
11
+ export interface FloodSubComponents extends PubSubComponents {
12
+ }
11
13
  /**
12
14
  * FloodSub (aka dumbsub is an implementation of pubsub focused on
13
15
  * delivering an API for Publish/Subscribe, but with no CastTree Forming
@@ -15,7 +17,7 @@ export interface FloodSubInit extends PubSubInit {
15
17
  */
16
18
  export declare class FloodSub extends PubSubBaseProtocol {
17
19
  seenCache: SimpleTimeCache<boolean>;
18
- constructor(init?: FloodSubInit);
20
+ constructor(components: FloodSubComponents, init?: FloodSubInit);
19
21
  /**
20
22
  * Decode a Uint8Array into an RPC object
21
23
  */
@@ -36,4 +38,5 @@ export declare class FloodSub extends PubSubBaseProtocol {
36
38
  */
37
39
  publishMessage(from: PeerId, message: Message): Promise<PublishResult>;
38
40
  }
41
+ export declare function floodsub(init?: FloodSubInit): (components: FloodSubComponents) => PubSub;
39
42
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAC/G,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAGvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAIpD,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,kBAAkB;IACvC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;gBAE7B,IAAI,CAAC,EAAE,YAAY;IAiBhC;;OAEG;IACH,SAAS,CAAE,KAAK,EAAE,UAAU,GAAG,cAAc,GAAG,SAAS;IAIzD;;OAEG;IACH,SAAS,CAAE,GAAG,EAAE,SAAS,GAAG,UAAU;IAItC,aAAa,CAAE,KAAK,EAAE,UAAU,GAAG,cAAc,GAAG,gBAAgB;IAIpE,aAAa,CAAE,GAAG,EAAE,gBAAgB,GAAG,UAAU;IAIjD;;;OAGG;IACG,cAAc,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAcpD;;OAEG;IACG,cAAc,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;CA4B9E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AACvH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAGvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAIpD,OAAO,EAAE,UAAU,EAAE,CAAA;AAErB,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;CAE3D;AAED;;;;GAIG;AACH,qBAAa,QAAS,SAAQ,kBAAkB;IACvC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;gBAE7B,UAAU,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,YAAY;IAiBhE;;OAEG;IACH,SAAS,CAAE,KAAK,EAAE,UAAU,GAAG,cAAc,GAAG,SAAS;IAIzD;;OAEG;IACH,SAAS,CAAE,GAAG,EAAE,SAAS,GAAG,UAAU;IAItC,aAAa,CAAE,KAAK,EAAE,UAAU,GAAG,cAAc,GAAG,gBAAgB;IAIpE,aAAa,CAAE,GAAG,EAAE,gBAAgB,GAAG,UAAU;IAIjD;;;OAGG;IACG,cAAc,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAcpD;;OAEG;IACG,cAAc,CAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;CA4B9E;AAED,wBAAgB,QAAQ,CAAE,IAAI,GAAE,YAAiB,GAAG,CAAC,UAAU,EAAE,kBAAkB,KAAK,MAAM,CAE7F"}
package/dist/src/index.js CHANGED
@@ -12,8 +12,8 @@ export { multicodec };
12
12
  * (it just floods the network).
13
13
  */
14
14
  export class FloodSub extends PubSubBaseProtocol {
15
- constructor(init) {
16
- super({
15
+ constructor(components, init) {
16
+ super(components, {
17
17
  ...init,
18
18
  canRelayMessage: true,
19
19
  multicodecs: [multicodec]
@@ -70,7 +70,7 @@ export class FloodSub extends PubSubBaseProtocol {
70
70
  return { recipients };
71
71
  }
72
72
  peers.forEach(id => {
73
- if (this.components.getPeerId().equals(id)) {
73
+ if (this.components.peerId.equals(id)) {
74
74
  log('not sending message on topic %s to myself', message.topic);
75
75
  return;
76
76
  }
@@ -85,4 +85,7 @@ export class FloodSub extends PubSubBaseProtocol {
85
85
  return { recipients };
86
86
  }
87
87
  }
88
+ export function floodsub(init = {}) {
89
+ return (components) => new FloodSub(components, init);
90
+ }
88
91
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/message/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/message/rpc.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  /* eslint-disable import/export */
2
+ /* eslint-disable complexity */
2
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
+ /* eslint-disable @typescript-eslint/no-unnecessary-boolean-literal-compare */
3
5
  import { encodeMessage, decodeMessage, message } from 'protons-runtime';
4
6
  export var RPC;
5
7
  (function (RPC) {
@@ -8,20 +10,20 @@ export var RPC;
8
10
  let _codec;
9
11
  SubOpts.codec = () => {
10
12
  if (_codec == null) {
11
- _codec = message((obj, writer, opts = {}) => {
13
+ _codec = message((obj, w, opts = {}) => {
12
14
  if (opts.lengthDelimited !== false) {
13
- writer.fork();
15
+ w.fork();
14
16
  }
15
17
  if (obj.subscribe != null) {
16
- writer.uint32(8);
17
- writer.bool(obj.subscribe);
18
+ w.uint32(8);
19
+ w.bool(obj.subscribe);
18
20
  }
19
21
  if (obj.topic != null) {
20
- writer.uint32(18);
21
- writer.string(obj.topic);
22
+ w.uint32(18);
23
+ w.string(obj.topic);
22
24
  }
23
25
  if (opts.lengthDelimited !== false) {
24
- writer.ldelim();
26
+ w.ldelim();
25
27
  }
26
28
  }, (reader, length) => {
27
29
  const obj = {};
@@ -57,36 +59,36 @@ export var RPC;
57
59
  let _codec;
58
60
  Message.codec = () => {
59
61
  if (_codec == null) {
60
- _codec = message((obj, writer, opts = {}) => {
62
+ _codec = message((obj, w, opts = {}) => {
61
63
  if (opts.lengthDelimited !== false) {
62
- writer.fork();
64
+ w.fork();
63
65
  }
64
66
  if (obj.from != null) {
65
- writer.uint32(10);
66
- writer.bytes(obj.from);
67
+ w.uint32(10);
68
+ w.bytes(obj.from);
67
69
  }
68
70
  if (obj.data != null) {
69
- writer.uint32(18);
70
- writer.bytes(obj.data);
71
+ w.uint32(18);
72
+ w.bytes(obj.data);
71
73
  }
72
74
  if (obj.sequenceNumber != null) {
73
- writer.uint32(26);
74
- writer.bytes(obj.sequenceNumber);
75
+ w.uint32(26);
76
+ w.bytes(obj.sequenceNumber);
75
77
  }
76
78
  if (obj.topic != null) {
77
- writer.uint32(34);
78
- writer.string(obj.topic);
79
+ w.uint32(34);
80
+ w.string(obj.topic);
79
81
  }
80
82
  if (obj.signature != null) {
81
- writer.uint32(42);
82
- writer.bytes(obj.signature);
83
+ w.uint32(42);
84
+ w.bytes(obj.signature);
83
85
  }
84
86
  if (obj.key != null) {
85
- writer.uint32(50);
86
- writer.bytes(obj.key);
87
+ w.uint32(50);
88
+ w.bytes(obj.key);
87
89
  }
88
90
  if (opts.lengthDelimited !== false) {
89
- writer.ldelim();
91
+ w.ldelim();
90
92
  }
91
93
  }, (reader, length) => {
92
94
  const obj = {};
@@ -132,34 +134,34 @@ export var RPC;
132
134
  let _codec;
133
135
  RPC.codec = () => {
134
136
  if (_codec == null) {
135
- _codec = message((obj, writer, opts = {}) => {
137
+ _codec = message((obj, w, opts = {}) => {
136
138
  if (opts.lengthDelimited !== false) {
137
- writer.fork();
139
+ w.fork();
138
140
  }
139
141
  if (obj.subscriptions != null) {
140
142
  for (const value of obj.subscriptions) {
141
- writer.uint32(10);
142
- RPC.SubOpts.codec().encode(value, writer);
143
+ w.uint32(10);
144
+ RPC.SubOpts.codec().encode(value, w, {
145
+ writeDefaults: true
146
+ });
143
147
  }
144
148
  }
145
- else {
146
- throw new Error('Protocol error: required field "subscriptions" was not found in object');
147
- }
148
149
  if (obj.messages != null) {
149
150
  for (const value of obj.messages) {
150
- writer.uint32(18);
151
- RPC.Message.codec().encode(value, writer);
151
+ w.uint32(18);
152
+ RPC.Message.codec().encode(value, w, {
153
+ writeDefaults: true
154
+ });
152
155
  }
153
156
  }
154
- else {
155
- throw new Error('Protocol error: required field "messages" was not found in object');
156
- }
157
157
  if (obj.control != null) {
158
- writer.uint32(26);
159
- ControlMessage.codec().encode(obj.control, writer);
158
+ w.uint32(26);
159
+ ControlMessage.codec().encode(obj.control, w, {
160
+ writeDefaults: false
161
+ });
160
162
  }
161
163
  if (opts.lengthDelimited !== false) {
162
- writer.ldelim();
164
+ w.ldelim();
163
165
  }
164
166
  }, (reader, length) => {
165
167
  const obj = {
@@ -201,48 +203,44 @@ export var ControlMessage;
201
203
  let _codec;
202
204
  ControlMessage.codec = () => {
203
205
  if (_codec == null) {
204
- _codec = message((obj, writer, opts = {}) => {
206
+ _codec = message((obj, w, opts = {}) => {
205
207
  if (opts.lengthDelimited !== false) {
206
- writer.fork();
208
+ w.fork();
207
209
  }
208
210
  if (obj.ihave != null) {
209
211
  for (const value of obj.ihave) {
210
- writer.uint32(10);
211
- ControlIHave.codec().encode(value, writer);
212
+ w.uint32(10);
213
+ ControlIHave.codec().encode(value, w, {
214
+ writeDefaults: true
215
+ });
212
216
  }
213
217
  }
214
- else {
215
- throw new Error('Protocol error: required field "ihave" was not found in object');
216
- }
217
218
  if (obj.iwant != null) {
218
219
  for (const value of obj.iwant) {
219
- writer.uint32(18);
220
- ControlIWant.codec().encode(value, writer);
220
+ w.uint32(18);
221
+ ControlIWant.codec().encode(value, w, {
222
+ writeDefaults: true
223
+ });
221
224
  }
222
225
  }
223
- else {
224
- throw new Error('Protocol error: required field "iwant" was not found in object');
225
- }
226
226
  if (obj.graft != null) {
227
227
  for (const value of obj.graft) {
228
- writer.uint32(26);
229
- ControlGraft.codec().encode(value, writer);
228
+ w.uint32(26);
229
+ ControlGraft.codec().encode(value, w, {
230
+ writeDefaults: true
231
+ });
230
232
  }
231
233
  }
232
- else {
233
- throw new Error('Protocol error: required field "graft" was not found in object');
234
- }
235
234
  if (obj.prune != null) {
236
235
  for (const value of obj.prune) {
237
- writer.uint32(34);
238
- ControlPrune.codec().encode(value, writer);
236
+ w.uint32(34);
237
+ ControlPrune.codec().encode(value, w, {
238
+ writeDefaults: true
239
+ });
239
240
  }
240
241
  }
241
- else {
242
- throw new Error('Protocol error: required field "prune" was not found in object');
243
- }
244
242
  if (opts.lengthDelimited !== false) {
245
- writer.ldelim();
243
+ w.ldelim();
246
244
  }
247
245
  }, (reader, length) => {
248
246
  const obj = {
@@ -289,25 +287,22 @@ export var ControlIHave;
289
287
  let _codec;
290
288
  ControlIHave.codec = () => {
291
289
  if (_codec == null) {
292
- _codec = message((obj, writer, opts = {}) => {
290
+ _codec = message((obj, w, opts = {}) => {
293
291
  if (opts.lengthDelimited !== false) {
294
- writer.fork();
292
+ w.fork();
295
293
  }
296
294
  if (obj.topic != null) {
297
- writer.uint32(10);
298
- writer.string(obj.topic);
295
+ w.uint32(10);
296
+ w.string(obj.topic);
299
297
  }
300
298
  if (obj.messageIDs != null) {
301
299
  for (const value of obj.messageIDs) {
302
- writer.uint32(18);
303
- writer.bytes(value);
300
+ w.uint32(18);
301
+ w.bytes(value);
304
302
  }
305
303
  }
306
- else {
307
- throw new Error('Protocol error: required field "messageIDs" was not found in object');
308
- }
309
304
  if (opts.lengthDelimited !== false) {
310
- writer.ldelim();
305
+ w.ldelim();
311
306
  }
312
307
  }, (reader, length) => {
313
308
  const obj = {
@@ -345,21 +340,18 @@ export var ControlIWant;
345
340
  let _codec;
346
341
  ControlIWant.codec = () => {
347
342
  if (_codec == null) {
348
- _codec = message((obj, writer, opts = {}) => {
343
+ _codec = message((obj, w, opts = {}) => {
349
344
  if (opts.lengthDelimited !== false) {
350
- writer.fork();
345
+ w.fork();
351
346
  }
352
347
  if (obj.messageIDs != null) {
353
348
  for (const value of obj.messageIDs) {
354
- writer.uint32(10);
355
- writer.bytes(value);
349
+ w.uint32(10);
350
+ w.bytes(value);
356
351
  }
357
352
  }
358
- else {
359
- throw new Error('Protocol error: required field "messageIDs" was not found in object');
360
- }
361
353
  if (opts.lengthDelimited !== false) {
362
- writer.ldelim();
354
+ w.ldelim();
363
355
  }
364
356
  }, (reader, length) => {
365
357
  const obj = {
@@ -394,16 +386,16 @@ export var ControlGraft;
394
386
  let _codec;
395
387
  ControlGraft.codec = () => {
396
388
  if (_codec == null) {
397
- _codec = message((obj, writer, opts = {}) => {
389
+ _codec = message((obj, w, opts = {}) => {
398
390
  if (opts.lengthDelimited !== false) {
399
- writer.fork();
391
+ w.fork();
400
392
  }
401
393
  if (obj.topic != null) {
402
- writer.uint32(10);
403
- writer.string(obj.topic);
394
+ w.uint32(10);
395
+ w.string(obj.topic);
404
396
  }
405
397
  if (opts.lengthDelimited !== false) {
406
- writer.ldelim();
398
+ w.ldelim();
407
399
  }
408
400
  }, (reader, length) => {
409
401
  const obj = {};
@@ -436,29 +428,28 @@ export var ControlPrune;
436
428
  let _codec;
437
429
  ControlPrune.codec = () => {
438
430
  if (_codec == null) {
439
- _codec = message((obj, writer, opts = {}) => {
431
+ _codec = message((obj, w, opts = {}) => {
440
432
  if (opts.lengthDelimited !== false) {
441
- writer.fork();
433
+ w.fork();
442
434
  }
443
435
  if (obj.topic != null) {
444
- writer.uint32(10);
445
- writer.string(obj.topic);
436
+ w.uint32(10);
437
+ w.string(obj.topic);
446
438
  }
447
439
  if (obj.peers != null) {
448
440
  for (const value of obj.peers) {
449
- writer.uint32(18);
450
- PeerInfo.codec().encode(value, writer);
441
+ w.uint32(18);
442
+ PeerInfo.codec().encode(value, w, {
443
+ writeDefaults: true
444
+ });
451
445
  }
452
446
  }
453
- else {
454
- throw new Error('Protocol error: required field "peers" was not found in object');
455
- }
456
447
  if (obj.backoff != null) {
457
- writer.uint32(24);
458
- writer.uint64(obj.backoff);
448
+ w.uint32(24);
449
+ w.uint64(obj.backoff);
459
450
  }
460
451
  if (opts.lengthDelimited !== false) {
461
- writer.ldelim();
452
+ w.ldelim();
462
453
  }
463
454
  }, (reader, length) => {
464
455
  const obj = {
@@ -499,20 +490,20 @@ export var PeerInfo;
499
490
  let _codec;
500
491
  PeerInfo.codec = () => {
501
492
  if (_codec == null) {
502
- _codec = message((obj, writer, opts = {}) => {
493
+ _codec = message((obj, w, opts = {}) => {
503
494
  if (opts.lengthDelimited !== false) {
504
- writer.fork();
495
+ w.fork();
505
496
  }
506
497
  if (obj.peerID != null) {
507
- writer.uint32(10);
508
- writer.bytes(obj.peerID);
498
+ w.uint32(10);
499
+ w.bytes(obj.peerID);
509
500
  }
510
501
  if (obj.signedPeerRecord != null) {
511
- writer.uint32(18);
512
- writer.bytes(obj.signedPeerRecord);
502
+ w.uint32(18);
503
+ w.bytes(obj.signedPeerRecord);
513
504
  }
514
505
  if (opts.lengthDelimited !== false) {
515
- writer.ldelim();
506
+ w.ldelim();
516
507
  }
517
508
  }, (reader, length) => {
518
509
  const obj = {};
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/message/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/message/rpc.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/floodsub",
3
- "version": "4.0.1",
3
+ "version": "5.0.0",
4
4
  "description": "libp2p-floodsub, also known as pubsub-flood or just dumbsub, this implementation of pubsub focused on delivering an API for Publish/Subscribe, but with no CastTree Forming (it just floods the network).",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p-floodsub#readme",
@@ -150,23 +150,22 @@
150
150
  "@libp2p/interface-peer-id": "^1.0.2",
151
151
  "@libp2p/interface-pubsub": "^3.0.0",
152
152
  "@libp2p/logger": "^2.0.0",
153
- "@libp2p/pubsub": "^4.0.0",
154
- "protons-runtime": "^3.1.0",
153
+ "@libp2p/pubsub": "^5.0.0",
154
+ "protons-runtime": "^4.0.1",
155
155
  "uint8arraylist": "^2.1.1",
156
- "uint8arrays": "^3.0.0"
156
+ "uint8arrays": "^4.0.2"
157
157
  },
158
158
  "devDependencies": {
159
- "@libp2p/components": "^3.0.1",
160
- "@libp2p/interface-mocks": "^6.0.1",
161
- "@libp2p/interface-pubsub-compliance-tests": "^2.0.1",
159
+ "@libp2p/interface-mocks": "^7.0.1",
160
+ "@libp2p/interface-pubsub-compliance-tests": "^4.0.0",
162
161
  "@libp2p/peer-collections": "^2.0.0",
163
162
  "@libp2p/peer-id": "^1.1.10",
164
163
  "@libp2p/peer-id-factory": "^1.0.9",
165
164
  "@multiformats/multiaddr": "^11.0.3",
166
165
  "aegir": "^37.2.0",
167
- "multiformats": "^9.4.5",
166
+ "multiformats": "^10.0.0",
168
167
  "p-wait-for": "^5.0.0",
169
- "protons": "^5.1.0",
168
+ "protons": "^6.0.0",
170
169
  "sinon": "^14.0.0",
171
170
  "wherearewe": "^2.0.1"
172
171
  }
package/src/index.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { toString } from 'uint8arrays/to-string'
2
- import { PubSubBaseProtocol } from '@libp2p/pubsub'
2
+ import { PubSubBaseProtocol, PubSubComponents } from '@libp2p/pubsub'
3
3
  import { multicodec } from './config.js'
4
4
  import { SimpleTimeCache } from './cache.js'
5
- import type { PubSubInit, Message, PubSubRPC, PubSubRPCMessage, PublishResult } from '@libp2p/interface-pubsub'
5
+ import type { PubSubInit, Message, PubSubRPC, PubSubRPCMessage, PublishResult, PubSub } from '@libp2p/interface-pubsub'
6
6
  import type { PeerId } from '@libp2p/interface-peer-id'
7
7
  import { logger } from '@libp2p/logger'
8
8
  import { RPC } from './message/rpc.js'
@@ -16,6 +16,10 @@ export interface FloodSubInit extends PubSubInit {
16
16
  seenTTL?: number
17
17
  }
18
18
 
19
+ export interface FloodSubComponents extends PubSubComponents {
20
+
21
+ }
22
+
19
23
  /**
20
24
  * FloodSub (aka dumbsub is an implementation of pubsub focused on
21
25
  * delivering an API for Publish/Subscribe, but with no CastTree Forming
@@ -24,8 +28,8 @@ export interface FloodSubInit extends PubSubInit {
24
28
  export class FloodSub extends PubSubBaseProtocol {
25
29
  public seenCache: SimpleTimeCache<boolean>
26
30
 
27
- constructor (init?: FloodSubInit) {
28
- super({
31
+ constructor (components: FloodSubComponents, init?: FloodSubInit) {
32
+ super(components, {
29
33
  ...init,
30
34
  canRelayMessage: true,
31
35
  multicodecs: [multicodec]
@@ -94,7 +98,7 @@ export class FloodSub extends PubSubBaseProtocol {
94
98
  }
95
99
 
96
100
  peers.forEach(id => {
97
- if (this.components.getPeerId().equals(id)) {
101
+ if (this.components.peerId.equals(id)) {
98
102
  log('not sending message on topic %s to myself', message.topic)
99
103
  return
100
104
  }
@@ -113,3 +117,7 @@ export class FloodSub extends PubSubBaseProtocol {
113
117
  return { recipients }
114
118
  }
115
119
  }
120
+
121
+ export function floodsub (init: FloodSubInit = {}): (components: FloodSubComponents) => PubSub {
122
+ return (components: FloodSubComponents) => new FloodSub(components, init)
123
+ }
@@ -1,5 +1,7 @@
1
1
  /* eslint-disable import/export */
2
+ /* eslint-disable complexity */
2
3
  /* eslint-disable @typescript-eslint/no-namespace */
4
+ /* eslint-disable @typescript-eslint/no-unnecessary-boolean-literal-compare */
3
5
 
4
6
  import { encodeMessage, decodeMessage, message } from 'protons-runtime'
5
7
  import type { Uint8ArrayList } from 'uint8arraylist'
@@ -22,23 +24,23 @@ export namespace RPC {
22
24
 
23
25
  export const codec = (): Codec<SubOpts> => {
24
26
  if (_codec == null) {
25
- _codec = message<SubOpts>((obj, writer, opts = {}) => {
27
+ _codec = message<SubOpts>((obj, w, opts = {}) => {
26
28
  if (opts.lengthDelimited !== false) {
27
- writer.fork()
29
+ w.fork()
28
30
  }
29
31
 
30
32
  if (obj.subscribe != null) {
31
- writer.uint32(8)
32
- writer.bool(obj.subscribe)
33
+ w.uint32(8)
34
+ w.bool(obj.subscribe)
33
35
  }
34
36
 
35
37
  if (obj.topic != null) {
36
- writer.uint32(18)
37
- writer.string(obj.topic)
38
+ w.uint32(18)
39
+ w.string(obj.topic)
38
40
  }
39
41
 
40
42
  if (opts.lengthDelimited !== false) {
41
- writer.ldelim()
43
+ w.ldelim()
42
44
  }
43
45
  }, (reader, length) => {
44
46
  const obj: any = {}
@@ -91,43 +93,43 @@ export namespace RPC {
91
93
 
92
94
  export const codec = (): Codec<Message> => {
93
95
  if (_codec == null) {
94
- _codec = message<Message>((obj, writer, opts = {}) => {
96
+ _codec = message<Message>((obj, w, opts = {}) => {
95
97
  if (opts.lengthDelimited !== false) {
96
- writer.fork()
98
+ w.fork()
97
99
  }
98
100
 
99
101
  if (obj.from != null) {
100
- writer.uint32(10)
101
- writer.bytes(obj.from)
102
+ w.uint32(10)
103
+ w.bytes(obj.from)
102
104
  }
103
105
 
104
106
  if (obj.data != null) {
105
- writer.uint32(18)
106
- writer.bytes(obj.data)
107
+ w.uint32(18)
108
+ w.bytes(obj.data)
107
109
  }
108
110
 
109
111
  if (obj.sequenceNumber != null) {
110
- writer.uint32(26)
111
- writer.bytes(obj.sequenceNumber)
112
+ w.uint32(26)
113
+ w.bytes(obj.sequenceNumber)
112
114
  }
113
115
 
114
116
  if (obj.topic != null) {
115
- writer.uint32(34)
116
- writer.string(obj.topic)
117
+ w.uint32(34)
118
+ w.string(obj.topic)
117
119
  }
118
120
 
119
121
  if (obj.signature != null) {
120
- writer.uint32(42)
121
- writer.bytes(obj.signature)
122
+ w.uint32(42)
123
+ w.bytes(obj.signature)
122
124
  }
123
125
 
124
126
  if (obj.key != null) {
125
- writer.uint32(50)
126
- writer.bytes(obj.key)
127
+ w.uint32(50)
128
+ w.bytes(obj.key)
127
129
  }
128
130
 
129
131
  if (opts.lengthDelimited !== false) {
130
- writer.ldelim()
132
+ w.ldelim()
131
133
  }
132
134
  }, (reader, length) => {
133
135
  const obj: any = {}
@@ -182,36 +184,38 @@ export namespace RPC {
182
184
 
183
185
  export const codec = (): Codec<RPC> => {
184
186
  if (_codec == null) {
185
- _codec = message<RPC>((obj, writer, opts = {}) => {
187
+ _codec = message<RPC>((obj, w, opts = {}) => {
186
188
  if (opts.lengthDelimited !== false) {
187
- writer.fork()
189
+ w.fork()
188
190
  }
189
191
 
190
192
  if (obj.subscriptions != null) {
191
193
  for (const value of obj.subscriptions) {
192
- writer.uint32(10)
193
- RPC.SubOpts.codec().encode(value, writer)
194
+ w.uint32(10)
195
+ RPC.SubOpts.codec().encode(value, w, {
196
+ writeDefaults: true
197
+ })
194
198
  }
195
- } else {
196
- throw new Error('Protocol error: required field "subscriptions" was not found in object')
197
199
  }
198
200
 
199
201
  if (obj.messages != null) {
200
202
  for (const value of obj.messages) {
201
- writer.uint32(18)
202
- RPC.Message.codec().encode(value, writer)
203
+ w.uint32(18)
204
+ RPC.Message.codec().encode(value, w, {
205
+ writeDefaults: true
206
+ })
203
207
  }
204
- } else {
205
- throw new Error('Protocol error: required field "messages" was not found in object')
206
208
  }
207
209
 
208
210
  if (obj.control != null) {
209
- writer.uint32(26)
210
- ControlMessage.codec().encode(obj.control, writer)
211
+ w.uint32(26)
212
+ ControlMessage.codec().encode(obj.control, w, {
213
+ writeDefaults: false
214
+ })
211
215
  }
212
216
 
213
217
  if (opts.lengthDelimited !== false) {
214
- writer.ldelim()
218
+ w.ldelim()
215
219
  }
216
220
  }, (reader, length) => {
217
221
  const obj: any = {
@@ -268,49 +272,49 @@ export namespace ControlMessage {
268
272
 
269
273
  export const codec = (): Codec<ControlMessage> => {
270
274
  if (_codec == null) {
271
- _codec = message<ControlMessage>((obj, writer, opts = {}) => {
275
+ _codec = message<ControlMessage>((obj, w, opts = {}) => {
272
276
  if (opts.lengthDelimited !== false) {
273
- writer.fork()
277
+ w.fork()
274
278
  }
275
279
 
276
280
  if (obj.ihave != null) {
277
281
  for (const value of obj.ihave) {
278
- writer.uint32(10)
279
- ControlIHave.codec().encode(value, writer)
282
+ w.uint32(10)
283
+ ControlIHave.codec().encode(value, w, {
284
+ writeDefaults: true
285
+ })
280
286
  }
281
- } else {
282
- throw new Error('Protocol error: required field "ihave" was not found in object')
283
287
  }
284
288
 
285
289
  if (obj.iwant != null) {
286
290
  for (const value of obj.iwant) {
287
- writer.uint32(18)
288
- ControlIWant.codec().encode(value, writer)
291
+ w.uint32(18)
292
+ ControlIWant.codec().encode(value, w, {
293
+ writeDefaults: true
294
+ })
289
295
  }
290
- } else {
291
- throw new Error('Protocol error: required field "iwant" was not found in object')
292
296
  }
293
297
 
294
298
  if (obj.graft != null) {
295
299
  for (const value of obj.graft) {
296
- writer.uint32(26)
297
- ControlGraft.codec().encode(value, writer)
300
+ w.uint32(26)
301
+ ControlGraft.codec().encode(value, w, {
302
+ writeDefaults: true
303
+ })
298
304
  }
299
- } else {
300
- throw new Error('Protocol error: required field "graft" was not found in object')
301
305
  }
302
306
 
303
307
  if (obj.prune != null) {
304
308
  for (const value of obj.prune) {
305
- writer.uint32(34)
306
- ControlPrune.codec().encode(value, writer)
309
+ w.uint32(34)
310
+ ControlPrune.codec().encode(value, w, {
311
+ writeDefaults: true
312
+ })
307
313
  }
308
- } else {
309
- throw new Error('Protocol error: required field "prune" was not found in object')
310
314
  }
311
315
 
312
316
  if (opts.lengthDelimited !== false) {
313
- writer.ldelim()
317
+ w.ldelim()
314
318
  }
315
319
  }, (reader, length) => {
316
320
  const obj: any = {
@@ -370,27 +374,25 @@ export namespace ControlIHave {
370
374
 
371
375
  export const codec = (): Codec<ControlIHave> => {
372
376
  if (_codec == null) {
373
- _codec = message<ControlIHave>((obj, writer, opts = {}) => {
377
+ _codec = message<ControlIHave>((obj, w, opts = {}) => {
374
378
  if (opts.lengthDelimited !== false) {
375
- writer.fork()
379
+ w.fork()
376
380
  }
377
381
 
378
382
  if (obj.topic != null) {
379
- writer.uint32(10)
380
- writer.string(obj.topic)
383
+ w.uint32(10)
384
+ w.string(obj.topic)
381
385
  }
382
386
 
383
387
  if (obj.messageIDs != null) {
384
388
  for (const value of obj.messageIDs) {
385
- writer.uint32(18)
386
- writer.bytes(value)
389
+ w.uint32(18)
390
+ w.bytes(value)
387
391
  }
388
- } else {
389
- throw new Error('Protocol error: required field "messageIDs" was not found in object')
390
392
  }
391
393
 
392
394
  if (opts.lengthDelimited !== false) {
393
- writer.ldelim()
395
+ w.ldelim()
394
396
  }
395
397
  }, (reader, length) => {
396
398
  const obj: any = {
@@ -440,22 +442,20 @@ export namespace ControlIWant {
440
442
 
441
443
  export const codec = (): Codec<ControlIWant> => {
442
444
  if (_codec == null) {
443
- _codec = message<ControlIWant>((obj, writer, opts = {}) => {
445
+ _codec = message<ControlIWant>((obj, w, opts = {}) => {
444
446
  if (opts.lengthDelimited !== false) {
445
- writer.fork()
447
+ w.fork()
446
448
  }
447
449
 
448
450
  if (obj.messageIDs != null) {
449
451
  for (const value of obj.messageIDs) {
450
- writer.uint32(10)
451
- writer.bytes(value)
452
+ w.uint32(10)
453
+ w.bytes(value)
452
454
  }
453
- } else {
454
- throw new Error('Protocol error: required field "messageIDs" was not found in object')
455
455
  }
456
456
 
457
457
  if (opts.lengthDelimited !== false) {
458
- writer.ldelim()
458
+ w.ldelim()
459
459
  }
460
460
  }, (reader, length) => {
461
461
  const obj: any = {
@@ -502,18 +502,18 @@ export namespace ControlGraft {
502
502
 
503
503
  export const codec = (): Codec<ControlGraft> => {
504
504
  if (_codec == null) {
505
- _codec = message<ControlGraft>((obj, writer, opts = {}) => {
505
+ _codec = message<ControlGraft>((obj, w, opts = {}) => {
506
506
  if (opts.lengthDelimited !== false) {
507
- writer.fork()
507
+ w.fork()
508
508
  }
509
509
 
510
510
  if (obj.topic != null) {
511
- writer.uint32(10)
512
- writer.string(obj.topic)
511
+ w.uint32(10)
512
+ w.string(obj.topic)
513
513
  }
514
514
 
515
515
  if (opts.lengthDelimited !== false) {
516
- writer.ldelim()
516
+ w.ldelim()
517
517
  }
518
518
  }, (reader, length) => {
519
519
  const obj: any = {}
@@ -560,32 +560,32 @@ export namespace ControlPrune {
560
560
 
561
561
  export const codec = (): Codec<ControlPrune> => {
562
562
  if (_codec == null) {
563
- _codec = message<ControlPrune>((obj, writer, opts = {}) => {
563
+ _codec = message<ControlPrune>((obj, w, opts = {}) => {
564
564
  if (opts.lengthDelimited !== false) {
565
- writer.fork()
565
+ w.fork()
566
566
  }
567
567
 
568
568
  if (obj.topic != null) {
569
- writer.uint32(10)
570
- writer.string(obj.topic)
569
+ w.uint32(10)
570
+ w.string(obj.topic)
571
571
  }
572
572
 
573
573
  if (obj.peers != null) {
574
574
  for (const value of obj.peers) {
575
- writer.uint32(18)
576
- PeerInfo.codec().encode(value, writer)
575
+ w.uint32(18)
576
+ PeerInfo.codec().encode(value, w, {
577
+ writeDefaults: true
578
+ })
577
579
  }
578
- } else {
579
- throw new Error('Protocol error: required field "peers" was not found in object')
580
580
  }
581
581
 
582
582
  if (obj.backoff != null) {
583
- writer.uint32(24)
584
- writer.uint64(obj.backoff)
583
+ w.uint32(24)
584
+ w.uint64(obj.backoff)
585
585
  }
586
586
 
587
587
  if (opts.lengthDelimited !== false) {
588
- writer.ldelim()
588
+ w.ldelim()
589
589
  }
590
590
  }, (reader, length) => {
591
591
  const obj: any = {
@@ -639,23 +639,23 @@ export namespace PeerInfo {
639
639
 
640
640
  export const codec = (): Codec<PeerInfo> => {
641
641
  if (_codec == null) {
642
- _codec = message<PeerInfo>((obj, writer, opts = {}) => {
642
+ _codec = message<PeerInfo>((obj, w, opts = {}) => {
643
643
  if (opts.lengthDelimited !== false) {
644
- writer.fork()
644
+ w.fork()
645
645
  }
646
646
 
647
647
  if (obj.peerID != null) {
648
- writer.uint32(10)
649
- writer.bytes(obj.peerID)
648
+ w.uint32(10)
649
+ w.bytes(obj.peerID)
650
650
  }
651
651
 
652
652
  if (obj.signedPeerRecord != null) {
653
- writer.uint32(18)
654
- writer.bytes(obj.signedPeerRecord)
653
+ w.uint32(18)
654
+ w.bytes(obj.signedPeerRecord)
655
655
  }
656
656
 
657
657
  if (opts.lengthDelimited !== false) {
658
- writer.ldelim()
658
+ w.ldelim()
659
659
  }
660
660
  }, (reader, length) => {
661
661
  const obj: any = {}