diff --git a/Cargo.toml b/Cargo.toml index 5e04857..520b6b5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,7 @@ color_operations = { version = "0.3.2", path = "color_operations" } [workspace.lints] rust.unsafe_code = "deny" -# LINEBENDER LINT SET - Cargo.toml - v2 +# LINEBENDER LINT SET - Cargo.toml - v6.1 # See https://linebender.org/wiki/canonical-lints/ rust.keyword_idents_2024 = "forbid" rust.non_ascii_idents = "forbid" @@ -34,50 +34,35 @@ rust.non_local_definitions = "forbid" rust.unsafe_op_in_unsafe_fn = "forbid" rust.elided_lifetimes_in_paths = "warn" -rust.let_underscore_drop = "warn" rust.missing_debug_implementations = "warn" rust.missing_docs = "warn" -rust.single_use_lifetimes = "warn" rust.trivial_numeric_casts = "warn" -rust.unexpected_cfgs = "warn" -rust.unit_bindings = "warn" rust.unnameable_types = "warn" rust.unreachable_pub = "warn" rust.unused_import_braces = "warn" rust.unused_lifetimes = "warn" rust.unused_macro_rules = "warn" -rust.unused_qualifications = "warn" -rust.variant_size_differences = "warn" -clippy.allow_attributes = "warn" +clippy.too_many_arguments = "allow" + clippy.allow_attributes_without_reason = "warn" clippy.cast_possible_truncation = "warn" clippy.collection_is_never_read = "warn" clippy.dbg_macro = "warn" clippy.debug_assert_with_mut_call = "warn" clippy.doc_markdown = "warn" -clippy.exhaustive_enums = "warn" -clippy.fn_to_numeric_cast_any = "forbid" +clippy.fn_to_numeric_cast_any = "warn" clippy.infinite_loop = "warn" -clippy.large_include_file = "warn" clippy.large_stack_arrays = "warn" -clippy.match_same_arms = "warn" clippy.mismatching_type_param_order = "warn" clippy.missing_assert_message = "warn" -clippy.missing_errors_doc = "warn" clippy.missing_fields_in_debug = "warn" -clippy.missing_panics_doc = "warn" -clippy.partial_pub_fields = "warn" -clippy.return_self_not_must_use = "warn" clippy.same_functions_in_if_condition = "warn" clippy.semicolon_if_nothing_returned = "warn" -clippy.shadow_unrelated = "warn" clippy.should_panic_without_expect = "warn" clippy.todo = "warn" -clippy.trivially_copy_pass_by_ref = "warn" clippy.unseparated_literal_suffix = "warn" clippy.use_self = "warn" -clippy.wildcard_imports = "warn" clippy.cargo_common_metadata = "warn" clippy.negative_feature_names = "warn" diff --git a/color/src/lib.rs b/color/src/lib.rs index ab001f6..c98f94e 100644 --- a/color/src/lib.rs +++ b/color/src/lib.rs @@ -74,14 +74,16 @@ //! [ACES]: https://acescentral.com/ #![cfg_attr(feature = "libm", doc = "[libm]: libm")] #![cfg_attr(not(feature = "libm"), doc = "[libm]: https://crates.io/crates/libm")] -// LINEBENDER LINT SET - lib.rs - v1 +// LINEBENDER LINT SET - lib.rs - v4 // See https://linebender.org/wiki/canonical-lints/ -// These lints aren't included in Cargo.toml because they -// shouldn't apply to examples and tests -#![warn(unused_crate_dependencies)] +// These lints shouldn't apply to examples or tests. +#![cfg_attr(not(test), warn(unused_crate_dependencies))] +// These lints shouldn't apply to examples. #![warn(clippy::print_stdout, clippy::print_stderr)] +// Targeting e.g. 32-bit means structs containing usize can give false positives for 64-bit. +#![cfg_attr(target_pointer_width = "64", warn(clippy::trivially_copy_pass_by_ref))] // END LINEBENDER LINT SET -#![cfg_attr(docsrs, feature(doc_auto_cfg))] +#![cfg_attr(docsrs, feature(doc_cfg))] #![no_std] pub mod cache_key; diff --git a/color_operations/src/lib.rs b/color_operations/src/lib.rs index b6acad7..5b17220 100644 --- a/color_operations/src/lib.rs +++ b/color_operations/src/lib.rs @@ -10,7 +10,7 @@ #![warn(unused_crate_dependencies)] #![warn(clippy::print_stdout, clippy::print_stderr)] // END LINEBENDER LINT SET -#![cfg_attr(docsrs, feature(doc_auto_cfg))] +#![cfg_attr(docsrs, feature(doc_cfg))] #![cfg_attr(all(not(feature = "std"), not(test)), no_std)] // Temporary to suppress warning.