-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Fix false positive in PartialEq
check in unconditional_recursion
lint
#12137
Fix false positive in PartialEq
check in unconditional_recursion
lint
#12137
Conversation
0cda951
to
1326672
Compare
Thank you! @bors r+ |
☀️ Test successful - checks-action_dev_test, checks-action_remark_test, checks-action_test |
1 similar comment
☀️ Test successful - checks-action_dev_test, checks-action_remark_test, checks-action_test |
@GuillaumeGomez is this fix supposed to already have been shipped in the most recent nightly |
It's synced every 15 days. I thin next sync is in ~10 days. If you want a faster sync, please open an issue so someone can do it. |
Good to know! This is fine for me, I just wanted to know if I am running into yet another case that has not yet been covered and should therefore be reported. :) |
Don't hesitate to add a new test if none of the existing ones look like yours. ;) |
Will do as soon as such a situation arises. :) |
The `suspicious_open_options` lint [0] warns that the truncation behaviour should be made explicit when creating new files. We also set `create_new(true)`, which ensures that a new file will *always* be created so we should simply drop `create(true)` since it has no effect anyway: "If `.create_new(true)` is set, `.create()` and `.truncate()` are ignored." [1] The `unconditional_recursion` lint [2] also emits a warning but that's a false positive and should already be fixed in nightly (see [3] for a very similar case and [4] for the PR that should fix it). In our case we're comparing tuples with just two fields of the `Package` structure so it isn't recursive. [0]: https://rust-lang.github.io/rust-clippy/master/index.html#/suspicious_open_options [1]: https://docs.rs/tokio/1.34.0/tokio/fs/struct.OpenOptions.html#method.create_new [2]: https://rust-lang.github.io/rust-clippy/master/index.html#/unconditional_recursion [3]: rust-lang/rust-clippy#12133 [4]: rust-lang/rust-clippy#12137
The `suspicious_open_options` lint [0] warns that the truncation behaviour should be made explicit when creating new files. We also set `create_new(true)`, which ensures that a new file will *always* be created so we should simply drop `create(true)` since it has no effect anyway: "If `.create_new(true)` is set, `.create()` and `.truncate()` are ignored." [1] The `unconditional_recursion` lint [2] also emits a warning but that's a false positive and should already be fixed in nightly (see [3] for a very similar case and [4] for the PR that should fix it). In our case we're comparing tuples with just two fields of the `Package` structure so it isn't recursive. [0]: https://rust-lang.github.io/rust-clippy/master/index.html#/suspicious_open_options [1]: https://docs.rs/tokio/1.34.0/tokio/fs/struct.OpenOptions.html#method.create_new [2]: https://rust-lang.github.io/rust-clippy/master/index.html#/unconditional_recursion [3]: rust-lang/rust-clippy#12133 [4]: rust-lang/rust-clippy#12137 Signed-off-by: Michael Weiss <michael.weiss@eviden.com>
The `suspicious_open_options` lint [0] warns that the truncation behaviour should be made explicit when creating new files. We also set `create_new(true)`, which ensures that a new file will *always* be created so we should simply drop `create(true)` since it has no effect anyway: "If `.create_new(true)` is set, `.create()` and `.truncate()` are ignored." [1] The `unconditional_recursion` lint [2] also emits a warning but that's a false positive and should already be fixed in nightly (see [3] for a very similar case and [4] for the PR that should fix it). In our case we're comparing tuples with just two fields of the `Package` structure so it isn't recursive. [0]: https://rust-lang.github.io/rust-clippy/master/index.html#/suspicious_open_options [1]: https://docs.rs/tokio/1.34.0/tokio/fs/struct.OpenOptions.html#method.create_new [2]: https://rust-lang.github.io/rust-clippy/master/index.html#/unconditional_recursion [3]: rust-lang/rust-clippy#12133 [4]: rust-lang/rust-clippy#12137 Signed-off-by: Michael Weiss <michael.weiss@eviden.com>
Fixes #12133.
We needed to check for the type of the previous element
in case it's a field.EDIT: After some extra thoughts, no need to check if it's a field, just if it's the same type as
Self
.r? @llogiq
changelog: Fix false positive in
PartialEq
check inunconditional_recursion
lint