From 54fc49b71538b4dac65e050287265195de0a70c7 Mon Sep 17 00:00:00 2001 From: Steve Dignam Date: Sun, 17 May 2026 11:11:09 -0400 Subject: [PATCH 1/2] internal: enable clippy's uninlined_format_args --- Cargo.toml | 1 + crates/squawk/src/github.rs | 16 ++--- crates/squawk_fmt/src/fmt.rs | 11 +-- crates/squawk_ide/src/classify.rs | 5 +- .../src/code_actions/add_explicit_alias.rs | 2 +- .../squawk_ide/src/code_actions/add_schema.rs | 2 +- .../rewrite_as_dollar_quoted_string.rs | 4 +- .../code_actions/rewrite_as_regular_string.rs | 6 +- .../rewrite_cast_to_double_colon.rs | 2 +- .../rewrite_double_colon_to_cast.rs | 2 +- .../src/code_actions/rewrite_leading_from.rs | 2 +- .../code_actions/rewrite_values_as_select.rs | 2 +- crates/squawk_ide/src/completion.rs | 3 +- crates/squawk_ide/src/expand_selection.rs | 2 +- crates/squawk_ide/src/find_references.rs | 2 +- crates/squawk_ide/src/folding_ranges.rs | 2 +- crates/squawk_ide/src/goto_definition.rs | 2 +- crates/squawk_ide/src/hover.rs | 67 ++++++++----------- crates/squawk_ide/src/inlay_hints.rs | 4 +- crates/squawk_server/src/dispatch.rs | 3 +- 20 files changed, 56 insertions(+), 84 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index ed5273a3..8dac7518 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -97,6 +97,7 @@ manual_let_else = "deny" explicit_iter_loop = "deny" too_many_arguments = "allow" disallowed_types = "deny" +uninlined_format_args = "deny" [profile.dev] debug = 0 diff --git a/crates/squawk/src/github.rs b/crates/squawk/src/github.rs index 9de00255..0d62432f 100644 --- a/crates/squawk/src/github.rs +++ b/crates/squawk/src/github.rs @@ -258,7 +258,7 @@ fn format_comment( summary_notice: Option<&str>, ) -> String { let notice_section = if let Some(notice) = summary_notice { - format!("\n> {}\n", notice) + format!("\n> {notice}\n") } else { String::new() }; @@ -274,13 +274,7 @@ fn format_comment( [📚 More info on rules](https://github.com/sbdchd/squawk#rules) ⚡️ Powered by [`Squawk`](https://github.com/sbdchd/squawk) ({version}), a linter for PostgreSQL, focused on migrations -", - violations_emoji = violations_emoji, - violation_count = violation_count, - file_count = file_count, - notice_section = notice_section, - content = content, - version = version +" ) .trim_matches('\n') .into() @@ -453,7 +447,7 @@ ALTER TABLE "core_recipe" ADD COLUMN "foo" integer DEFAULT 10; assert_eq!(result, short_sql); let long_sql = (0..100) - .map(|i| format!("-- Line {}", i)) + .map(|i| format!("-- Line {i}")) .collect::>() .join("\n"); let (result, truncated) = crate::github::truncate_sql_if_needed(&long_sql); @@ -465,7 +459,7 @@ ALTER TABLE "core_recipe" ADD COLUMN "foo" integer DEFAULT 10; fn generating_comment_with_large_content() { // Create a very large SQL content let large_sql = (0..1000) - .map(|i| format!("SELECT {} as col{};", i, i)) + .map(|i| format!("SELECT {i} as col{i};")) .collect::>() .join("\n"); @@ -500,7 +494,7 @@ ALTER TABLE "core_recipe" ADD COLUMN "foo" integer DEFAULT 10; fn generating_comment_forced_summary() { // Create content that will definitely trigger summary mode let massive_sql = (0..10000) - .map(|i| format!("SELECT {} as col{};", i, i)) + .map(|i| format!("SELECT {i} as col{i};")) .collect::>() .join("\n"); diff --git a/crates/squawk_fmt/src/fmt.rs b/crates/squawk_fmt/src/fmt.rs index c47d1e6f..64abde19 100644 --- a/crates/squawk_fmt/src/fmt.rs +++ b/crates/squawk_fmt/src/fmt.rs @@ -452,14 +452,11 @@ fn build_type<'a>(ty: ast::Type) -> Doc<'a> { fn leading_comments_token<'a>(node: &SyntaxToken) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Prev).skip(1) { - println!("prev"); match next { rowan::NodeOrToken::Node(node) => { - println!("before node {:?}", node); break; } rowan::NodeOrToken::Token(token) => { - println!("before token {:?}", token); if token.kind() == SyntaxKind::COMMENT { doc = doc .append(Doc::text(token.text().to_string())) @@ -478,14 +475,11 @@ fn leading_comments_token<'a>(node: &SyntaxToken) -> Doc<'a> { fn leading_comments<'a>(node: &SyntaxNode) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Prev).skip(1) { - println!("prev"); match next { rowan::NodeOrToken::Node(node) => { - println!("before node {:?}", node); break; } rowan::NodeOrToken::Token(token) => { - println!("before token {:?}", token); if token.kind() == SyntaxKind::COMMENT { let is_block = token.text().starts_with("--"); doc = doc @@ -509,14 +503,11 @@ fn leading_comments<'a>(node: &SyntaxNode) -> Doc<'a> { fn trailing_comments<'a>(node: &SyntaxNode) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Next).skip(1) { - println!("after"); match next { rowan::NodeOrToken::Node(node) => { - println!("after node {:?}", node); break; } rowan::NodeOrToken::Token(token) => { - println!("after token {:?}", token); if token.kind() == SyntaxKind::COMMENT { doc = doc .append(Doc::space()) @@ -562,7 +553,7 @@ fn build_target<'a>(target: ast::Target) -> Option> { pub fn fmt(text: &str) -> String { let parse = ast::SourceFile::parse(text); let file = parse.tree(); - println!("{}", text); + println!("{text}"); println!("---"); println!("{:#?}", file.syntax()); println!("---"); diff --git a/crates/squawk_ide/src/classify.rs b/crates/squawk_ide/src/classify.rs index a5053da7..2a1a914c 100644 --- a/crates/squawk_ide/src/classify.rs +++ b/crates/squawk_ide/src/classify.rs @@ -903,12 +903,11 @@ pub(crate) fn classify_def_node(def_node: &SyntaxNode) -> Option { fn special_function() { for kind in (0..SyntaxKind::__LAST as u16) .map(SyntaxKind::from) - .filter(|kind| format!("{:?}", kind).ends_with("_FN")) + .filter(|kind| format!("{kind:?}").ends_with("_FN")) { assert!( is_special_fn(kind), - "unhandled special function kind: {:?}. Please update is_special_fn", - kind + "unhandled special function kind: {kind:?}. Please update is_special_fn" ) } } diff --git a/crates/squawk_ide/src/code_actions/add_explicit_alias.rs b/crates/squawk_ide/src/code_actions/add_explicit_alias.rs index 08d6a25e..b32cb26d 100644 --- a/crates/squawk_ide/src/code_actions/add_explicit_alias.rs +++ b/crates/squawk_ide/src/code_actions/add_explicit_alias.rs @@ -31,7 +31,7 @@ pub(super) fn add_explicit_alias( let expr_end = target.expr().map(|e| e.syntax().text_range().end())?; let quoted_alias = quote_column_alias(&alias); - let replacement = format!(" as {}", quoted_alias); + let replacement = format!(" as {quoted_alias}"); actions.push(CodeAction { title: "Add explicit alias".to_owned(), diff --git a/crates/squawk_ide/src/code_actions/add_schema.rs b/crates/squawk_ide/src/code_actions/add_schema.rs index 66919636..9a6bd98a 100644 --- a/crates/squawk_ide/src/code_actions/add_schema.rs +++ b/crates/squawk_ide/src/code_actions/add_schema.rs @@ -43,7 +43,7 @@ pub(super) fn add_schema( .search_path_at(token_start) .first()? .to_string(); - let replacement = format!("{}.", schema); + let replacement = format!("{schema}."); actions.push(CodeAction { title: "Add schema".to_owned(), diff --git a/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs b/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs index 9ae75534..164e4327 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_as_dollar_quoted_string.rs @@ -34,7 +34,7 @@ pub(super) fn rewrite_as_dollar_quoted_string( fn string_to_dollar_quoted(text: &str) -> Option { let normalized = normalize_single_quoted_string(text)?; let delimiter = dollar_delimiter(&normalized)?; - let boundary = format!("${}$", delimiter); + let boundary = format!("${delimiter}$"); Some(format!("{boundary}{normalized}{boundary}")) } @@ -53,7 +53,7 @@ fn dollar_delimiter(content: &str) -> Option { let mut delim = "q".to_owned(); // don't want to just loop forever for idx in 0..10 { - if !content.contains(&format!("${}$", delim)) { + if !content.contains(&format!("${delim}$")) { return Some(delim); } delim.push_str(&idx.to_string()); diff --git a/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs b/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs index a9f387bc..4e092db2 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_as_regular_string.rs @@ -34,7 +34,7 @@ pub(super) fn rewrite_as_regular_string( fn dollar_quoted_to_string(text: &str) -> Option { debug_assert!(text.starts_with('$')); let (delimiter, content) = split_dollar_quoted(text)?; - let boundary = format!("${}$", delimiter); + let boundary = format!("${delimiter}$"); if !text.starts_with(&boundary) || !text.ends_with(&boundary) { return None; @@ -42,7 +42,7 @@ fn dollar_quoted_to_string(text: &str) -> Option { // quotes are escaped by using two of them in Postgres let escaped = content.replace('\'', "''"); - Some(format!("'{}'", escaped)) + Some(format!("'{escaped}'")) } fn split_dollar_quoted(text: &str) -> Option<(String, &str)> { @@ -50,7 +50,7 @@ fn split_dollar_quoted(text: &str) -> Option<(String, &str)> { let second_dollar = text[1..].find('$')?; // the `foo` in `select $foo$bar$foo$` let delimiter = &text[1..=second_dollar]; - let boundary = format!("${}$", delimiter); + let boundary = format!("${delimiter}$"); if !text.ends_with(&boundary) { return None; diff --git a/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs b/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs index e93dbcb9..67fbce54 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_cast_to_double_colon.rs @@ -25,7 +25,7 @@ pub(super) fn rewrite_cast_to_double_colon( let expr_text = expr.syntax().text(); let type_text = ty.syntax().text(); - let replacement = format!("{}::{}", expr_text, type_text); + let replacement = format!("{expr_text}::{type_text}"); actions.push(CodeAction { title: "Rewrite as cast operator `::`".to_owned(), diff --git a/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs b/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs index e0fd4447..e0cf991d 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_double_colon_to_cast.rs @@ -25,7 +25,7 @@ pub(super) fn rewrite_double_colon_to_cast( let expr_text = expr.syntax().text(); let type_text = ty.syntax().text(); - let replacement = format!("cast({} as {})", expr_text, type_text); + let replacement = format!("cast({expr_text} as {type_text})"); actions.push(CodeAction { title: "Rewrite as cast function `cast()`".to_owned(), diff --git a/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs b/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs index 6d7bec67..86bb580a 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_leading_from.rs @@ -40,7 +40,7 @@ pub(super) fn rewrite_leading_from( edits: vec![ Edit::delete(select_with_ws), Edit::insert( - format!("{} ", select_text), + format!("{select_text} "), from_clause.syntax().text_range().start(), ), ], diff --git a/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs b/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs index a24afc7b..91c69508 100644 --- a/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs +++ b/crates/squawk_ide/src/code_actions/rewrite_values_as_select.rs @@ -44,7 +44,7 @@ pub(super) fn rewrite_values_as_select( if row_targets.is_empty() { return None; } - select_parts.push(format!("union all\nselect {}", row_targets)); + select_parts.push(format!("union all\nselect {row_targets}")); } let mut select_stmt = select_parts.join("\n"); diff --git a/crates/squawk_ide/src/completion.rs b/crates/squawk_ide/src/completion.rs index ca19ba98..c638c77b 100644 --- a/crates/squawk_ide/src/completion.rs +++ b/crates/squawk_ide/src/completion.rs @@ -864,8 +864,7 @@ fn function_detail( let return_type = ret_type.syntax().text().to_string(); Some(format!( - "{}.{}{} {}", - schema, function_name, params, return_type + "{schema}.{function_name}{params} {return_type}" )) } diff --git a/crates/squawk_ide/src/expand_selection.rs b/crates/squawk_ide/src/expand_selection.rs index 627b29ec..91ca3374 100644 --- a/crates/squawk_ide/src/expand_selection.rs +++ b/crates/squawk_ide/src/expand_selection.rs @@ -564,7 +564,7 @@ $0 let unhandled_list_kinds = (0..SyntaxKind::__LAST as u16) .map(SyntaxKind::from) .filter(|kind| { - format!("{:?}", kind).ends_with("_LIST") && !delimited_ws_list_kinds.contains(kind) + format!("{kind:?}").ends_with("_LIST") && !delimited_ws_list_kinds.contains(kind) }) .filter(|kind| !DELIMITED_LIST_KINDS.contains(kind)) .collect::>(); diff --git a/crates/squawk_ide/src/find_references.rs b/crates/squawk_ide/src/find_references.rs index 24dfa4c1..4b03caaa 100644 --- a/crates/squawk_ide/src/find_references.rs +++ b/crates/squawk_ide/src/find_references.rs @@ -114,7 +114,7 @@ mod test { snippet = snippet.annotation( AnnotationKind::Context .span(range.into()) - .label(format!("{}. reference", label_index)), + .label(format!("{label_index}. reference")), ); } snippet diff --git a/crates/squawk_ide/src/folding_ranges.rs b/crates/squawk_ide/src/folding_ranges.rs index eda32154..4feb1897 100644 --- a/crates/squawk_ide/src/folding_ranges.rs +++ b/crates/squawk_ide/src/folding_ranges.rs @@ -546,7 +546,7 @@ values fn list_variants() { let unhandled_list_kinds: Vec = (0..SyntaxKind::__LAST as u16) .map(SyntaxKind::from) - .filter(|kind| format!("{:?}", kind).ends_with("_LIST")) + .filter(|kind| format!("{kind:?}").ends_with("_LIST")) .filter(|kind| fold_kind(*kind).is_none()) .collect(); diff --git a/crates/squawk_ide/src/goto_definition.rs b/crates/squawk_ide/src/goto_definition.rs index 6ecd6b35..ad99de13 100644 --- a/crates/squawk_ide/src/goto_definition.rs +++ b/crates/squawk_ide/src/goto_definition.rs @@ -225,7 +225,7 @@ mod test { snippet = snippet.annotation( AnnotationKind::Context .span(range.into()) - .label(format!("{}. destination", label_index)), + .label(format!("{label_index}. destination")), ); } diff --git a/crates/squawk_ide/src/hover.rs b/crates/squawk_ide/src/hover.rs index 3b3d4bfc..a1e99f08 100644 --- a/crates/squawk_ide/src/hover.rs +++ b/crates/squawk_ide/src/hover.rs @@ -279,10 +279,10 @@ impl ColumnHover { } fn anon_column(col_name: &str) -> String { - format!("column {}", col_name) + format!("column {col_name}") } fn anon_column_type(col_name: &str, ty: &str) -> String { - format!("column {} {}", col_name, ty) + format!("column {col_name} {ty}") } } @@ -550,7 +550,7 @@ fn format_alias_with_column_list(db: &dyn Db, alias: InFile) -> Opti .map(|column| column.to_string()) .collect::>() .join(", "); - Some(Hover::snippet(format!("table {}({})", name, columns))) + Some(Hover::snippet(format!("table {name}({columns})"))) } fn hover_qualified_star(db: &dyn Db, field_expr: InFile) -> Option { @@ -623,7 +623,7 @@ fn hover_unqualified_star_in_arg_list( fn format_subquery_table(name: Name, paren_select: ast::ParenSelect) -> Option { let name = name.to_string(); let query = paren_select.syntax().text().to_string(); - Some(Hover::snippet(format!("subquery {} as {}", name, query))) + Some(Hover::snippet(format!("subquery {name} as {query}"))) } fn hover_qualified_star_columns( @@ -1112,8 +1112,7 @@ fn format_create_table_as( let (schema, table_name) = resolve::resolve_table_info(db, InFile::new(file, &path))?; let query = create_table_as.query()?.syntax().text().to_string(); Some(Hover::snippet(format!( - "table {}.{} as {}", - schema, table_name, query + "table {schema}.{table_name} as {query}" ))) } @@ -1184,12 +1183,12 @@ fn format_view_column( fn format_with_table(with_table: ast::WithTable) -> Option { let name = with_table.name()?.syntax().text().to_string(); let query = with_table.query()?.syntax().text().to_string(); - Some(Hover::snippet(format!("with {} as ({})", name, query))) + Some(Hover::snippet(format!("with {name} as ({query})"))) } fn format_paren_select(paren_select: ast::ParenSelect) -> Option { let query = paren_select.select()?.syntax().text().to_string(); - Some(Hover::snippet(format!("({})", query))) + Some(Hover::snippet(format!("({query})"))) } fn format_create_index(db: &dyn Db, create_index: InFile) -> Option { @@ -1206,8 +1205,7 @@ fn format_create_index(db: &dyn Db, create_index: InFile) -> O let columns = partition_item_list.syntax().text().to_string(); Some(Hover::snippet(format!( - "index {}.{} on {}.{}{}", - index_schema, index_name, table_schema, table_name, columns + "index {index_schema}.{index_name} on {table_schema}.{table_name}{columns}" ))) } @@ -1221,8 +1219,7 @@ fn format_create_sequence( let (schema, sequence_name) = resolve::resolve_sequence_info(db, InFile::new(file, &path))?; Some(Hover::snippet(format!( - "sequence {}.{}", - schema, sequence_name + "sequence {schema}.{sequence_name}" ))) } @@ -1234,8 +1231,7 @@ fn format_create_trigger(db: &dyn Db, create_trigger: InFile let (schema, table_name) = resolve::resolve_table_info(db, InFile::new(file, &on_table_path))?; Some(Hover::snippet(format!( - "trigger {}.{} on {}.{}", - schema, trigger_name, schema, table_name + "trigger {schema}.{trigger_name} on {schema}.{table_name}" ))) } @@ -1247,8 +1243,7 @@ fn format_create_policy(db: &dyn Db, create_policy: InFile) - let (schema, table_name) = resolve::resolve_table_info(db, InFile::new(file, &on_table_path))?; Some(Hover::snippet(format!( - "policy {}.{} on {}.{}", - schema, policy_name, schema, table_name + "policy {schema}.{policy_name} on {schema}.{table_name}" ))) } @@ -1261,39 +1256,38 @@ fn format_create_property_graph( let path = create_property_graph.path()?; let (schema, name) = resolve::resolve_property_graph_info(db, InFile::new(file, &path))?; Some(Hover::snippet(format!( - "property graph {}.{}", - schema, name + "property graph {schema}.{name}" ))) } fn format_create_event_trigger(create_event_trigger: ast::CreateEventTrigger) -> Option { let name = create_event_trigger.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("event trigger {}", name))) + Some(Hover::snippet(format!("event trigger {name}"))) } fn format_create_tablespace(create_tablespace: ast::CreateTablespace) -> Option { let name = create_tablespace.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("tablespace {}", name))) + Some(Hover::snippet(format!("tablespace {name}"))) } fn format_create_database(create_database: ast::CreateDatabase) -> Option { let name = create_database.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("database {}", name))) + Some(Hover::snippet(format!("database {name}"))) } fn format_create_server(create_server: ast::CreateServer) -> Option { let name = create_server.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("server {}", name))) + Some(Hover::snippet(format!("server {name}"))) } fn format_create_extension(create_extension: ast::CreateExtension) -> Option { let name = create_extension.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("extension {}", name))) + Some(Hover::snippet(format!("extension {name}"))) } fn format_create_role(create_role: ast::CreateRole) -> Option { let name = create_role.name()?.syntax().text().to_string(); - Some(Hover::snippet(format!("role {}", name))) + Some(Hover::snippet(format!("role {name}"))) } fn index_schema(db: &dyn Db, create_index: InFile) -> Option { @@ -1312,15 +1306,15 @@ fn format_create_type(db: &dyn Db, create_type: InFile) -> Opti let snippet = if let Some(variant_list) = create_type.variant_list() { let variants = variant_list.syntax().text().to_string(); - format!("type {}.{} as enum {}", schema, type_name, variants) + format!("type {schema}.{type_name} as enum {variants}") } else if let Some(column_list) = create_type.column_list() { let columns = column_list.syntax().text().to_string(); - format!("type {}.{} as {}", schema, type_name, columns) + format!("type {schema}.{type_name} as {columns}") } else if let Some(attribute_list) = create_type.attribute_list() { let attributes = attribute_list.syntax().text().to_string(); - format!("type {}.{} {}", schema, type_name, attributes) + format!("type {schema}.{type_name} {attributes}") } else { - format!("type {}.{}", schema, type_name) + format!("type {schema}.{type_name}") }; Some(hover_with_preceding_comment(snippet, create_type.syntax())) @@ -1347,7 +1341,7 @@ fn create_schema_name(create_schema: ast::CreateSchema) -> Option { fn format_create_schema(create_schema: ast::CreateSchema) -> Option { let schema_name = create_schema_name(create_schema)?; - Some(Hover::snippet(format!("schema {}", schema_name))) + Some(Hover::snippet(format!("schema {schema_name}"))) } fn hover_function(db: &dyn Db, def: Location) -> Option { @@ -1411,14 +1405,12 @@ fn format_param_hover( ) -> Hover { if let Some(param_type) = param_type { return Hover::snippet(format!( - "parameter {}.{}.{} {}", - schema, routine_name, param_name, param_type + "parameter {schema}.{routine_name}.{param_name} {param_type}" )); } Hover::snippet(format!( - "parameter {}.{}.{}", - schema, routine_name, param_name + "parameter {schema}.{routine_name}.{param_name}" )) } @@ -1434,8 +1426,7 @@ fn format_create_function( let params = create_function.param_list()?.syntax().text().to_string(); let return_type = create_function.ret_type()?.syntax().text().to_string(); let snippet = format!( - "function {}.{}{} {}", - schema, function_name, params, return_type + "function {schema}.{function_name}{params} {return_type}" ); Some(hover_with_preceding_comment( @@ -1465,8 +1456,7 @@ fn format_create_aggregate( let params = param_list.syntax().text().to_string(); Some(Hover::snippet(format!( - "aggregate {}.{}{}", - schema, aggregate_name, params + "aggregate {schema}.{aggregate_name}{params}" ))) } @@ -1491,8 +1481,7 @@ fn format_create_procedure( let params = param_list.syntax().text().to_string(); Some(Hover::snippet(format!( - "procedure {}.{}{}", - schema, procedure_name, params + "procedure {schema}.{procedure_name}{params}" ))) } diff --git a/crates/squawk_ide/src/inlay_hints.rs b/crates/squawk_ide/src/inlay_hints.rs index c898599f..ec0595fb 100644 --- a/crates/squawk_ide/src/inlay_hints.rs +++ b/crates/squawk_ide/src/inlay_hints.rs @@ -163,7 +163,7 @@ fn inlay_hint_insert_select( let expr_start = expr.syntax().text_range().start(); hints.push(InlayHint { position: expr_start, - label: format!("{}: ", column_name), + label: format!("{column_name}: "), kind: InlayHintKind::Parameter, target: *target, }); @@ -179,7 +179,7 @@ fn inlay_hint_insert_select( let expr_start = expr.syntax().text_range().start(); hints.push(InlayHint { position: expr_start, - label: format!("{}: ", column_name), + label: format!("{column_name}: "), kind: InlayHintKind::Parameter, target: *target, }); diff --git a/crates/squawk_server/src/dispatch.rs b/crates/squawk_server/src/dispatch.rs index d8f873ef..be1740eb 100644 --- a/crates/squawk_server/src/dispatch.rs +++ b/crates/squawk_server/src/dispatch.rs @@ -167,8 +167,7 @@ where // Check if the request was canceled due to some modifications to the salsa database. if panic.payload.downcast_ref::().is_some() { log::debug!( - "request id={} was cancelled by salsa, sending content modified", - id + "request id={id} was cancelled by salsa, sending content modified" ); Err(panic) } else { From 921af84239c03c4de2b8b17db52621fb97fff1e8 Mon Sep 17 00:00:00 2001 From: Steve Dignam Date: Sun, 17 May 2026 11:11:58 -0400 Subject: [PATCH 2/2] fix --- crates/squawk_fmt/src/fmt.rs | 6 +++--- crates/squawk_ide/src/completion.rs | 4 +--- crates/squawk_ide/src/hover.rs | 16 ++++------------ crates/squawk_server/src/dispatch.rs | 4 +--- 4 files changed, 9 insertions(+), 21 deletions(-) diff --git a/crates/squawk_fmt/src/fmt.rs b/crates/squawk_fmt/src/fmt.rs index 64abde19..a99533ea 100644 --- a/crates/squawk_fmt/src/fmt.rs +++ b/crates/squawk_fmt/src/fmt.rs @@ -453,7 +453,7 @@ fn leading_comments_token<'a>(node: &SyntaxToken) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Prev).skip(1) { match next { - rowan::NodeOrToken::Node(node) => { + rowan::NodeOrToken::Node(_node) => { break; } rowan::NodeOrToken::Token(token) => { @@ -476,7 +476,7 @@ fn leading_comments<'a>(node: &SyntaxNode) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Prev).skip(1) { match next { - rowan::NodeOrToken::Node(node) => { + rowan::NodeOrToken::Node(_node) => { break; } rowan::NodeOrToken::Token(token) => { @@ -504,7 +504,7 @@ fn trailing_comments<'a>(node: &SyntaxNode) -> Doc<'a> { let mut doc = Doc::nil(); for next in node.siblings_with_tokens(Direction::Next).skip(1) { match next { - rowan::NodeOrToken::Node(node) => { + rowan::NodeOrToken::Node(_node) => { break; } rowan::NodeOrToken::Token(token) => { diff --git a/crates/squawk_ide/src/completion.rs b/crates/squawk_ide/src/completion.rs index c638c77b..0c0f3b75 100644 --- a/crates/squawk_ide/src/completion.rs +++ b/crates/squawk_ide/src/completion.rs @@ -863,9 +863,7 @@ fn function_detail( let ret_type = create_function.ret_type()?; let return_type = ret_type.syntax().text().to_string(); - Some(format!( - "{schema}.{function_name}{params} {return_type}" - )) + Some(format!("{schema}.{function_name}{params} {return_type}")) } fn default_completions() -> Vec { diff --git a/crates/squawk_ide/src/hover.rs b/crates/squawk_ide/src/hover.rs index a1e99f08..24aeabdf 100644 --- a/crates/squawk_ide/src/hover.rs +++ b/crates/squawk_ide/src/hover.rs @@ -1218,9 +1218,7 @@ fn format_create_sequence( let path = create_sequence.path()?; let (schema, sequence_name) = resolve::resolve_sequence_info(db, InFile::new(file, &path))?; - Some(Hover::snippet(format!( - "sequence {schema}.{sequence_name}" - ))) + Some(Hover::snippet(format!("sequence {schema}.{sequence_name}"))) } fn format_create_trigger(db: &dyn Db, create_trigger: InFile) -> Option { @@ -1255,9 +1253,7 @@ fn format_create_property_graph( let create_property_graph = create_property_graph.value; let path = create_property_graph.path()?; let (schema, name) = resolve::resolve_property_graph_info(db, InFile::new(file, &path))?; - Some(Hover::snippet(format!( - "property graph {schema}.{name}" - ))) + Some(Hover::snippet(format!("property graph {schema}.{name}"))) } fn format_create_event_trigger(create_event_trigger: ast::CreateEventTrigger) -> Option { @@ -1409,9 +1405,7 @@ fn format_param_hover( )); } - Hover::snippet(format!( - "parameter {schema}.{routine_name}.{param_name}" - )) + Hover::snippet(format!("parameter {schema}.{routine_name}.{param_name}")) } fn format_create_function( @@ -1425,9 +1419,7 @@ fn format_create_function( let params = create_function.param_list()?.syntax().text().to_string(); let return_type = create_function.ret_type()?.syntax().text().to_string(); - let snippet = format!( - "function {schema}.{function_name}{params} {return_type}" - ); + let snippet = format!("function {schema}.{function_name}{params} {return_type}"); Some(hover_with_preceding_comment( snippet, diff --git a/crates/squawk_server/src/dispatch.rs b/crates/squawk_server/src/dispatch.rs index be1740eb..a2865c4c 100644 --- a/crates/squawk_server/src/dispatch.rs +++ b/crates/squawk_server/src/dispatch.rs @@ -166,9 +166,7 @@ where Err(panic) => { // Check if the request was canceled due to some modifications to the salsa database. if panic.payload.downcast_ref::().is_some() { - log::debug!( - "request id={id} was cancelled by salsa, sending content modified" - ); + log::debug!("request id={id} was cancelled by salsa, sending content modified"); Err(panic) } else { let error = panic.to_string();