Skip to content

rust-lang/crater

Folders and files

NameName
Last commit message
Last commit date
Dec 8, 2024
Dec 7, 2024
Jan 19, 2023
Oct 2, 2024
Oct 28, 2022
Mar 5, 2025
Dec 22, 2023
Jan 12, 2025
Oct 9, 2019
Jul 25, 2019
Jun 27, 2020
Sep 4, 2020
Mar 5, 2025
Mar 5, 2025
Oct 8, 2024
May 2, 2020
Oct 28, 2022
Mar 5, 2025
Mar 20, 2018
Jan 7, 2022
May 18, 2018
Apr 2, 2018
Jun 12, 2018

Repository files navigation

Crater

Crater is a tool to run experiments across parts of the Rust ecosystem. Its primary purpose is to detect regressions in the Rust compiler, and it does this by building a large number of crates, running their test suites and comparing the results between two versions of the Rust compiler.

It can operate locally (with Docker as the only dependency) or distributed on the cloud. It only works on Linux at the moment, and it's licensed under both the MIT and Apache 2.0 licenses.

The current features of Crater are:

  • Discover Rust codebases on crates.io and GitHub
  • Execute experiments on custom Rust toolchains
  • Run cargo build and cargo test over all the discovered codebases
  • Build and test without dependency updates or network access
  • Run arbitrary tests over all the discovered codebases
  • Generate HTML reports with results and logs
  • Isolate tests in Docker containers

Crater is a successor to taskcluster-crater. It was subsequently named cargobomb before resuming the Crater name.

⚠️ DO NOT RUN CRATER IN AN UNSANDBOXED ENVIRONMENT ⚠️
Crater executes malicious code that will destroy what you love.

Documentation

Want to contribute to Crater? Check out the contribution guide.

User documentation:

Operations documentation:

Technical documentation: