moonpool 0.4.0

A place to experiment around actors
Documentation

moonpool

Deterministic simulation testing for distributed systems in Rust.

Inspired by FoundationDB's simulation testing.

Note: This is a hobby-grade project under active development.

Architecture

┌─────────────────────────────────────────────────────────────┐
│              moonpool (this crate)                          │
│   Re-exports all functionality + virtual actors module      │
├──────────────────────────┬──────────────────────────────────┤
│  moonpool-transport      │       moonpool-sim               │
│  • Peer connections      │       • SimWorld runtime         │
│  • Wire format           │       • Chaos testing            │
│  • NetTransport + RPC    │       • Buggify macros           │
│  • #[service] macro      │       • 15 assertion macros      │
│    (via transport-derive)│       • Multiverse exploration   │
│                          │         (via moonpool-explorer)  │
├──────────────────────────┴──────────────────────────────────┤
│                     moonpool-core                           │
│  Provider traits: Time, Task, Network, Random, Storage      │
│  Core types: UID, Endpoint, NetworkAddress                  │
└─────────────────────────────────────────────────────────────┘

Documentation

License

Apache 2.0