rust-lang/rust-clippy

A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 25 minutes ago
Added to GitGenius on September 4th, 2026
Created on November 19th, 2014
Open Issues & Pull Requests: 2,882 (-1)
GitHub issues: Enabled
Number of forks: 2,150
Total Stargazers: 13,494 (+0)
Total Subscribers: 77 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 17.6 hours
Mean response time: 124.2 days
90th percentile: 234.1 days
Tracked items: 2,368

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 85% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "I-ICE" is answered fastest, typically in about 3 hours, while "E-medium" waits about 2 days. 70% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 5% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1,207
New in 7 days: 11
Closed in 7 days: 10
Avg open age: 872 days
Stale 30+ days: 1,084
Stale 90+ days: 965

Recent activity

Opened in 7 days: 10
Closed in 7 days: 9
Comments in 7 days: 13
Events in 7 days: 41

Top labels

  • C-bug (1,441)
  • I-false-positive (686)
  • A-lint (638)
  • I-suggestion-causes-error (398)
  • I-false-negative (192)
  • good first issue (156)
  • C-enhancement (138)
  • I-ICE (116)

Detailed Description

Clippy is a linter for Rust that catches common mistakes and suggests improvements to your code. It provides over 800 lints organized into categories with configurable severity levels, from correctness checks that catch outright bugs to style suggestions and experimental lints still under development.

The tool works by analyzing Rust code during compilation and flagging patterns that are incorrect, suspicious, inefficient, or non-idiomatic. Lints are grouped into categories such as correctness (enabled by default and set to deny), suspicious (warn), style (warn), complexity (warn), performance (warn), pedantic (allow by default), restriction (allow by default), nursery (allow by default), and cargo (allow by default). This categorization lets you choose how strictly Clippy enforces suggestions: you can enable only the most critical checks or adopt stricter standards across your codebase. The restriction category is explicitly designed for case-by-case adoption rather than wholesale enablement, as its lints may flag valid code or contradict each other.

Clippy suits any Rust project that wants to improve code quality and catch bugs early. It integrates directly into the standard Rust toolchain via rustup and runs as a cargo subcommand, making adoption straightforward. The tool can automatically apply some of its suggestions using the --fix flag. Teams with strict coding standards can selectively enable lints from the restriction category to enforce project-specific rules, such as preventing unwrap calls in certain functions or disallowing floating-point arithmetic in critical modules.

The project maintains a steady stream of new lints added to the nursery category before graduation to stable categories. Issues are actively filed and addressed for lint improvements and new suggestions. Development focuses on expanding lint coverage while managing the balance between catching real problems and avoiding false positives, particularly in the pedantic category where occasional false positives are acknowledged.