lints and optimisations
parent
a65e78b915
commit
3ae188be26
17
Cargo.toml
17
Cargo.toml
|
@ -8,3 +8,20 @@ edition = "2021"
|
||||||
[dependencies]
|
[dependencies]
|
||||||
clap = { version = "4.4.3", features = ["derive"] }
|
clap = { version = "4.4.3", features = ["derive"] }
|
||||||
rayon = "1.7.0"
|
rayon = "1.7.0"
|
||||||
|
|
||||||
|
# lints from https://github.com/0atman/noboilerplate/blob/main/scripts/37-functional-rust.md
|
||||||
|
# these are deliberately extremely restrictive to avoid most of the easily-refactored
|
||||||
|
# footguns as much as possible. unlike the github lints, this does not forbid unsafe
|
||||||
|
# code
|
||||||
|
[lints.clippy]
|
||||||
|
enum_glob_use = "deny"
|
||||||
|
pedantic = "deny"
|
||||||
|
nursery = "deny"
|
||||||
|
unwrap_used = "deny"
|
||||||
|
|
||||||
|
[profile.release]
|
||||||
|
opt-level = 'z' # size optimisation
|
||||||
|
lto = true # link time optimisation
|
||||||
|
codegen-units = 1 # fewer -> more optimisation
|
||||||
|
panic = 'abort' # abort on panic
|
||||||
|
strip = 'symbols' # strip symbols
|
Loading…
Reference in New Issue