@@ -6,7 +6,94 @@ document.
6
6
7
7
## Unreleased / Beta / In Rust Nightly
8
8
9
- [ 1e5237f4...master] ( https://github.com/rust-lang/rust-clippy/compare/1e5237f4...master )
9
+ [ 03a5b6b9...master] ( https://github.com/rust-lang/rust-clippy/compare/03a5b6b9...master )
10
+
11
+ ## Rust 1.88
12
+
13
+ Current stable, released 2025-06-26
14
+
15
+ [ View all 126 merged pull requests] ( https://github.com/rust-lang/rust-clippy/pulls?q=merged%3A2025-03-21T10%3A30%3A57Z..2025-05-01T08%3A03%3A26Z+base%3Amaster )
16
+
17
+ ### New Lints
18
+
19
+ * Added [ ` swap_with_temporary ` ] to ` complexity ` [ #14046 ] ( https://github.com/rust-lang/rust-clippy/pull/14046 )
20
+ * Added [ ` redundant_test_prefix ` ] to ` restriction ` [ #13710 ] ( https://github.com/rust-lang/rust-clippy/pull/13710 )
21
+ * Added [ ` manual_dangling_ptr ` ] to ` style ` [ #14107 ] ( https://github.com/rust-lang/rust-clippy/pull/14107 )
22
+ * Added [ ` char_indices_as_byte_indices ` ] to ` correctness ` [ #13435 ] ( https://github.com/rust-lang/rust-clippy/pull/13435 )
23
+ * Added [ ` manual_abs_diff ` ] to ` complexity ` [ #14482 ] ( https://github.com/rust-lang/rust-clippy/pull/14482 )
24
+ * Added [ ` ignore_without_reason ` ] to ` pedantic ` [ #13931 ] ( https://github.com/rust-lang/rust-clippy/pull/13931 )
25
+
26
+ ### Moves and Deprecations
27
+
28
+ * Moved [ ` uninlined_format_args ` ] to ` style ` (from ` pedantic ` )
29
+ [ #14160 ] ( https://github.com/rust-lang/rust-clippy/pull/14160 )
30
+ * [ ` match_on_vec_items ` ] deprecated in favor of [ ` indexing_slicing ` ]
31
+ [ #14217 ] ( https://github.com/rust-lang/rust-clippy/pull/14217 )
32
+ * Removed superseded lints: ` transmute_float_to_int ` , ` transmute_int_to_char ` ,
33
+ ` transmute_int_to_float ` , ` transmute_num_to_bytes ` (now in rustc)
34
+ [ #14703 ] ( https://github.com/rust-lang/rust-clippy/pull/14703 )
35
+
36
+ ### Enhancements
37
+
38
+ * Configuration renamed from ` lint-inconsistent-struct-field-initializers `
39
+ to ` check-inconsistent-struct-field-initializers `
40
+ [ #14280 ] ( https://github.com/rust-lang/rust-clippy/pull/14280 )
41
+ * Paths in ` disallowed_* ` configurations are now validated
42
+ [ #14397 ] ( https://github.com/rust-lang/rust-clippy/pull/14397 )
43
+ * [ ` borrow_as_ptr ` ] now lints implicit casts as well
44
+ [ #14408 ] ( https://github.com/rust-lang/rust-clippy/pull/14408 )
45
+ * [ ` iter_kv_map ` ] now recognizes references on maps
46
+ [ #14596 ] ( https://github.com/rust-lang/rust-clippy/pull/14596 )
47
+ * [ ` empty_enum_variants_with_brackets ` ] no longer lints reachable enums or enums used
48
+ as functions within same crate [ #12971 ] ( https://github.com/rust-lang/rust-clippy/pull/12971 )
49
+ * [ ` needless_lifetimes ` ] now checks for lifetime uses in closures
50
+ [ #14608 ] ( https://github.com/rust-lang/rust-clippy/pull/14608 )
51
+ * [ ` wildcard_imports ` ] now lints on ` pub use ` when ` warn_on_all_wildcard_imports ` is enabled
52
+ [ #14182 ] ( https://github.com/rust-lang/rust-clippy/pull/14182 )
53
+ * [ ` collapsible_if ` ] now recognizes the ` let_chains ` feature
54
+ [ #14481 ] ( https://github.com/rust-lang/rust-clippy/pull/14481 )
55
+ * [ ` match_single_binding ` ] now allows macros in scrutinee and patterns
56
+ [ #14635 ] ( https://github.com/rust-lang/rust-clippy/pull/14635 )
57
+ * [ ` needless_borrow ` ] does not contradict the compiler's
58
+ ` dangerous_implicit_autorefs ` lint even though the references
59
+ are not mandatory
60
+ [ #14810 ] ( https://github.com/rust-lang/rust-clippy/pull/14810 )
61
+
62
+ ### False Positive Fixes
63
+
64
+ * [ ` double_ended_iterator_last ` ] and [ ` needless_collect ` ] fixed FP when iter has side effects
65
+ [ #14490 ] ( https://github.com/rust-lang/rust-clippy/pull/14490 )
66
+ * [ ` mut_from_ref ` ] fixed FP where lifetimes nested in types were not considered
67
+ [ #14471 ] ( https://github.com/rust-lang/rust-clippy/pull/14471 )
68
+ * [ ` redundant_clone ` ] fixed FP in overlapping lifetime
69
+ [ #14237 ] ( https://github.com/rust-lang/rust-clippy/pull/14237 )
70
+ * [ ` map_entry ` ] fixed FP where lint would trigger without insert calls present
71
+ [ #14568 ] ( https://github.com/rust-lang/rust-clippy/pull/14568 )
72
+ * [ ` iter_cloned_collect ` ] fixed FP with custom ` From ` /` IntoIterator ` impl
73
+ [ #14473 ] ( https://github.com/rust-lang/rust-clippy/pull/14473 )
74
+ * [ ` shadow_unrelated ` ] fixed FP in destructuring assignments
75
+ [ #14381 ] ( https://github.com/rust-lang/rust-clippy/pull/14381 )
76
+ * [ ` redundant_clone ` ] fixed FP on enum cast
77
+ [ #14395 ] ( https://github.com/rust-lang/rust-clippy/pull/14395 )
78
+ * [ ` collapsible_if ` ] fixed FP on block stmt before expr
79
+ [ #14730 ] ( https://github.com/rust-lang/rust-clippy/pull/14730 )
80
+
81
+ ### ICE Fixes
82
+
83
+ * [ ` missing_const_for_fn ` ] fix ICE with ` -Z validate-mir ` compilation option
84
+ [ #14776 ] ( https://github.com/rust-lang/rust-clippy/pull/14776 )
85
+
86
+ ### Documentation Improvements
87
+
88
+ * [ ` missing_asserts_for_indexing ` ] improved documentation and examples
89
+ [ #14108 ] ( https://github.com/rust-lang/rust-clippy/pull/14108 )
90
+
91
+ ### Others
92
+
93
+ * We're testing with edition 2024 now
94
+ [ #14602 ] ( https://github.com/rust-lang/rust-clippy/pull/14602 )
95
+ * Don't warn about unloaded crates in ` clippy.toml ` disallowed paths
96
+ [ #14733 ] ( https://github.com/rust-lang/rust-clippy/pull/14733 )
10
97
11
98
## Rust 1.87
12
99
@@ -5729,6 +5816,7 @@ Released 2018-09-13
5729
5816
[ `disallowed_type` ] : https://rust-lang.github.io/rust-clippy/master/index.html#disallowed_type
5730
5817
[ `disallowed_types` ] : https://rust-lang.github.io/rust-clippy/master/index.html#disallowed_types
5731
5818
[ `diverging_sub_expression` ] : https://rust-lang.github.io/rust-clippy/master/index.html#diverging_sub_expression
5819
+ [ `doc_broken_link` ] : https://rust-lang.github.io/rust-clippy/master/index.html#doc_broken_link
5732
5820
[ `doc_comment_double_space_linebreaks` ] : https://rust-lang.github.io/rust-clippy/master/index.html#doc_comment_double_space_linebreaks
5733
5821
[ `doc_include_without_cfg` ] : https://rust-lang.github.io/rust-clippy/master/index.html#doc_include_without_cfg
5734
5822
[ `doc_lazy_continuation` ] : https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation
@@ -5967,6 +6055,7 @@ Released 2018-09-13
5967
6055
[ `manual_is_ascii_check` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_ascii_check
5968
6056
[ `manual_is_finite` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_finite
5969
6057
[ `manual_is_infinite` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_infinite
6058
+ [ `manual_is_multiple_of` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_multiple_of
5970
6059
[ `manual_is_power_of_two` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_power_of_two
5971
6060
[ `manual_is_variant_and` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_is_variant_and
5972
6061
[ `manual_let_else` ] : https://rust-lang.github.io/rust-clippy/master/index.html#manual_let_else
0 commit comments