21 releases

0.6.4 Oct 9, 2024
0.6.3 Jul 15, 2024
0.6.2 Apr 3, 2024
0.6.1 Jan 16, 2024
0.3.2 Nov 14, 2022

#311 in Simulation

Download history 77844/week @ 2024-07-31 90467/week @ 2024-08-07 108340/week @ 2024-08-14 105314/week @ 2024-08-21 93659/week @ 2024-08-28 115515/week @ 2024-09-04 116668/week @ 2024-09-11 114444/week @ 2024-09-18 126869/week @ 2024-09-25 134947/week @ 2024-10-02 147519/week @ 2024-10-09 143560/week @ 2024-10-16 166217/week @ 2024-10-23 147763/week @ 2024-10-30 159941/week @ 2024-11-06 147488/week @ 2024-11-13

652,670 downloads per month
Used in 5 crates (3 directly)

MIT license

155KB
3K SLoC

Turmoil

This is very experimental

Add hardship to your tests.

Turmoil is a framework for testing distributed systems. It provides deterministic execution by running multiple concurrent hosts within a single thread. It introduces "hardship" into the system via changes in the simulated network. The network can be controlled manually or with a seeded rng.

Crates.io Documentation Build Status Discord chat

Quickstart

Add this to your Cargo.toml.

[dev-dependencies]
turmoil = "0.6"

See crate documentation for simulation setup instructions.

Examples

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in turmoil by you, shall be licensed as MIT, without any additional terms or conditions.

Dependencies

~11–19MB
~232K SLoC