Crates.io | parsec |
lib.rs | parsec |
version | 0.7.3 |
source | src |
created_at | 2016-04-06 04:00:11.720757 |
updated_at | 2020-11-23 14:43:44.058521 |
description | Implementation of Protocol for Asynchronous, Reliable, Secure and Efficient Consensus |
homepage | https://maidsafe.net |
repository | https://github.com/maidsafe/parsec |
max_upload_size | |
id | 4682 |
size | 939,743 |
Crate | Documentation | Linux/macOS | Windows | Issues |
---|---|---|---|---|
MaidSafe website | SAFE Dev Forum | SAFE Network Forum |
---|
There is a basic example available in the examples folder. This allows you to simulate a network of peers each running the Parsec protocol to reach consensus on a number of random network events. There is also the ability to dump each peer's gossip graph in dot format to a file in your system temp dir. This can be enabled via the feature dump-graphs
. So, e.g. to run the example for a network of five peers and ten network events:
cargo run --release --example=basic --features=mock,dump-graphs -- --initial-peers=5 --opaque=10
If you have dot
from graphviz available in your path, then SVG graphs will also have been generated from each of these dot files. If not, you can copy the contents of a generated dot file into an online converter (e.g. http://viz-js.com) to view the gossip graph.
If the instructions in the overview are a bit sparse for your taste, please refer to the tutorial for a step-by-step guide.
dump-graphs
, a dot representation of all network communications is outputself_parent
)Licensed under the General Public License (GPL), version 3 (LICENSE http://www.gnu.org/licenses/gpl-3.0.en.html).
Parsec is licensed under GPLv3 with linking exception. This means you can link to and use the library from any program, proprietary or open source; paid or gratis. However, if you modify parsec, you must distribute the source to your modified version under the terms of the GPLv3.
See the LICENSE file for more details.
Want to contribute? Great :tada:
There are many ways to give back to the project, whether it be writing new code, fixing bugs, or just reporting errors. All forms of contributions are encouraged!
For instructions on how to contribute, see our Guide to contributing.