From ce55a66e9c4354df476aae1aa921f1a293f7a171 Mon Sep 17 00:00:00 2001 From: NotAShelf Date: Mon, 11 May 2026 12:38:50 +0300 Subject: [PATCH] chore: set up taplo; format TOML files Signed-off-by: NotAShelf Change-Id: I476156f5f0fa069135862cfac6cafdc46a6a6964 --- .rustfmt.toml | 46 +++++++++--------- .taplo.toml | 13 ++++++ Cargo.toml | 126 +++++++++++++++++++++++--------------------------- nix/shell.nix | 2 + 4 files changed, 96 insertions(+), 91 deletions(-) create mode 100644 .taplo.toml diff --git a/.rustfmt.toml b/.rustfmt.toml index 324bf8b..9d5c77e 100644 --- a/.rustfmt.toml +++ b/.rustfmt.toml @@ -1,26 +1,26 @@ -condense_wildcard_suffixes = true +condense_wildcard_suffixes = true doc_comment_code_block_width = 80 -edition = "2024" # Keep in sync with Cargo.toml. +edition = "2024" # Keep in sync with Cargo.toml. enum_discrim_align_threshold = 60 -force_explicit_abi = false -force_multiline_blocks = true -format_code_in_doc_comments = true -format_macro_matchers = true -format_strings = true -group_imports = "StdExternalCrate" -hex_literal_case = "Upper" -imports_granularity = "Crate" -imports_layout = "HorizontalVertical" -inline_attribute_width = 60 -match_block_trailing_comma = true -max_width = 80 -newline_style = "Unix" -normalize_comments = true -normalize_doc_attributes = true -overflow_delimited_expr = true +force_explicit_abi = false +force_multiline_blocks = true +format_code_in_doc_comments = true +format_macro_matchers = true +format_strings = true +group_imports = "StdExternalCrate" +hex_literal_case = "Upper" +imports_granularity = "Crate" +imports_layout = "HorizontalVertical" +inline_attribute_width = 60 +match_block_trailing_comma = true +max_width = 80 +newline_style = "Unix" +normalize_comments = true +normalize_doc_attributes = true +overflow_delimited_expr = true struct_field_align_threshold = 60 -tab_spaces = 2 -unstable_features = true -use_field_init_shorthand = true -use_try_shorthand = true -wrap_comments = true +tab_spaces = 2 +unstable_features = true +use_field_init_shorthand = true +use_try_shorthand = true +wrap_comments = true diff --git a/.taplo.toml b/.taplo.toml new file mode 100644 index 0000000..fae0c57 --- /dev/null +++ b/.taplo.toml @@ -0,0 +1,13 @@ +[formatting] +align_entries = true +column_width = 110 +compact_arrays = false +reorder_inline_tables = false +reorder_keys = true + +[[rule]] +include = [ "**/Cargo.toml" ] +keys = [ "package" ] + +[rule.formatting] +reorder_keys = false diff --git a/Cargo.toml b/Cargo.toml index fe438c5..dc1c9d7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ncro" +name = "ncro" version = "1.0.0" edition = "2024" license = "MIT" @@ -7,12 +7,12 @@ license = "MIT" [dependencies] anyhow = "1.0.102" async-trait = "0.1.89" -axum = { version = "0.8.9", features = ["macros"] } +axum = { version = "0.8.9", features = [ "macros" ] } base64 = "0.22.1" bytes = "1.11.1" -clap = { version = "4.6.1", features = ["derive", "env"] } -chrono = { version = "0.4.44", features = ["serde"] } -ed25519-dalek = { version = "2.2.0", features = ["rand_core"] } +chrono = { version = "0.4.44", features = [ "serde" ] } +clap = { version = "4.6.1", features = [ "derive", "env" ] } +ed25519-dalek = { version = "2.2.0", features = [ "rand_core" ] } futures-util = "0.3.32" hex = "0.4.3" http = "1.4.0" @@ -21,12 +21,9 @@ humantime-serde = "1.1.1" mdns-sd = "0.15.2" prometheus = "0.14.0" rand = "0.8.6" -reqwest = { version = "0.12.28", default-features = false, features = [ - "rustls-tls", - "stream", -] } +reqwest = { version = "0.12.28", default-features = false, features = [ "rustls-tls", "stream" ] } rmp-serde = "1.3.1" -serde = { version = "1.0.228", features = ["derive"] } +serde = { version = "1.0.228", features = [ "derive" ] } serde_json = "1.0.149" serde_yaml = "0.9.34" sqlx = { version = "0.8.6", default-features = false, features = [ @@ -37,67 +34,60 @@ sqlx = { version = "0.8.6", default-features = false, features = [ "chrono", ] } thiserror = "2.0.18" -tokio = { version = "1.52.3", features = [ - "macros", - "rt-multi-thread", - "signal", - "time", - "net", - "fs", -] } -tokio-util = { version = "0.7.18", features = ["io"] } -tower-http = { version = "0.6.10", features = ["trace"] } +tokio = { version = "1.52.3", features = [ "macros", "rt-multi-thread", "signal", "time", "net", "fs" ] } +tokio-util = { version = "0.7.18", features = [ "io" ] } +tower-http = { version = "0.6.10", features = [ "trace" ] } tracing = "0.1.44" -tracing-subscriber = { version = "0.3.23", features = ["env-filter", "json"] } +tracing-subscriber = { version = "0.3.23", features = [ "env-filter", "json" ] } url = "2.5.8" [dev-dependencies] tempfile = "3.27.0" -tower = { version = "0.5.3", features = ["util"] } +tower = { version = "0.5.3", features = [ "util" ] } # See: # [lints.clippy] -cargo = { level = "warn", priority = -1 } +cargo = { level = "warn", priority = -1 } complexity = { level = "warn", priority = -1 } -nursery = { level = "warn", priority = -1 } -pedantic = { level = "warn", priority = -1 } -perf = { level = "warn", priority = -1 } -style = { level = "warn", priority = -1 } +nursery = { level = "warn", priority = -1 } +pedantic = { level = "warn", priority = -1 } +perf = { level = "warn", priority = -1 } +style = { level = "warn", priority = -1 } # The lint groups above enable some less-than-desirable rules, we should manually # enable those to keep our sanity. -absolute_paths = "allow" -arbitrary_source_item_ordering = "allow" -clone_on_ref_ptr = "warn" -dbg_macro = "warn" -empty_drop = "warn" -empty_structs_with_brackets = "warn" -exit = "warn" -filetype_is_file = "warn" -get_unwrap = "warn" -implicit_return = "allow" -infinite_loop = "warn" +absolute_paths = "allow" +arbitrary_source_item_ordering = "allow" +clone_on_ref_ptr = "warn" +dbg_macro = "warn" +empty_drop = "warn" +empty_structs_with_brackets = "warn" +exit = "warn" +filetype_is_file = "warn" +get_unwrap = "warn" +implicit_return = "allow" +infinite_loop = "warn" map_with_unused_argument_over_ranges = "warn" -missing_docs_in_private_items = "allow" -multiple_crate_versions = "allow" # :( -non_ascii_literal = "allow" -non_std_lazy_statics = "warn" -pathbuf_init_then_push = "warn" -pattern_type_mismatch = "allow" -question_mark_used = "allow" -rc_buffer = "warn" -rc_mutex = "warn" -rest_pat_in_fully_bound_structs = "warn" -similar_names = "allow" -single_call_fn = "allow" -std_instead_of_core = "allow" -too_long_first_doc_paragraph = "allow" -too_many_lines = "allow" -undocumented_unsafe_blocks = "warn" -unnecessary_safety_comment = "warn" -unused_result_ok = "warn" -unused_trait_names = "allow" +missing_docs_in_private_items = "allow" +multiple_crate_versions = "allow" # :( +non_ascii_literal = "allow" +non_std_lazy_statics = "warn" +pathbuf_init_then_push = "warn" +pattern_type_mismatch = "allow" +question_mark_used = "allow" +rc_buffer = "warn" +rc_mutex = "warn" +rest_pat_in_fully_bound_structs = "warn" +similar_names = "allow" +single_call_fn = "allow" +std_instead_of_core = "allow" +too_long_first_doc_paragraph = "allow" +too_many_lines = "allow" +undocumented_unsafe_blocks = "warn" +unnecessary_safety_comment = "warn" +unused_result_ok = "warn" +unused_trait_names = "allow" # False positive: # clippy's build script check doesn't recognize workspace-inherited metadata @@ -105,26 +95,26 @@ unused_trait_names = "allow" cargo_common_metadata = "allow" # In the honor of a recent Cloudflare regression -panic = "deny" +panic = "deny" unwrap_used = "deny" # Less dangerous, but we'd like to know # Those must be opt-in, and are fine ONLY in tests and examples. We *can* panic # in NDG (the binary crate), but it should be very deliberate -expect_used = "warn" -print_stderr = "warn" -print_stdout = "warn" -todo = "warn" +expect_used = "warn" +print_stderr = "warn" +print_stdout = "warn" +todo = "warn" unimplemented = "warn" -unreachable = "warn" +unreachable = "warn" [profile.dev] -debug = true +debug = true opt-level = 0 [profile.release] codegen-units = 1 -lto = true -opt-level = "z" -panic = "abort" -strip = "symbols" +lto = true +opt-level = "z" +panic = "abort" +strip = "symbols" diff --git a/nix/shell.nix b/nix/shell.nix index 9ccb1df..21514ee 100644 --- a/nix/shell.nix +++ b/nix/shell.nix @@ -6,6 +6,7 @@ rust-analyzer, rustc, rustfmt, + taplo, }: mkShell { name = "rust"; @@ -19,5 +20,6 @@ mkShell { rust-analyzer clippy (rustfmt.override {asNightly = true;}) + taplo ]; }