Skip to content

Commit c582002

Browse files
committed
Changelog for Rust 1.62 🦖
1 parent 93ebd0e commit c582002

File tree

1 file changed

+159
-2
lines changed

1 file changed

+159
-2
lines changed

CHANGELOG.md

+159-2
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,168 @@ document.
66

77
## Unreleased / In Rust Nightly
88

9-
[d0cf3481...master](https://github.com/rust-lang/rust-clippy/compare/d0cf3481...master)
9+
[7c21f91b...master](https://github.com/rust-lang/rust-clippy/compare/7c21f91b...master)
10+
11+
## Rust 1.62
12+
13+
Current stable, released 2022-06-30
14+
15+
[d0cf3481...7c21f91b](https://github.com/rust-lang/rust-clippy/compare/d0cf3481...7c21f91b)
16+
17+
### New Lints
18+
19+
* [`large_include_file`]
20+
[#8727](https://github.com/rust-lang/rust-clippy/pull/8727)
21+
* [`cast_abs_to_unsigned`]
22+
[#8635](https://github.com/rust-lang/rust-clippy/pull/8635)
23+
* [`err_expect`]
24+
[#8606](https://github.com/rust-lang/rust-clippy/pull/8606)
25+
* [`unnecessary_owned_empty_strings`]
26+
[#8660](https://github.com/rust-lang/rust-clippy/pull/8660)
27+
* [`empty_structs_with_brackets`]
28+
[#8594](https://github.com/rust-lang/rust-clippy/pull/8594)
29+
* [`crate_in_macro_def`]
30+
[#8576](https://github.com/rust-lang/rust-clippy/pull/8576)
31+
* [`needless_option_take`]
32+
[#8665](https://github.com/rust-lang/rust-clippy/pull/8665)
33+
* [`bytes_count_to_len`]
34+
[#8711](https://github.com/rust-lang/rust-clippy/pull/8711)
35+
* [`is_digit_ascii_radix`]
36+
[#8624](https://github.com/rust-lang/rust-clippy/pull/8624)
37+
* [`await_holding_invalid_type`]
38+
[#8707](https://github.com/rust-lang/rust-clippy/pull/8707)
39+
* [`trim_split_whitespace`]
40+
[#8575](https://github.com/rust-lang/rust-clippy/pull/8575)
41+
* [`pub_use`]
42+
[#8670](https://github.com/rust-lang/rust-clippy/pull/8670)
43+
* [`format_push_string`]
44+
[#8626](https://github.com/rust-lang/rust-clippy/pull/8626)
45+
* [`empty_drop`]
46+
[#8571](https://github.com/rust-lang/rust-clippy/pull/8571)
47+
* [`drop_non_drop`]
48+
[#8630](https://github.com/rust-lang/rust-clippy/pull/8630)
49+
* [`forget_non_drop`]
50+
[#8630](https://github.com/rust-lang/rust-clippy/pull/8630)
51+
52+
### Moves and Deprecations
53+
54+
* Move [`only_used_in_recursion`] to `nursery` (now allow-by-default)
55+
[#8783](https://github.com/rust-lang/rust-clippy/pull/8783)
56+
* Move [`stable_sort_primitive`] to `pedantic` (now allow-by-default)
57+
[#8716](https://github.com/rust-lang/rust-clippy/pull/8716)
58+
59+
### Enhancements
60+
61+
* Remove overlap between [`manual_split_once`] and [`needless_splitn`]
62+
[#8631](https://github.com/rust-lang/rust-clippy/pull/8631)
63+
* [`map_identity`]: Now checks for needless `map_err`
64+
[#8487](https://github.com/rust-lang/rust-clippy/pull/8487)
65+
* [`extra_unused_lifetimes`]: Now checks for impl lifetimes
66+
[#8737](https://github.com/rust-lang/rust-clippy/pull/8737)
67+
* [`cast_possible_truncation`]: Now catches more cases with larger shift or divide operations
68+
[#8687](https://github.com/rust-lang/rust-clippy/pull/8687)
69+
* [`identity_op`]: Now checks for modulo expressions
70+
[#8519](https://github.com/rust-lang/rust-clippy/pull/8519)
71+
* [`panic`]: No longer lint in constant context
72+
[#8592](https://github.com/rust-lang/rust-clippy/pull/8592)
73+
* [`manual_split_once`]: Now lints manual iteration of `splitn`
74+
[#8717](https://github.com/rust-lang/rust-clippy/pull/8717)
75+
* [`self_named_module_files`], [`mod_module_files`]: Now handle relative module paths
76+
[#8611](https://github.com/rust-lang/rust-clippy/pull/8611)
77+
* [`unsound_collection_transmute`]: Now has better size and alignment checks
78+
[#8648](https://github.com/rust-lang/rust-clippy/pull/8648)
79+
* [`unnested_or_patterns`]: Ignore cases, where the suggestion would be longer
80+
[#8619](https://github.com/rust-lang/rust-clippy/pull/8619)
81+
82+
### False Positive Fixes
83+
84+
* [`rest_pat_in_fully_bound_structs`]: Now ignores structs marked with `#[non_exhaustive]`
85+
[#8690](https://github.com/rust-lang/rust-clippy/pull/8690)
86+
* [`needless_late_init`]: No longer lints `if let` statements, `let mut` bindings or instances that
87+
changes the drop order significantly
88+
[#8617](https://github.com/rust-lang/rust-clippy/pull/8617)
89+
* [`unnecessary_cast`]: No longer lints to casts to aliased or non-primitive types
90+
[#8596](https://github.com/rust-lang/rust-clippy/pull/8596)
91+
* [`init_numbered_fields`]: No longer lints type aliases
92+
[#8780](https://github.com/rust-lang/rust-clippy/pull/8780)
93+
* [`needless_option_as_deref`]: No longer lints for `as_deref_mut` on `Option` values that can't be moved
94+
[#8646](https://github.com/rust-lang/rust-clippy/pull/8646)
95+
* [`mistyped_literal_suffixes`]: Now ignores float literals without an exponent
96+
[#8742](https://github.com/rust-lang/rust-clippy/pull/8742)
97+
* [`undocumented_unsafe_blocks`]: Now ignores unsafe blocks from proc-macros and works better for sub-expressions
98+
[#8450](https://github.com/rust-lang/rust-clippy/pull/8450)
99+
* [`same_functions_in_if_condition`]: Now allows different constants, even if they have the same value
100+
[#8673](https://github.com/rust-lang/rust-clippy/pull/8673)
101+
* [`needless_match`]: Now checks for more complex types and ignores type coercion
102+
[#8549](https://github.com/rust-lang/rust-clippy/pull/8549)
103+
* [`assertions_on_constants`]: Now ignores constants from `cfg!` macros
104+
[#8614](https://github.com/rust-lang/rust-clippy/pull/8614)
105+
* [`indexing_slicing`]: Fix false positives with constant indices in
106+
[#8588](https://github.com/rust-lang/rust-clippy/pull/8588)
107+
* [`iter_with_drain`]: Now ignores iterator references
108+
[#8668](https://github.com/rust-lang/rust-clippy/pull/8668)
109+
* [`useless_attribute`]: Now allows [`redundant_pub_crate`] on `use` items
110+
[#8743](https://github.com/rust-lang/rust-clippy/pull/8743)
111+
* [`cast_ptr_alignment`]: Now ignores expressions, when used for unaligned reads and writes
112+
[#8632](https://github.com/rust-lang/rust-clippy/pull/8632)
113+
* [`wrong_self_convention`]: Now allows `&mut self` and no self as arguments for `is_*` methods
114+
[#8738](https://github.com/rust-lang/rust-clippy/pull/8738)
115+
* [`mut_from_ref`]: Only lint in unsafe code
116+
[#8647](https://github.com/rust-lang/rust-clippy/pull/8647)
117+
* [`redundant_pub_crate`]: Now allows macro exports
118+
[#8736](https://github.com/rust-lang/rust-clippy/pull/8736)
119+
* [`needless_match`]: Ignores cases where the else block expression is different
120+
[#8700](https://github.com/rust-lang/rust-clippy/pull/8700)
121+
* [`transmute_int_to_char`]: Now allows transmutations in `const` code
122+
[#8610](https://github.com/rust-lang/rust-clippy/pull/8610)
123+
* [`manual_non_exhaustive`]: Ignores cases, where the enum value is used
124+
[#8645](https://github.com/rust-lang/rust-clippy/pull/8645)
125+
* [`redundant_closure`]: Now ignores coerced closure
126+
[#8431](https://github.com/rust-lang/rust-clippy/pull/8431)
127+
* [`identity_op`]: Is now ignored in cases where extra brackets would be needed
128+
[#8730](https://github.com/rust-lang/rust-clippy/pull/8730)
129+
* [`let_unit_value`]: Now ignores cases which are used for type inference
130+
[#8563](https://github.com/rust-lang/rust-clippy/pull/8563)
131+
132+
### Suggestion Fixes/Improvements
133+
134+
* [`manual_split_once`]: Fixed incorrect suggestions for single result accesses
135+
[#8631](https://github.com/rust-lang/rust-clippy/pull/8631)
136+
* [`bytes_nth`]: Fix typos in the diagnostic message
137+
[#8403](https://github.com/rust-lang/rust-clippy/pull/8403)
138+
* [`mistyped_literal_suffixes`]: Now suggests the correct integer types
139+
[#8742](https://github.com/rust-lang/rust-clippy/pull/8742)
140+
* [`unnecessary_to_owned`]: Fixed suggestion based on the configured msrv
141+
[#8692](https://github.com/rust-lang/rust-clippy/pull/8692)
142+
* [`single_element_loop`]: Improve lint for Edition 2021 arrays
143+
[#8616](https://github.com/rust-lang/rust-clippy/pull/8616)
144+
* [`manual_bits`]: Now includes a cast for proper type conversion, when needed
145+
[#8677](https://github.com/rust-lang/rust-clippy/pull/8677)
146+
* [`option_map_unit_fn`], [`result_map_unit_fn`]: Fix some incorrect suggestions
147+
[#8584](https://github.com/rust-lang/rust-clippy/pull/8584)
148+
* [`collapsible_else_if`]: Add whitespace in suggestion
149+
[#8729](https://github.com/rust-lang/rust-clippy/pull/8729)
150+
* [`transmute_bytes_to_str`]: Now suggest `from_utf8_unchecked` in `const` context
151+
[#8612](https://github.com/rust-lang/rust-clippy/pull/8612)
152+
* [`map_clone`]: Improve message and suggestion based on the msrv
153+
[#8688](https://github.com/rust-lang/rust-clippy/pull/8688)
154+
* [`needless_late_init`]: Now shows the `let` statement where it was first initialized
155+
[#8779](https://github.com/rust-lang/rust-clippy/pull/8779)
156+
157+
### ICE Fixes
158+
159+
* [`only_used_in_recursion`]
160+
[#8691](https://github.com/rust-lang/rust-clippy/pull/8691)
161+
* [`cast_slice_different_sizes`]
162+
[#8720](https://github.com/rust-lang/rust-clippy/pull/8720)
163+
* [`iter_overeager_cloned`]
164+
[#8602](https://github.com/rust-lang/rust-clippy/pull/8602)
165+
* [`undocumented_unsafe_blocks`]
166+
[#8686](https://github.com/rust-lang/rust-clippy/pull/8686)
10167

11168
## Rust 1.61
12169

13-
Current stable, released 2022-05-19
170+
Released 2022-05-19
14171

15172
[57b3c4b...d0cf3481](https://github.com/rust-lang/rust-clippy/compare/57b3c4b...d0cf3481)
16173

0 commit comments

Comments
 (0)