Imported from davidhozic/mujoco-rs (
.claude/skills/clippy/SKILL.md). Install upstream withnpx skills add davidhozic/mujoco-rs --skill clippy. Copyright stays with the author.
Running Clippy
Run cargo clippy to catch common Rust mistakes, style issues, and potential bugs.
-
Check
Cargo.tomlfor the current MuJoCo version (look for+mj-X.Y.Zin the package version). Then find the matchingmujoco-X.Y.Z/directory at the repository root. -
Run clippy (replace
X.Y.Zwith the version found in step 1):
export MUJOCO_DYNAMIC_LINK_DIR=$(realpath mujoco-X.Y.Z/lib) && export LD_LIBRARY_PATH=$(realpath mujoco-X.Y.Z/lib/) && cargo clippy --all-targets --features renderer -- -D warnings 2>&1
- Verify the exit code is 0 (success). Fix any warnings before considering the work done.
[!NOTE]
--all-targetschecks lib, tests, examples, and benches.-D warningstreats all warnings as errors so nothing is silently ignored.--features rendererenables the renderer feature; adjust if working on viewer code (e.g.--features "renderer viewer-ui").- Do NOT fix integer truncation casts (e.g.
usize as i32) when the C API validates or clamps the value (seecoding-conventions.md).- Do NOT suppress clippy lints with
#[allow(...)]without a justifying comment.- To check a single file:
cargo clippy --lib --features renderer -- -D warnings.- To auto-fix simple lints:
cargo clippy --fix --allow-dirty --features renderer.