ash-flare
A Rust supervision framework inspired by Erlang/OTP, with Python bindings.
Features
- Process supervision trees with automatic restart
- Configurable restart policies (Permanent, Temporary, Transient)
- Supervision strategies (OneForOne, OneForAll, RestForOne)
- Worker messaging via mailboxes
- Distributed supervision across network nodes
- Python bindings with asyncio integration
Installation
Rust
Python
Install from GitHub Releases:
Replace the wheel filename with the appropriate version and platform from the releases page
Quick Start
Rust
use ;
use Duration;
let handle = new
.with_restart_policy
.with_restart_delay
.spawn
.await?;
handle.start_child_linked.await?;
Python
=
For async Python usage with asyncio.to_thread():
await
Documentation
License
Apache License 2.0 - see LICENSE
Acknowledgements
- Inspired by Erlang/OTP supervision principle
- Some code generated with the help of AI tools