GitHunt
MA

martin-kolinek/cargo-ensure-no-cyclic-deps

A cargo tool to detect cyclic dependencies between crates in a workspace (including dev-dependencies).

cargo-ensure-no-cyclic-deps

A cargo subcommand that detects cyclic dependencies between crates in a workspace. This is useful if you
want to prevent dev-dependencies from creating dependency cycles as that can cause issues,
e.g. for cargo-release.

Usage

Run this command in a cargo workspace:

cargo ensure-no-cyclic-deps

The command will:

  • Analyze all workspace crates
  • Check for cyclic dependencies (including dev-dependencies)
  • Report any cycles found
  • Exit with code 1 if cycles are detected, 0 otherwise

Installation

cargo install --path .

Or from within the workspace:

cargo install cargo-ensure-no-cyclic-deps

Example Output

When cycles are detected:

Error: Cyclic dependencies detected!

Cycle 1:
  crate_a -> crate_b -> crate_c -> crate_a

Cycle 2:
  crate_x -> crate_y -> crate_x

When no cycles are found:

No cyclic dependencies found.

License

MIT

Languages

Rust100.0%
MIT License
Created November 28, 2025
Updated December 3, 2025
martin-kolinek/cargo-ensure-no-cyclic-deps | GitHunt