Auto merge of #11605 - xFrednet:changelog-1-73, r=blyxyas
Changelog for Rust 1.73 🖊️ Roses are red, violets are blue, I'm tired... 💤 Oh nice, tea 🍵 --- ### The cat of this release: ![cat-like-doritos](https://github.com/rust-lang/rust-clippy/assets/114838443/1ca9eb1e-3e5c-42a4-bda9-6f24a2e03015) cc: `@Centri3` & `@blyxyas` As the author, I call dibs on the 1.74 cat picture 🐈 --- changelog: none
This commit is contained in:
commit
9554e477c2
94
CHANGELOG.md
94
CHANGELOG.md
@ -6,11 +6,101 @@ document.
|
||||
|
||||
## Unreleased / Beta / In Rust Nightly
|
||||
|
||||
[37f4c172...master](https://github.com/rust-lang/rust-clippy/compare/37f4c172...master)
|
||||
[1e8fdf49...master](https://github.com/rust-lang/rust-clippy/compare/1e8fdf49...master)
|
||||
|
||||
## Rust 1.73
|
||||
|
||||
Current stable, released 2023-10-05
|
||||
|
||||
[View all 103 merged pull requests](https://github.com/rust-lang/rust-clippy/pulls?q=merged%3A2023-07-02T12%3A24%3A40Z..2023-08-11T11%3A09%3A56Z+base%3Amaster)
|
||||
|
||||
### New Lints
|
||||
|
||||
* [`impossible_comparisons`]
|
||||
[#10843](https://github.com/rust-lang/rust-clippy/pull/10843)
|
||||
* [`redundant_comparisons`]
|
||||
[#10843](https://github.com/rust-lang/rust-clippy/pull/10843)
|
||||
* [`ignored_unit_patterns`]
|
||||
[#11242](https://github.com/rust-lang/rust-clippy/pull/11242)
|
||||
* [`readonly_write_lock`]
|
||||
[#11210](https://github.com/rust-lang/rust-clippy/pull/11210)
|
||||
* [`filter_map_bool_then`]
|
||||
[#11115](https://github.com/rust-lang/rust-clippy/pull/11115)
|
||||
* [`needless_return_with_question_mark`]
|
||||
[#11031](https://github.com/rust-lang/rust-clippy/pull/11031)
|
||||
* [`redundant_guards`]
|
||||
[#10955](https://github.com/rust-lang/rust-clippy/pull/10955)
|
||||
* [`redundant_locals`]
|
||||
[#10885](https://github.com/rust-lang/rust-clippy/pull/10885)
|
||||
* [`absolute_paths`]
|
||||
[#11003](https://github.com/rust-lang/rust-clippy/pull/11003)
|
||||
* [`error_impl_error`]
|
||||
[#11107](https://github.com/rust-lang/rust-clippy/pull/11107)
|
||||
* [`iter_skip_zero`]
|
||||
[#11046](https://github.com/rust-lang/rust-clippy/pull/11046)
|
||||
* [`string_lit_chars_any`]
|
||||
[#11052](https://github.com/rust-lang/rust-clippy/pull/11052)
|
||||
* [`four_forward_slashes`]
|
||||
[#11140](https://github.com/rust-lang/rust-clippy/pull/11140)
|
||||
* [`format_collect`]
|
||||
[#11116](https://github.com/rust-lang/rust-clippy/pull/11116)
|
||||
* [`needless_pass_by_ref_mut`]
|
||||
[#10900](https://github.com/rust-lang/rust-clippy/pull/10900)
|
||||
* [`manual_is_infinite`]
|
||||
[#11049](https://github.com/rust-lang/rust-clippy/pull/11049)
|
||||
* [`manual_is_finite`]
|
||||
[#11049](https://github.com/rust-lang/rust-clippy/pull/11049)
|
||||
* [`incorrect_partial_ord_impl_on_ord_type`]
|
||||
[#10788](https://github.com/rust-lang/rust-clippy/pull/10788)
|
||||
* [`read_line_without_trim`]
|
||||
[#10970](https://github.com/rust-lang/rust-clippy/pull/10970)
|
||||
* [`type_id_on_box`]
|
||||
[#10987](https://github.com/rust-lang/rust-clippy/pull/10987)
|
||||
|
||||
### Moves and Deprecations
|
||||
|
||||
* Renamed `unwrap_or_else_default` to [`unwrap_or_default`]
|
||||
[#10120](https://github.com/rust-lang/rust-clippy/pull/10120)
|
||||
* Moved [`tuple_array_conversions`] to `pedantic` (Now allow-by-default)
|
||||
[#11146](https://github.com/rust-lang/rust-clippy/pull/11146)
|
||||
* Moved [`arc_with_non_send_sync`] to `suspicious` (Now warn-by-default)
|
||||
[#11104](https://github.com/rust-lang/rust-clippy/pull/11104)
|
||||
* Moved [`needless_raw_string_hashes`] to `pedantic` (Now allow-by-default)
|
||||
[#11415](https://github.com/rust-lang/rust-clippy/pull/11415)
|
||||
|
||||
### Enhancements
|
||||
|
||||
* [`unwrap_used`]: No longer lints on the never-type or never-like enums
|
||||
[#11252](https://github.com/rust-lang/rust-clippy/pull/11252)
|
||||
* [`expect_used`]: No longer lints on the never-type or never-like enums
|
||||
[#11252](https://github.com/rust-lang/rust-clippy/pull/11252)
|
||||
|
||||
### False Positive Fixes
|
||||
|
||||
* [`panic_in_result_fn`]: No longer triggers on `todo!`, `unimplemented!`, `unreachable!`
|
||||
[#11123](https://github.com/rust-lang/rust-clippy/pull/11123)
|
||||
|
||||
### Suggestion Fixes/Improvements
|
||||
|
||||
* [`semicolon_if_nothing_returned`]: The suggestion is now machine-applicable with rustfix
|
||||
[#11083](https://github.com/rust-lang/rust-clippy/pull/11083)
|
||||
|
||||
### ICE Fixes
|
||||
|
||||
* [`filter_map_bool_then`]: No longer crashes on late-bound regions
|
||||
[#11318](https://github.com/rust-lang/rust-clippy/pull/11318)
|
||||
* [`unwrap_or_default`]: No longer crashes on alias types for local items
|
||||
[#11258](https://github.com/rust-lang/rust-clippy/pull/11258)
|
||||
* [`unnecessary_literal_unwrap`]: No longer crashes on `None.unwrap_or_default()`
|
||||
[#11106](https://github.com/rust-lang/rust-clippy/pull/11106)
|
||||
* Fixed MIR-related ICE
|
||||
[#11130](https://github.com/rust-lang/rust-clippy/pull/11130)
|
||||
* [`missing_fields_in_debug`]: No longer crashes on non-ADT self types
|
||||
[#11069](https://github.com/rust-lang/rust-clippy/pull/11069)
|
||||
|
||||
## Rust 1.72
|
||||
|
||||
Current stable, released 2023-08-24
|
||||
Released 2023-08-24
|
||||
|
||||
[View all 131 merged pull requests](https://github.com/rust-lang/rust-clippy/pulls?q=merged%3A2023-05-22T14%3A53%3A59Z..2023-07-01T22%3A57%3A20Z+base%3Amaster)
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
||||
///
|
||||
/// impl std::error::Error for Error { ... }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub ERROR_IMPL_ERROR,
|
||||
restriction,
|
||||
"exported types named `Error` that implement `Error`"
|
||||
|
@ -28,7 +28,7 @@
|
||||
/// // ...
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub FOUR_FORWARD_SLASHES,
|
||||
suspicious,
|
||||
"comments with 4 forward slashes (`////`) likely intended to be doc comments (`///`)"
|
||||
|
@ -26,7 +26,7 @@
|
||||
/// # let x = 1.0f32;
|
||||
/// if x.is_infinite() {}
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub MANUAL_IS_INFINITE,
|
||||
style,
|
||||
"use dedicated method to check if a float is infinite"
|
||||
@ -51,7 +51,7 @@
|
||||
/// if x.is_finite() {}
|
||||
/// if x.is_finite() {}
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub MANUAL_IS_FINITE,
|
||||
style,
|
||||
"use dedicated method to check if a float is finite"
|
||||
|
@ -961,7 +961,7 @@
|
||||
/// _ => todo!(),
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub REDUNDANT_GUARDS,
|
||||
complexity,
|
||||
"checks for unnecessary guards in match expressions"
|
||||
|
@ -2970,7 +2970,7 @@
|
||||
/// assert_eq!((*any_box).type_id(), TypeId::of::<i32>());
|
||||
/// // ^ dereference first, to call `type_id` on `dyn Any`
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub TYPE_ID_ON_BOX,
|
||||
suspicious,
|
||||
"calling `.type_id()` on `Box<dyn Any>`"
|
||||
@ -3391,7 +3391,7 @@
|
||||
/// // ^^^^^^^^^^^ remove the trailing newline
|
||||
/// assert_eq!(num, 42);
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub READ_LINE_WITHOUT_TRIM,
|
||||
correctness,
|
||||
"calling `Stdin::read_line`, then trying to parse it without first trimming"
|
||||
@ -3419,7 +3419,7 @@
|
||||
/// # let c = 'c';
|
||||
/// matches!(c, '\\' | '.' | '+' | '*' | '(' | ')' | '|' | '[' | ']' | '{' | '}' | '^' | '$' | '#' | '&' | '-' | '~');
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub STRING_LIT_CHARS_ANY,
|
||||
restriction,
|
||||
"checks for `<string_lit>.chars().any(|i| i == c)`"
|
||||
@ -3454,7 +3454,7 @@
|
||||
/// })
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub FORMAT_COLLECT,
|
||||
perf,
|
||||
"`format!`ing every element in a collection, then collecting the strings into a new `String`"
|
||||
@ -3475,7 +3475,7 @@
|
||||
/// let y = v.iter().collect::<Vec<_>>();
|
||||
/// assert_eq!(x, y);
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub ITER_SKIP_ZERO,
|
||||
correctness,
|
||||
"disallows `.skip(0)`"
|
||||
@ -3506,7 +3506,7 @@
|
||||
/// # let v = vec![];
|
||||
/// _ = v.into_iter().filter(|i| i % 2 == 0).map(|i| really_expensive_fn(i));
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub FILTER_MAP_BOOL_THEN,
|
||||
style,
|
||||
"checks for usage of `bool::then` in `Iterator::filter_map`"
|
||||
|
@ -47,7 +47,7 @@
|
||||
/// 12 + *y
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub NEEDLESS_PASS_BY_REF_MUT,
|
||||
nursery,
|
||||
"using a `&mut` argument when it's not mutated"
|
||||
|
@ -103,7 +103,7 @@
|
||||
/// }
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub NON_CANONICAL_PARTIAL_ORD_IMPL,
|
||||
suspicious,
|
||||
"non-canonical implementation of `PartialOrd` on an `Ord` type"
|
||||
|
@ -312,7 +312,7 @@
|
||||
/// # let status_code = 200;
|
||||
/// if status_code <= 400 && status_code > 500 {}
|
||||
/// ```
|
||||
#[clippy::version = "1.71.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub IMPOSSIBLE_COMPARISONS,
|
||||
correctness,
|
||||
"double comparisons that will never evaluate to `true`"
|
||||
@ -332,7 +332,7 @@
|
||||
/// # let status_code = 200;
|
||||
/// if status_code <= 400 && status_code < 500 {}
|
||||
/// ```
|
||||
#[clippy::version = "1.71.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub REDUNDANT_COMPARISONS,
|
||||
correctness,
|
||||
"double comparisons where one of them can be removed"
|
||||
|
@ -37,7 +37,7 @@
|
||||
/// // no redefinition with the same name
|
||||
/// }
|
||||
/// ```
|
||||
#[clippy::version = "1.72.0"]
|
||||
#[clippy::version = "1.73.0"]
|
||||
pub REDUNDANT_LOCALS,
|
||||
correctness,
|
||||
"redundant redefinition of a local binding"
|
||||
|
Loading…
Reference in New Issue
Block a user