Commit graph

23241 commits

Author SHA1 Message Date
blyxyas
01d960f645 Optimize broken_links by 99.77% 2025-08-02 01:59:48 +02:00
dswij
94b703588e
Do not specialize for if_chain any longer (#15362)
Now that `if let` chains have been introduced, the `if_chain` external
crate is no longer necessary. Dropping special support for it also
alleviates the need to keep the crate as a dependency in tests.

This is a cleanup PR.

changelog: none
2025-08-01 15:52:00 +00:00
Alejandra González
fab7eab7fb
Output lintcheck summary HTML markdown in order (#15371)
The data in the table needs to be in the same order as the headings.

changelog: none

Fixes rust-lang/rust-clippy#15370
2025-07-31 12:37:06 +00:00
Jason Newcomb
3c54672d1a
Optimize some usages of !! and -- in suggestions (#15366)
When an expression is made of a `!` or `-` unary operator which does not
change the type of the expression, use a new variant in `Sugg` to denote
it. This allows replacing an extra application of the same operator by
the removal of the original operator instead.

Some suggestions will now be shown as `x` instead of `!!x`. Right now,
no suggestion seems to produce `--x`.

changelog: none
2025-07-30 17:35:10 +00:00
Alejandra González
445d41909e
Fix iter_on_single_items FP on function pointers and let stmts (#15013)
Closes rust-lang/rust-clippy#14981

changelog: [`iter_on_single_items`] fix FP on function pointers and let
stmts
2025-07-30 16:42:12 +00:00
Samuel Tardieu
18e8ac3778
chore: fix some minor issues in comments (#15372)
fix some minor issues in comments

changelog:none
2025-07-30 08:01:10 +00:00
Samuel Tardieu
436efbba90
Fix min_ident_chars: ignore on trait impl. (#15275)
fixes rust-lang/rust-clippy#13396

changelog: [`min_ident_chars`]: ignore lint when implementing a trait,
to respect [`renamed_function_params`]
2025-07-30 07:57:34 +00:00
houpo-bob
64276e688c chore: fix some minor issues in comments
Signed-off-by: houpo-bob <houpocun@outlook.com>
2025-07-30 15:49:56 +08:00
Samuel Tardieu
c57876242d
Output lintcheck summary HTML markdown in order
The data in the table needs to be in the same order as the headings.
2025-07-30 09:49:27 +02:00
Tom Webber
e8db4aa470 Fix min_ident_chars: add trait/impl awareness 2025-07-30 07:10:07 +02:00
Samuel Tardieu
642bec7617
Optimize some usages of double unary operators in suggestions
When an expression is made of a `!` or `-` unary operator which does not
change the type of the expression, use a new variant in `Sugg` to denote
it. This allows replacing an extra application of the same operator by
the removal of the original operator instead.

Also, when adding a unary operator to a suggestion, do not enclose the
operator argument in parentheses if it starts with a unary operator
itself unless it is a binary operation (including `as`), because in this
case parentheses are required to not bind the lhs only.

Some suggestions will now be shown as `x` instead of `!!x`. Right now,
no suggestion seems to produce `--x`.
2025-07-30 00:34:26 +02:00
Alejandra González
c7dd98c809
Do not autofix comments containing bare CR (#15175)
When a bare CR is present in a four slashes comment, keep triggering the
lint but do not issue a fix suggestion as bare CRs are not supported in
doc comments. An extra note is added to the diagnostic to warn the user
about it.

I have put the test in a separate file to make it clear that the bare CR
is not a formatting error.

Fixes rust-lang/rust-clippy#15174

changelog: [`four_forward_slashes`]: warn about bare CR in comment, and
do not propose invalid autofix
2025-07-29 17:05:13 +00:00
Alejandra González
b7cc5c45bd
Fix search_is_some suggests wrongly inside macro (#15135)
Closes rust-lang/rust-clippy#15102

changelog: [`search_is_some`] fix wrong suggestions inside macro
2025-07-29 16:31:55 +00:00
dswij
7b3bd5bc8c
Fix typo in internal error message (#15363)
changelog: none

@rustbot label +P-low +A-infra
2025-07-28 17:12:59 +00:00
Samuel Tardieu
431f95ec85
Fix typo in internal error message 2025-07-28 17:32:40 +02:00
Samuel Tardieu
4f1044a5a6
Do not specialize for if_chain any longer
Now that `if let` chains have been introduced, the `if_chain` external
crate is no longer necessary. Dropping special support for it also
alleviates the need to keep the crate as a dependency in tests.
2025-07-28 17:26:38 +02:00
Alex Macleod
d73a6b797f
Do not treat NixOS as a Pascal-cased identifier (#15361)
changelog: [`doc_markdown`]: do not treat NixOS as a Pascal-cased
identifier

Fixes rust-lang/rust-clippy#15360
2025-07-28 14:53:08 +00:00
Samuel Tardieu
a55517ff4b
Fix cast-lossless should not suggest when casting type is from macro input (#15358)
Closes rust-lang/rust-clippy#15348

The span of the `as` expr is also incorrect, but I believe it is not a
bug from Clippy.

changelog: [`cast-lossless`] fix wrong suggestions when casting type is
from macro input
2025-07-28 14:11:10 +00:00
yanglsh
938e79fdac fix: cast-lossless should not suggest when casting type is from macro input 2025-07-28 21:45:40 +08:00
Samuel Tardieu
18a13b15fe
Do not treat NixOS as a Pascal-cased identifier 2025-07-28 15:25:46 +02:00
dswij
f4f579f4ac
Fix match_single_binding wrongly handles scope (#15060)
Closes rust-lang/rust-clippy#15018
Closes rust-lang/rust-clippy#15269

Continuation of rust-lang/rust-clippy#15017

changelog: [`match_single_binding`] fix wrong handling of scope
2025-07-28 12:10:42 +00:00
Samuel Tardieu
4bfb6d3fb5
Fix typo non_std_lazy_statics.rs (#15357)
Changes `MaybeIncorret` to `MaybeIncorrect`.

And since this is part of a doc comment, it might as well be a link.

changelog: none
2025-07-27 13:34:57 +00:00
Samuel Moelius
9339d8cac3
Fix typo non_std_lazy_statics.rs
Changes `MaybeIncorret` to `MaybeIncorrect`.

And since this is part of a doc comment, it might as well be a link.

changelog: none
2025-07-27 08:55:33 -04:00
llogiq
887b500e23
Fix let_unit_value suggests wrongly for format macros (#15085)
Closes rust-lang/rust-clippy#15061

changelog: [`let_unit_value`] fix wrong suggestions for format macros
2025-07-27 12:23:29 +00:00
Timo
3174c05949
fix: unnecessary_map_or don't add parens if the parent expr comes f… (#15345)
…rom a macro

changelog: [`unnecessary_map_or`]: don't add parens if the parent expr
comes from a macro

fixes rust-lang/rust-clippy#14714
2025-07-27 12:15:17 +00:00
Timo
f126db47bc
Fix empty_structs_with_brackets suggests wrongly on generics (#15355)
Closes rust-lang/rust-clippy#15349

changelog: [`empty_structs_with_brackets`] fix wrong suggestions on
generics
2025-07-27 12:00:08 +00:00
Ada Alakbarova
81fc22753e
fix: unnecessary_map_or don't add parens if the parent expr comes from a macro 2025-07-27 13:54:47 +02:00
yanglsh
c78f3aedfc fix: empty_structs_with_brackets suggests wrongly on generics 2025-07-27 15:13:34 +08:00
Timo
651ca3372b
Detect prefixed attributes as duplicated (#15212)
Fix `duplicated_attributes` lint to detect prefixed attributes like
`clippy::lint_name`.
Fixes rust-lang/rust-clippy#14942

changelog: [`duplicated_attributes`]: detect duplicated prefixed
attributes
2025-07-26 19:07:12 +00:00
llogiq
f9ab9d0217
fix ip_constant when call wrapped in extra parens (#15339)
changelog: [`ip_constant`]: fix suggestion when call is inside
parentheses like `(Ipv4Addr::new(127, 0, 0, 1))`

Very similar to the fix in
https://github.com/rust-lang/rust-clippy/pull/15191
2025-07-26 15:23:47 +00:00
Samuel Tardieu
03978193a5
Get myself back on assignment rotation (#15346)
changelog: none
2025-07-25 20:57:03 +00:00
Samuel Tardieu
03986e640c
Get myself back on assignment rotation 2025-07-25 22:51:47 +02:00
Philipp Krones
1db89a1b1c
Rustup (#15341)
r? @ghost

changelog: none
2025-07-25 13:14:01 +00:00
Philipp Krones
d0fa808df5
Fix if_same_then_else with if let conditions
Apparently they are no longer split 1 LHS + rest RHS
2025-07-25 15:08:50 +02:00
Philipp Krones
31baffd6ee
Bump nightly version -> 2025-07-25 2025-07-25 15:08:44 +02:00
Philipp Krones
d64eb62e2c
Update .gitignore
Add !clippy_test_deps/Cargo.lock and clippy_lints_internal/target
2025-07-25 15:08:39 +02:00
Philipp Krones
c98e60a56e
Merge remote-tracking branch 'upstream/master' into rustup 2025-07-25 15:04:01 +02:00
dswij
e85b1dd6da
Remove "Known problems" section for clippy::redundant_closure (#15331)
Remove "Known problems" section for `clippy::redundant_closure` since it
was fixed by [this
PR](https://github.com/rust-lang/rust-clippy/pull/4008)
We can see this by running examples from [the
issue](https://github.com/rust-lang/rust-clippy/issues/1439), for ex.
[this
one](https://play.rust-lang.org/?version=stable&mode=debug&edition=2024&gist=6562527b4c3f6dcebb3c43718341af98)

changelog: none
2025-07-25 08:10:05 +00:00
Alejandra González
98205e60cc
Fix if_then_some_else_none FP when require type coercion (#15267)
Closes rust-lang/rust-clippy#15257

changelog: [`if_then_some_else_none`] fix FP when require type coercion
2025-07-24 23:50:14 +00:00
newt
da6618097f Detect prefixed attributes as duplicated 2025-07-25 00:34:01 +01:00
Dan Johnson
0aa92fdba6 fix ip_constant when call wrapped in extra parens 2025-07-24 14:55:58 -07:00
León Orell Valerian Liehr
49e0ae0b9b Rollup merge of #144014 - dianne:edition-guide-links, r=estebank
don't link to the nightly version of the Edition Guide in stable lints

As reported in rust-lang/rust#143557 for `rust_2024_incompatible_pat`, most future-Edition-incompatibility lints link to the nightly version of the Edition Guide; the lints were written before their respective Editions (and their guides) stabilized. But now that Rusts 2021 and 2024 are stable, these lints are emitted on stable versions of the compiler, where it makes more sense to present users with links that don't say "nightly" in them.

This does not change the link for `rust_2024_incompatible_pat`. That's handled in rust-lang/rust#144006.
2025-07-24 15:08:21 +02:00
Timo
7d5833fd84
Correct help message for arc_with_non_send_sync (#15332)
Small typo fix for the `arc_with_non_send_sync` lint.

changelog: none
2025-07-24 10:28:48 +00:00
Marvin Friedrich
5cd24d70cb
Correct help message for arc_with_non_send_sync 2025-07-24 12:18:14 +02:00
alexey semenyuk
55be3c2f58
Remove "Known problems" section for clippy::redundant_closure 2025-07-24 13:11:00 +05:00
Camille GILLOT
ddf9b378aa Remove useless lifetime parameter. 2025-07-23 23:54:37 +00:00
Alejandra González
8ad5c67ff9
Fix module_name_repetitions FP on exported macros (#15319)
Closes rust-lang/rust-clippy#14095

changelog: [`module_name_repetitions`] fix FP on exported macros
2025-07-23 23:11:01 +00:00
Alex Macleod
b2c8c02a02
Fix unused_async FP on function with todo! (#15308)
Closes rust-lang/rust-clippy#15305

changelog: [`unused_async`] fix FP on function with `todo!`
2025-07-23 13:43:55 +00:00
Jonathan Brouwer
e07a4ee103 Ports #[macro_use] and #[macro_escape] to the new attribute parsing infrastructure 2025-07-23 13:33:23 +02:00
yanglsh
6a8780473e fix: unused_async FP on function with todo! 2025-07-22 23:25:31 +08:00