From 8cd4293abca3f7925f82cf61391826bc4cec7900 Mon Sep 17 00:00:00 2001 From: Elliott Clark Date: Tue, 7 Jan 2025 15:29:58 -0600 Subject: [PATCH] fix: update github ci workflows for new version Summary: - Add the latest elixir and otp version to the testing matrix. We've been running them at BatteriesIncluded for a while on the latest versions. - Remove the restore keys field for plts. This causes us to re-generate new typespecs on new elixir versions (new otp versions as well but they don't seem to change the plts as much) Test Plan: - Green CI --- .github/workflows/ci.yaml | 3 +-- .github/workflows/elixir_matrix.yaml | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 5069ec1a..8fe37a60 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -26,6 +26,7 @@ jobs: - name: Setup elixir uses: erlef/setup-beam@v1 + id: beam with: version-file: .tool-versions version-type: strict @@ -52,8 +53,6 @@ jobs: with: key: | ${{ runner.os }}-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-plt - restore-keys: | - ${{ runner.os }}-${{ steps.beam.outputs.elixir-version }}-${{ steps.beam.outputs.otp-version }}-plt path: | priv/plts diff --git a/.github/workflows/elixir_matrix.yaml b/.github/workflows/elixir_matrix.yaml index 899dd21d..37bcb936 100644 --- a/.github/workflows/elixir_matrix.yaml +++ b/.github/workflows/elixir_matrix.yaml @@ -13,14 +13,24 @@ jobs: fail-fast: false matrix: # See https://hexdocs.pm/elixir/1.13/compatibility-and-deprecations.html#compatibility-between-elixir-and-erlang-otp - otp: ["23.x", "24.x", "25.x", "26.x"] - elixir: ["1.14.x", "1.15.x", "1.16.x"] + otp: ["23.x", "26.x", "27.x"] + elixir: ["1.14.x", "1.17.x", "1.18.x"] exclude: # OTP 23 - elixir: "1.15.x" otp: "23.x" - - elixir: "1.16.x" + - elixir: "1.17.x" otp: "23.x" + - elixir: "1.18.x" + otp: "23.x" + # OTP 26 + # - Users on recent elixir likely updated OTP versions + - elixir: "1.18.x" + otp: "26.x" + # OTP 27 - Elixir 1.14.x is not compatible with OTP 27 + - elixir: "1.14.x" + otp: "27.x" + steps: - uses: actions/checkout@v4.1.7