fortress-build / whirlwind

🌀 Ridiculously fast, fully asynchronous, sharded hashmap for Rust.
https://crates.io/crates/whirlwind
Apache License 2.0
441 stars 5 forks source link

Add Loom tests and verification + ci #5

Open willothy opened 3 weeks ago

willothy commented 3 weeks ago

Use tokio-rs/loom for safety checking.

ellipsis-dev[bot] commented 3 weeks ago
:rocket: This implementation plan was created by @ellipsis-dev

Tag me (@ellipsis-dev) in a comment with guidance if you want me to replan or to implement this plan.

Implementation Plan

Step 1: Add Loom as dev dependency

Path: Cargo.toml Add loom = "0.5" under [dev-dependencies] in Cargo.toml.

Step 2: Add Loom tests for concurrency

Path: tests/loom_tests.rs In tests/loom_tests.rs, add Loom tests for ShardMap and ShardSet using loom::model to simulate concurrent operations.

Step 3: Add Loom tests to CI

Path: .github/workflows/rust.yml In .github/workflows/rust.yml, add a job for Loom tests, mirroring the tests job. Include steps to install dependencies and run cargo test with Loom configurations.


Questions? Check out our documentation. Leave :+1:/:-1: on this plan to give us feedback.