

clippy::pedantic
Generally I like to use the command
cargo clippy --workspace --all-targets -- -D warnings -D clippy::pedantic for personal project, but also for open source projects that I clone locally.
Given that I offered to do the work of fixing all cases where the above command gives and error and the maintainers of an open source project completely ignored my offer, I wanted to ask if you think it is redundant or even wrong to apply those suggestions. What is your preferred approach?
I don't care about the project management side of the question. What I want to know if it is expected to always get better code quality after applying those lints.
As an example I just stumbled upon, in the following case
if replacement.get(1).map_or(false, |&b| b == b'$') {
dst.push(b'$');
replacement = &replacement[2..];
continue;
}
Clippy emmits the message
error: this `map_or` can be simplified
--> crates/matcher/src/interpolate.rs:31:12
|
31 | if replacement.get(1).map_or(false, |&b| b == b'$') {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/rust-1.97.0/index.html#unnecessary_map_or
= note: `-D clippy::unnecessary-map-or` implied by `-D warnings`
= help: to override `-D warnings` add `#[allow(clippy::unnecessary_map_or)]`
help: use `is_some_and` instead
|
31 - if replacement.get(1).map_or(false, |&b| b == b'$') {
31 + if replacement.get(1).is_some_and(|&b| b == b'$') {
|
The code would become
if replacement.get(1).is_some_and(|&b| b == b'$') {
dst.push(b'$');
replacement = &replacement[2..];
continue;
}
which as can be seen below leads to the identical result with to the original version.
pub const fn map_or<U, F>(self, default: U, f: F) -> U
where
F: [const] FnOnce(T) -> U + [const] Destruct,
U: [const] Destruct,
{
match self {
Some(t) => f(t),
None => default,
}
}
pub const fn is_some_and(self, f: impl [const] FnOnce(T) -> bool + [const] Destruct) -> bool {
match self {
None => false,
Some(x) => f(x),
}
}
"Open File or Project" dialog keeps sucking
JetBrains IDEs are the only software I know that those dialogs do not show the current state of the filesystem.
Even the refresh button does not do the trick.
I have reported this problem more than once. In Release 2026.1 it is still present.
If I invalidate the caches and restart, then it works, but this is an additional indication of how bad it works currently.
JetBrains stop adding slop to the IDEs and fix the basics first.
All Products Pack subscription and Toolbox installs free version of RustRover
I have an All Products Pack subscription. For RustRover especially I also have a free licence for non commercial use. After uninstalling RustRover a couple of weeks ago, I had installed only CLion.
Today I tried to install RustRover again, but I was defaulted to a 30 day trial licence. I couldn't find a way to set it to my paid license. On Fedora 44, I had to close the IDE, but the process continued running in the background. I had to kill it manually.
- How do I install RustRover with my paid commercial license?
- How do I know that RustRover did not send data to JetBrains about my system and data?
Data Oriented Design in non gamedev related areas
I recently started doing some research about data oriented design and I find material mostly from gamedevs. I understand that it became popular by Mike Acton, but I think the principles could be applied to more than one domains. For example for statistics libraries and quant data analysis. Do you use this approach in non gamedev related areas. Could you please mention real world examples? TIA
EDIT: Thank you so much to all who replied. I got some very helpful information and interesting recommendations for further research.