zsw/Cranky.toml

63 lines
1.9 KiB
TOML

warn = [
"clippy::pedantic",
"clippy::nursery",
"missing_copy_implementations",
"missing_debug_implementations",
"noop_method_call",
"unused_results",
]
deny = [
# We want to annotate unsafe inside unsafe fns
"unsafe_op_in_unsafe_fn",
# We muse use `expect` instead
"clippy::unwrap_used",
]
allow = [
# Style
"clippy::implicit_return",
"clippy::multiple_inherent_impl",
"clippy::pattern_type_mismatch",
"clippy::match_bool", # `match` reads easier than `if / else`
"clippy::single_match_else",
"clippy::option_if_let_else",
"clippy::self_named_module_files",
"clippy::items_after_statements",
"clippy::module_name_repetitions",
# Performance of floats isn't paramount
"clippy::suboptimal_flops",
# Some functions might return an error / be async in the future
"clippy::unnecessary_wraps",
"clippy::unused_async",
# Due to working with windows and rendering, which use `u32` / `f32` liberally
# and interchangeably, we can't do much aside from casting and accepting possible
# losses, although most will be lossless, since we deal with window sizes and the
# such, which will fit within a `f32` losslessly.
"clippy::cast_precision_loss",
"clippy::cast_possible_truncation",
# We use proper error types when it matters what errors can be returned, else",
# such as when using `anyhow`, we just assume the caller won't check *what* error
# happened and instead just bubbles it up
"clippy::missing_errors_doc",
# Too many false positives and not too important
"clippy::missing_const_for_fn",
# We don't expose certain entities that should be documented for internal use.
"rustdoc::private_intra_doc_links",
# This is too prevalent on generic functions, which we don't want to ALWAYS be `Send`
"clippy::future_not_send",
# Too many false positives
# Triggers on `T: B + C` if `trait B: A` and `trait C: A`.
# TODO: Turn back on once false positives are fixed
"clippy::trait_duplication_in_bounds",
]