Phase 1 — stay cargo-format
- Install rusty and a toolchain (Install).
- Enter the existing workspace root (
Cargo.tomlpresent). - Use native PM verbs:
build/check/run report unsupported shapes, that is intentional fail-closed behavior for cargo-format graphs not yet in the native matrix.
Interop-only verbs still expect cargo on PATH:
Phase 2 — dry-run migration
rusty.json + rusty.lock and which Cargo files would be removed.
Phase 3 — migrate
- Prefer rusty-format workflows and scripts in
rusty.json. - Re-run
rusty lock,rusty fetch,rusty build,rusty test. - Commit the new manifests and lockfile as you would any dependency change.
Scripts map
Many teams encode clippy/fmt/test policy in CI scripts. Under rusty-format, put them inrusty.json:
Rollback posture
Keep a git branch or tag beforemigrate --yes. Migration is intended to be deliberate; use --dry-run on large monorepos and migrate leaf packages first if you need a staged cutover.