js-libp2p 0.24.0 released

by Jacob Heun on 2018-11-16

🔦 Highlights

🚦 Custom Content/Peer Routing Support

Libp2p will now support custom content and peer routers, which will enable users to better customize their DHT experience. The new release allows for using the new Delegated Peer Routing and Delegated Content Routing modules to leverage an external node’s DHT instead of or in conjunction with their own. This enables nodes in more resource restricted environments to use an external DHT instead of running their own, which can be very resource intensive.

🔌 Relay enabled by default

In an effort to improve default connectivity, circuit relay is now enabled by default. Hop is still disabled by default to prevent relaying traffic for other nodes out of the box, as this is expensive for the node. By enabling circuit relay by default, nodes will now be able to accept and dial to other circuit relay nodes. This improves a nodes default ability to communicate in isolated environments.

🤖 State Machine

Libp2p is now a state machine. When starting and stopping the node you can now listen for the stop and start events. Libp2p also exposes a new method, dialFSM, which calls back with a Connection State Machine. This gives users the ability to listen to more events on individual connections. You can find out more about these events in libp2p-switch readme.

🏗 API Changes

🙌🏽 Want to contribute?

Would you like to contribute to the libp2p project and don’t know how? Well, there are a few places you can get started:

⁉️ Do you have questions?

The best place to ask your questions about libp2p, how it works and what you can do with it is at discuss.ipfs.io. We are also available at the #libp2p channel on Freenode.

That’s all for now!