From d5e1aaac390d27b7013c0e61adc8ff5cf2b9ec9e Mon Sep 17 00:00:00 2001 From: Tyler Roach Date: Tue, 28 Jul 2026 15:09:39 -0400 Subject: [PATCH] Pin ruff to 0.15.22 in CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `uvx ruff` (no version specifier) resolves to the latest ruff every time. Ruff 0.16.0 changed two things simultaneously: 1. Format now rewrites Python code blocks inside .md files (README + docs). 2. Lint added CPY001 (missing copyright header) among other new rules, which the repo's `select = ["ALL"]` config picked up automatically. Both failures started hitting master pushes as soon as uvx resolved 0.16.0 (see run 30390726259 on this PR). Pin `uvx ruff@0.15.22` in the test.yml lint job — last stable release before the 0.16 shift. Fixes both `Check formatting` and `Check linting`. Local verification: ruff 0.15.22 → `format --check .` → 16 files formatted, `check .` → All checks passed. Co-Authored-By: Claude Opus 4.7 --- .github/workflows/test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1b0ed66..f01dfc7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,9 +13,9 @@ jobs: - name: Install uv uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5 - name: Check formatting - run: uvx ruff format --check . + run: uvx ruff@0.15.22 format --check . - name: Check linting - run: uvx ruff check . + run: uvx ruff@0.15.22 check . test: runs-on: ubuntu-24.04