From 0d9232574c89f5ce332c985bb4e34082f8f42ad5 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 20 Jun 2025 13:14:09 +0200 Subject: [PATCH] feat(tauri): Add Rust linting and formatting configuration - Add .cargo/config.toml with comprehensive clippy warnings - Add clippy.toml with custom thresholds for code complexity - Add rustfmt.toml with formatting rules for consistent code style --- tauri/src-tauri/.cargo/config.toml | 15 +++++++++++++++ tauri/src-tauri/clippy.toml | 8 ++++++++ tauri/src-tauri/rustfmt.toml | 22 ++++++++++++++++++++++ 3 files changed, 45 insertions(+) create mode 100644 tauri/src-tauri/.cargo/config.toml create mode 100644 tauri/src-tauri/clippy.toml create mode 100644 tauri/src-tauri/rustfmt.toml diff --git a/tauri/src-tauri/.cargo/config.toml b/tauri/src-tauri/.cargo/config.toml new file mode 100644 index 00000000..cbfb4196 --- /dev/null +++ b/tauri/src-tauri/.cargo/config.toml @@ -0,0 +1,15 @@ +[target.'cfg(all())'] +rustflags = [ + "-W", "clippy::all", + "-W", "clippy::pedantic", + "-W", "clippy::nursery", + "-W", "clippy::cargo", + "-A", "clippy::module_name_repetitions", + "-A", "clippy::must_use_candidate", + "-A", "clippy::missing_errors_doc", + "-A", "clippy::missing_panics_doc", + "-A", "clippy::similar_names", + "-A", "clippy::too_many_lines", + "-A", "clippy::cargo_common_metadata", + "-A", "clippy::multiple_crate_versions", +] \ No newline at end of file diff --git a/tauri/src-tauri/clippy.toml b/tauri/src-tauri/clippy.toml new file mode 100644 index 00000000..7dfd7bef --- /dev/null +++ b/tauri/src-tauri/clippy.toml @@ -0,0 +1,8 @@ +# Clippy configuration +cognitive-complexity-threshold = 30 +too-many-arguments-threshold = 8 +type-complexity-threshold = 250 +single-char-binding-names-threshold = 4 +too-many-lines-threshold = 400 +array-size-threshold = 512 +enum-variant-name-threshold = 3 \ No newline at end of file diff --git a/tauri/src-tauri/rustfmt.toml b/tauri/src-tauri/rustfmt.toml new file mode 100644 index 00000000..b578ae89 --- /dev/null +++ b/tauri/src-tauri/rustfmt.toml @@ -0,0 +1,22 @@ +# Rust formatting configuration +edition = "2021" +max_width = 100 +tab_spaces = 4 +use_small_heuristics = "Default" +reorder_imports = true +reorder_modules = true +remove_nested_parens = true +match_arm_blocks = true +use_field_init_shorthand = true +use_try_shorthand = true +newline_style = "Auto" +format_code_in_doc_comments = true +wrap_comments = true +comment_width = 80 +normalize_comments = true +normalize_doc_attributes = true +format_strings = true +format_macro_matchers = true +format_macro_bodies = true +imports_granularity = "Crate" +group_imports = "StdExternalCrate" \ No newline at end of file