Binston Sukhael Cardoza 0e9d339bd2
ci: use workspace inheritance to enforce lints in all crates
Starting with nightly-2023-09-10, the `[lints]` section in `Cargo.toml` files is stable. Together with workspace inheritance, this can be used to declare all lints we want to enforce in a single place.

Resolves: #4484.

Pull-Request: #4575.
2023-10-09 02:20:46 +00:00
..
2023-09-21 01:10:24 +00:00

Description

The ping example showcases how to create a network of nodes that establish connections, negotiate the ping protocol, and ping each other.

Usage

To run the example, follow these steps:

  1. In a first terminal window, run the following command:

    cargo run
    

    This command starts a node and prints the PeerId and the listening addresses, such as Listening on "/ip4/0.0.0.0/tcp/24915".

  2. In a second terminal window, start a new instance of the example with the following command:

    cargo run -- /ip4/127.0.0.1/tcp/24915
    

    Replace /ip4/127.0.0.1/tcp/24915 with the listen address of the first node obtained from the first terminal window.

  3. The two nodes will establish a connection, negotiate the ping protocol, and begin pinging each other.

Conclusion

The ping example demonstrates the basic usage of libp2p to create a simple p2p network and implement a ping protocol. By running multiple nodes and observing the ping behavior, users can gain insights into how libp2p facilitates communication and interaction between peers.