rust-2018-idioms is used because there isn't a rust-2021-idioms lint yet.
See https://doc.rust-lang.org/rustc/lints/groups.html to see which lints are enabled by rust-2018-idioms and rust-2021-compatibility.
What I did was change the edition to 2018 for all the packages and then ran:
cargo fix --allow-dirty --edition-idioms
which fixed some of the issues, and I've fixed the rest manually.
rust-2018-idioms is used because there isn't a rust-2021-idioms lint yet. See https://doc.rust-lang.org/rustc/lints/groups.html to see which lints are enabled by rust-2018-idioms and rust-2021-compatibility.
What I did was change the edition to 2018 for all the packages and then ran:
which fixed some of the issues, and I've fixed the rest manually.