From d317e2a024ae2a4c5134a32d101cc840a38a372e Mon Sep 17 00:00:00 2001 From: Sharang Parnerkar Date: Wed, 18 Feb 2026 10:08:04 +0100 Subject: [PATCH] fix(ci): graceful tailwind skip and add dx fmt check build.rs no longer panics when bunx is unavailable, allowing cargo clippy/test to run in CI without bun installed. Added dx fmt --check to the format job for RSX formatting validation. Co-Authored-By: Claude Opus 4.6 --- .gitea/workflows/ci.yml | 6 ++++++ build.rs | 15 ++++++++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 9d40511..6ae2551 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -35,6 +35,12 @@ jobs: git checkout FETCH_HEAD - run: rustup component add rustfmt - run: cargo fmt --check + - name: Install dx CLI + run: | + curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash + cargo binstall dioxus-cli@0.7.3 -y --force + - name: RSX format check + run: dx fmt --check clippy: name: Clippy diff --git a/build.rs b/build.rs index 4cfbc39..521a6cb 100644 --- a/build.rs +++ b/build.rs @@ -1,8 +1,9 @@ -#[allow(clippy::expect_used)] fn main() -> Result<(), Box> { use std::process::Command; println!("cargo:rerun-if-changed=./styles/input.css"); - Command::new("bunx") + + // Tailwind build is optional - skip gracefully in CI or environments without bun + match Command::new("bunx") .args([ "@tailwindcss/cli", "-i", @@ -11,7 +12,15 @@ fn main() -> Result<(), Box> { "./assets/tailwind.css", ]) .status() - .expect("could not run tailwind"); + { + Ok(status) if !status.success() => { + println!("cargo:warning=tailwind build exited with {status}, skipping CSS generation"); + } + Err(e) => { + println!("cargo:warning=bunx not found ({e}), skipping tailwind CSS generation"); + } + Ok(_) => {} + } Ok(()) }