Rust model-checking

Open-source Rust projects categorized as model-checking

Top 3 Rust model-checking Projects

  • kani

    Kani Rust Verifier

    Project mention: CVE-2023-4863: Heap buffer overflow in WebP (Chrome) | news.ycombinator.com | 2023-09-12

    > those applications need the proof for correctness so that more dangerous code---say, what would need `unsafe` in Rust---can be safely added

    There are actually already tools built for this very purpose in Rust (see Kani [1] for instance).

    Formal verification has a serious scaling problem, so forming programs in such a way that there are a few performance-critical areas that use unsafe routines seems like the best route. I feel like Rust leans into this paradigm with `unsafe` blocks.

    [1] - https://github.com/model-checking/kani

  • cargo-check-deadlock

    Find deadlocks in Rust code with Petri net model checking

    Project mention: Petri Net for tokio ? | /r/rust | 2023-09-05

    And a project uses it to check for deadlocks. https://github.com/hlisdero/cargo-check-deadlock/ but it doesn't work for async code, yet.

  • SonarQube

    Static code analysis for 29 languages.. Your projects are multi-language. So is SonarQube analysis. Find Bugs, Vulnerabilities, Security Hotspots, and Code Smells so you can release quality code every time. Get started analyzing your projects today for free.

  • lincheck

    A linearizability checker for concurrent data structures

    Project mention: Lineriazability Checker in Rust | news.ycombinator.com | 2023-07-22
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2023-09-12.

Rust model-checking related posts

Index

What are some of the best open-source model-checking projects in Rust? This list will help you:

Project Stars
1 kani 1,410
2 cargo-check-deadlock 11
3 lincheck 6
Updating dependencies is time-consuming.
Solutions like Dependabot or Renovate update but don't merge dependencies. You need to do it manually while it could be fully automated! Add a Merge Queue to your workflow and stop caring about PR management & merging. Try Mergify for free.
blog.mergify.com