Skip to main content
rusty build, run, check, and test use the native rustc graph by default. They do not fall back to cargo when the graph is unsupported.

Build

Affected builds

BASE is a git ref (default behavior matches workspace affected tooling). Useful in CI monorepos.

Parallelism

Lifecycle scripts

If rusty.json defines scripts.build, that entry can fully override the built-in driver. Otherwise rusty runs:
  1. optional prebuild
  2. native build
  3. optional postbuild
Disable script hooks with RUSTY_NO_SCRIPTS=1 or --no-scripts where supported.

Run and check

Same native constraints as build:

Test

Policy: never cargo by default. Optional scripts.test can override the whole verb when you opt in via config. Test binary caching is on unless RUSTY_TEST_CACHE=0.

Lint and format

Not built-in clippy/rustfmt drivers under these names:
Cargo-flavored tools remain available as interop (need cargo on PATH):
Prefer scripts for reproducible monorepo policy.

When native fails

If the project shape is outside the canHandle matrix, rusty prints a hard error. Fix the project shape, extend support (for contributors), or use a script override intentionally — do not expect a silent cargo path for build / test on rusty-format.