Skip to content

Commit

Permalink
Merge pull request #51 from vasco-santos/chore/use-new-peer-discovery…
Browse files Browse the repository at this point in the history
…-interface

chore: use new peer-discovery interface
  • Loading branch information
wemeetagain committed Apr 24, 2020
2 parents 4d02a36 + 2efdecf commit 9950fb8
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 49 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,6 @@ lib

# swp file
*.swp

# others
package-lock.json
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@ Included is a libp2p peer-discovery compatibility module.
```typescript
import { Discv5Discovery, ENR } from "@chainsafe/discv5";
import Libp2p from "libp2p";
import PeerInfo from "peer-info";
import PeerId from "peer-id";

const myPeerInfo: PeerInfo = ...;
const myPeerId: PeerId = ...;

const bootstrapEnrs: ENR[] = [...];

const libp2p = new Libp2p({
peerInfo: myPeerInfo,
peerId: myPeerId,
modules: {
peerDiscovery: [Discv5Discovery],
},
Expand Down
1 change: 0 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@
"libp2p-crypto": "^0.17.5",
"multiaddr": "^7.4.2",
"peer-id": "^0.13.11",
"peer-info": "^0.17.5",
"rlp": "^2.2.4",
"strict-event-emitter-types": "^2.0.0"
}
Expand Down
16 changes: 7 additions & 9 deletions src/libp2p/discv5.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { EventEmitter } from "events";
import PeerInfo = require("peer-info");
import PeerId = require("peer-id");
import Multiaddr = require("multiaddr");
import { randomBytes } from "libp2p-crypto";

Expand All @@ -24,7 +24,7 @@ export interface IDiscv5DiscoveryInputOptions {
}

export interface IDiscv5DiscoveryOptions extends IDiscv5DiscoveryInputOptions {
peerInfo: PeerInfo;
peerId: PeerId;
}

/**
Expand All @@ -38,7 +38,7 @@ export class Discv5Discovery extends EventEmitter {

constructor(options: IDiscv5DiscoveryOptions) {
super();
this.discv5 = Discv5.create(options.enr, options.peerInfo.id, Multiaddr(options.bindAddr));
this.discv5 = Discv5.create(options.enr, options.peerId, Multiaddr(options.bindAddr));
this.started = false;
options.bootEnrs.forEach((bootEnr) => this.discv5.addEnr(bootEnr));
}
Expand Down Expand Up @@ -69,12 +69,10 @@ export class Discv5Discovery extends EventEmitter {
return;
}
for (const enr of enrs) {
const peerInfo = new PeerInfo(await enr.peerId());
const multiaddrTCP = enr.multiaddrTCP;
if (multiaddrTCP) {
peerInfo.multiaddrs.add(multiaddrTCP);
}
this.emit("peer", peerInfo);
this.emit("peer", {
id: enr.peerId(),
multiaddrs: [Multiaddr(enr.multiaddrTCP)]
});
}
}
}
Expand Down
38 changes: 2 additions & 36 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -574,7 +574,7 @@ chokidar@^3.0.0:
optionalDependencies:
fsevents "~2.1.1"

cids@^0.8.0, cids@~0.8.0:
cids@^0.8.0:
version "0.8.0"
resolved "https://registry.yarnpkg.com/cids/-/cids-0.8.0.tgz#41bf050bc7669cc8d648e21ca834b747bf6fa673"
integrity sha512-HdKURxtSOnww3H28CJU2TauIklEBsOn+ouGl2EOnSfVCVkH6+sWTj7to2D/BmuWvwzEy2+ZIKdcIwsXHJBQVew==
Expand Down Expand Up @@ -1804,13 +1804,6 @@ lru-cache@4.1.x, lru-cache@^4.0.1:
pseudomap "^1.0.2"
yallist "^2.1.2"

mafmt@^7.1.0:
version "7.1.0"
resolved "https://registry.yarnpkg.com/mafmt/-/mafmt-7.1.0.tgz#4126f6d0eded070ace7dbbb6fb04977412d380b5"
integrity sha512-vpeo9S+hepT3k2h5iFxzEHvvR0GPBx9uKaErmnRzYNcaKb03DgOArjEMlgG4a9LcuZZ89a3I8xbeto487n26eA==
dependencies:
multiaddr "^7.3.0"

make-dir@^2.0.0, make-dir@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5"
Expand Down Expand Up @@ -1941,18 +1934,6 @@ ms@^2.1.1:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==

multiaddr@^7.3.0:
version "7.4.3"
resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-7.4.3.tgz#0626945acf309f1c811a95613a0a4371c7aa6109"
integrity sha512-gFjXmjcCMyrx5KF1QOohUQm6a3E2XF4kydvClS8DmRJkY3qJaDPNNe0OC7mWvVUE0nnE8HjyToQfABnpKClXRA==
dependencies:
buffer "^5.5.0"
cids "~0.8.0"
class-is "^1.1.0"
is-ip "^3.1.0"
multibase "^0.7.0"
varint "^5.0.0"

multiaddr@^7.4.2:
version "7.4.2"
resolved "https://registry.yarnpkg.com/multiaddr/-/multiaddr-7.4.2.tgz#70021158dfcdc81d8e0e2664b82a7bc1b4c8dce2"
Expand Down Expand Up @@ -2307,7 +2288,7 @@ pathval@^1.1.0:
resolved "https://registry.yarnpkg.com/pathval/-/pathval-1.1.0.tgz#b942e6d4bde653005ef6b71361def8727d0645e0"
integrity sha1-uULm1L3mUwBe9rcTYd74cn0GReA=

peer-id@^0.13.11, peer-id@~0.13.2:
peer-id@^0.13.11:
version "0.13.11"
resolved "https://registry.yarnpkg.com/peer-id/-/peer-id-0.13.11.tgz#d3b11e45d80839363aeac0e4fa1758368e3b93cd"
integrity sha512-CWDPr4ppKslARSe1qfMlGjTiDqL4Hl25Qyfq43PEPAeRD2meI8B2HfxO0NMMB8BUhNvNGPeDAwhLptyB9jVwkw==
Expand All @@ -2319,16 +2300,6 @@ peer-id@^0.13.11, peer-id@~0.13.2:
multihashes "~0.4.15"
protons "^1.0.2"

peer-info@^0.17.5:
version "0.17.5"
resolved "https://registry.yarnpkg.com/peer-info/-/peer-info-0.17.5.tgz#80afc709e03069cf94a29d8fcfa0426140fa7b69"
integrity sha512-ebbbnvdCnb0onWuW+QNXO4KvLPuQ+kih3zezhov2uxHqA6VLbtzMUyQ06IHtwYLr50AYYWyBOSn17g4zEBsFpw==
dependencies:
mafmt "^7.1.0"
multiaddr "^7.3.0"
peer-id "~0.13.2"
unique-by "^1.0.0"

pem-jwk@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/pem-jwk/-/pem-jwk-2.0.0.tgz#1c5bb264612fc391340907f5c1de60c06d22f085"
Expand Down Expand Up @@ -2979,11 +2950,6 @@ ultron@~1.1.0:
resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"
integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==

unique-by@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unique-by/-/unique-by-1.0.0.tgz#5220c86ba7bc572fb713ad74651470cb644212bd"
integrity sha1-UiDIa6e8Vy+3E610ZRRwy2RCEr0=

universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
Expand Down

0 comments on commit 9950fb8

Please sign in to comment.