@libp2p/bootstrap 11.0.47 → 12.0.0-049bfa0fa

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/dist/src/index.js CHANGED
@@ -33,8 +33,8 @@
33
33
  */
34
34
  import { peerDiscoverySymbol, serviceCapabilities } from '@libp2p/interface';
35
35
  import { peerIdFromString } from '@libp2p/peer-id';
36
- import { P2P } from '@multiformats/mafmt';
37
- import { multiaddr } from '@multiformats/multiaddr';
36
+ import { CODE_P2P, multiaddr } from '@multiformats/multiaddr';
37
+ import { P2P } from '@multiformats/multiaddr-matcher';
38
38
  import { TypedEventEmitter } from 'main-event';
39
39
  const DEFAULT_BOOTSTRAP_TAG_NAME = 'bootstrap';
40
40
  const DEFAULT_BOOTSTRAP_TAG_VALUE = 50;
@@ -58,24 +58,26 @@ class Bootstrap extends TypedEventEmitter {
58
58
  this.components = components;
59
59
  this.log = components.logger.forComponent('libp2p:bootstrap');
60
60
  this.timeout = options.timeout ?? DEFAULT_BOOTSTRAP_DISCOVERY_TIMEOUT;
61
- this.list = [];
62
- for (const candidate of options.list) {
63
- if (!P2P.matches(candidate)) {
61
+ this.list = options.list
62
+ .map(str => multiaddr(str))
63
+ .filter(ma => {
64
+ if (!P2P.matches(ma)) {
64
65
  this.log.error('Invalid multiaddr');
65
- continue;
66
+ return false;
66
67
  }
67
- const ma = multiaddr(candidate);
68
- const peerIdStr = ma.getPeerId();
68
+ const peerIdStr = ma.getComponents().findLast(c => c.code === CODE_P2P)?.value;
69
69
  if (peerIdStr == null) {
70
70
  this.log.error('Invalid bootstrap multiaddr without peer id');
71
- continue;
71
+ return false;
72
72
  }
73
- const peerData = {
74
- id: peerIdFromString(peerIdStr),
73
+ return true;
74
+ })
75
+ .map(ma => {
76
+ return {
77
+ id: peerIdFromString(ma.getComponents().findLast(c => c.code === CODE_P2P)?.value ?? ''),
75
78
  multiaddrs: [ma]
76
79
  };
77
- this.list.push(peerData);
78
- }
80
+ });
79
81
  this._init = options;
80
82
  }
81
83
  [peerDiscoverySymbol] = this;
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/bootstrap",
3
- "version": "11.0.47",
3
+ "version": "12.0.0-049bfa0fa",
4
4
  "description": "Peer discovery via a list of bootstrap peers",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/peer-discovery-bootstrap#readme",
@@ -47,17 +47,17 @@
47
47
  "test:electron-main": "aegir test -t electron-main"
48
48
  },
49
49
  "dependencies": {
50
- "@libp2p/interface": "^2.11.0",
51
- "@libp2p/interface-internal": "^2.3.19",
52
- "@libp2p/peer-id": "^5.1.9",
53
- "@multiformats/mafmt": "^12.1.6",
54
- "@multiformats/multiaddr": "^12.4.4",
50
+ "@libp2p/interface": "3.0.0-049bfa0fa",
51
+ "@libp2p/interface-internal": "3.0.0-049bfa0fa",
52
+ "@libp2p/peer-id": "6.0.0-049bfa0fa",
53
+ "@multiformats/multiaddr": "^13.0.1",
54
+ "@multiformats/multiaddr-matcher": "^3.0.1",
55
55
  "main-event": "^1.0.1"
56
56
  },
57
57
  "devDependencies": {
58
- "@libp2p/interface-compliance-tests": "^6.5.0",
59
- "@libp2p/logger": "^5.2.0",
60
- "aegir": "^47.0.14",
58
+ "@libp2p/interface-compliance-tests": "7.0.0-049bfa0fa",
59
+ "@libp2p/logger": "6.0.0-049bfa0fa",
60
+ "aegir": "^47.0.22",
61
61
  "sinon-ts": "^2.0.0"
62
62
  },
63
63
  "sideEffects": false
package/src/index.ts CHANGED
@@ -34,8 +34,8 @@
34
34
 
35
35
  import { peerDiscoverySymbol, serviceCapabilities } from '@libp2p/interface'
36
36
  import { peerIdFromString } from '@libp2p/peer-id'
37
- import { P2P } from '@multiformats/mafmt'
38
- import { multiaddr } from '@multiformats/multiaddr'
37
+ import { CODE_P2P, multiaddr } from '@multiformats/multiaddr'
38
+ import { P2P } from '@multiformats/multiaddr-matcher'
39
39
  import { TypedEventEmitter } from 'main-event'
40
40
  import type { ComponentLogger, Logger, PeerDiscovery, PeerDiscoveryEvents, PeerInfo, PeerStore, Startable } from '@libp2p/interface'
41
41
  import type { ConnectionManager } from '@libp2p/interface-internal'
@@ -103,29 +103,29 @@ class Bootstrap extends TypedEventEmitter<PeerDiscoveryEvents> implements PeerDi
103
103
  this.components = components
104
104
  this.log = components.logger.forComponent('libp2p:bootstrap')
105
105
  this.timeout = options.timeout ?? DEFAULT_BOOTSTRAP_DISCOVERY_TIMEOUT
106
- this.list = []
107
-
108
- for (const candidate of options.list) {
109
- if (!P2P.matches(candidate)) {
110
- this.log.error('Invalid multiaddr')
111
- continue
112
- }
113
-
114
- const ma = multiaddr(candidate)
115
- const peerIdStr = ma.getPeerId()
116
-
117
- if (peerIdStr == null) {
118
- this.log.error('Invalid bootstrap multiaddr without peer id')
119
- continue
120
- }
121
-
122
- const peerData: PeerInfo = {
123
- id: peerIdFromString(peerIdStr),
124
- multiaddrs: [ma]
125
- }
126
-
127
- this.list.push(peerData)
128
- }
106
+ this.list = options.list
107
+ .map(str => multiaddr(str))
108
+ .filter(ma => {
109
+ if (!P2P.matches(ma)) {
110
+ this.log.error('Invalid multiaddr')
111
+ return false
112
+ }
113
+
114
+ const peerIdStr = ma.getComponents().findLast(c => c.code === CODE_P2P)?.value
115
+
116
+ if (peerIdStr == null) {
117
+ this.log.error('Invalid bootstrap multiaddr without peer id')
118
+ return false
119
+ }
120
+
121
+ return true
122
+ })
123
+ .map(ma => {
124
+ return {
125
+ id: peerIdFromString(ma.getComponents().findLast(c => c.code === CODE_P2P)?.value ?? ''),
126
+ multiaddrs: [ma]
127
+ }
128
+ })
129
129
 
130
130
  this._init = options
131
131
  }
@@ -1,8 +0,0 @@
1
- {
2
- "BootstrapComponents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_bootstrap.BootstrapComponents.html",
3
- ".:BootstrapComponents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_bootstrap.BootstrapComponents.html",
4
- "BootstrapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_bootstrap.BootstrapInit.html",
5
- ".:BootstrapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_bootstrap.BootstrapInit.html",
6
- "bootstrap": "https://libp2p.github.io/js-libp2p/functions/_libp2p_bootstrap.bootstrap.html",
7
- ".:bootstrap": "https://libp2p.github.io/js-libp2p/functions/_libp2p_bootstrap.bootstrap.html"
8
- }