-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Clippy #102729
Update Clippy #102729
Commits on Sep 6, 2022
-
Configuration menu - View commit details
-
Copy full SHA for abd3e7e - Browse repository at this point
Copy the full SHA abd3e7eView commit details
Commits on Sep 7, 2022
-
rustc: Parameterize
ty::Visibility
over used IDIt allows using `LocalDefId` instead of `DefId` when possible, and also encode cheaper `Visibility<DefIndex>` into metadata.
Configuration menu - View commit details
-
Copy full SHA for 9136096 - Browse repository at this point
Copy the full SHA 9136096View commit details
Commits on Sep 8, 2022
-
This shrinks `hir::Ty` from 72 to 48 bytes. `visit_lifetime` is added to the HIR stats collector because these types are now stored in memory on their own, instead of being within other types.
Configuration menu - View commit details
-
Copy full SHA for 977b6e2 - Browse repository at this point
Copy the full SHA 977b6e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for c86a9c0 - Browse repository at this point
Copy the full SHA c86a9c0View commit details -
Rollup merge of rust-lang#101498 - petrochenkov:visparam, r=cjgillot
rustc: Parameterize `ty::Visibility` over used ID It allows using `LocalDefId` instead of `DefId` when possible, and also encode cheaper `Visibility<DefIndex>` into metadata.
Configuration menu - View commit details
-
Copy full SHA for c3db185 - Browse repository at this point
Copy the full SHA c3db185View commit details -
Auto merge of rust-lang#101467 - nnethercote:shrink-hir-Ty-Pat, r=spa…
…storino Shrink `hir::Ty` and `hir::Pat` r? `@ghost`
Configuration menu - View commit details
-
Copy full SHA for 30a5815 - Browse repository at this point
Copy the full SHA 30a5815View commit details -
Rollup merge of rust-lang#101501 - Jarcho:tcx_lint_passes, r=davidtwco
Allow lint passes to be bound by `TyCtxt` This will allow storing things like `Ty<'tcx>` inside late lint passes. It's already possible to store various id types so they're already implicitly bound to a specific `TyCtxt`. r? rust-lang/compiler
Configuration menu - View commit details
-
Copy full SHA for 9faa588 - Browse repository at this point
Copy the full SHA 9faa588View commit details -
Auto merge of rust-lang#101577 - Dylan-DPC:rollup-l9xw7i7, r=Dylan-DPC
Rollup of 7 pull requests Successful merges: - rust-lang#98933 (Opaque types' generic params do not imply anything about their hidden type's lifetimes) - rust-lang#101041 (translations(rustc_session): migrates rustc_session to use SessionDiagnostic - Pt. 2) - rust-lang#101424 (Adjust and slightly generalize operator error suggestion) - rust-lang#101496 (Allow lower_lifetime_binder receive a closure) - rust-lang#101501 (Allow lint passes to be bound by `TyCtxt`) - rust-lang#101515 (Recover from typo where == is used in place of =) - rust-lang#101545 (Remove unnecessary `PartialOrd` and `Ord`) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Configuration menu - View commit details
-
Copy full SHA for f47a1e2 - Browse repository at this point
Copy the full SHA f47a1e2View commit details
Commits on Sep 9, 2022
-
Configuration menu - View commit details
-
Copy full SHA for b640eaa - Browse repository at this point
Copy the full SHA b640eaaView commit details -
Configuration menu - View commit details
-
Copy full SHA for ac1c68a - Browse repository at this point
Copy the full SHA ac1c68aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 854f751 - Browse repository at this point
Copy the full SHA 854f751View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98bf99e - Browse repository at this point
Copy the full SHA 98bf99eView commit details
Commits on Sep 10, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 41b3084 - Browse repository at this point
Copy the full SHA 41b3084View commit details -
Auto merge of rust-lang#98559 - jackh726:remove-reempty, r=oli-obk
Remove ReEmpty r? rust-lang/types
Configuration menu - View commit details
-
Copy full SHA for 42361da - Browse repository at this point
Copy the full SHA 42361daView commit details
Commits on Sep 12, 2022
-
Configuration menu - View commit details
-
Copy full SHA for f6005c6 - Browse repository at this point
Copy the full SHA f6005c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3081535 - Browse repository at this point
Copy the full SHA 3081535View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0d1469a - Browse repository at this point
Copy the full SHA 0d1469aView commit details -
Auto merge of rust-lang#99334 - NiklasJonsson:84447/error-privacy, r=…
…oli-obk rustc_error, rustc_private: Switch to stable hash containers Relates rust-lang#84447
Configuration menu - View commit details
-
Copy full SHA for 4e313a5 - Browse repository at this point
Copy the full SHA 4e313a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for c0e249c - Browse repository at this point
Copy the full SHA c0e249cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 64a42db - Browse repository at this point
Copy the full SHA 64a42dbView commit details
Commits on Sep 13, 2022
-
Configuration menu - View commit details
-
Copy full SHA for b95b285 - Browse repository at this point
Copy the full SHA b95b285View commit details -
Auto merge of rust-lang#100640 - reitermarkus:socket-display-buffer, …
…r=thomcc Use `DisplayBuffer` for socket addresses. Continuation of rust-lang#100625 for socket addresses. Renames `net::addr` to `net::addr::socket`, `net::ip` to `net::addr::ip` and `net::ip::display_buffer::IpDisplayBuffer` to `net::addr::display_buffer::DisplayBuffer`.
Configuration menu - View commit details
-
Copy full SHA for 985afe0 - Browse repository at this point
Copy the full SHA 985afe0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 27e91b6 - Browse repository at this point
Copy the full SHA 27e91b6View commit details
Commits on Sep 14, 2022
-
Auto merge of rust-lang#101709 - nnethercote:simplify-visitors-more, …
…r=cjgillot Simplify visitors more A successor to rust-lang#100392. r? `@cjgillot`
Configuration menu - View commit details
-
Copy full SHA for cf043f6 - Browse repository at this point
Copy the full SHA cf043f6View commit details -
Auto merge of rust-lang#101212 - eholk:dyn-star, r=compiler-errors
Initial implementation of dyn* This PR adds extremely basic and incomplete support for [dyn*](https://smallcultfollowing.com/babysteps//blog/2022/03/29/dyn-can-we-make-dyn-sized/). The goal is to get something in tree behind a flag to make collaboration easier, and also to make sure the implementation so far is not unreasonable. This PR does quite a few things: * Introduce `dyn_star` feature flag * Adds parsing for `dyn* Trait` types * Defines `dyn* Trait` as a sized type * Adds support for explicit casts, like `42usize as dyn* Debug` * Including const evaluation of such casts * Adds codegen for drop glue so things are cleaned up properly when a `dyn* Trait` object goes out of scope * Adds codegen for method calls, at least for methods that take `&self` Quite a bit is still missing, but this gives us a starting point. Note that this is never intended to become stable surface syntax for Rust, but rather `dyn*` is planned to be used as an implementation detail for async functions in dyn traits. Joint work with `@nikomatsakis` and `@compiler-errors.` r? `@bjorn3`
Configuration menu - View commit details
-
Copy full SHA for f6a07d1 - Browse repository at this point
Copy the full SHA f6a07d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 525e0c8 - Browse repository at this point
Copy the full SHA 525e0c8View commit details
Commits on Sep 15, 2022
-
Auto merge of rust-lang#101811 - flip1995:clippyup, r=flip1995
Clippy pre beta branch fix Before beta is branched on Friday, I want to move the `unused_peekable` lint that was added in this release cycle (1.65) to `nursery`. This lint was already reported twice (rust-lang/rust-clippy#9456, rust-lang/rust-clippy#9462) in a short time, so it is probably a good idea to fix it before it hits beta and then stable. r? `@Manishearth`
Configuration menu - View commit details
-
Copy full SHA for dcc6153 - Browse repository at this point
Copy the full SHA dcc6153View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2be8b73 - Browse repository at this point
Copy the full SHA 2be8b73View commit details
Commits on Sep 16, 2022
-
Revert "Revert "Rollup merge of rust-lang#98582 - oli-obk:unconstrain…
…ed_opaque_type, r=estebank"" This reverts commit 4a742a6.
Configuration menu - View commit details
-
Copy full SHA for c2e9c99 - Browse repository at this point
Copy the full SHA c2e9c99View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ca6b9d - Browse repository at this point
Copy the full SHA 3ca6b9dView commit details
Commits on Sep 17, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 88a5796 - Browse repository at this point
Copy the full SHA 88a5796View commit details
Commits on Sep 18, 2022
-
Configuration menu - View commit details
-
Copy full SHA for d1dbdcf - Browse repository at this point
Copy the full SHA d1dbdcfView commit details -
Configuration menu - View commit details
-
Copy full SHA for bf8870e - Browse repository at this point
Copy the full SHA bf8870eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 15ec5d2 - Browse repository at this point
Copy the full SHA 15ec5d2View commit details
Commits on Sep 19, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 23d1d07 - Browse repository at this point
Copy the full SHA 23d1d07View commit details -
Configuration menu - View commit details
-
Copy full SHA for 70f4c71 - Browse repository at this point
Copy the full SHA 70f4c71View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c0cb0d - Browse repository at this point
Copy the full SHA 5c0cb0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d63aece - Browse repository at this point
Copy the full SHA d63aeceView commit details
Commits on Sep 20, 2022
-
Auto merge of rust-lang#99806 - oli-obk:unconstrained_opaque_type, r=…
…estebank Allow patterns to constrain the hidden type of opaque types fixes rust-lang#96572 reverts a revert as original PR was a perf regression that was fixed by reverting it: rust-lang#99368 (comment)) TODO: * check if rust-lang#99685 is avoided
Configuration menu - View commit details
-
Copy full SHA for 0dc24ca - Browse repository at this point
Copy the full SHA 0dc24caView commit details -
Configuration menu - View commit details
-
Copy full SHA for e279f22 - Browse repository at this point
Copy the full SHA e279f22View commit details
Commits on Sep 21, 2022
-
Merge commit '7248d06384c6a90de58c04c1f46be88821278d8b' into sync-fro…
…m-clippy
David Koloski committedSep 21, 2022 Configuration menu - View commit details
-
Copy full SHA for 4d01529 - Browse repository at this point
Copy the full SHA 4d01529View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c5f230 - Browse repository at this point
Copy the full SHA 4c5f230View commit details -
Configuration menu - View commit details
-
Copy full SHA for 033dae9 - Browse repository at this point
Copy the full SHA 033dae9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 09b1e8f - Browse repository at this point
Copy the full SHA 09b1e8fView commit details
Commits on Sep 22, 2022
-
Configuration menu - View commit details
-
Copy full SHA for adc7e3e - Browse repository at this point
Copy the full SHA adc7e3eView commit details -
Auto merge of rust-lang#9501 - xFrednet:changelog-1.64, r=llogiq
Changelog for Rust 1.64 🍎 The normal release preparation dance. I've written the changelog like the version has already been released. The PR can be approved and then merged by anyone after the release of Rust 1.64 🙃 --- changelog: none
Configuration menu - View commit details
-
Copy full SHA for c2c170a - Browse repository at this point
Copy the full SHA c2c170aView commit details -
[
nonstandard_macro_braces
] Do not modify macro argumentsAlso simplify the lint by not caring about code format which should be `rustfmt` job, and turn the lint into machine Applicable
Configuration menu - View commit details
-
Copy full SHA for a390115 - Browse repository at this point
Copy the full SHA a390115View commit details -
Auto merge of rust-lang#9499 - kraktus:nonstandard_macro_braces, r=xF…
…rednet [`nonstandard_macro_braces`] Do not modify macro arguments fix rust-lang#9498 based on top of rust-lang/rust-clippy#9471 Also simplify the lint by not caring about code format which should be `rustfmt` job, and turn the lint into machine Applicable changelog: Suggestion: [`nonstandard_macro_braces`]: The suggestion is now machine applicable and will no longer replace brackets inside the macro argument. [rust-lang#9499](rust-lang/rust-clippy#9499)
Configuration menu - View commit details
-
Copy full SHA for 61fd2a8 - Browse repository at this point
Copy the full SHA 61fd2a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for cda7547 - Browse repository at this point
Copy the full SHA cda7547View commit details -
Configuration menu - View commit details
-
Copy full SHA for b333645 - Browse repository at this point
Copy the full SHA b333645View commit details -
Rollup merge of rust-lang#102123 - schteve:clippy-note, r=Manishearth
Add note to clippy::non_expressive_names doc Addresses confusion in rust-lang/rust-clippy#9514 by updating the lint docs.
Configuration menu - View commit details
-
Copy full SHA for 2063b8f - Browse repository at this point
Copy the full SHA 2063b8fView commit details
Commits on Sep 23, 2022
-
uninit_vec: special case set_len(0)
set_len(0) does not create uninitialized elements. Fixes a false positive with the following pattern: fn copy_slice_into_vec(dst: &mut Vec<u8>, src: &[u8]) { dst.reserve(src.len().saturating_sub(dst.len())); unsafe { dst.set_len(0); std::ptr::copy_nonoverlapping(src.as_ptr(), dst.as_mut_ptr(), src.len()); dst.set_len(src.len()); } }
Configuration menu - View commit details
-
Copy full SHA for 49319b4 - Browse repository at this point
Copy the full SHA 49319b4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 628a854 - Browse repository at this point
Copy the full SHA 628a854View commit details -
Configuration menu - View commit details
-
Copy full SHA for 26861fb - Browse repository at this point
Copy the full SHA 26861fbView commit details -
Auto merge of rust-lang#102056 - b-naber:unevaluated, r=lcnr
Introduce mir::Unevaluated Previously the distinction between unevaluated constants in the type-system and in mir was not explicit and a little confusing. Probably better to introduce its own type for that. r? `@lcnr`
Configuration menu - View commit details
-
Copy full SHA for d9277c6 - Browse repository at this point
Copy the full SHA d9277c6View commit details -
Auto merge of rust-lang#9519 - alessandrod:uninit-set-len-0, r=llogiq
uninit_vec: fix false positive with set_len(0) `set_len(0)` does not create uninitialized elements. Fixes a false positive with the following pattern: ```rust fn copy_slice_into_vec(dst: &mut Vec<u8>, src: &[u8]) { dst.reserve(src.len().saturating_sub(dst.len())); unsafe { dst.set_len(0); std::ptr::copy_nonoverlapping(src.as_ptr(), dst.as_mut_ptr(), src.len()); dst.set_len(src.len()); } } ``` zulip thread: https://rust-lang.zulipchat.com/#narrow/stream/257328-clippy/topic/uninit_vec.20and.20set_len.280.29 changelog: FP: [`uninit_vec`]: No longer lints `Vec::set_len(0)`
Configuration menu - View commit details
-
Copy full SHA for dc14531 - Browse repository at this point
Copy the full SHA dc14531View commit details -
Auto merge of rust-lang#9523 - smoelius:compiletest-rs, r=Alexendoo
Upgrade `compiletest-rs` dependency From `0.8` to `0.9`. The new version includes a [fix](Manishearth/compiletest-rs#259) for what I suspect was one cause of the recent rustup failure: https://github.com/rust-lang/rust-clippy/actions/runs/3106438892/jobs/5033324694#step:11:911 changelog: none
Configuration menu - View commit details
-
Copy full SHA for c8f2f38 - Browse repository at this point
Copy the full SHA c8f2f38View commit details -
Auto merge of rust-lang#9496 - yotamofek:never_loop_let_else, r=Jarcho
[`never_loop`]: Fix FP with let..else statements. Fixes rust-lang#9356 This has been bugging me for a while, so I thought I'd take a stab at it! I'm completely uncertain about the quality of my code, but I think it's an alright start, so opening this PR to get some feedback from more experienced clippy people :) changelog: [`never_loop`]: Fix FP with let..else statements
Configuration menu - View commit details
-
Copy full SHA for ff65eec - Browse repository at this point
Copy the full SHA ff65eecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 781e45c - Browse repository at this point
Copy the full SHA 781e45cView commit details -
Apply uninlined_format-args to clippy_lints
This change is needed for the uninlined_format-args lint to be merged. See rust-lang/rust-clippy#9233
Configuration menu - View commit details
-
Copy full SHA for e67b2bf - Browse repository at this point
Copy the full SHA e67b2bfView commit details -
Configuration menu - View commit details
-
Copy full SHA for cb6d126 - Browse repository at this point
Copy the full SHA cb6d126View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59d0e8c - Browse repository at this point
Copy the full SHA 59d0e8cView commit details -
Stabilize const
BTree{Map,Set}::new
Since `len` and `is_empty` are not const stable yet, this also creates a new feature for them since they previously used the same `const_btree_new` feature.
Configuration menu - View commit details
-
Copy full SHA for 334f453 - Browse repository at this point
Copy the full SHA 334f453View commit details -
Fix clippy's const fn stability check for CURRENT_RUSTC_VERSION
Since clippy can use a projects MSRV for its lints, it might not want to consider functions as const stable if they have been added lately. Functions that have been stabilized this version use CURRENT_RUSTC_VERSION as their version, which gets then turned into the current version, which might be something like `1.66.0-dev`. The version parser cannot deal with this version, so it has to be stripped off.
Configuration menu - View commit details
-
Copy full SHA for e30b37b - Browse repository at this point
Copy the full SHA e30b37bView commit details -
Auto merge of rust-lang#9525 - nyurik:apply-lints, r=llogiq
pre-fallout: Apply uninlined_format-args lint This change is needed for the uninlined_format-args lint to be merged. See rust-lang/rust-clippy#9233 changelog: none
Configuration menu - View commit details
-
Copy full SHA for c2d4266 - Browse repository at this point
Copy the full SHA c2d4266View commit details
Commits on Sep 24, 2022
-
Auto merge of rust-lang#102068 - cjgillot:erased-lifetime-print, r=eholk
Always print '_, even for erased lifetimes. Explicit lifetime arguments are now the recommended syntax in rust 2018 and rust 2021. This PR applies this discipline to rustc itself.
Configuration menu - View commit details
-
Copy full SHA for de8a1dd - Browse repository at this point
Copy the full SHA de8a1ddView commit details -
fallout2: rework clippy_dev & _lints fmt inlining
* Inline format args where possible * simplify a few complex macros into format str * use formatdoc!() instead format!(indoc!(...))
Configuration menu - View commit details
-
Copy full SHA for cc6b375 - Browse repository at this point
Copy the full SHA cc6b375View commit details -
Auto merge of rust-lang#9527 - nyurik:inl2, r=llogiq
fallout2: rework clippy_dev & _lints fmt inlining Continuing rust-lang#9525 -- a few more inlining, but this time with some code changes to simplify format strings: * Inline format args where possible * simplify a few complex macros into format str * use formatdoc!() instead format!(indoc!(...)) changelog: none cc: `@llogiq`
Configuration menu - View commit details
-
Copy full SHA for 8b1ad17 - Browse repository at this point
Copy the full SHA 8b1ad17View commit details -
Configuration menu - View commit details
-
Copy full SHA for fc77d91 - Browse repository at this point
Copy the full SHA fc77d91View commit details -
separate definitions and
HIR
ownersfix a ui test use `into` fix clippy ui test fix a run-make-fulldeps test implement `IntoQueryParam<DefId>` for `OwnerId` use `OwnerId` for more queries change the type of `ParentOwnerIterator::Item` to `(OwnerId, OwnerNode)`
Configuration menu - View commit details
-
Copy full SHA for ea75178 - Browse repository at this point
Copy the full SHA ea75178View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1141c55 - Browse repository at this point
Copy the full SHA 1141c55View commit details
Commits on Sep 25, 2022
-
Auto merge of rust-lang#9531 - Jarcho:ice_9459, r=llogiq
Fix ICE in `needless_pass_by_value` with unsized `dyn Fn` fixes rust-lang#9459 Not really sure why a query for a type implementing `FnOnce` even works since the trait if `FnOnce<T>`, but it seems to. I would have expected it to crash like it does when passing `dyn FnOnce()` as the type. changelog: [`needless_pass_by_value`](https://rust-lang.github.io/rust-clippy/master/#needless_pass_by_value) Fix ICE in with unsized `dyn Fn` argument
Configuration menu - View commit details
-
Copy full SHA for 5bd3b56 - Browse repository at this point
Copy the full SHA 5bd3b56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 93945a5 - Browse repository at this point
Copy the full SHA 93945a5View commit details -
Auto merge of rust-lang#9535 - alex-semenyuk:move_derive_partial_eq_w…
…ithout_eq_to_nursery, r=xFrednet Moved derive_partial_eq_without_eq to nursery changelog: Moves: Move `derive_partial_eq_without_eq` to `nursery` (now allow-by-default) [rust-lang#9536](rust-lang/rust-clippy#9536) Closes: rust-lang/rust-clippy#9530
Configuration menu - View commit details
-
Copy full SHA for 00ebd8e - Browse repository at this point
Copy the full SHA 00ebd8eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8493376 - Browse repository at this point
Copy the full SHA 8493376View commit details -
Auto merge of rust-lang#9533 - Jarcho:integration-ice-msg, r=llogiq
Fix panic when displaying the backtrace of failing integration tests changelog: None
Configuration menu - View commit details
-
Copy full SHA for 57c9daa - Browse repository at this point
Copy the full SHA 57c9daaView commit details -
Configuration menu - View commit details
-
Copy full SHA for b180d95 - Browse repository at this point
Copy the full SHA b180d95View commit details -
new uninlined_format_args lint to inline explicit arguments
Implement rust-lang/rust-clippy#8368 - a new lint to inline format arguments such as `print!("{}", var)` into `print!("{var}")`. code | suggestion | comment ---|---|--- `print!("{}", var)` | `print!("{var}")` | simple variables `print!("{0}", var)` | `print!("{var}")` | positional variables `print!("{v}", v=var)` | `print!("{var}")` | named variables `print!("{0} {0}", var)` | `print!("{var} {var}")` | aliased variables `print!("{0:1$}", var, width)` | `print!("{var:width$}")` | width support `print!("{0:.1$}", var, prec)` | `print!("{var:.prec$}")` | precision support `print!("{:.*}", prec, var)` | `print!("{var:.prec$}")` | asterisk support code | suggestion | comment ---|---|--- `print!("{0}={1}", var, 1+2)` | `print!("{var}={0}", 1+2)` | Format string uses an indexed argument that cannot be inlined. Supporting this case requires re-indexing of the format string. changelog: [`uninlined_format_args`]: A new lint to inline format arguments, i.e. `print!("{}", var)` into `print!("{var}")`
Configuration menu - View commit details
-
Copy full SHA for 5a71bbd - Browse repository at this point
Copy the full SHA 5a71bbdView commit details
Commits on Sep 26, 2022
-
Rollup merge of rust-lang#102197 - Nilstrieb:const-new-🌲, r=Mark-Simu…
…lacrum Stabilize const `BTree{Map,Set}::new` The FCP was completed in rust-lang#71835. Since `len` and `is_empty` are not const stable yet, this also creates a new feature for them since they previously used the same `const_btree_new` feature.
Configuration menu - View commit details
-
Copy full SHA for c69edba - Browse repository at this point
Copy the full SHA c69edbaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 06568fd - Browse repository at this point
Copy the full SHA 06568fdView commit details -
Auto merge of rust-lang#9233 - nyurik:capture-vars, r=Alexendoo
new uninlined_format_args lint to inline explicit arguments Implement rust-lang/rust-clippy#8368 - a new lint to inline format arguments such as `print!("{}", var)` into `print!("{var}")`. ### Supported cases code | suggestion | comment ---|---|--- `print!("{}", var)` | `print!("{var}")` | simple variables `print!("{0}", var)` | `print!("{var}")` | positional variables `print!("{v}", v=var)` | `print!("{var}")` | named variables `print!("{0} {0}", var)` | `print!("{var} {var}")` | aliased variables `print!("{0:1$}", var, width)` | `print!("{var:width$}")` | width support `print!("{0:.1$}", var, prec)` | `print!("{var:.prec$}")` | precision support `print!("{:.*}", prec, var)` | `print!("{var:.prec$}")` | asterisk support ### Known Problems * There may be a false positive if the format string is wrapped in a macro call: ```rust # let var = 42; macro_rules! no_param_str { () => { "{}" }; } macro_rules! pass_through { ($expr:expr) => { $expr }; } println!(no_param_str!(), var); println!(pass_through!("{}"), var); ``` * Format string uses an indexed argument that cannot be inlined. Supporting this case requires re-indexing of the format string. Until implemented, `print!("{0}={1}", var, 1+2)` should be changed to `print!("{var}={0}", 1+2)` by hand. changelog: [`uninlined_format_args`]: A new lint to inline format arguments, i.e. `print!("{}", var)` into `print!("{var}")`
Configuration menu - View commit details
-
Copy full SHA for cf93865 - Browse repository at this point
Copy the full SHA cf93865View commit details
Commits on Sep 27, 2022
-
Auto merge of rust-lang#9487 - kraktus:question_mark, r=Jarcho
Silence [`question_mark`] in const context fix rust-lang/rust-clippy#9175 When `const_try` is stabilised can be turned into a MSRV changelog: Silence [`question_mark`] in const context
Configuration menu - View commit details
-
Copy full SHA for 78dc616 - Browse repository at this point
Copy the full SHA 78dc616View commit details -
Configuration menu - View commit details
-
Copy full SHA for 14abb83 - Browse repository at this point
Copy the full SHA 14abb83View commit details -
Configuration menu - View commit details
-
Copy full SHA for e5ce6d1 - Browse repository at this point
Copy the full SHA e5ce6d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63f441e - Browse repository at this point
Copy the full SHA 63f441eView commit details -
Auto merge of rust-lang#9539 - Jarcho:ice_9445, r=flip1995
Don't lint `*_interior_mutable_const` on unions due to potential ICE. fixes rust-lang#9445 cc rust-lang#101113 This started ICE'ing sometime last month due to stricter UB checks. I'm not sure how we could check the value of a union as MIRI doesn't seem to store which field is currently active. changelog: Don't ICE on const unions containing a `!Freeze` type.
Configuration menu - View commit details
-
Copy full SHA for c153bd6 - Browse repository at this point
Copy the full SHA c153bd6View commit details -
Auto merge of rust-lang#9507 - c410-f3r:arith, r=Alexendoo
[arithmetic-side-effects] Consider references Takes into consideration integer references like `&i32::MAX` because currently things like `let _ = &1 + 0` trigger the lint. changelog: FP: [`arithmetic_side_effects`]: Now ignores references [9507](rust-lang/rust-clippy#9507)
Configuration menu - View commit details
-
Copy full SHA for d31db02 - Browse repository at this point
Copy the full SHA d31db02View commit details -
Auto merge of rust-lang#9497 - kraktus:needless_return2, r=llogiq
[`needless_return`] Recursively remove unneeded semicolons fix rust-lang#8336, fix rust-lang#8156, fix rust-lang/rust-clippy#7358, fix rust-lang#9192, fix rust-lang/rust-clippy#9503 changelog: [`needless_return`] Recursively remove unneeded semicolons For now the suggestion about removing the semicolons are hidden because they would be very noisy and should be obvious if the user wants to apply the lint manually instead of using `--fix`. This could be an issue for beginner, but haven't found better way to display it.
Configuration menu - View commit details
-
Copy full SHA for 47c9145 - Browse repository at this point
Copy the full SHA 47c9145View commit details -
Auto merge of rust-lang#9543 - philipcraig:fix-saturing-typo, r=giraf…
…fate fix typo "Saturing" -> "Saturating" --- *Please write a short comment explaining your change (or "none" for internal only changes)* changelog: fix typo "Saturing" -> "Saturating"
Configuration menu - View commit details
-
Copy full SHA for 257fb4b - Browse repository at this point
Copy the full SHA 257fb4bView commit details -
Auto merge of rust-lang#9511 - rust-lang:box-default, r=Alexendoo
add `box-default` lint This adds a `box-default` lint to suggest using `Box::default()` instead of `Box::new(Default::default())`, which offers less moving parts and potentially better performance according to [the perf book](https://nnethercote.github.io/perf-book/standard-library-types.html#box). --- changelog: add [`box_default`] lint
Configuration menu - View commit details
-
Copy full SHA for 9aa85dc - Browse repository at this point
Copy the full SHA 9aa85dcView commit details -
Don't lint unstable moves in
std_instead_of_core
Such as the currently unstable `core::error`
Configuration menu - View commit details
-
Copy full SHA for 5b0f46a - Browse repository at this point
Copy the full SHA 5b0f46aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 187c27e - Browse repository at this point
Copy the full SHA 187c27eView commit details -
Auto merge of rust-lang#9491 - kraktus:drop_copy, r=Jarcho
[`drop_copy`]: Do not lint idiomatic in match arm close rust-lang/rust-clippy#9482 changelog: [`drop_copy`]: Do not lint idiomatic in match arm
Configuration menu - View commit details
-
Copy full SHA for 672fb8e - Browse repository at this point
Copy the full SHA 672fb8eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 14ba4fb - Browse repository at this point
Copy the full SHA 14ba4fbView commit details -
Auto merge of rust-lang#9545 - Alexendoo:std-instead-of-core-unstable…
…, r=Manishearth Don't lint unstable moves in `std_instead_of_core` Fixes rust-lang#9515 changelog: [`std_instead_of_core`]: No longer suggests unstable modules such as `core::error`
Configuration menu - View commit details
-
Copy full SHA for 35b7ce5 - Browse repository at this point
Copy the full SHA 35b7ce5View commit details
Commits on Sep 28, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 7289835 - Browse repository at this point
Copy the full SHA 7289835View commit details -
Auto merge of rust-lang#9546 - kraktus:default_not_default_trait, r=x…
…Frednet [`should_implement_trait`] Also lint `default` method close rust-lang/rust-clippy#8550 changelog: FP: [`should_implement_trait`]: Now also works for `default` methods
Configuration menu - View commit details
-
Copy full SHA for 0f6932a - Browse repository at this point
Copy the full SHA 0f6932aView commit details -
Configuration menu - View commit details
-
Copy full SHA for bbcde66 - Browse repository at this point
Copy the full SHA bbcde66View commit details -
Configuration menu - View commit details
-
Copy full SHA for 458e832 - Browse repository at this point
Copy the full SHA 458e832View commit details -
Auto merge of rust-lang#9490 - kraktus:needless_borrow, r=Jarcho
fix [`needless_borrow`], [`explicit_auto_deref`] FPs on unions fix rust-lang/rust-clippy#9383 changelog: fix [`needless_borrow`] false positive on unions changelog: fix [`explicit_auto_deref`] false positive on unions Left a couple debug derived impls on purpose I needed to debug as I don't think it's noise
Configuration menu - View commit details
-
Copy full SHA for 8845f82 - Browse repository at this point
Copy the full SHA 8845f82View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ba081c - Browse repository at this point
Copy the full SHA 8ba081cView commit details -
[
unnecessary_lazy_evaluations
] Do not suggest switching to early ev……aluation when type has custom `Drop`
Configuration menu - View commit details
-
Copy full SHA for 314d57a - Browse repository at this point
Copy the full SHA 314d57aView commit details -
Auto merge of rust-lang#9550 - alex-semenyuk:fix_typo, r=xFrednet
Fix typo changelog: none
Configuration menu - View commit details
-
Copy full SHA for ed9c0e3 - Browse repository at this point
Copy the full SHA ed9c0e3View commit details -
`Res::SelfTy` currently has two `Option`s. When the second one is `Some` the first one is never consulted. So we can split it into two variants, `Res::SelfTyParam` and `Res::SelfTyAlias`, reducing the size of `Res` from 24 bytes to 12. This then shrinks `hir::Path` and `hir::PathSegment`, which are the HIR types that take up the most space.
Configuration menu - View commit details
-
Copy full SHA for 8b59fe4 - Browse repository at this point
Copy the full SHA 8b59fe4View commit details
Commits on Sep 29, 2022
-
Auto merge of rust-lang#9551 - kraktus:unnecessary_lazy_evaluations, …
…r=xFrednet [`unnecessary_lazy_evaluations`] Do not suggest switching to early evaluation when type has custom `Drop` fix rust-lang#9427 changelog: [`unnecessary_lazy_evaluations`] Do not suggest switching to early evaluation when type has custom `Drop`
Configuration menu - View commit details
-
Copy full SHA for 5e8a4b6 - Browse repository at this point
Copy the full SHA 5e8a4b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5797911 - Browse repository at this point
Copy the full SHA 5797911View commit details -
Configuration menu - View commit details
-
Copy full SHA for 67af127 - Browse repository at this point
Copy the full SHA 67af127View commit details -
Configuration menu - View commit details
-
Copy full SHA for 924c1ce - Browse repository at this point
Copy the full SHA 924c1ceView commit details -
Auto merge of rust-lang#9516 - flip1995:rustup, r=flip1995
Rustup r? `@ghost` changelog: none
Configuration menu - View commit details
-
Copy full SHA for e43f5a1 - Browse repository at this point
Copy the full SHA e43f5a1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ec7759 - Browse repository at this point
Copy the full SHA 6ec7759View commit details -
Configuration menu - View commit details
-
Copy full SHA for 416da12 - Browse repository at this point
Copy the full SHA 416da12View commit details
Commits on Sep 30, 2022
-
Auto merge of rust-lang#9486 - kraktus:lazy_eval, r=dswij
[`unnecessary_lazy_eval`] Do not lint in external macros fix rust-lang/rust-clippy#9485, fix rust-lang/rust-clippy#9439 I didn't find a way to add a test since fps occur due to an external crate. changelog: [`unnecessary_lazy_eval`] Do not lint in external macros
Configuration menu - View commit details
-
Copy full SHA for 68408c5 - Browse repository at this point
Copy the full SHA 68408c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 47a7d68 - Browse repository at this point
Copy the full SHA 47a7d68View commit details -
Auto merge of rust-lang#9557 - xxchan:xxchan/safe-anaconda, r=Manishe…
…arth doc: make the usage of clippy.toml more clear Added a subsection for it, and move it after `Allowing/denying lints` which is more frequently used. fix rust-lang/rust-clippy#9265 *Please write a short comment explaining your change (or "none" for internal only changes)* changelog: none
Configuration menu - View commit details
-
Copy full SHA for 5f25f7e - Browse repository at this point
Copy the full SHA 5f25f7eView commit details -
Co-authored-by: Alex Macleod <alex@macleod.io>
Configuration menu - View commit details
-
Copy full SHA for 85b8ff7 - Browse repository at this point
Copy the full SHA 85b8ff7View commit details -
Add test case where
FnMut
used once needs&mut
Evan Typanski committedSep 30, 2022 Configuration menu - View commit details
-
Copy full SHA for dbadf37 - Browse repository at this point
Copy the full SHA dbadf37View commit details -
Auto merge of rust-lang#9556 - evantypanski:et/issue-9369, r=Alexendoo
[`redundant_closure`] Fix suggestion causes error for `impl FnMut` Fixes rust-lang#9369 changelog: [`redundant_closure`] Fix suggestion causes error with `impl FnMut` types
Configuration menu - View commit details
-
Copy full SHA for a78551b - Browse repository at this point
Copy the full SHA a78551bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4876882 - Browse repository at this point
Copy the full SHA 4876882View commit details -
Auto merge of rust-lang#9510 - Alexendoo:lintcheck-server2, r=matthia…
…skrgr Add `cargo lintcheck --recursive` to check dependencies of crates r? `@matthiaskrgr` This just adds the mode without changing how a regular run works Takes a fair bit longer to run than a `-j4` or regular run ``` cargo lintcheck -j4 468.33s user 43.78s system 290% cpu 2:56.42 total cargo lintcheck 428.81s user 41.85s system 199% cpu 3:55.37 total cargo lintcheck --recursive 679.83s user 45.01s system 210% cpu 5:43.72 total ``` But finds more results: <details> <summary>Stats</summary> <pre><code>clippy::explicit_counter_loop 0 => 1 clippy::needless_question_mark 0 => 3 clippy::unnecessary_cast 0 => 2 clippy::to_string_in_format_args 0 => 4 clippy::deprecated_cfg_attr 0 => 23 clippy::redundant_closure 0 => 9 clippy::drop_copy 0 => 4 clippy::double_must_use 0 => 1 clippy::transmute_num_to_bytes 0 => 9 clippy::bind_instead_of_map 0 => 14 clippy::float_cmp 0 => 16 clippy::is_digit_ascii_radix 0 => 16 clippy::manual_swap 0 => 1 clippy::needless_match 0 => 2 clippy::vec_init_then_push 0 => 1 clippy::never_loop 0 => 1 clippy::option_map_or_none 0 => 4 clippy::tabs_in_doc_comments 0 => 1 clippy::naive_bytecount 0 => 1 clippy::collapsible_if 0 => 24 clippy::copy_iterator 0 => 5 clippy::unused_io_amount 0 => 2 clippy::result_large_err 0 => 141 clippy::useless_conversion 0 => 24 clippy::flat_map_option 0 => 8 clippy::useless_format 0 => 2 clippy::module_inception 0 => 1 clippy::drop_ref 0 => 2 clippy::unnecessary_fold 0 => 2 clippy::neg_multiply 0 => 1 clippy::while_let_loop 0 => 6 clippy::missing_inline_in_public_items 0 => 37 clippy::unnecessary_mut_passed 0 => 1 unknown_lints 0 => 15 clippy::wildcard_dependencies 0 => 3 clippy::same_item_push 0 => 2 clippy::useless_asref 0 => 1 clippy::unnecessary_unwrap 0 => 4 clippy::iter_not_returning_iterator 0 => 5 clippy::comparison_to_empty 0 => 10 clippy::ref_option_ref 0 => 4 clippy::unused_peekable 0 => 1 clippy::needless_range_loop 0 => 8 clippy::absurd_extreme_comparisons 0 => 2 clippy::unnecessary_operation 0 => 2 clippy::for_kv_map 0 => 5 clippy::unnecessary_owned_empty_strings 0 => 3 clippy::transmutes_expressible_as_ptr_casts 0 => 1 clippy::toplevel_ref_arg 0 => 2 clippy::uninit_vec 0 => 3 clippy::filter_next 0 => 1 clippy::wildcard_in_or_patterns 0 => 6 clippy::cast_ptr_alignment 0 => 48 clippy::manual_memcpy 0 => 1 clippy::assign_op_pattern 0 => 313 clippy::unnecessary_lazy_evaluations 0 => 14 clippy::println_empty_string 0 => 2 clippy::redundant_pattern 0 => 2 clippy::declare_interior_mutable_const 0 => 8 clippy::large_stack_arrays 0 => 4 clippy::match_bool 0 => 4 clippy::unicode_not_nfc 0 => 2075 clippy::inconsistent_digit_grouping 0 => 4 clippy::no_effect_underscore_binding 0 => 2 clippy::let_and_return 0 => 5 clippy::transmute_ptr_to_ref 0 => 12 clippy::op_ref 0 => 13 clippy::unnecessary_join 0 => 4 clippy::into_iter_on_ref 0 => 13 clippy::from_str_radix_10 0 => 7 clippy::ptr_offset_with_cast 0 => 48 clippy::erasing_op 0 => 1 clippy::swap_ptr_to_ref 0 => 3 clippy::needless_bitwise_bool 0 => 2 clippy::extend_with_drain 0 => 19 clippy::only_used_in_recursion 0 => 4 clippy::needless_late_init 0 => 8 clippy::excessive_precision 0 => 1959 clippy::match_ref_pats 0 => 10 clippy::unit_arg 0 => 20 clippy::bool_comparison 0 => 4 clippy::bool_assert_comparison 0 => 1 clippy::eq_op 0 => 6 clippy::cast_abs_to_unsigned 0 => 6 clippy::format_in_format_args 0 => 1 clippy::iter_cloned_collect 0 => 4 clippy::ptr_eq 0 => 3 clippy::needless_bool 0 => 5 clippy::transmute_ptr_to_ptr 0 => 16 clippy::needless_option_take 0 => 2 clippy::flat_map_identity 0 => 1 clippy::needless_splitn 0 => 2 clippy::blocks_in_if_conditions 0 => 1 clippy::write_literal 0 => 1 clippy::manual_split_once 0 => 1 clippy::result_unit_err 0 => 36 clippy::unused_unit 0 => 11 clippy::single_match 0 => 22 clippy::manual_find 0 => 3 clippy::derive_ord_xor_partial_ord 0 => 6 clippy::char_lit_as_u8 0 => 2 clippy::let_unit_value 0 => 2 clippy::needless_continue 0 => 19 clippy::zero_sized_map_values 0 => 4 clippy::needless_arbitrary_self_type 0 => 6 clippy::partialeq_to_none 0 => 11 clippy::partialeq_ne_impl 0 => 1 clippy::invalid_upcast_comparisons 0 => 1 clippy::mut_range_bound 0 => 4 clippy::match_result_ok 0 => 2 clippy::ptr_arg 0 => 8 clippy::iter_nth_zero 0 => 18 clippy::needless_for_each 0 => 1 clippy::manual_unwrap_or 0 => 1 clippy::transmute_int_to_float 0 => 6 clippy::cast_slice_from_raw_parts 0 => 1 clippy::match_wild_err_arm 0 => 2 clippy::match_like_matches_macro 4 => 116 clippy::enum_glob_use 50 => 380 clippy::get_first 3 => 33 clippy::needless_doctest_main 10 => 26 clippy::struct_excessive_bools 19 => 51 clippy::cast_possible_wrap 46 => 538 clippy::manual_string_new 10 => 27 clippy::match_same_arms 53 => 1039 clippy::manual_non_exhaustive 1 => 33 clippy::redundant_pattern_matching 2 => 13 clippy::new_without_default 5 => 73 clippy::option_as_ref_deref 2 => 9 clippy::unwrap_or_else_default 2 => 4 clippy::case_sensitive_file_extension_comparisons 6 => 9 clippy::cast_precision_loss 45 => 110 clippy::needless_pass_by_value 26 => 187 clippy::redundant_closure_for_method_calls 170 => 539 clippy::let_underscore_drop 33 => 133 clippy::single_match_else 51 => 138 clippy::needless_borrow 24 => 382 clippy::redundant_else 37 => 151 clippy::type_complexity 2 => 22 clippy::ptr_as_ptr 93 => 1135 clippy::needless_lifetimes 7 => 100 clippy::single_char_add_str 2 => 22 clippy::similar_names 99 => 352 clippy::cargo_common_metadata 25 => 276 clippy::int_plus_one 1 => 2 clippy::missing_safety_doc 9 => 152 clippy::redundant_slicing 2 => 13 clippy::mut_mut 2 => 17 clippy::derive_partial_eq_without_eq 8 => 141 clippy::derive_hash_xor_eq 2 => 20 clippy::from_iter_instead_of_collect 2 => 17 clippy::verbose_bit_mask 1 => 8 clippy::too_many_lines 58 => 162 clippy::module_name_repetitions 178 => 1104 clippy::explicit_into_iter_loop 12 => 32 clippy::cast_lossless 45 => 478 clippy::many_single_char_names 9 => 23 clippy::unnested_or_patterns 27 => 127 clippy::upper_case_acronyms 5 => 29 clippy::needless_return 5 => 97 clippy::precedence 1 => 11 clippy::len_zero 2 => 70 clippy::manual_strip 2 => 30 clippy::derivable_impls 2 => 12 clippy::unused_self 20 => 187 clippy::enum_variant_names 1 => 6 clippy::self_named_constructors 1 => 3 clippy::explicit_auto_deref 19 => 314 clippy::semicolon_if_nothing_returned 137 => 1861 clippy::should_implement_trait 1 => 7 clippy::expl_impl_clone_on_copy 159 => 1318 clippy::stable_sort_primitive 4 => 12 clippy::mem_replace_with_default 7 => 46 clippy::borrow_deref_ref 5 => 140 clippy::large_enum_variant 1 => 4 clippy::map_unwrap_or 30 => 203 clippy::zero_ptr 3 => 25 clippy::filter_map_next 2 => 6 clippy::identity_op 5 => 76 clippy::checked_conversions 1 => 8 clippy::len_without_is_empty 9 => 47 clippy::missing_errors_doc 372 => 2333 clippy::fn_params_excessive_bools 3 => 7 clippy::single_component_path_imports 6 => 28 clippy::unreadable_literal 366 => 9814 clippy::field_reassign_with_default 1 => 5 clippy::redundant_clone 1 => 8 clippy::cloned_instead_of_copied 36 => 78 clippy::too_many_arguments 4 => 22 clippy::option_map_unit_fn 7 => 9 clippy::extra_unused_lifetimes 1 => 24 clippy::unnecessary_wraps 26 => 128 clippy::used_underscore_binding 1 => 50 clippy::inconsistent_struct_constructor 2 => 7 clippy::manual_range_contains 9 => 120 clippy::map_clone 7 => 46 clippy::cast_slice_different_sizes 1 => 4 clippy::missing_panics_doc 114 => 603 renamed_and_removed_lints 3 => 9 clippy::items_after_statements 155 => 309 clippy::inefficient_to_string 5 => 6 clippy::comparison_chain 1 => 19 clippy::crate_in_macro_def 3 => 6 clippy::write_with_newline 2 => 36 clippy::manual_saturating_arithmetic 1 => 2 clippy::clone_on_copy 1 => 86 clippy::negative_feature_names 3 => 16 clippy::redundant_field_names 112 => 1013 clippy::from_over_into 2 => 28 clippy::wildcard_imports 178 => 376 clippy::unusual_byte_groupings 19 => 65 clippy::option_option 2 => 10 clippy::nonminimal_bool 1 => 17 clippy::borrow_as_ptr 2 => 172 clippy::redundant_static_lifetimes 24 => 1701 clippy::or_fun_call 1 => 63 clippy::single_char_pattern 3 => 79 clippy::explicit_iter_loop 72 => 148 clippy::collapsible_else_if 2 => 27 clippy::manual_str_repeat 1 => 6 clippy::if_same_then_else 3 => 31 clippy::while_let_on_iterator 4 => 28 clippy::multiple_crate_versions 5 => 19 clippy::cast_possible_truncation 115 => 1172 clippy::explicit_deref_methods 1 => 38 clippy::default_trait_access 48 => 130 clippy::question_mark 2 => 28 clippy::must_use_candidate 612 => 5369 clippy::manual_map 1 => 12 clippy::bool_to_int_with_if 2 => 15 clippy::doc_markdown 202 => 1709 clippy::cast_sign_loss 60 => 477 clippy::wrong_self_convention 11 => 45 clippy::transmute_float_to_int 6 => 18 clippy::return_self_not_must_use 66 => 736 clippy::range_plus_one 1 => 36 clippy::manual_assert 11 => 62 clippy::trivially_copy_pass_by_ref 40 => 189 clippy::match_on_vec_items 2 => 7 clippy::inline_always 59 => 1079 clippy::if_not_else 31 => 205 clippy::implicit_clone 10 => 32 clippy::match_wildcard_for_single_variants 16 => 101 clippy::doc_link_with_quotes 7 => 35 clippy::redundant_feature_names 4 => 41 </code></pre></details> changelog: none
Configuration menu - View commit details
-
Copy full SHA for 31b1741 - Browse repository at this point
Copy the full SHA 31b1741View commit details
Commits on Oct 1, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 0867c64 - Browse repository at this point
Copy the full SHA 0867c64View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8dfbad9 - Browse repository at this point
Copy the full SHA 8dfbad9View commit details -
Auto merge of rust-lang#101986 - WaffleLapkin:move_lint_note_to_the_b…
…ottom, r=estebank Move lint level source explanation to the bottom So, uhhhhh r? `@estebank` ## User-facing change "note: `#[warn(...)]` on by default" and such are moved to the bottom of the diagnostic: ```diff - = note: `#[warn(unsupported_calling_conventions)]` on by default = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! = note: for more information, see issue rust-lang#87678 <rust-lang#87678> + = note: `#[warn(unsupported_calling_conventions)]` on by default ``` Why warning is enabled is the least important thing, so it shouldn't be the first note the user reads, IMO. ## Developer-facing change `struct_span_lint` and similar methods have a different signature. Before: `..., impl for<'a> FnOnce(LintDiagnosticBuilder<'a, ()>)` After: `..., impl Into<DiagnosticMessage>, impl for<'a, 'b> FnOnce(&'b mut DiagnosticBuilder<'a, ()>) -> &'b mut DiagnosticBuilder<'a, ()>` The reason for this is that `struct_span_lint` needs to edit the diagnostic _after_ `decorate` closure is called. This also makes lint code a little bit nicer in my opinion. Another option is to use `impl for<'a> FnOnce(LintDiagnosticBuilder<'a, ()>) -> DiagnosticBuilder<'a, ()>` altough I don't _really_ see reasons to do `let lint = lint.build(message)` everywhere. ## Subtle problem By moving the message outside of the closure (that may not be called if the lint is disabled) `format!(...)` is executed earlier, possibly formatting `Ty` which may call a query that trims paths that crashes the compiler if there were no warnings... I don't think it's that big of a deal, considering that we move from `format!(...)` to `fluent` (which is lazy by-default) anyway, however this required adding a workaround which is unfortunate. ## P.S. I'm sorry, I do not how to make this PR smaller/easier to review. Changes to the lint API affect SO MUCH 😢
Configuration menu - View commit details
-
Copy full SHA for 9e8f53d - Browse repository at this point
Copy the full SHA 9e8f53dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3757a0e - Browse repository at this point
Copy the full SHA 3757a0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 418b30b - Browse repository at this point
Copy the full SHA 418b30bView commit details -
Auto merge of rust-lang#9568 - matthiaskrgr:tools_util_bump, r=flip1995
rustc_tool_utils: bump version in anticipation of a new release cc rust-lang/rust-clippy#9553 After this is merged, I will publish the 0.2.1 version to crates.io, and make another PR that switches clippy to use the dependency from crates.io. The source can still be kept in the clippy repo though imo. This will allow miri and clippy to "share" the crate in the rustc repo once they both depend on it. reopen of rust-lang#9561 changelog: release `rustc_tools_util` on `Crates.io`.
Configuration menu - View commit details
-
Copy full SHA for 8030ee9 - Browse repository at this point
Copy the full SHA 8030ee9View commit details -
Auto merge of rust-lang#9567 - rust-lang:doc-link-with-code, r=Alexendoo
avoid doc-link-with-quotes in code blocks This fixes rust-lang#8961 by moving the lint into the docs code, thus being able to re-use the pulldown-cmark parser and simplifying the code. --- changelog: none
Configuration menu - View commit details
-
Copy full SHA for 8da2429 - Browse repository at this point
Copy the full SHA 8da2429View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce609c6 - Browse repository at this point
Copy the full SHA ce609c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for eef5d47 - Browse repository at this point
Copy the full SHA eef5d47View commit details -
Auto merge of rust-lang#9569 - matthiaskrgr:rtu_from_cratesio, r=xFre…
…dnet use rustc_tools_util dependency from crates.io instead of this repo. Fixes rust-lang#9553 changelog: none
Configuration menu - View commit details
-
Copy full SHA for 9b6b452 - Browse repository at this point
Copy the full SHA 9b6b452View commit details -
Configuration menu - View commit details
-
Copy full SHA for b221184 - Browse repository at this point
Copy the full SHA b221184View commit details -
Auto merge of rust-lang#9484 - Xaeroxe:clamping-without-clamp, r=Alex…
…endoo Implement `manual_clamp` lint Fixes rust-lang#9477 Fixes rust-lang#6751 Identifies common patterns where usage of the `clamp` function would be more succinct and clear, and suggests using the `clamp` function instead. changelog: [`manual_clamp`]: Implement manual_clamp lint
Configuration menu - View commit details
-
Copy full SHA for 64243c6 - Browse repository at this point
Copy the full SHA 64243c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a54db1 - Browse repository at this point
Copy the full SHA 5a54db1View commit details -
Configuration menu - View commit details
-
Copy full SHA for a834ac9 - Browse repository at this point
Copy the full SHA a834ac9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 52a68dc - Browse repository at this point
Copy the full SHA 52a68dcView commit details
Commits on Oct 2, 2022
-
Auto merge of rust-lang#9509 - schubart:fix_sorting, r=llogiq
Fix sorting in ` cargo dev update_lints` script changelog: none The old code cloned and sorted `usable_lints` into `sorted_usable_lints`, but then failed to do anything with `sorted_usable_lints`. This was discovered by my new `collection_is_never_read` lint (rust-lang#9267) that I'm working on! Fix: I renamed the sorted vector to `usable_lints`. Therefore it now gets used where the unsorted one was used previously.
Configuration menu - View commit details
-
Copy full SHA for cb8da67 - Browse repository at this point
Copy the full SHA cb8da67View commit details -
Auto merge of rust-lang#9573 - Alexendoo:needless-borrowed-ref-slice,…
… r=dswij lint nested patterns and slice patterns in `needless_borrowed_reference` Now lints in positions other than top level, e.g. `Some(&ref a)`. Or patterns are excluded as that can cause issues Slice patterns of `ref`s are now linted, e.g. `&[ref a, ref b]`. An easy one to walk into as you might expect that to match against a slice you should use `&[]`, then to get around a `cannot move out of type [T]` error you apply a `ref` changelog: [`needless_borrowed_reference`]: lint nested patterns and slice patterns
Configuration menu - View commit details
-
Copy full SHA for 5d837b5 - Browse repository at this point
Copy the full SHA 5d837b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90b446f - Browse repository at this point
Copy the full SHA 90b446fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2c04c1a - Browse repository at this point
Copy the full SHA 2c04c1aView commit details -
revert
manual_assert
suggestion refactorBecause `Sugg` helper does not simplify multiple negations
Configuration menu - View commit details
-
Copy full SHA for a35734c - Browse repository at this point
Copy the full SHA a35734cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 22be60b - Browse repository at this point
Copy the full SHA 22be60bView commit details -
Auto merge of rust-lang#9571 - rust-lang:refactor-lit-ints, r=Jarcho
use `is_integer_literal` more I noticed that we have the `is_integer_literal` function in our `clippy_utils`, yet almost everywhere people still match int literal expressions manually. So I searched for instances to replace and shorten the code a bit. --- changelog: none
Configuration menu - View commit details
-
Copy full SHA for d6d5ecd - Browse repository at this point
Copy the full SHA d6d5ecdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ab02aa - Browse repository at this point
Copy the full SHA 3ab02aaView commit details -
Auto merge of rust-lang#9577 - kraktus:unnecessary_cast, r=llogiq
[`unnecessary_cast`] add parenthesis when negative number uses a method fix rust-lang#9563 The issue was probably introduced by 90fe3be changelog: [`unnecessary_cast`] add parenthesis when negative number uses a method r? llogiq
Configuration menu - View commit details
-
Copy full SHA for ac12011 - Browse repository at this point
Copy the full SHA ac12011View commit details -
let unnecessary_cast work for trivial non_literal expressions
Signed-off-by: TennyZhuang <zty0826@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 081f739 - Browse repository at this point
Copy the full SHA 081f739View commit details -
ignore the lint on some test files
Signed-off-by: TennyZhuang <zty0826@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for f204398 - Browse repository at this point
Copy the full SHA f204398View commit details -
Signed-off-by: TennyZhuang <zty0826@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for bff811b - Browse repository at this point
Copy the full SHA bff811bView commit details -
Configuration menu - View commit details
-
Copy full SHA for c9b9314 - Browse repository at this point
Copy the full SHA c9b9314View commit details -
Auto merge of rust-lang#9479 - kraktus:manual_assert2, r=llogiq
[`manual_assert`]: Preserve comments in the suggestion close rust-lang/rust-clippy#7730 changelog: [`manual_assert`]: Preserve comments in the suggestion
Configuration menu - View commit details
-
Copy full SHA for 11a6d19 - Browse repository at this point
Copy the full SHA 11a6d19View commit details -
Auto merge of rust-lang#9576 - TennyZhuang:unnecessary_cast_for_non_l…
…iteral_expr, r=llogiq let unnecessary_cast work for trivial non_literal expressions Signed-off-by: TennyZhuang <zty0826@gmail.com> --- changelog: [`unnecessary_cast`]: fix for trivial non_literal expressions Fixes rust-lang#9562
Configuration menu - View commit details
-
Copy full SHA for f8ba192 - Browse repository at this point
Copy the full SHA f8ba192View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e7af6b - Browse repository at this point
Copy the full SHA 8e7af6bView commit details -
Fix and improve internal lint checking for
match_type
usages* Check for `const`s and `static`s from external crates * Check for `LangItem`s * Handle inherent functions which have the same name as a field * Also check the following functions: * `match_trait_method` * `match_def_path` * `is_expr_path_def_path` * `is_qpath_def_path` * Handle checking for a constructor to a diagnostic item or `LangItem`
Configuration menu - View commit details
-
Copy full SHA for 162aa19 - Browse repository at this point
Copy the full SHA 162aa19View commit details -
Auto merge of rust-lang#9574 - Alexendoo:unused-fixed, r=Jarcho
Remove unused `.fixed` files, only run asm_syntax doctests on x86 Two small changes, removes some unused `.fixed` and makes `clippy_lints` doctests pass on non x86 arches changelog: none
Configuration menu - View commit details
-
Copy full SHA for 0341198 - Browse repository at this point
Copy the full SHA 0341198View commit details -
fallout: fix tests to allow uninlined_format_args
In order to switch `clippy::uninlined_format_args` from pedantic to style, all existing tests must not raise a warning. I did not want to change the actual tests, so this is a relatively minor change that: * add `#![allow(clippy::uninlined_format_args)]` where needed * normalizes all allow/deny/warn attributes * all allow attributes are grouped together * sorted alphabetically * the `clippy::*` attributes are listed separate from the other ones. * deny and warn attributes are listed before the allowed ones changelog: none
Configuration menu - View commit details
-
Copy full SHA for eb39702 - Browse repository at this point
Copy the full SHA eb39702View commit details -
Auto merge of rust-lang#7962 - Jarcho:fix_match_type_on_diagnostic_it…
…ems, r=llogiq Fix and improve `match_type_on_diagnostic_item` This extracts the fix for the lint out of rust-lang#7647. There's still a couple of other functions to check, but at least this will get lint working again. The two added util functions (`is_diagnostic_item` and `is_lang_item`) are needed to handle `DefId` for unit and tuple struct/variant constructors. The `rustc_diagnostic_item` and `lang` attributes are attached to the struct/variant `DefId`, but most of the time they are used through their constructors which have a different `DefId`. The two utility functions will check if the `DefId` is for a constructor and switch to the associated struct/variant `DefId`. There does seem to be a bug on rustc's side where constructor `DefId`s from external crates seem to be returning `DefKind::Variant` instead of `DefKind::Ctor()`. There's a workaround put in right. changelog: None
Configuration menu - View commit details
-
Copy full SHA for bef93d3 - Browse repository at this point
Copy the full SHA bef93d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 649d443 - Browse repository at this point
Copy the full SHA 649d443View commit details -
Configuration menu - View commit details
-
Copy full SHA for 38236a7 - Browse repository at this point
Copy the full SHA 38236a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 26bb366 - Browse repository at this point
Copy the full SHA 26bb366View commit details
Commits on Oct 3, 2022
-
Auto merge of rust-lang#8762 - Jarcho:visitor, r=Jarcho
Replace `expr_visitor` with `for_each_expr` This is a minor change which uses `ControlFlow` rather than a boolean. This also runs the visitor rather than returning the visitor, which results in a small readability win as well. changelog: None
Configuration menu - View commit details
-
Copy full SHA for 2be6c4a - Browse repository at this point
Copy the full SHA 2be6c4aView commit details -
let upper_case_acronyms check the enum name
Signed-off-by: TennyZhuang <zty0826@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for bf18768 - Browse repository at this point
Copy the full SHA bf18768View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7747032 - Browse repository at this point
Copy the full SHA 7747032View commit details -
Configuration menu - View commit details
-
Copy full SHA for 15431b3 - Browse repository at this point
Copy the full SHA 15431b3View commit details -
Auto merge of rust-lang#9580 - TennyZhuang:upper_case_acronyms-enum, …
…r=llogiq let `upper_case_acronyms` check the enum name Signed-off-by: TennyZhuang <zty0826@gmail.com> Fix rust-lang#9579 changelog: [`upper_case_acronyms`]: check the enum name
Configuration menu - View commit details
-
Copy full SHA for 18e10ca - Browse repository at this point
Copy the full SHA 18e10caView commit details -
Configuration menu - View commit details
-
Copy full SHA for f1c831a - Browse repository at this point
Copy the full SHA f1c831aView commit details -
Auto merge of rust-lang#9549 - royrustdev:manual_saturating_add, r=ll…
…ogiq new `implicit_saturating_add` lint This fixes rust-lang#9393 If you added a new lint, here's a checklist for things that will be checked during review or continuous integration. - \[x] Followed [lint naming conventions][lint_naming] - \[x] Added passing UI tests (including committed `.stderr` file) - \[x] `cargo test` passes locally - \[x] Executed `cargo dev update_lints` - \[x] Added lint documentation - \[x] Run `cargo dev fmt` --- changelog: add [`manual_saturating_add`] lint
Configuration menu - View commit details
-
Copy full SHA for 09e6c23 - Browse repository at this point
Copy the full SHA 09e6c23View commit details -
Auto merge of rust-lang#9581 - ebobrow:mul-add-negative, r=Manishearth
`suboptimal_flops` lint for multiply and subtract fixes rust-lang#9526 changelog: [`suboptimal_flops`] lint for multiply and subtract
Configuration menu - View commit details
-
Copy full SHA for 5825ae7 - Browse repository at this point
Copy the full SHA 5825ae7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 99363fe - Browse repository at this point
Copy the full SHA 99363feView commit details -
Auto merge of rust-lang#9559 - c410-f3r:arith, r=Alexendoo
Fix rust-lang#9544 Fix rust-lang#9544 r? `@Alexendoo` changelog: [`arithmetic_side_effects`]: Fix false negative for `CustomType / usize`, `CustomType * float` and similar
Configuration menu - View commit details
-
Copy full SHA for e8c1b54 - Browse repository at this point
Copy the full SHA e8c1b54View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a6a98f - Browse repository at this point
Copy the full SHA 2a6a98fView commit details -
Configuration menu - View commit details
-
Copy full SHA for a44914f - Browse repository at this point
Copy the full SHA a44914fView commit details
Commits on Oct 4, 2022
-
Auto merge of rust-lang#9547 - nyurik:capt, r=flip1995
fallout: fix tests to allow uninlined_format_args In order to switch `clippy::uninlined_format_args` from pedantic to style, all existing tests must not raise a warning. I did not want to change the actual tests, so this is a relatively minor change that: * add `#![allow(clippy::uninlined_format_args)]` where needed * normalizes all allow/deny/warn attributes * all allow attributes are grouped together * sorted alphabetically * the `clippy::*` attributes are listed separate from the other ones. * deny and warn attributes are listed before the allowed ones See also rust-lang/rust-clippy#9233, rust-lang/rust-clippy#9525, rust-lang/rust-clippy#9527 cc: `@llogiq` `@Alexendoo` changelog: none
Configuration menu - View commit details
-
Copy full SHA for 2f90b2a - Browse repository at this point
Copy the full SHA 2f90b2aView commit details -
Auto merge of rust-lang#9587 - c410-f3r:arith, r=Alexendoo
[arithmetic-side-effects] Do not ignore literal references To my utter surprise, `rustc` does does not warn stuff like `let n: u8 = &255 + &1` or `let n: u8 = 255 + &1`. changelog: [arithmetic-side-effects] Do not ignore literal references
Configuration menu - View commit details
-
Copy full SHA for 425e1ea - Browse repository at this point
Copy the full SHA 425e1eaView commit details -
Configuration menu - View commit details
-
Copy full SHA for da16cc1 - Browse repository at this point
Copy the full SHA da16cc1View commit details
Commits on Oct 5, 2022
-
lint::unsafe_removed_from_name: fix false positive result when allowed
* Allowing `unsafe_removed_from_name` on imports produces a false positive on `useless_attribute`. Fixes: rust-lang#9197 Signed-off-by: Andy-Python-Programmer <andypythonappdeveloper@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 14f9f2b - Browse repository at this point
Copy the full SHA 14f9f2bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 86c86c3 - Browse repository at this point
Copy the full SHA 86c86c3View commit details -
Auto merge of rust-lang#9495 - Alexendoo:disallowed-macros, r=Jarcho
Add `disallowed_macros` lint Closes rust-lang#7790 Fixes rust-lang#9558 `clippy_utils::def_path_res` already resolved macro definitions which is nice, it just needed a tweak to be able to disambiguate e.g. `std::vec` the module & `std::vec` the macro, and `serde::Serialize` the trait & `serde::Serialize` the derive macro changelog: new lint: [`disallowed_macros`] changelog: [`disallowed_methods`], [`disallowed_types`]: Fix false negative when a type/fn/macro share the same path
Configuration menu - View commit details
-
Copy full SHA for e687bed - Browse repository at this point
Copy the full SHA e687bedView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9226066 - Browse repository at this point
Copy the full SHA 9226066View commit details -
Auto merge of rust-lang#9586 - Alexendoo:format-args-commas, r=Manish…
…earth FormatArgsExpn: Find comma spans and ignore weird proc macro spans Fixes the following cases: A missing `, 1` from the `expect_fun_call` suggestion: ```rust Some(()).expect(&format!("{x} {}", 1)); ``` ``` warning: use of `expect` followed by a function call --> t.rs:7:14 | 7 | Some(()).expect(&format!("{x} {}", 1)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `unwrap_or_else(|| panic!("{x} {}"))` ``` The suggestion removing from the comma in the comment rather than the one after the format string: ```rust println!( "{}", // a comment, with a comma in it x ); ``` ``` warning: variables can be used directly in the `format!` string --> t.rs:9:5 | 9 | / println!( 10 | | "{}", 11 | | // a comment, with a comma in it 12 | | x 13 | | ); | |_____^ | help: change this to | 10 ~ "{x}", 11 ~ // a comment | ``` It also no longer accepts expansions where a format string or argument has a "weird" proc macro span, that is one where the literal/expression it outputs has the span of one of its inputs. Kind of like a `format_args` specific `clippy_utils::is_from_proc_macro`, e.g. `format!(indoc! {" ... "})` changelog: [`expect_fun_call`]: Fix suggestion for `format!` using captured variables changelog: [`print_literal`], [`write_literal`], [`uninlined_format_args`]: Fix suggestion when following a comment including a comma
Configuration menu - View commit details
-
Copy full SHA for 887ba0c - Browse repository at this point
Copy the full SHA 887ba0cView commit details
Commits on Oct 6, 2022
-
Configuration menu - View commit details
-
Copy full SHA for e2808af - Browse repository at this point
Copy the full SHA e2808afView commit details -
Configuration menu - View commit details
-
Copy full SHA for ad1814d - Browse repository at this point
Copy the full SHA ad1814dView commit details -
Auto merge of rust-lang#9596 - flip1995:rustup, r=flip1995
Rustup r? `@ghost` changelog: none
Configuration menu - View commit details
-
Copy full SHA for ac0e10a - Browse repository at this point
Copy the full SHA ac0e10aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 27f2f0a - Browse repository at this point
Copy the full SHA 27f2f0aView commit details -
Configuration menu - View commit details
-
Copy full SHA for db490d0 - Browse repository at this point
Copy the full SHA db490d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for c251f8d - Browse repository at this point
Copy the full SHA c251f8dView commit details -
Auto merge of rust-lang#9598 - nyurik:fix-comment, r=Alexendoo
lint: fix a few comments minor cleanup per `@Alexendoo` [comment](rust-lang/rust-clippy#9586 (comment)) changelog: none
Configuration menu - View commit details
-
Copy full SHA for 45343e2 - Browse repository at this point
Copy the full SHA 45343e2View commit details -
Add a temporary workaround for multiline formart arg inlining
per suggestion in rust-lang#102729 (comment) workaround for an internal crash when handling multi-line format argument inlining.
Configuration menu - View commit details
-
Copy full SHA for cfd6c8d - Browse repository at this point
Copy the full SHA cfd6c8dView commit details -
Auto merge of rust-lang#9599 - nyurik:inline-crash, r=flip1995
Add a temporary workaround for multiline formart arg inlining per suggestion in rust-lang#102729 (comment) workaround for an internal crash when handling multi-line format argument inlining. changelog: none (no point for changelog because it is still a new lint being introduced)
Configuration menu - View commit details
-
Copy full SHA for 6dd0c3a - Browse repository at this point
Copy the full SHA 6dd0c3aView commit details -
Auto merge of rust-lang#9593 - Andy-Python-Programmer:master, r=llogiq
lint::unsafe_removed_from_name: fix false positive result when allowed changelog: [`unsafe_removed_from_name`] Fix allowing on imports produces a false positive on `useless_attribute`. Fixes: rust-lang#9197 Signed-off-by: Andy-Python-Programmer <andypythonappdeveloper@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 8f1ebdd - Browse repository at this point
Copy the full SHA 8f1ebddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2b30ce0 - Browse repository at this point
Copy the full SHA 2b30ce0View commit details