diff options
| author | Henrik Tjäder <henrik@tjaders.com> | 2023-02-24 00:10:01 +0100 |
|---|---|---|
| committer | Henrik Tjäder <henrik@tjaders.com> | 2023-03-01 00:35:22 +0100 |
| commit | 18c843b5509b76a661dbf141da7cb900401f5074 (patch) | |
| tree | 0087c364de398a60ac269ae1a196b565d808a481 /xtask/src/main.rs | |
| parent | 0fac17493697b14f2bb7386bf778ea42804ec514 (diff) | |
xtask: Add format and format-check
Diffstat (limited to 'xtask/src/main.rs')
| -rw-r--r-- | xtask/src/main.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/xtask/src/main.rs b/xtask/src/main.rs index f6d8975..2191384 100644 --- a/xtask/src/main.rs +++ b/xtask/src/main.rs @@ -136,6 +136,12 @@ enum Commands { /// Check all packages Check(Package), + /// Check formatting + FormatCheck(Package), + + /// Format code + Format(Package), + /// Run clippy Clippy(Package), } @@ -360,6 +366,16 @@ fn main() -> anyhow::Result<()> { info!("Running clippy on backend: {backend:?}"); cargo_clippy(&cargoarg, &args, backend)?; } + Commands::FormatCheck(args) => { + info!("Running cargo fmt: {args:?}"); + let check_only = true; + cargo_format(&cargoarg, &args, check_only)?; + } + Commands::Format(args) => { + info!("Running cargo fmt --check: {args:?}"); + let check_only = false; + cargo_format(&cargoarg, &args, check_only)?; + } } Ok(()) @@ -421,6 +437,22 @@ fn cargo_clippy( Ok(()) } +fn cargo_format( + cargoarg: &Option<&str>, + package: &Package, + check_only: bool, +) -> anyhow::Result<()> { + command_parser( + &CargoCommand::Format { + cargoarg, + package: package_filter(package), + check_only, + }, + false, + )?; + Ok(()) +} + fn run_test( cargoarg: &Option<&str>, backend: Backends, @@ -621,6 +653,7 @@ fn command_parser(command: &CargoCommand, overwrite: bool) -> anyhow::Result<()> | CargoCommand::Build { .. } | CargoCommand::Check { .. } | CargoCommand::Clippy { .. } + | CargoCommand::Format { .. } | CargoCommand::ExampleSize { .. } => { let cargo_result = run_command(command)?; if let Some(exit_code) = cargo_result.exit_status.code() { |
