From a63983f90c7796b89010a8af21351376c246ca4a Mon Sep 17 00:00:00 2001 From: Naxdy Date: Mon, 14 Oct 2024 17:18:45 +0200 Subject: [PATCH] chore: improve clippy CI --- .forgejo/workflows/clippy-check.yml | 2 +- .forgejo/workflows/nightly-release.yml | 1 + flake.nix | 26 +++++++++++++++++--------- src/usb_comms.rs | 3 +++ 4 files changed, 22 insertions(+), 10 deletions(-) diff --git a/.forgejo/workflows/clippy-check.yml b/.forgejo/workflows/clippy-check.yml index 516cce0..d04d941 100644 --- a/.forgejo/workflows/clippy-check.yml +++ b/.forgejo/workflows/clippy-check.yml @@ -25,4 +25,4 @@ jobs: - name: Run Clippy run: | - nix develop . --command cargo clippy -- -Dwarnings + nix build .#clippy --print-build-logs -j auto diff --git a/.forgejo/workflows/nightly-release.yml b/.forgejo/workflows/nightly-release.yml index e28ddd5..c40f862 100644 --- a/.forgejo/workflows/nightly-release.yml +++ b/.forgejo/workflows/nightly-release.yml @@ -22,6 +22,7 @@ jobs: - uses: actions/checkout@v4 - name: Build firmware image run: | + nix build .#clippy -o clippy nix build .# -o dist --print-build-logs - name: (Re-)generate tag run: | diff --git a/flake.nix b/flake.nix index de3c024..d0cf0ad 100644 --- a/flake.nix +++ b/flake.nix @@ -54,18 +54,26 @@ ${pkgs.elf2uf2-rs}/bin/elf2uf2-rs ${self.packages.${system}.naxgcc-fw}/bin/${self.packages.${system}.naxgcc-fw.pname} $out/bin/${self.packages.${system}.naxgcc-fw.pname}.uf2 ''; - packages.naxgcc-fw = naersk_lib.buildPackage { - pname = (builtins.fromTOML (builtins.readFile ./Cargo.toml)).package.name; - version = (builtins.fromTOML (builtins.readFile ./Cargo.toml)).package.version; + packages.naxgcc-fw = pkgs.callPackage + ({ mode ? "build" }: naersk_lib.buildPackage { + pname = (builtins.fromTOML (builtins.readFile ./Cargo.toml)).package.name; + version = (builtins.fromTOML (builtins.readFile ./Cargo.toml)).package.version; - src = self; + inherit mode; - cargoBuildOptions = _orig: _orig ++ [ - "--target=${CARGO_BUILD_TARGET}" - ]; + src = self; - # if a tree falls in the forest and no one is around to hear it, does it make a sound? - DEFMT_LOG = "off"; + cargoBuildOptions = _orig: _orig ++ [ + "--target=${CARGO_BUILD_TARGET}" + ]; + + # if a tree falls in the forest and no one is around to hear it, does it make a sound? + DEFMT_LOG = "off"; + }) + { }; + + packages.clippy = self.packages.${system}.naxgcc-fw.override { + mode = "clippy"; }; devShells.default = pkgs.mkShell { diff --git a/src/usb_comms.rs b/src/usb_comms.rs index cdf2275..d0b7333 100644 --- a/src/usb_comms.rs +++ b/src/usb_comms.rs @@ -130,6 +130,9 @@ impl MyDeviceHandler { impl Handler for MyDeviceHandler { fn enabled(&mut self, enabled: bool) { self.configured = true; + + // reason: in production, info! compiles to nothing + #[allow(clippy::if_same_then_else)] if enabled { info!("Device enabled"); } else {