From 5bc9e530f5215d10e05db43cf849a878b36157ca Mon Sep 17 00:00:00 2001 From: blyxyas Date: Mon, 20 Oct 2025 17:47:07 +0000 Subject: [PATCH 1/4] Add 'What we learned with Clippy's feature freeze' --- .../inside-rust/clippy-warming-up/index.md | 60 ++++++++++++++++++ .../clippy-warming-up/prs_per_week.png | Bin 0 -> 29040 bytes 2 files changed, 60 insertions(+) create mode 100644 content/inside-rust/clippy-warming-up/index.md create mode 100644 content/inside-rust/clippy-warming-up/prs_per_week.png diff --git a/content/inside-rust/clippy-warming-up/index.md b/content/inside-rust/clippy-warming-up/index.md new file mode 100644 index 000000000..11016c15b --- /dev/null +++ b/content/inside-rust/clippy-warming-up/index.md @@ -0,0 +1,60 @@ ++++ +path = "inside-rust/9999/12/31/clippys-feature-warming-up" +title = "What we learned with Clippy's feature freeze" +authors = ["blyxyas"] + +[extra] +team = "the Clippy team" +team_url = "https://www.rust-lang.org/governance/teams/dev-tools#team-clippy" ++++ + + +The [feature freeze affecting Clippy][feature-freeze] has reached its end date. This means that the Clippy project has been accepting pull +requests that add new features (and new lints) for a while. + +The Clippy has reviewed the results, and we can say that it's been a success 🎉. It has been so great that we managed +to create an all-time peak in the number of pull requests opened in a week. + +In this plot we can observe that peak (the red lines mark the start and end of the feature freeze) + +![Plot of PRs per week, we can see an all-time peak when the feature freeze happens](/inside-rust/clippy-warming-up/prs_per_week.png) + +After some data crunching of those pull requests opened after June 26th, we had 18 pull requests open in that period +that added lints. With 326 pull requests open by both and old contributors, we want to highlight all the new people +that started contributing to Clippy, 47 new contributors who opened a total of 195 pull requests. + +On a team meeting, we concluded that the results of the feature freeze were positive enough to warrant a future one. +The cadence and duration of these is still being decided. + +58% of all pull requests by new contributors were opened by the same person. This single contributor opened 114 pull requests of the +total 195. We held a meeting with her ([ada4a] on Github) to iron out some of the details of +the codebase and our procedures for new contributors. We are currently analyzing that meeting in order to improve +the experience for future and current contributors. + +We also asked some questions to Ada (ada4a) to include as a mini Q&A, here are some of the answers. + +## Ada's Q&A + +> Why do you like contributing to Clippy? What's so fun about it? + +I came to enjoy improving the suggestions that Clippy makes: they are +fascinating in how they point out of the exact part of code that is +problematic, and show the (sometimes pretty complex) manipulations required to +fix it. Also, It has been empowering to learn the machinery behind the +compiler, and use that knowledge to refine these diagnostics even further. + +> Would you recommend contributing to Clippy? Why or why not? + +Yes, for multiple reasons: +- Rust is (in)famously hard to learn, and to me, Clippy is one of the parts of the +toolchain most helpful for beginners, as it teaches idiomatic style and helps +discover helpful functions from std -- thus, contributing to it helps reduce the +entry barrier of the language. +- If you, like me, wanted to learn the inner workings of the compiler and contribute +to it some day, but were intimidated by the [development setup required for that][rustc-dev-guide], +Clippy could be a nice stepping stone, as hacking on it doesn't require compiling +rustc, but it interacts with a lot of compiler's data structures and APIs. + +[rustc-dev-guide]: https://rustc-dev-guide.rust-lang.org/building/how-to-build-and-run.html +[ada4a]: https://github.com/ada4a +[feature-freeze]: https://blog.rust-lang.org/inside-rust/2025/06/21/announcing-the-clippy-feature-freeze/ diff --git a/content/inside-rust/clippy-warming-up/prs_per_week.png b/content/inside-rust/clippy-warming-up/prs_per_week.png new file mode 100644 index 0000000000000000000000000000000000000000..349ee5643ac13a45cccda71d09bd1d1e24194a52 GIT binary patch literal 29040 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 literal 0 HcmV?d00001 From 623449e11585ccb0c4f67962f52d93f8d51cdebe Mon Sep 17 00:00:00 2001 From: blyxyas Date: Mon, 20 Oct 2025 20:24:26 +0000 Subject: [PATCH 2/4] 'The Clippy has' -> 'The Clippy team has' --- content/inside-rust/clippy-warming-up/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/inside-rust/clippy-warming-up/index.md b/content/inside-rust/clippy-warming-up/index.md index 11016c15b..77855a194 100644 --- a/content/inside-rust/clippy-warming-up/index.md +++ b/content/inside-rust/clippy-warming-up/index.md @@ -12,7 +12,7 @@ team_url = "https://www.rust-lang.org/governance/teams/dev-tools#team-clippy" The [feature freeze affecting Clippy][feature-freeze] has reached its end date. This means that the Clippy project has been accepting pull requests that add new features (and new lints) for a while. -The Clippy has reviewed the results, and we can say that it's been a success 🎉. It has been so great that we managed +The Clippy team has reviewed the results, and we can say that it's been a success 🎉. It has been so great that we managed to create an all-time peak in the number of pull requests opened in a week. In this plot we can observe that peak (the red lines mark the start and end of the feature freeze) From 028a83d1e43d54cf5e3b644e397a1af9b711146d Mon Sep 17 00:00:00 2001 From: blyxyas Date: Mon, 20 Oct 2025 23:16:13 +0000 Subject: [PATCH 3/4] Add 'new' to line 23 --- content/inside-rust/clippy-warming-up/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/inside-rust/clippy-warming-up/index.md b/content/inside-rust/clippy-warming-up/index.md index 77855a194..350e5ab4b 100644 --- a/content/inside-rust/clippy-warming-up/index.md +++ b/content/inside-rust/clippy-warming-up/index.md @@ -20,7 +20,7 @@ In this plot we can observe that peak (the red lines mark the start and end of t ![Plot of PRs per week, we can see an all-time peak when the feature freeze happens](/inside-rust/clippy-warming-up/prs_per_week.png) After some data crunching of those pull requests opened after June 26th, we had 18 pull requests open in that period -that added lints. With 326 pull requests open by both and old contributors, we want to highlight all the new people +that added lints. With 326 pull requests open by both new and old contributors, we want to highlight all the new people that started contributing to Clippy, 47 new contributors who opened a total of 195 pull requests. On a team meeting, we concluded that the results of the feature freeze were positive enough to warrant a future one. From 964035a0ab3e0cb0392b76a1effb591aeda8a20f Mon Sep 17 00:00:00 2001 From: blyxyas Date: Tue, 21 Oct 2025 18:40:38 +0000 Subject: [PATCH 4/4] Address review comments --- content/inside-rust/clippy-warming-up/index.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/content/inside-rust/clippy-warming-up/index.md b/content/inside-rust/clippy-warming-up/index.md index 350e5ab4b..a6c8da241 100644 --- a/content/inside-rust/clippy-warming-up/index.md +++ b/content/inside-rust/clippy-warming-up/index.md @@ -1,5 +1,5 @@ +++ -path = "inside-rust/9999/12/31/clippys-feature-warming-up" +path = "inside-rust/2025/10/22/clippys-feature-warming-up" title = "What we learned with Clippy's feature freeze" authors = ["blyxyas"] @@ -26,8 +26,7 @@ that started contributing to Clippy, 47 new contributors who opened a total of 1 On a team meeting, we concluded that the results of the feature freeze were positive enough to warrant a future one. The cadence and duration of these is still being decided. -58% of all pull requests by new contributors were opened by the same person. This single contributor opened 114 pull requests of the -total 195. We held a meeting with her ([ada4a] on Github) to iron out some of the details of +58% of all pull requests by new contributors (114 out of the total 195) were opened by the same person. We held a meeting with her ([ada4a] on Github) to iron out some of the details of the codebase and our procedures for new contributors. We are currently analyzing that meeting in order to improve the experience for future and current contributors. @@ -38,7 +37,7 @@ We also asked some questions to Ada (ada4a) to include as a mini Q&A, here are s > Why do you like contributing to Clippy? What's so fun about it? I came to enjoy improving the suggestions that Clippy makes: they are -fascinating in how they point out of the exact part of code that is +fascinating in how they point out the exact part of code that is problematic, and show the (sometimes pretty complex) manipulations required to fix it. Also, It has been empowering to learn the machinery behind the compiler, and use that knowledge to refine these diagnostics even further.