From 1bdc8ff33535c02bca6aba7ae078f5536b96fefd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=B6Rei?= <212411920+arcjet-rei@users.noreply.github.com> Date: Fri, 2 Oct 2026 19:07:50 -0700 Subject: [PATCH] ci: format the workspace with cargo fmt and check it in CI AGENTS.md asks for cargo fmt before committing, but CI never checked it, and cargo fmt --check reported 12 unformatted hunks on main across exports.rs, func.rs, imports.rs and the regressions example. Format the workspace once and run cargo fmt --all --check before the build in the Gravity tests job, with the rustfmt from the pinned toolchain. Co-Authored-By: Claude Opus 5.5 --- .github/workflows/ci.yml | 3 +++ cmd/gravity/src/codegen/exports.rs | 24 +++++++++++------------- cmd/gravity/src/codegen/func.rs | 8 +++----- cmd/gravity/src/codegen/imports.rs | 9 +++------ examples/regressions/src/lib.rs | 4 +--- 5 files changed, 21 insertions(+), 27 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 65065a1..7742b51 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -57,6 +57,9 @@ jobs: # Workflow + - name: cargo fmt + run: cargo fmt --all --check + - name: cargo build run: cargo build --locked --verbose env: diff --git a/cmd/gravity/src/codegen/exports.rs b/cmd/gravity/src/codegen/exports.rs index 0575614..19a5ed6 100644 --- a/cmd/gravity/src/codegen/exports.rs +++ b/cmd/gravity/src/codegen/exports.rs @@ -1,7 +1,7 @@ use genco::prelude::*; use wit_bindgen_core::wit_parser::{Function, Param, Resolve, SizeAlign, World, WorldItem}; -use crate::go::{imports::CONTEXT_CONTEXT, GoIdentifier, GoResult, GoType}; +use crate::go::{GoIdentifier, GoResult, GoType, imports::CONTEXT_CONTEXT}; pub struct ExportConfig<'a> { pub instance: &'a GoIdentifier, @@ -35,12 +35,12 @@ impl<'a> ExportGenerator<'a> { let params = func .params .iter() - .map( - |Param { name, ty, .. }| match crate::resolve_param_type(ty, self.config.resolve) { + .map(|Param { name, ty, .. }| { + match crate::resolve_param_type(ty, self.config.resolve) { GoType::ValueOrOk(t) => (GoIdentifier::local(name), *t), t => (GoIdentifier::local(name), t), - }, - ) + } + }) .collect::>(); let result = if let Some(wit_type) = &func.result { @@ -165,8 +165,10 @@ mod tests { // Verify function body assert!(generated.contains("arg0 := value")); - assert!(generated - .contains("i.module.ExportedFunction(\"add_number\").Call(ctx, uint64(result0))")); + assert!( + generated + .contains("i.module.ExportedFunction(\"add_number\").Call(ctx, uint64(result0))") + ); assert!(generated.contains("if err1 != nil {")); assert!(generated.contains("panic(err1)")); assert!(generated.contains("results1 := raw1[0]")); @@ -193,9 +195,7 @@ mod tests { /// causing a Go compile error: cannot use uint64 as uint32. #[test] fn test_export_variant_u32_no_encode_u32() { - use wit_bindgen_core::wit_parser::{ - Case, TypeDef, TypeDefKind, TypeOwner, Variant, - }; + use wit_bindgen_core::wit_parser::{Case, TypeDef, TypeDefKind, TypeOwner, Variant}; let mut resolve = Resolve::new(); @@ -290,9 +290,7 @@ mod tests { /// Go compile error: cannot use int64 as uint64. #[test] fn test_export_variant_u64_no_int64_cast() { - use wit_bindgen_core::wit_parser::{ - Case, TypeDef, TypeDefKind, TypeOwner, Variant, - }; + use wit_bindgen_core::wit_parser::{Case, TypeDef, TypeDefKind, TypeOwner, Variant}; let mut resolve = Resolve::new(); diff --git a/cmd/gravity/src/codegen/func.rs b/cmd/gravity/src/codegen/func.rs index 419656f..9be054f 100644 --- a/cmd/gravity/src/codegen/func.rs +++ b/cmd/gravity/src/codegen/func.rs @@ -8,13 +8,12 @@ use wit_bindgen_core::{ use crate::{ go::{ - comment, + GoIdentifier, GoResult, GoType, Operand, comment, imports::{ ERRORS_NEW, UTF8_VALID_RUNE, WAZERO_API_DECODE_F32, WAZERO_API_DECODE_F64, WAZERO_API_DECODE_I32, WAZERO_API_DECODE_U32, WAZERO_API_ENCODE_F32, WAZERO_API_ENCODE_F64, }, - GoIdentifier, GoResult, GoType, Operand, }, resolve_type, resolve_wasm_type, }; @@ -983,9 +982,8 @@ impl Bindgen for Func<'_> { }; } - let case_type = GoIdentifier::public(crate::case_dispatch_name( - &name, case, resolve, - )); + let case_type = + GoIdentifier::public(crate::case_dispatch_name(&name, case, resolve)); let payload_intro = if all_direct { quote!() } else { diff --git a/cmd/gravity/src/codegen/imports.rs b/cmd/gravity/src/codegen/imports.rs index 4f41f87..e1bfa36 100644 --- a/cmd/gravity/src/codegen/imports.rs +++ b/cmd/gravity/src/codegen/imports.rs @@ -18,8 +18,8 @@ use crate::{ }, }, go::{ - imports::{CONTEXT_CONTEXT, WAZERO_API_MODULE}, GoIdentifier, GoResult, GoType, + imports::{CONTEXT_CONTEXT, WAZERO_API_MODULE}, }, resolve_param_type, resolve_type, resolve_wasm_type, }; @@ -167,9 +167,7 @@ impl<'a> ImportAnalyzer<'a> { let payload = case.ty.as_ref().map(|t| resolve_type(t, self.resolve)); let dispatch = match crate::case_dispatch_kind(case, self.resolve) { crate::CaseDispatchKind::DirectRecord => CaseDispatch::DirectRecord { - record_type: payload - .clone() - .expect("DirectRecord case has a payload"), + record_type: payload.clone().expect("DirectRecord case has a payload"), }, crate::CaseDispatchKind::Wrapped => CaseDispatch::Wrapped { wrapper_name: GoIdentifier::public(format!("{variant_name}-{}", case.name)), @@ -415,8 +413,7 @@ impl<'a> ImportCodeGenerator<'a> { } TypeDefinition::Variant { cases } => { let variant_interface = &typ.go_type_name; - let marker_method = - &GoIdentifier::private(format!("is-{}", &typ.name)); + let marker_method = &GoIdentifier::private(format!("is-{}", &typ.name)); let case_definitions = cases.iter().map(|case| match &case.dispatch { CaseDispatch::DirectRecord { record_type } => quote! { $['\n'] diff --git a/examples/regressions/src/lib.rs b/examples/regressions/src/lib.rs index d12ff1e..b884c91 100644 --- a/examples/regressions/src/lib.rs +++ b/examples/regressions/src/lib.rs @@ -1,6 +1,4 @@ -use gravity::regressions::{ - bot_verifier, checker, email_checker, ip_source, pinger, processor, -}; +use gravity::regressions::{bot_verifier, checker, email_checker, ip_source, pinger, processor}; wit_bindgen::generate!({ world: "regressions",