Automatonymous
coyote
Our great sponsors
Automatonymous | coyote | |
---|---|---|
0 | 11 | |
721 | 1,371 | |
0.8% | 1.5% | |
0.0 | 7.4 | |
10 months ago | about 1 month ago | |
C# | C# | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Automatonymous
We haven't tracked posts mentioning Automatonymous yet.
Tracking mentions began in Dec 2020.
coyote
-
Implementing a distributed key-value store on top of implementing Raft in Go
Microsoft has a library/tool called Coyote* that helps with testing distributed systems; you can write tests/specifications, Coyote will systematically explore nondeterminism in your system and check if your tests still pass. If there's a failure, it'll show the sequence of events that led to the failing test.
I started a project to implement Raft with a KV-store on top, similar to the article, meaning to use Coyote to test it; I didn't get that far before losing interest, though. It's reassuring to read that it took Phil several months to write the code in the post, it's good to know that this is a decidedly nontrivial problem.
-
What's the best way to test parallel jobs?
Something like coyote by MS?
-
Using Java's Project Loom to build more reliable distributed systems
If you're looking for similar concurrency testing in the dotnet world, checkout Coyote:
https://microsoft.github.io/coyote/
https://innovation.microsoft.com/en-us/exploring-project-coy...
- Coyote: .NET library tool help ensure that your code is free of concurrency bugs
-
TLA+ Graph Explorer
Visualizations do help a lot when model checkers and concurrency schedule exploration tools like Coyote find bugs. Coyote include the ability to visualize the traces if you express your concurrency using actors (see https://microsoft.github.io/coyote/#concepts/actors/state-ma...)
It also allows you to implement your own "logger" through which you can emit enough information to construct some cool visualizations. I had a lot of fun working on visualizing an implementation of Paxos using Coyote (then P#) (screenshot at https://ibb.co/TTk2hYb)
-
Finding threading issues in code quickly
The closest I can think of is https://github.com/microsoft/coyote
What are some alternatives?
Stateless - A simple library for creating state machines in C# code
Appccelerate - State Machine - A .net library that lets you build state machines (hierarchical, async with fluent definition syntax and reporting capabilities).
LiquidState - Efficient asynchronous and synchronous state machines for .NET
P - The P programming language.
lucene-grep - Grep-like utility based on Lucene Monitor compiled with GraalVM native-image
NSubstitute - A friendly substitute for .NET mocking libraries.
loom - https://openjdk.org/projects/loom
tlaplus-graph-explorer - A static web application to explore and animate a TLA+ state graph.