From b44b2a0bb65f13c7ad3323edf5ace037e185c811 Mon Sep 17 00:00:00 2001 From: Toshihiko SHIMOKAWA Date: Mon, 13 Jul 2026 09:53:26 +0900 Subject: [PATCH] fix(elixir-ci): run quality checks on the LTS Elixir lane The Code Quality job ran `mix credo --strict` on the latest Elixir lane (1.20.1), where credo 1.7.x crashes tokenizing regex sigils (~r/.../): `FunctionClauseError in Credo.Code.Token.position/1`. credo's version is pinned by each caller's mix.lock, not this reusable workflow, so the only lever here is the Elixir version the quality checks run on. Point the quality job (format / compile / credo) at the LTS lane, where credo works. Latest-Elixir compatibility is still covered by the test matrix, which compiles and tests on the latest lane. The only thing no longer enforced on the latest lane is `--warnings-as-errors`. Resolves #94 Claude-Session: https://claude.ai/code/session_01Jnvhs3pKABL6vvxj9a5ueb --- .github/workflows/elixir-ci.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/elixir-ci.yml b/.github/workflows/elixir-ci.yml index 3e4bb9d..7df76bd 100644 --- a/.github/workflows/elixir-ci.yml +++ b/.github/workflows/elixir-ci.yml @@ -58,11 +58,16 @@ jobs: - name: Set up Git repository uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + # Quality checks (format / compile / credo) run on the LTS lane: credo 1.7.x + # crashes tokenizing regex sigils (~r/.../) on newer Elixir (smkwlab/.github#94), + # and credo's version is controlled by each caller's mix.lock, not this + # workflow. Real latest-Elixir compatibility is still covered by the test + # matrix below (which compiles and tests on the latest lane). - name: Set up Elixir uses: erlef/setup-beam@54075bcc5e249e4758d363f27d099f55d843f124 # v1.24.1 with: - otp-version: ${{ inputs.otp-version-latest }} - elixir-version: ${{ inputs.elixir-version-latest }} + otp-version: ${{ inputs.otp-version-lts }} + elixir-version: ${{ inputs.elixir-version-lts }} - name: Restore dependencies cache uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0